import type { AdapterFactory, IAccountInfo, IAdapter, ICommand, INetworkInfo, ISigningRequestPartial, IUnsignedCommand } from './types'; /** * @public * A client that manages multiple wallet adapters by calling "request" with standard "kadena_*" methods. */ export declare class WalletAdapterClient { private adapterFactories; private adapters; private eventEmitter; constructor(adapters: (IAdapter | AdapterFactory)[]); isDetected(name: string): boolean; init(): Promise; getProviders(): { name: string; detected: boolean; }[]; getDetectedAdapters(): IAdapter[]; getAdapter(adapterName: string): IAdapter | undefined; onAdapterDetected(cb: (adapter: IAdapter) => void, options?: { signal?: AbortSignal; }): void; private getAdapterAsserted; /** * A generic method to call adapter.request(...) for manual calling. */ request(adapterName: string, args: { method: string; [key: string]: any; }): Promise; /** * Connect using "kadena_connect". */ connect(adapterName: IAdapter['name'], params?: unknown): Promise; /** * Disconnect using "kadena_disconnect". */ disconnect(adapterName: string): Promise; /** * Retrieve the active account via "kadena_getAccount_v1". */ getActiveAccount(adapterName: string): Promise; /** * Retrieve all accounts (if multi-account is supported) via "kadena_getAccounts_v2". * Otherwise it will return a single Account wrapped in an Array. */ getAccounts(adapterName: string): Promise; /** * Retrieve the current network via "kadena_getNetwork_v1". */ getActiveNetwork(adapterName: string): Promise; /** * Retrieve all networks (if multi-network is supported) via "kadena_getNetworks_v1". * Otherwise it will return a single Network wrapped in an Array. */ getNetworks(adapterName: string): Promise; /** * Sign transaction via "kadena_signTransaction". */ signTransaction(adapterName: string, transaction: IUnsignedCommand | IUnsignedCommand[]): Promise<(IUnsignedCommand | ICommand) | (IUnsignedCommand | ICommand)[]>; /** * Sign command via "kadena_signCommand". */ signCommand(adapterName: string, command: ISigningRequestPartial | IUnsignedCommand): Promise; /** * Subscribe to account change events. */ onAccountChange(adapterName: string, cb: (newAccount: IAccountInfo) => void): void; /** * Subscribe to network change events. */ onNetworkChange(adapterName: string, cb: (newNetwork: INetworkInfo) => void): void; }