import BigNumber from 'bignumber.js';
import { Tx } from '../../interfaces/Tx';
import { Service } from '../../Service';
import { IERC20Extend } from '../../interfaces';
export declare class ERC20Service extends Service implements IERC20Extend {
    /**
     * @deprecated Use method create
     */
    static get(address: string): ERC20Service;
    static create(address: string): ERC20Service;
    private constructor();
    static balancesOf(wallet: string, tokensAddresses: string[]): Promise<BigNumber[]>;
    decimals(): Promise<BigNumber>;
    /**
     * balance of ERC20,
     * it's important remain raw balanceOf, should not div, use method valueOf instead of this;
     * @param address address
     */
    balanceOf(address: string): Promise<BigNumber>;
    /**
     * value of balance div decimals;
     * @param address address
     */
    valueOf(address: string): Promise<BigNumber>;
    approve(toAddress: string, amount: number, gasPrice: number): Promise<Tx>;
    calculateApprovalGas(toAddress: string, amount: number): Promise<number>;
    getTotalSupply(): Promise<BigNumber>;
}
