import { EvmBlockchainName } from "../../../../../../core/blockchain/models/blockchain-name";
import { EncodeTransactionOptions } from "../../../../../common/models/encode-transaction-options";
import { EvmEncodedConfigAndToAmount } from "../on-chain-aggregator/models/aggregator-on-chain-types";
import { EvmOnChainTrade } from "../on-chain-trade/evm-on-chain-trade/evm-on-chain-trade";
import { EvmOnChainTradeStruct } from "../on-chain-trade/evm-on-chain-trade/models/evm-on-chain-trade-struct";
export declare class EvmWrapTrade extends EvmOnChainTrade {
    get dexContractAddress(): string;
    readonly type: "WRAPPED";
    protected getTransactionConfigAndAmount(options: EncodeTransactionOptions): Promise<EvmEncodedConfigAndToAmount>;
    constructor(evmOnChainTradeStruct: EvmOnChainTradeStruct, providerAddress: string);
    static isSupportedBlockchain(blockchain: EvmBlockchainName): boolean;
    static isSupportedTrade(blockchain: EvmBlockchainName, fromAddress: string, toAddress: string): boolean;
    needApprove(fromAddress?: string): Promise<boolean>;
}
