import { TEth } from '../models/TEth'; import { Rpc, RpcTypes } from '../rpc/Rpc'; import { DataLike } from '../utils/types'; import { EIP6963ProviderDetail, EIP6963ProviderFactory } from '../wallets/EIP6963ProviderFactory'; import { WClient } from './ClientPool'; /** Wallet actions only. Use Web3Client for all node/chain-related actions */ export declare class WalletClient { factory: EIP6963ProviderFactory; constructor(factory?: EIP6963ProviderFactory); /** * Sets the provider by UUID as the default provider for eth_** methods. */ useProvider(uuid: string): Promise; getProvider(uuid?: string): Promise; getProviders(): Promise; getAccounts(uuid?: string): Promise; /** Finds the provider by UUID, or uses the first one to connect and request accounts */ connect(uuid?: string): Promise; disconnect(): Promise; isConnected(address?: TEth.Address): boolean; eth_accounts(): Promise<`0x${string}`[]>; eth_requestAccounts(): Promise<`0x${string}`[]>; eth_sign(address: TEth.Address, message: string): Promise; eth_signTypedData_v4(address: TEth.Address, typedData: DataLike): Promise<`0x${string}`>; eth_sendTransaction(...args: Parameters): Promise<`0x${string}`>; eth_chainId(...args: Parameters): Promise; wallet_addEthereumChain(...args: Parameters): Promise; wallet_switchEthereumChain(...args: Parameters): Promise; getClientFor(chainId: number): Promise; private getRpc; }