import type { CoinbaseWalletProvider } from '@coinbase/wallet-sdk'; import type { CoinbaseWalletSDKOptions } from '@coinbase/wallet-sdk/dist/CoinbaseWalletSDK'; import { providers } from 'ethers'; import { Chain } from '../types'; import { Connector } from './base'; declare type Options = CoinbaseWalletSDKOptions & { /** * Fallback Ethereum JSON RPC URL * @default "" */ jsonRpcUrl?: string; /** * Fallback Ethereum Chain ID * @default 1 */ chainId?: number; }; export declare class CoinbaseWalletConnector extends Connector { #private; readonly id = "coinbaseWallet"; readonly name = "Coinbase Wallet"; readonly ready = true; constructor({ chains, options }: { chains?: Chain[]; options: Options; }); connect({ chainId }?: { chainId?: number; }): Promise<{ account: `0x${string}`; chain: { id: number; unsupported: boolean; }; provider: providers.Web3Provider; }>; disconnect(): Promise; getAccount(): Promise<`0x${string}`>; getChainId(): Promise; getProvider(): Promise; getSigner({ chainId }?: { chainId?: number; }): Promise; isAuthorized(): Promise; switchChain(chainId: number): Promise; watchAsset({ address, decimals, image, symbol, }: { address: string; decimals?: number; image?: string; symbol: string; }): Promise; protected onAccountsChanged: (accounts: string[]) => void; protected onChainChanged: (chainId: number | string) => void; protected onDisconnect: () => void; } export {};