import { VerifiedContract, Options } from "../index";
import { VerifiedWallet } from "../../wallet";
export default class Factory extends VerifiedContract {
    contractAddress: string;
    constructor(signer: VerifiedWallet, contractNetworkAddress: string);
    _getMeeQuote(paymentTokenAddress: string, functionName: string, args: any[], apiKey?: string, rpcUrl?: string, isReactNative?: boolean): Promise<{
        tokenAddress: string;
        amount: string;
        amountInWei: string;
        amouuntValue: string;
        chainId: number;
        functionName: string;
    }>;
    /**
     * Get number of tokens [callable by client]
     * @param
     * @returns returns number of tokens
     */
    getTokenCount(): any;
    getOracles(): any;
    /**
     * Get address of token by index [callable by client].
     * @param (uint256 n)
     * @returns boolean
     */
    getToken(_n: string, options?: Options): any;
    /**
     * Get name and type of token by its address callable by client
     * @param (address _viaAddress)
     * @returns boolean
     * returns name and type of token by its address passed as parameter.
     */
    getNameAndType(_viaAddress: string, options?: Options): any;
    setClient(_clientAddress: string, options?: Options): any;
    notifyTokenCreated(callback: any): object;
    getTokenByNameType(tokenName: string, tokenType: string, options?: Options): any;
    getIssuer(tokenName: string, tokenType: string, options?: Options): any;
    getAddressAndType(tokenName: string, options?: Options): any;
    setViaOracleUrl(_url: string, options?: Options): any;
    setFiatPayoutUrl(_url: string, options?: Options): any;
    getViaOracleUrl(options?: Options): any;
    getFiatPayoutUrl(options?: Options): any;
    setCryptoDataURL(_url: string, _fromCurrency: string, _toCurrency: string, options?: Options): any;
    setOracles(_oracles: string, options?: Options): any;
    supportTokens(_currency: string, _address: string, options?: Options): any;
    setBondTerm(bondToken: string, term: string, options?: Options): any;
    getBondTerm(bondToken: string, options?: Options): any;
}
