import { IWalletKit } from '@reown/walletkit'; import { Options, QRCode } from 'jsqr'; import { WalletConnectorExtension } from '@dynamic-labs/wallet-connector-core'; declare module '@dynamic-labs/wallet-connector-core' { namespace WalletConnectorCore { interface WalletConnector { globalWallet?: IGlobalWalletExtension; } interface IGlobalWalletExtension { initializeListeners: () => Promise; pairWithWC: (uri: string) => Promise; getConnectedWCSessions: () => Promise | undefined>; disconnectWCSession: (topic: string) => Promise; initWeb3Wallet: () => Promise; confirmPairing: (confirm: boolean) => Promise; getPendingPairing: () => object; qrScanner: (data: Uint8ClampedArray, width: number, height: number, providedOptions?: Options) => QRCode | null; getWeb3Wallet: () => IWalletKit | undefined; assertWeb3walletDefined: (scope: string) => IWalletKit; } } } type CombinedNamespace = { chains: string[]; events: string[]; methods: string[]; }; export declare const buildCombinedNamespaces: (params: any) => { chains: any[]; events: any[]; methods: any[]; }; export declare const buildCombinedNamespacesForKey: (params: any, key: string) => CombinedNamespace; export type WalletKitStorage = { getKeys(): Promise; getEntries(): Promise<[string, T][]>; getItem(key: string): Promise; setItem(key: string, value: T): Promise; removeItem(key: string): Promise; }; export type GlobalWalletExtensionSettings = { walletConnectDappProjectId: string; storage?: WalletKitStorage; onSessionRequest?: (event: { id: number; topic: string; params: any; }) => Promise; solanaRequestHandler?: (args: { params: any; id: number; topic: string; handleRequest: (id: number, handler: () => Promise) => Promise; }) => Promise<{ response: any; topic: string; }>; solanaNamespaceBuilder?: (params: any) => Promise | undefined>; }; export declare const GlobalWalletExtension: WalletConnectorExtension; export {};