import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from "ethers"; import type { FunctionFragment, Result } from "@ethersproject/abi"; import type { Listener, Provider } from "@ethersproject/providers"; import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from "../../types/common"; export declare namespace DataTypes { type CreditStruct = { token: PromiseOrValue; amount: PromiseOrValue; orderId: PromiseOrValue; v: PromiseOrValue; r: PromiseOrValue; s: PromiseOrValue; }; type CreditStructOutput = [ string, BigNumber, string, number, string, string ] & { token: string; amount: BigNumber; orderId: string; v: number; r: string; s: string; }; type ERC721SupplyParamsStruct = { tokenId: PromiseOrValue; useAsCollateral: PromiseOrValue; }; type ERC721SupplyParamsStructOutput = [BigNumber, boolean] & { tokenId: BigNumber; useAsCollateral: boolean; }; } export interface IWPunkGatewayInterface extends utils.Interface { functions: { "acceptBidWithCredit(bytes32,bytes,(address,uint256,bytes,uint8,bytes32,bytes32),uint256[],uint16)": FunctionFragment; "batchAcceptBidWithCredit(bytes32[],bytes[],(address,uint256,bytes,uint8,bytes32,bytes32)[],uint256[],uint16)": FunctionFragment; "supplyPunk((uint256,bool)[],address,uint16)": FunctionFragment; "withdrawPunk(uint256[],address)": FunctionFragment; "withdrawPunkWithPermit(uint256[],address,uint256,uint8,bytes32,bytes32)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "acceptBidWithCredit" | "batchAcceptBidWithCredit" | "supplyPunk" | "withdrawPunk" | "withdrawPunkWithPermit"): FunctionFragment; encodeFunctionData(functionFragment: "acceptBidWithCredit", values: [ PromiseOrValue, PromiseOrValue, DataTypes.CreditStruct, PromiseOrValue[], PromiseOrValue ]): string; encodeFunctionData(functionFragment: "batchAcceptBidWithCredit", values: [ PromiseOrValue[], PromiseOrValue[], DataTypes.CreditStruct[], PromiseOrValue[], PromiseOrValue ]): string; encodeFunctionData(functionFragment: "supplyPunk", values: [ DataTypes.ERC721SupplyParamsStruct[], PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: "withdrawPunk", values: [PromiseOrValue[], PromiseOrValue]): string; encodeFunctionData(functionFragment: "withdrawPunkWithPermit", values: [ PromiseOrValue[], PromiseOrValue, PromiseOrValue, PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; decodeFunctionResult(functionFragment: "acceptBidWithCredit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "batchAcceptBidWithCredit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "supplyPunk", data: BytesLike): Result; decodeFunctionResult(functionFragment: "withdrawPunk", data: BytesLike): Result; decodeFunctionResult(functionFragment: "withdrawPunkWithPermit", data: BytesLike): Result; events: {}; } export interface IWPunkGateway extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: IWPunkGatewayInterface; queryFilter(event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>; listeners(eventFilter?: TypedEventFilter): Array>; listeners(eventName?: string): Array; removeAllListeners(eventFilter: TypedEventFilter): this; removeAllListeners(eventName?: string): this; off: OnEvent; on: OnEvent; once: OnEvent; removeListener: OnEvent; functions: { acceptBidWithCredit(marketplaceId: PromiseOrValue, payload: PromiseOrValue, credit: DataTypes.CreditStruct, punkIndexes: PromiseOrValue[], referralCode: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; batchAcceptBidWithCredit(marketplaceIds: PromiseOrValue[], payloads: PromiseOrValue[], credits: DataTypes.CreditStruct[], punkIndexes: PromiseOrValue[], referralCode: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; supplyPunk(punkIndexes: DataTypes.ERC721SupplyParamsStruct[], onBehalfOf: PromiseOrValue, referralCode: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; withdrawPunk(punkIndexes: PromiseOrValue[], to: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; withdrawPunkWithPermit(punkIndexes: PromiseOrValue[], to: PromiseOrValue, deadline: PromiseOrValue, permitV: PromiseOrValue, permitR: PromiseOrValue, permitS: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; acceptBidWithCredit(marketplaceId: PromiseOrValue, payload: PromiseOrValue, credit: DataTypes.CreditStruct, punkIndexes: PromiseOrValue[], referralCode: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; batchAcceptBidWithCredit(marketplaceIds: PromiseOrValue[], payloads: PromiseOrValue[], credits: DataTypes.CreditStruct[], punkIndexes: PromiseOrValue[], referralCode: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; supplyPunk(punkIndexes: DataTypes.ERC721SupplyParamsStruct[], onBehalfOf: PromiseOrValue, referralCode: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; withdrawPunk(punkIndexes: PromiseOrValue[], to: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; withdrawPunkWithPermit(punkIndexes: PromiseOrValue[], to: PromiseOrValue, deadline: PromiseOrValue, permitV: PromiseOrValue, permitR: PromiseOrValue, permitS: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; callStatic: { acceptBidWithCredit(marketplaceId: PromiseOrValue, payload: PromiseOrValue, credit: DataTypes.CreditStruct, punkIndexes: PromiseOrValue[], referralCode: PromiseOrValue, overrides?: CallOverrides): Promise; batchAcceptBidWithCredit(marketplaceIds: PromiseOrValue[], payloads: PromiseOrValue[], credits: DataTypes.CreditStruct[], punkIndexes: PromiseOrValue[], referralCode: PromiseOrValue, overrides?: CallOverrides): Promise; supplyPunk(punkIndexes: DataTypes.ERC721SupplyParamsStruct[], onBehalfOf: PromiseOrValue, referralCode: PromiseOrValue, overrides?: CallOverrides): Promise; withdrawPunk(punkIndexes: PromiseOrValue[], to: PromiseOrValue, overrides?: CallOverrides): Promise; withdrawPunkWithPermit(punkIndexes: PromiseOrValue[], to: PromiseOrValue, deadline: PromiseOrValue, permitV: PromiseOrValue, permitR: PromiseOrValue, permitS: PromiseOrValue, overrides?: CallOverrides): Promise; }; filters: {}; estimateGas: { acceptBidWithCredit(marketplaceId: PromiseOrValue, payload: PromiseOrValue, credit: DataTypes.CreditStruct, punkIndexes: PromiseOrValue[], referralCode: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; batchAcceptBidWithCredit(marketplaceIds: PromiseOrValue[], payloads: PromiseOrValue[], credits: DataTypes.CreditStruct[], punkIndexes: PromiseOrValue[], referralCode: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; supplyPunk(punkIndexes: DataTypes.ERC721SupplyParamsStruct[], onBehalfOf: PromiseOrValue, referralCode: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; withdrawPunk(punkIndexes: PromiseOrValue[], to: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; withdrawPunkWithPermit(punkIndexes: PromiseOrValue[], to: PromiseOrValue, deadline: PromiseOrValue, permitV: PromiseOrValue, permitR: PromiseOrValue, permitS: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; populateTransaction: { acceptBidWithCredit(marketplaceId: PromiseOrValue, payload: PromiseOrValue, credit: DataTypes.CreditStruct, punkIndexes: PromiseOrValue[], referralCode: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; batchAcceptBidWithCredit(marketplaceIds: PromiseOrValue[], payloads: PromiseOrValue[], credits: DataTypes.CreditStruct[], punkIndexes: PromiseOrValue[], referralCode: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; supplyPunk(punkIndexes: DataTypes.ERC721SupplyParamsStruct[], onBehalfOf: PromiseOrValue, referralCode: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; withdrawPunk(punkIndexes: PromiseOrValue[], to: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; withdrawPunkWithPermit(punkIndexes: PromiseOrValue[], to: PromiseOrValue, deadline: PromiseOrValue, permitV: PromiseOrValue, permitR: PromiseOrValue, permitS: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; } //# sourceMappingURL=IWPunkGateway.d.ts.map