import type { Ethereum } from "@rarible/ethereum-provider"; import type { Maybe } from "@rarible/types"; import type { GetAmmBuyInfoRequest } from "@rarible/ethereum-api-client/build/apis/OrderControllerApi"; import type { AmmTradeInfo } from "@rarible/ethereum-api-client/build/models"; import type { SimpleOrder } from "../types"; import type { SendFunction } from "../../common/send-transaction"; import type { RaribleEthereumApis } from "../../common/apis"; import type { EthereumNetwork, IRaribleEthereumSdkConfig } from "../../types"; import type { GetConfigByChainId } from "../../config"; import type { BuyOrderAction, FillOrderAction, FillOrderRequest, GetOrderBuyTxRequest, OrderFillTransactionData, SellOrderAction, TransactionData } from "./types"; import { RaribleV1OrderHandler } from "./rarible-v1"; import { RaribleV2OrderHandler } from "./rarible-v2"; import { OpenSeaOrderHandler } from "./open-sea"; import { CryptoPunksOrderHandler } from "./crypto-punks"; import { SeaportOrderHandler } from "./seaport"; import { X2Y2OrderHandler } from "./x2y2"; import { LooksrareOrderHandler } from "./looksrare"; import { AmmOrderHandler } from "./amm"; import { LooksrareV2OrderHandler } from "./looksrare-v2"; export declare class OrderFiller { private readonly ethereum; private readonly send; private readonly getApis; private readonly sdkConfig?; v1Handler: RaribleV1OrderHandler; v2Handler: RaribleV2OrderHandler; openSeaHandler: OpenSeaOrderHandler; punkHandler: CryptoPunksOrderHandler; seaportHandler: SeaportOrderHandler; looksrareHandler: LooksrareOrderHandler; looksrareV2Handler: LooksrareV2OrderHandler; x2y2Handler: X2Y2OrderHandler; ammHandler: AmmOrderHandler; private readonly checkAssetType; private checkLazyAssetType; constructor(ethereum: Maybe, send: SendFunction, getConfig: GetConfigByChainId, getApis: () => Promise, getBaseOrderFee: (type: SimpleOrder["type"]) => Promise, env: EthereumNetwork, sdkConfig?: IRaribleEthereumSdkConfig | undefined); private getFillAction; /** * @deprecated Use {@link buy} or {@link acceptBid} instead */ fill: FillOrderAction; /** * Buy order */ buy: BuyOrderAction; /** * Accept bid order */ acceptBid: SellOrderAction; getBuyTx({ request, from }: GetOrderBuyTxRequest): Promise; private invertOrder; private approveOrder; private sendTransaction; private getTransactionRequestData; getTransactionData(request: FillOrderRequest): Promise; getOrderFee(order: SimpleOrder): Promise; getFillOrderBaseFee(order: SimpleOrder, withOriginFees?: boolean): Promise; checkStartEndDates(order: SimpleOrder): void; getBuyAmmInfo(request: GetAmmBuyInfoRequest): Promise; isNonInvertableOrder(order: SimpleOrder): boolean; }