UNPKG

@pushchain/ui-kit

Version:
47 lines (46 loc) 1.65 kB
import { BaseWalletProvider } from '../BaseWalletProvider'; import { ChainType, ITypedData } from '../../../types/wallet.types'; import { Transaction } from '@solana/web3.js'; declare global { interface Window { phantom?: { ethereum?: { isConnected?: boolean; request: (args: { method: string; params?: any[]; }) => Promise<any>; }; solana?: { isConnected?: boolean; chainId?: number; connect: () => Promise<{ publicKey: { toString: () => string; }; }>; disconnect: () => Promise<void>; signMessage: (message: Uint8Array, encoding: string) => Promise<{ signature: Uint8Array; }>; signAndSendTransaction: (txn: Transaction) => Promise<string>; }; }; ethereum?: any; } } export declare class PhantomProvider extends BaseWalletProvider { constructor(); private connectedChainType; isInstalled: () => Promise<boolean>; private connectEthereum; private connectSolana; connect: (chainType?: ChainType) => Promise<{ caipAddress: string; }>; getChainId: (chainType?: ChainType) => Promise<number>; signMessage: (message: Uint8Array) => Promise<Uint8Array>; signAndSendTransaction: (txn: Uint8Array) => Promise<Uint8Array>; signTypedData: (typedData: ITypedData) => Promise<Uint8Array>; disconnect: () => Promise<void>; }