import { EvmWeb3Private } from "../../../../../../../core/blockchain/web3-private-service/web3-private/evm-web3-private/evm-web3-private";
import { EncodeTransactionOptions } from "../../../../../../common/models/encode-transaction-options";
import { GetContractParamsOptions } from "../../../../../../cross-chain/calculation-manager/providers/common/models/get-contract-params-options";
import { OnChainTradeType } from "../../../common/models/on-chain-trade-type";
import { EvmEncodedConfigAndToAmount } from "../../../common/on-chain-aggregator/models/aggregator-on-chain-types";
import { ExactInputOutputSwapMethodsList } from "../../common/uniswap-v2-abstract/constants/SWAP_METHOD";
import { UniswapV2AbstractTrade } from "../../common/uniswap-v2-abstract/uniswap-v2-abstract-trade";
export declare class EddyFinanceTrade extends UniswapV2AbstractTrade {
    static get type(): OnChainTradeType;
    readonly dexContractAddress = "0x2ca7d64A7EFE2D62A725E2B35Cf7230D6677FfEe";
    static readonly swapMethods: ExactInputOutputSwapMethodsList;
    protected get spenderAddress(): string;
    protected getTransactionConfigAndAmount(options: EncodeTransactionOptions): Promise<EvmEncodedConfigAndToAmount>;
    protected getCallParameters(): unknown[];
    protected getSwapParametersByMethod(method: string): Parameters<InstanceType<typeof EvmWeb3Private>['executeContractMethod']>;
    protected getSwapData(options: GetContractParamsOptions): Promise<unknown[]>;
    protected getAmountInAndAmountOut(): {
        amountIn: string;
        amountOut: string;
    };
}
