import { JsonRpcProvider } from 'ethers'; export interface AmountValidationOptions { maxAmount?: bigint; minAmount?: bigint; requirePositive?: boolean; allowFullBalance?: boolean; } export declare function validateTransferAmount(amount: bigint, balance: bigint, options?: AmountValidationOptions): void; export declare function waitForTransaction(txResponse: any, confirmations?: number, timeoutMs?: number): Promise; export declare class NonceManager { private pendingNonces; private provider; constructor(provider: JsonRpcProvider); getNextNonce(address: string, forceRefresh?: boolean): Promise; releaseNonce(address: string, nonce: number): void; clearNonces(address: string): void; clearAll(): void; } export declare function estimateGasWithMargin(provider: JsonRpcProvider, tx: any, marginPercent?: number): Promise; export declare function calculateMaxTransferAmount(balance: bigint, gasLimit: bigint, gasPrice: bigint): bigint; export declare function checkSufficientGas(balance: bigint, amount: bigint, gasLimit: bigint, gasPrice: bigint): boolean; export declare class TransactionBuilder { private provider; private tx; constructor(provider: JsonRpcProvider); to(address: string): this; value(amount: bigint): this; data(data: string): this; gasLimit(limit: bigint): this; gasPrice(price: bigint): this; maxFeePerGas(fee: bigint): this; maxPriorityFeePerGas(fee: bigint): this; nonce(nonce: number): this; build(options?: { addGasMargin?: boolean; marginPercent?: number; }): Promise; }