import { BigNumber } from '../../../../dependencies/src/bignumber.js-9.0.0/bignumber';
import { AirGapTransactionStatus } from '../../../../interfaces/IAirGapTransaction';
export declare abstract class EthereumNodeClient {
    baseURL: string;
    constructor(baseURL: string);
    abstract fetchBalance(address: string): Promise<BigNumber>;
    abstract fetchTransactionCount(address: string): Promise<number>;
    abstract sendSignedTransaction(transaction: string): Promise<string>;
    abstract callBalanceOf(contractAddress: string, address: string): Promise<BigNumber>;
    abstract getTransactionStatus(transactionHash: string): Promise<AirGapTransactionStatus>;
    abstract estimateTransferGas(contractAddress: string, fromAddress: string, toAddress: string, hexAmount: string): Promise<BigNumber>;
    abstract estimateTransactionGas(fromAddress: string, toAddress: string, amount?: string, data?: string, gas?: string): Promise<BigNumber>;
    abstract getGasPrice(): Promise<BigNumber>;
    abstract callBalanceOfOnContracts(contractAddresses: string[], address: string): Promise<{
        [contractAddress: string]: BigNumber;
    }>;
}
