import { LandId } from "../../../config/constants";
import type { ContractNameType } from "../../../types";
import type { CallbackType } from "../../../utils/tronweb/contractHelper";
/**
 * ERC20 Allowance
 * @param tronWeb Tronweb
 * @param contractName Contract name
 * @param from From, account address
 * @param spender Spender
 * @param callback Callback
 * @returns String amount
 */
export declare const erc20Allowance: (landId: LandId, tronWeb: any, contractName: ContractNameType, from: string, spender: string, callback?: CallbackType | undefined) => Promise<string>;
/**
 * ERC20 Allowance By Contract Address
 * @param tronWeb Tronweb
 * @param contractAddress Contract address
 * @param from From
 * @param spender Spender
 * @param callback Callback
 * @returns String amount
 */
export declare const erc20AllowanceByContractAddress: (tronWeb: any, contractAddress: string, from: string, spender: string, callback?: CallbackType | undefined) => Promise<string>;
/**
 * ERC20 Approve
 * @param tronWeb Tronweb
 * @param contractName Contract name
 * @param spender Spender
 * @param value Value
 * @param callback Callback
 */
export declare const erc20Approve: (landId: LandId, tronWeb: any, contractName: ContractNameType, spender: string, value?: string, callback?: CallbackType | undefined) => Promise<void>;
/**
 * ERC20 Approve By Contract Address
 * @param tronWeb Tronweb
 * @param contractAddress Contract address
 * @param spender Spender
 * @param value Value
 * @param callback Callback
 */
export declare const erc20ApproveByContractAddress: (tronWeb: any, contractAddress: string, spender: string, value?: string, callback?: CallbackType | undefined) => Promise<void>;
export declare const erc20TransferByContractAddress: (signer: any, contractAddress: string, dst: string, wad: string, callback?: CallbackType | undefined) => Promise<any>;
export declare const erc20BalanceOf: (provider: any, tokenAddress: string, account: string, callback?: CallbackType | undefined) => Promise<string>;
export declare const erc20TotalSupply: (provider: any, tokenAddress: string, callback?: CallbackType | undefined) => Promise<string>;
