import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "./common"; export interface ArianeeWhitelistInterface extends Interface { getFunction(nameOrSignature: "grantAbilities" | "isBlacklisted" | "addressToAbility" | "isAuthorized" | "isWhitelisted" | "addWhitelistedAddress" | "revokeAbilities" | "isAble" | "addBlacklistedAddress"): FunctionFragment; getEvent(nameOrSignatureOrTopic: "WhitelistedAddressAdded" | "BlacklistedAddresAdded" | "GrantAbilities" | "RevokeAbilities"): EventFragment; encodeFunctionData(functionFragment: "grantAbilities", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "isBlacklisted", values: [AddressLike, AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "addressToAbility", values: [AddressLike]): string; encodeFunctionData(functionFragment: "isAuthorized", values: [BigNumberish, AddressLike, AddressLike]): string; encodeFunctionData(functionFragment: "isWhitelisted", values: [BigNumberish, AddressLike]): string; encodeFunctionData(functionFragment: "addWhitelistedAddress", values: [BigNumberish, AddressLike]): string; encodeFunctionData(functionFragment: "revokeAbilities", values: [AddressLike, BigNumberish, boolean]): string; encodeFunctionData(functionFragment: "isAble", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "addBlacklistedAddress", values: [AddressLike, BigNumberish, boolean]): string; decodeFunctionResult(functionFragment: "grantAbilities", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isBlacklisted", data: BytesLike): Result; decodeFunctionResult(functionFragment: "addressToAbility", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isAuthorized", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isWhitelisted", data: BytesLike): Result; decodeFunctionResult(functionFragment: "addWhitelistedAddress", data: BytesLike): Result; decodeFunctionResult(functionFragment: "revokeAbilities", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isAble", data: BytesLike): Result; decodeFunctionResult(functionFragment: "addBlacklistedAddress", data: BytesLike): Result; } export declare namespace WhitelistedAddressAddedEvent { type InputTuple = [_tokenId: BigNumberish, _address: AddressLike]; type OutputTuple = [_tokenId: bigint, _address: string]; interface OutputObject { _tokenId: bigint; _address: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace BlacklistedAddresAddedEvent { type InputTuple = [ _sender: AddressLike, _tokenId: BigNumberish, _activate: boolean ]; type OutputTuple = [ _sender: string, _tokenId: bigint, _activate: boolean ]; interface OutputObject { _sender: string; _tokenId: bigint; _activate: boolean; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace GrantAbilitiesEvent { type InputTuple = [_target: AddressLike, _abilities: BigNumberish]; type OutputTuple = [_target: string, _abilities: bigint]; interface OutputObject { _target: string; _abilities: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace RevokeAbilitiesEvent { type InputTuple = [_target: AddressLike, _abilities: BigNumberish]; type OutputTuple = [_target: string, _abilities: bigint]; interface OutputObject { _target: string; _abilities: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export interface ArianeeWhitelist extends BaseContract { connect(runner?: ContractRunner | null): ArianeeWhitelist; waitForDeployment(): Promise; interface: ArianeeWhitelistInterface; 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; grantAbilities: TypedContractMethod<[ _target: AddressLike, _abilities: BigNumberish ], [ void ], "nonpayable">; isBlacklisted: TypedContractMethod<[ _owner: AddressLike, _sender: AddressLike, _tokenId: BigNumberish ], [ boolean ], "view">; addressToAbility: TypedContractMethod<[arg0: AddressLike], [bigint], "view">; isAuthorized: TypedContractMethod<[ _tokenId: BigNumberish, _sender: AddressLike, _tokenOwner: AddressLike ], [ boolean ], "view">; isWhitelisted: TypedContractMethod<[ _tokenId: BigNumberish, _address: AddressLike ], [ boolean ], "view">; addWhitelistedAddress: TypedContractMethod<[ _tokenId: BigNumberish, _address: AddressLike ], [ void ], "nonpayable">; revokeAbilities: TypedContractMethod<[ _target: AddressLike, _abilities: BigNumberish, _allowSuperRevoke: boolean ], [ void ], "nonpayable">; isAble: TypedContractMethod<[ _target: AddressLike, _abilities: BigNumberish ], [ boolean ], "view">; addBlacklistedAddress: TypedContractMethod<[ _sender: AddressLike, _tokenId: BigNumberish, _activate: boolean ], [ void ], "nonpayable">; getFunction(key: string | FunctionFragment): T; getFunction(nameOrSignature: "grantAbilities"): TypedContractMethod<[ _target: AddressLike, _abilities: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "isBlacklisted"): TypedContractMethod<[ _owner: AddressLike, _sender: AddressLike, _tokenId: BigNumberish ], [ boolean ], "view">; getFunction(nameOrSignature: "addressToAbility"): TypedContractMethod<[arg0: AddressLike], [bigint], "view">; getFunction(nameOrSignature: "isAuthorized"): TypedContractMethod<[ _tokenId: BigNumberish, _sender: AddressLike, _tokenOwner: AddressLike ], [ boolean ], "view">; getFunction(nameOrSignature: "isWhitelisted"): TypedContractMethod<[ _tokenId: BigNumberish, _address: AddressLike ], [ boolean ], "view">; getFunction(nameOrSignature: "addWhitelistedAddress"): TypedContractMethod<[ _tokenId: BigNumberish, _address: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "revokeAbilities"): TypedContractMethod<[ _target: AddressLike, _abilities: BigNumberish, _allowSuperRevoke: boolean ], [ void ], "nonpayable">; getFunction(nameOrSignature: "isAble"): TypedContractMethod<[ _target: AddressLike, _abilities: BigNumberish ], [ boolean ], "view">; getFunction(nameOrSignature: "addBlacklistedAddress"): TypedContractMethod<[ _sender: AddressLike, _tokenId: BigNumberish, _activate: boolean ], [ void ], "nonpayable">; getEvent(key: "WhitelistedAddressAdded"): TypedContractEvent; getEvent(key: "BlacklistedAddresAdded"): TypedContractEvent; getEvent(key: "GrantAbilities"): TypedContractEvent; getEvent(key: "RevokeAbilities"): TypedContractEvent; filters: { "WhitelistedAddressAdded(uint256,address)": TypedContractEvent; WhitelistedAddressAdded: TypedContractEvent; "BlacklistedAddresAdded(address,uint256,bool)": TypedContractEvent; BlacklistedAddresAdded: TypedContractEvent; "GrantAbilities(address,uint256)": TypedContractEvent; GrantAbilities: TypedContractEvent; "RevokeAbilities(address,uint256)": TypedContractEvent; RevokeAbilities: TypedContractEvent; }; }