import { PriceToken, PriceTokenAmount } from "../../../../../../common/tokens";
import { BlockchainName, EvmBlockchainName } from "../../../../../../core/blockchain/models/blockchain-name";
import { SquidrouterTransactionResponse } from "../../../../../common/providers/squidrouter/models/transaction-response";
import { OnChainTradeError } from '../../../models/on-chain-trade-error';
import { RequiredOnChainCalculationOptions } from '../../common/models/on-chain-calculation-options';
import { AggregatorOnChainProvider } from '../../common/on-chain-aggregator/aggregator-on-chain-provider-abstract';
import { GasFeeInfo } from '../../common/on-chain-trade/evm-on-chain-trade/models/gas-fee-info';
import { OnChainTrade } from '../../common/on-chain-trade/on-chain-trade';
export declare class SquidRouterOnChainProvider extends AggregatorOnChainProvider {
    readonly tradeType: "SQUIDROUTER";
    private readonly nativeAddress;
    isSupportedBlockchain(blockchain: BlockchainName): boolean;
    calculate(from: PriceTokenAmount<EvmBlockchainName>, toToken: PriceToken<EvmBlockchainName>, options: RequiredOnChainCalculationOptions): Promise<OnChainTrade | OnChainTradeError>;
    protected getGasFeeInfo(from: PriceTokenAmount<EvmBlockchainName>, route: SquidrouterTransactionResponse['route']): Promise<GasFeeInfo | null>;
}
