import { Adapter, AdapterState, WalletReadyState } from '@tronweb3/tronwallet-abstract-adapter'; import type { WalletConnectModalConfig } from '@walletconnect/modal'; export type WalletConnectWeb3ModalConfig = Omit; import type { Transaction, SignedTransaction, AdapterName } from '@tronweb3/tronwallet-abstract-adapter'; import { ChainNetwork } from '@tronweb3/tronwallet-abstract-adapter'; import type { ThemeVariables } from '@tronweb3/walletconnect-tron'; import type { SignClientTypes } from '@walletconnect/types'; export declare const WalletConnectWalletName: AdapterName<"WalletConnect">; export interface WalletConnectAdapterConfig { /** * Network to use, one of Mainnet,Shasta,Nile or chainId such as 0x2b6653dc */ network: `${ChainNetwork}` | string; options: SignClientTypes.Options; /** * Theme mode configuration flag. By default themeMode option will be set to user system settings. * @default `system` * @type `dark` | `light` * @see https://docs.reown.com/appkit/react/core/theming */ themeMode?: `dark` | `light`; /** * Theme variable configuration object. * @default undefined * @see https://docs.reown.com/appkit/react/core/theming#themevariables */ themeVariables?: ThemeVariables; /** * Control the display of "All Wallets" button. * @default `HIDE` (recommended for Tron as most wallets don't support it) * @see https://docs.reown.com/appkit/react/core/options */ allWallets?: 'SHOW' | 'HIDE' | 'ONLY_MOBILE'; /** * List of featured wallet IDs to display first (in order). * @see https://walletguide.walletconnect.network/ to find wallet IDs */ featuredWalletIds?: string[]; /** * Whitelist of wallet IDs to include (if set, only these wallets will be shown). */ includeWalletIds?: string[]; /** * Blacklist of wallet IDs to exclude. */ excludeWalletIds?: string[]; /** * Custom wallets to add to the list. */ customWallets?: any[]; /** * Enable Reown cloud analytics. * @default true */ enableAnalytics?: boolean; /** * Enable debug logs. * @default false */ debug?: boolean; /** * Enable mobile deep linking optimization. * When enabled, automatically configures mobile wallet IDs and settings for better deep linking support. * @default true */ enableMobileDeepLink?: boolean; /** * Additional AppKit configuration options. * Any extra properties will be passed directly to createAppKit. */ [key: string]: any; /** * WalletConnectModalOptions to WalletConnect. * Only some properties of themeVariables and themeMode are valiable. It's recomended to use `config.themeVariables` and `config.themeMode`. * Detailed documentation can be found in WalletConnect page: https://docs.walletconnect.com/advanced/walletconnectmodal/options. */ web3ModalConfig?: WalletConnectWeb3ModalConfig; } export interface WalletConnectConnectOptions { /** * Callback to receive the WalletConnect URI for custom QR code rendering. * When provided, the AppKit modal will be skipped. */ onUri?: (uri: string) => void; } export declare class WalletConnectAdapter extends Adapter { name: AdapterName<"WalletConnect">; url: string; icon: string; private _readyState; private _state; private _connecting; private _wallet; private _config; private _address; constructor(config: WalletConnectAdapterConfig); private _getChainId; get address(): string | null; get readyState(): WalletReadyState; get state(): AdapterState; /** * Currently unused for WalletConnectAdapter. */ get connecting(): boolean; connect(options?: WalletConnectConnectOptions): Promise; disconnect(): Promise; signTransaction(transaction: Transaction): Promise; signMessage(message: string): Promise; /** * Get WalletConnect connection status. * Address is not empty if the WalletConnectWallet is connected. * @returns {object} status * @property {string} status.address - connected address */ getConnectionStatus(): Promise<{ address: string; }>; private _disconnected; private _accountsChanged; } //# sourceMappingURL=adapter.d.ts.map