import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; export declare namespace IEventHub { type EventStruct = { tokenId: BigNumberish; uri: string; imprint: BytesLike; destroyLimitTimestamp: BigNumberish; issuer: AddressLike; accepted: boolean; batchIndex: BigNumberish; }; type EventStructOutput = [ tokenId: bigint, uri: string, imprint: string, destroyLimitTimestamp: bigint, issuer: string, accepted: boolean, batchIndex: bigint ] & { tokenId: bigint; uri: string; imprint: string; destroyLimitTimestamp: bigint; issuer: string; accepted: boolean; batchIndex: bigint; }; } export interface IEventHubInterface extends Interface { getFunction(nameOrSignature: "acceptEvent" | "createAndAcceptEvent" | "createEvent" | "creditManager" | "destroyEvent" | "eventIdToEventsIndex" | "events" | "getEventData" | "refuseEvent" | "rulesManager" | "tokenIdToEvents"): FunctionFragment; encodeFunctionData(functionFragment: "acceptEvent", values: [AddressLike, BigNumberish, AddressLike]): string; encodeFunctionData(functionFragment: "createAndAcceptEvent", values: [ AddressLike, BigNumberish, BigNumberish, BytesLike, string, AddressLike ]): string; encodeFunctionData(functionFragment: "createEvent", values: [ AddressLike, BigNumberish, BigNumberish, BytesLike, string, AddressLike ]): string; encodeFunctionData(functionFragment: "creditManager", values?: undefined): string; encodeFunctionData(functionFragment: "destroyEvent", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "eventIdToEventsIndex", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "events", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "getEventData", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "refuseEvent", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "rulesManager", values?: undefined): string; encodeFunctionData(functionFragment: "tokenIdToEvents", values: [AddressLike, BigNumberish, BigNumberish]): string; decodeFunctionResult(functionFragment: "acceptEvent", data: BytesLike): Result; decodeFunctionResult(functionFragment: "createAndAcceptEvent", data: BytesLike): Result; decodeFunctionResult(functionFragment: "createEvent", data: BytesLike): Result; decodeFunctionResult(functionFragment: "creditManager", data: BytesLike): Result; decodeFunctionResult(functionFragment: "destroyEvent", data: BytesLike): Result; decodeFunctionResult(functionFragment: "eventIdToEventsIndex", data: BytesLike): Result; decodeFunctionResult(functionFragment: "events", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getEventData", data: BytesLike): Result; decodeFunctionResult(functionFragment: "refuseEvent", data: BytesLike): Result; decodeFunctionResult(functionFragment: "rulesManager", data: BytesLike): Result; decodeFunctionResult(functionFragment: "tokenIdToEvents", data: BytesLike): Result; } export interface IEventHub extends BaseContract { connect(runner?: ContractRunner | null): IEventHub; waitForDeployment(): Promise; interface: IEventHubInterface; queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; on(event: TCEvent, listener: TypedListener): Promise; on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; once(event: TCEvent, listener: TypedListener): Promise; once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; listeners(event: TCEvent): Promise>>; listeners(eventName?: string): Promise>; removeAllListeners(event?: TCEvent): Promise; acceptEvent: TypedContractMethod<[ tokenAddress: AddressLike, eventId: BigNumberish, walletProvider: AddressLike ], [ void ], "nonpayable">; createAndAcceptEvent: TypedContractMethod<[ tokenAddress: AddressLike, eventId: BigNumberish, tokenId: BigNumberish, imprint: BytesLike, uri: string, creatorProvider: AddressLike ], [ void ], "nonpayable">; createEvent: TypedContractMethod<[ tokenAddress: AddressLike, eventId: BigNumberish, tokenId: BigNumberish, imprint: BytesLike, uri: string, creatorProvider: AddressLike ], [ void ], "nonpayable">; creditManager: TypedContractMethod<[], [string], "view">; destroyEvent: TypedContractMethod<[ tokenAddress: AddressLike, eventId: BigNumberish ], [ void ], "nonpayable">; eventIdToEventsIndex: TypedContractMethod<[ arg0: AddressLike, arg1: BigNumberish ], [ bigint ], "view">; events: TypedContractMethod<[ arg0: AddressLike, arg1: BigNumberish ], [ [ bigint, string, string, bigint, string, boolean, bigint ] & { tokenId: bigint; uri: string; imprint: string; destroyLimitTimestamp: bigint; issuer: string; accepted: boolean; batchIndex: bigint; } ], "view">; getEventData: TypedContractMethod<[ tokenAddress: AddressLike, eventId: BigNumberish ], [ IEventHub.EventStructOutput ], "view">; refuseEvent: TypedContractMethod<[ tokenAddress: AddressLike, eventId: BigNumberish ], [ void ], "nonpayable">; rulesManager: TypedContractMethod<[], [string], "view">; tokenIdToEvents: TypedContractMethod<[ arg0: AddressLike, arg1: BigNumberish, arg2: BigNumberish ], [ bigint ], "view">; getFunction(key: string | FunctionFragment): T; getFunction(nameOrSignature: "acceptEvent"): TypedContractMethod<[ tokenAddress: AddressLike, eventId: BigNumberish, walletProvider: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "createAndAcceptEvent"): TypedContractMethod<[ tokenAddress: AddressLike, eventId: BigNumberish, tokenId: BigNumberish, imprint: BytesLike, uri: string, creatorProvider: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "createEvent"): TypedContractMethod<[ tokenAddress: AddressLike, eventId: BigNumberish, tokenId: BigNumberish, imprint: BytesLike, uri: string, creatorProvider: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "creditManager"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "destroyEvent"): TypedContractMethod<[ tokenAddress: AddressLike, eventId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "eventIdToEventsIndex"): TypedContractMethod<[ arg0: AddressLike, arg1: BigNumberish ], [ bigint ], "view">; getFunction(nameOrSignature: "events"): TypedContractMethod<[ arg0: AddressLike, arg1: BigNumberish ], [ [ bigint, string, string, bigint, string, boolean, bigint ] & { tokenId: bigint; uri: string; imprint: string; destroyLimitTimestamp: bigint; issuer: string; accepted: boolean; batchIndex: bigint; } ], "view">; getFunction(nameOrSignature: "getEventData"): TypedContractMethod<[ tokenAddress: AddressLike, eventId: BigNumberish ], [ IEventHub.EventStructOutput ], "view">; getFunction(nameOrSignature: "refuseEvent"): TypedContractMethod<[ tokenAddress: AddressLike, eventId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "rulesManager"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "tokenIdToEvents"): TypedContractMethod<[ arg0: AddressLike, arg1: BigNumberish, arg2: BigNumberish ], [ bigint ], "view">; filters: {}; }