import BigNumber from 'bignumber.js';
import { EncodeTransactionOptions } from "../../../../../../common/models/encode-transaction-options";
import { OnChainTradeType } from "../../../common/models/on-chain-trade-type";
import { EvmEncodedConfigAndToAmount } from "../../../common/on-chain-aggregator/models/aggregator-on-chain-types";
import { EvmOnChainTrade } from "../../../common/on-chain-trade/evm-on-chain-trade/evm-on-chain-trade";
import { IzumiTradeStruct } from "./models/izumi-trade-struct";
export declare class IzumiTrade extends EvmOnChainTrade {
    static getGasLimit(tradeStruct: IzumiTradeStruct, providerAddress: string): Promise<BigNumber | null>;
    get type(): OnChainTradeType;
    readonly dexContractAddress: string;
    private readonly swapConfig;
    private readonly strictERC20Token;
    protected getTransactionConfigAndAmount(options: EncodeTransactionOptions): Promise<EvmEncodedConfigAndToAmount>;
    constructor(tradeStruct: IzumiTradeStruct, providerAddress: string);
}
