import type { EVMAddress } from "@rarible/types"; import type { Ethereum } from "@rarible/ethereum-provider"; import type { Maybe } from "@rarible/types"; import type { SendFunction } from "../../common/send-transaction"; import type { SimpleLegacyOrder } from "../types"; import type { SimpleOrder } from "../types"; import type { IRaribleEthereumSdkConfig } from "../../types"; import type { GetConfigByChainId } from "../../config"; import type { RaribleEthereumApis } from "../../common/apis"; import type { LegacyOrderFillRequest, OrderFillSendData, OrderHandler } from "./types"; export declare class RaribleV1OrderHandler implements OrderHandler { private readonly ethereum; private readonly getApis; private readonly send; private readonly getConfig; private readonly getBaseOrderFeeConfig; private readonly sdkConfig?; constructor(ethereum: Maybe, getApis: () => Promise, send: SendFunction, getConfig: GetConfigByChainId, getBaseOrderFeeConfig: (type: SimpleOrder["type"]) => Promise, sdkConfig?: IRaribleEthereumSdkConfig | undefined); invert(request: LegacyOrderFillRequest, maker: EVMAddress): SimpleLegacyOrder; approve(order: SimpleLegacyOrder, infinite: boolean): Promise; getFillOrderBaseFee(): Promise; getOrderFee(order: SimpleLegacyOrder): number; getTransactionData(initial: SimpleLegacyOrder, inverted: SimpleLegacyOrder, request: LegacyOrderFillRequest): Promise; } export declare function toStructLegacyOrder(order: SimpleLegacyOrder): { key: { owner: EVMAddress; salt: import("@rarible/types").Word; sellAsset: { token: EVMAddress | import("@rarible/types").Address; tokenId: import("@rarible/types").BigNumberLike; assetType: number; }; buyAsset: { token: EVMAddress | import("@rarible/types").Address; tokenId: import("@rarible/types").BigNumberLike; assetType: number; }; }; selling: import("@rarible/types").BigNumberLike; buying: import("@rarible/types").BigNumberLike; sellerFee: number; }; export declare function toStructLegacyOrderKey(order: SimpleLegacyOrder): { owner: EVMAddress; salt: import("@rarible/types").Word; sellAsset: { token: EVMAddress | import("@rarible/types").Address; tokenId: import("@rarible/types").BigNumberLike; assetType: number; }; buyAsset: { token: EVMAddress | import("@rarible/types").Address; tokenId: import("@rarible/types").BigNumberLike; assetType: number; }; };