UNPKG

@pushchain/ui-kit

Version:

Push Chain is a true universal L1 that is 100% EVM compatible. It allows developers to deploy once and make their apps instantly compatible with users from all other L1s (Ethereum, Solana, etc) with zero on-chain code change.

21 lines (20 loc) 1 kB
import type { SignAuthorizationParams, SignedAuthorization } from '@pushchain/core'; import { BaseWalletProvider } from '../BaseWalletProvider'; import { ChainType, ITypedData } from '../../../types/wallet.types'; export declare class MetamaskProvider extends BaseWalletProvider { private sdk; constructor(); isInstalled: () => Promise<boolean>; getProvider: () => import("@metamask/sdk").SDKProvider | undefined; getSigner: () => Promise<import("ethers").JsonRpcSigner>; connect(chainType: ChainType): Promise<{ caipAddress: string; }>; getChainId: () => Promise<number>; switchNetwork: (chainName: ChainType) => Promise<void>; signAndSendTransaction: (txn: Uint8Array) => Promise<Uint8Array>; signMessage: (message: Uint8Array) => Promise<Uint8Array>; signTypedData: (typedData: ITypedData) => Promise<Uint8Array>; signAuthorization: (params: SignAuthorizationParams) => Promise<SignedAuthorization>; disconnect: () => Promise<void>; }