import type { Maybe } from "@rarible/types"; import type { Ethereum } from "@rarible/ethereum-provider"; import type { BigNumber } from "@rarible/types"; import type { SendFunction } from "../../common/send-transaction"; import type { SimpleOrder } from "../types"; import type { EthereumNetwork, IRaribleEthereumSdkConfig } from "../../types"; import type { RaribleEthereumApis } from "../../common/apis"; import type { GetConfigByChainId } from "../../config"; import type { AmmOrderFillRequest, OrderFillSendData, PreparedOrderRequestDataForExchangeWrapper } from "./types"; export declare class AmmOrderHandler { private readonly ethereum; private readonly send; private readonly getConfig; private readonly getBaseOrderFeeConfig; private readonly getApis; private readonly env; private readonly sdkConfig?; private readonly options; constructor(ethereum: Maybe, send: SendFunction, getConfig: GetConfigByChainId, getBaseOrderFeeConfig: (type: SimpleOrder["type"]) => Promise, getApis: () => Promise, env: EthereumNetwork, sdkConfig?: IRaribleEthereumSdkConfig | undefined, options?: { directBuy: boolean; }); getTransactionData(request: AmmOrderFillRequest): Promise; private getTransactionDataDirectBuy; getTransactionDataForExchangeWrapper(request: AmmOrderFillRequest, feeValue: BigNumber): Promise; getFillOrderBaseFee(): Promise; getOrderFee(): number; }