import type { WalletConnectModalConfig } from '@walletconnect/modal'; import SignClient from '@walletconnect/sign-client'; export type Web3ModalSignSession = SignClient['session']['values'][number]; export interface Web3ModalSignOptions { projectId: string; metadata: SignClient['metadata']; relayUrl?: string; modalOptions?: Omit; } export type Web3ModalSignConnectArguments = Parameters[0]; export type Web3ModalSignRequestArguments = Parameters[0]; export type Web3ModalSignDisconnectArguments = Parameters[0]; export type Web3ModalEventCallback = (data: any) => void; export declare class Web3ModalSign { #private; constructor(options: Web3ModalSignOptions); connect(args: Web3ModalSignConnectArguments): Promise; disconnect(args: Web3ModalSignDisconnectArguments): Promise; request(args: Web3ModalSignRequestArguments): Promise; getSessions(): Promise; getSession(): Promise; onSessionEvent(callback: Web3ModalEventCallback): Promise; offSessionEvent(callback: Web3ModalEventCallback): Promise; onSessionUpdate(callback: Web3ModalEventCallback): Promise; offSessionUpdate(callback: Web3ModalEventCallback): Promise; onSessionDelete(callback: Web3ModalEventCallback): Promise; offSessionDelete(callback: Web3ModalEventCallback): Promise; onSessionExpire(callback: Web3ModalEventCallback): Promise; offSessionExpire(callback: Web3ModalEventCallback): Promise; }