import { type DappMetadata, type WalletInfo, RawTxnRequest, RawTransactionRequest, RawTransactionResponse, SignMessageRequest, SignMessageResponse, WalletBalanceRequest, WalletBalanceResponse, RawTxnFormat } from '../core/types';
export declare class RibbitWalletClient {
    private transport;
    private wallet;
    initialize(): void;
    connectToWallet(dapp: DappMetadata): Promise<WalletInfo>;
    disconnect(): Promise<void>;
    getWalletBalance(walletBalanceRequest: WalletBalanceRequest): Promise<WalletBalanceResponse>;
    getWalletInfo(): WalletInfo | null;
    createRawTransactionBuffer(rawTxnRequest: RawTxnRequest, format?: RawTxnFormat): Promise<string>;
    signMessage(messageRequest: SignMessageRequest): Promise<SignMessageResponse>;
    signAndSendRawTransaction(tx: RawTransactionRequest): Promise<RawTransactionResponse>;
    onChangeWallet(handler: (address: string) => void): void;
    onChangeNetwork(handler: (chainId: number) => void): void;
}
