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 "../../common"; export interface IBadgerOrganizationInterface extends utils.Interface { functions: { "forfeit(uint256,uint256,bytes)": FunctionFragment; "mint(address,uint256,uint256,bytes)": FunctionFragment; "mintBatch(address[],uint256,uint256[],bytes)": FunctionFragment; "revoke(address,uint256,uint256)": FunctionFragment; "revokeBatch(address[],uint256,uint256[])": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "forfeit" | "mint" | "mintBatch" | "revoke" | "revokeBatch"): FunctionFragment; encodeFunctionData(functionFragment: "forfeit", values: [ PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: "mint", values: [ PromiseOrValue, PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: "mintBatch", values: [ PromiseOrValue[], PromiseOrValue, PromiseOrValue[], PromiseOrValue ]): string; encodeFunctionData(functionFragment: "revoke", values: [ PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: "revokeBatch", values: [ PromiseOrValue[], PromiseOrValue, PromiseOrValue[] ]): string; decodeFunctionResult(functionFragment: "forfeit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "mint", data: BytesLike): Result; decodeFunctionResult(functionFragment: "mintBatch", data: BytesLike): Result; decodeFunctionResult(functionFragment: "revoke", data: BytesLike): Result; decodeFunctionResult(functionFragment: "revokeBatch", data: BytesLike): Result; events: {}; } export interface IBadgerOrganization extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: IBadgerOrganizationInterface; 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: { forfeit(_id: PromiseOrValue, _amount: PromiseOrValue, _data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; mint(_to: PromiseOrValue, _id: PromiseOrValue, _amount: PromiseOrValue, _data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; mintBatch(_tos: PromiseOrValue[], _id: PromiseOrValue, _amounts: PromiseOrValue[], _data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; revoke(_from: PromiseOrValue, _id: PromiseOrValue, _amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; revokeBatch(_froms: PromiseOrValue[], _id: PromiseOrValue, _amounts: PromiseOrValue[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; forfeit(_id: PromiseOrValue, _amount: PromiseOrValue, _data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; mint(_to: PromiseOrValue, _id: PromiseOrValue, _amount: PromiseOrValue, _data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; mintBatch(_tos: PromiseOrValue[], _id: PromiseOrValue, _amounts: PromiseOrValue[], _data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; revoke(_from: PromiseOrValue, _id: PromiseOrValue, _amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; revokeBatch(_froms: PromiseOrValue[], _id: PromiseOrValue, _amounts: PromiseOrValue[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; callStatic: { forfeit(_id: PromiseOrValue, _amount: PromiseOrValue, _data: PromiseOrValue, overrides?: CallOverrides): Promise; mint(_to: PromiseOrValue, _id: PromiseOrValue, _amount: PromiseOrValue, _data: PromiseOrValue, overrides?: CallOverrides): Promise; mintBatch(_tos: PromiseOrValue[], _id: PromiseOrValue, _amounts: PromiseOrValue[], _data: PromiseOrValue, overrides?: CallOverrides): Promise; revoke(_from: PromiseOrValue, _id: PromiseOrValue, _amount: PromiseOrValue, overrides?: CallOverrides): Promise; revokeBatch(_froms: PromiseOrValue[], _id: PromiseOrValue, _amounts: PromiseOrValue[], overrides?: CallOverrides): Promise; }; filters: {}; estimateGas: { forfeit(_id: PromiseOrValue, _amount: PromiseOrValue, _data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; mint(_to: PromiseOrValue, _id: PromiseOrValue, _amount: PromiseOrValue, _data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; mintBatch(_tos: PromiseOrValue[], _id: PromiseOrValue, _amounts: PromiseOrValue[], _data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; revoke(_from: PromiseOrValue, _id: PromiseOrValue, _amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; revokeBatch(_froms: PromiseOrValue[], _id: PromiseOrValue, _amounts: PromiseOrValue[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; populateTransaction: { forfeit(_id: PromiseOrValue, _amount: PromiseOrValue, _data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; mint(_to: PromiseOrValue, _id: PromiseOrValue, _amount: PromiseOrValue, _data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; mintBatch(_tos: PromiseOrValue[], _id: PromiseOrValue, _amounts: PromiseOrValue[], _data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; revoke(_from: PromiseOrValue, _id: PromiseOrValue, _amount: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; revokeBatch(_froms: PromiseOrValue[], _id: PromiseOrValue, _amounts: PromiseOrValue[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; }