UNPKG

varaconnect

Version:

SDK to connect WalletConnect with Vara Network

54 lines (53 loc) 2.38 kB
import { namespaces } from "../constants/constants"; import { WalletProviderType } from "../types/enums"; import { VaraSigner } from "./varaSigner"; import { SessionTypes } from "@walletconnect/types"; import { SignerPayloadJSON, SignerPayloadRaw } from "@polkadot/types/types"; import { Wallet, WalletAccount } from "@talismn/connect-wallets"; import { WalletConnectModal } from "@walletconnect/modal"; import { IUniversalProvider, NamespaceConfig } from "@walletconnect/universal-provider"; import { ModalSubFn } from "../types/types"; export declare class WalletConnect implements Wallet { extensionName: WalletProviderType; title: string; installUrl: string; logo: { src: string; alt: string; }; _modal: WalletConnectModal | undefined; _extension: IUniversalProvider | undefined; _signer: VaraSigner | undefined; _session: SessionTypes.Struct | undefined; _namespace: NamespaceConfig | undefined; _instance: IUniversalProvider | undefined; onSessionDelete: () => void; constructor({ onModalOpen, onModalClose, onSesssionDelete, }?: { onModalOpen?: ModalSubFn; onModalClose?: ModalSubFn; onSesssionDelete?: () => void; }); getInstance: () => Promise<IUniversalProvider>; get extension(): IUniversalProvider | undefined; get signer(): VaraSigner | undefined; get modal(): WalletConnectModal | undefined; get namespace(): NamespaceConfig | undefined; get installed(): boolean; get rawExtension(): IUniversalProvider | undefined; initializeProvider: () => Promise<IUniversalProvider>; transformError: (err: Error) => Error; setNamespace: (namespace: keyof typeof namespaces) => Promise<void>; getChains: () => string[]; subscribeToModalEvents: (onOpen?: ModalSubFn, onClose?: ModalSubFn) => void; handleDisplayUri: (uri: string) => Promise<void>; handleSessionUpdate: ({ session }: { session: SessionTypes.Struct; }) => void; handleSessionDelete: () => void; enable: (dappName: string) => Promise<void>; getAccounts: () => Promise<WalletAccount[]>; signTransaction(payload: SignerPayloadJSON): Promise<string>; signMessage(raw: SignerPayloadRaw): Promise<string>; subscribeAccounts: () => Promise<void>; disconnect: () => void; }