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 } from "../../common"; export type PartyStruct = { wallet: string; token: string; kind: BytesLike; id: BigNumberish; amount: BigNumberish; }; export type PartyStructOutput = [ string, string, string, BigNumber, BigNumber ] & { wallet: string; token: string; kind: string; id: BigNumber; amount: BigNumber; }; export interface IAdapterInterface extends utils.Interface { functions: { "hasAllowance((address,address,bytes4,uint256,uint256))": FunctionFragment; "hasBalance((address,address,bytes4,uint256,uint256))": FunctionFragment; "hasValidParams((address,address,bytes4,uint256,uint256))": FunctionFragment; "interfaceId()": FunctionFragment; "transfer(address,address,uint256,uint256,address)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "hasAllowance" | "hasBalance" | "hasValidParams" | "interfaceId" | "transfer"): FunctionFragment; encodeFunctionData(functionFragment: "hasAllowance", values: [PartyStruct]): string; encodeFunctionData(functionFragment: "hasBalance", values: [PartyStruct]): string; encodeFunctionData(functionFragment: "hasValidParams", values: [PartyStruct]): string; encodeFunctionData(functionFragment: "interfaceId", values?: undefined): string; encodeFunctionData(functionFragment: "transfer", values: [string, string, BigNumberish, BigNumberish, string]): string; decodeFunctionResult(functionFragment: "hasAllowance", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hasBalance", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hasValidParams", data: BytesLike): Result; decodeFunctionResult(functionFragment: "interfaceId", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transfer", data: BytesLike): Result; events: {}; } export interface IAdapter extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: IAdapterInterface; 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: { hasAllowance(party: PartyStruct, overrides?: CallOverrides): Promise<[boolean]>; hasBalance(party: PartyStruct, overrides?: CallOverrides): Promise<[boolean]>; hasValidParams(party: PartyStruct, overrides?: CallOverrides): Promise<[boolean]>; interfaceId(overrides?: CallOverrides): Promise<[string]>; transfer(from: string, to: string, amount: BigNumberish, id: BigNumberish, token: string, overrides?: Overrides & { from?: string; }): Promise; }; hasAllowance(party: PartyStruct, overrides?: CallOverrides): Promise; hasBalance(party: PartyStruct, overrides?: CallOverrides): Promise; hasValidParams(party: PartyStruct, overrides?: CallOverrides): Promise; interfaceId(overrides?: CallOverrides): Promise; transfer(from: string, to: string, amount: BigNumberish, id: BigNumberish, token: string, overrides?: Overrides & { from?: string; }): Promise; callStatic: { hasAllowance(party: PartyStruct, overrides?: CallOverrides): Promise; hasBalance(party: PartyStruct, overrides?: CallOverrides): Promise; hasValidParams(party: PartyStruct, overrides?: CallOverrides): Promise; interfaceId(overrides?: CallOverrides): Promise; transfer(from: string, to: string, amount: BigNumberish, id: BigNumberish, token: string, overrides?: CallOverrides): Promise; }; filters: {}; estimateGas: { hasAllowance(party: PartyStruct, overrides?: CallOverrides): Promise; hasBalance(party: PartyStruct, overrides?: CallOverrides): Promise; hasValidParams(party: PartyStruct, overrides?: CallOverrides): Promise; interfaceId(overrides?: CallOverrides): Promise; transfer(from: string, to: string, amount: BigNumberish, id: BigNumberish, token: string, overrides?: Overrides & { from?: string; }): Promise; }; populateTransaction: { hasAllowance(party: PartyStruct, overrides?: CallOverrides): Promise; hasBalance(party: PartyStruct, overrides?: CallOverrides): Promise; hasValidParams(party: PartyStruct, overrides?: CallOverrides): Promise; interfaceId(overrides?: CallOverrides): Promise; transfer(from: string, to: string, amount: BigNumberish, id: BigNumberish, token: string, overrides?: Overrides & { from?: string; }): Promise; }; }