import { Signer } from 'ethers'; import { AbiItem } from '../@types'; import { Config } from '../config'; import { SmartContractWithAddress } from './SmartContractWithAddress'; export declare class EnterpriseFeeCollectorContract extends SmartContractWithAddress { getDefaultAbi(): AbiItem[]; /** * Instantiate EnterpriseFeeCollectorContract class * @param {string} address The contract address. * @param {Signer} signer The signer object. * @param {string | number} [network] Network id or name * @param {Config} [config] The configuration object. * @param {AbiItem[]} [abi] ABI array of the smart contract */ constructor(address: string, signer: Signer, network?: string | number, config?: Config, abi?: AbiItem[]); /** * Check if token is allowed * @return {Promise} Boolean indicating if token is allowed */ isTokenAllowed(token: string): Promise; /** * Get Token details * @return {Promise} Token details */ getToken(token: string): Promise; /** * Calculate fee * @param {string} token Token address * @param {string} amount Amount * @param {number} [tokenDecimals] optional number of decimals of the token * @return {Promise} Fee amount */ calculateFee(token: string, amount: number, tokenDecimals?: number): Promise; }