import { MempoolOptions, Transaction, AddressState, WalletState } from './interfaces'; declare const walletEventTypes: readonly ["addressReady", "txAdded", "txConfirmed", "txRemoved", "txEvent", "wsConnected", "wsDisconnected", "wsError"]; type WalletEvent = typeof walletEventTypes[number]; export interface SubscriptionEvent { event?: 'added' | 'confirmed' | 'removed'; address?: string; tx?: Transaction; state?: AddressState; err?: any; } export declare class MempoolWallet { private api; private ws; private tracking; private observerId; private observers; constructor(options: MempoolOptions); destroy(): void; private notifyObservers; private onTransactionUnconfirmed; private onTransactionConfirmed; private onTransactionRemoved; private onWebsocketError; private onWebsocketDisconnected; private onWebsocketConnected; private fetchAddressBacklog; connect(): Promise; disconnect(): void; resync(): Promise; subscribe(event: WalletEvent, fn: (args: SubscriptionEvent) => void): () => void; getAddressState(address: string): AddressState | null; getWalletState(): WalletState; restore(state: WalletState): Promise; trackAddresses(addresses: string[]): Promise; untrackAddresses(addresses: string[]): void; } export {};