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 ArianeeCreditHistoryInterface extends Interface { getFunction(nameOrSignature: "ArianeeCreditHistoryStorageV0Location" | "DEFAULT_ADMIN_ROLE" | "addCreditHistory" | "arianeeStoreAddress" | "balanceOf" | "consumeCredits" | "getRoleAdmin" | "grantRole" | "hasRole" | "initialize" | "isTrustedForwarder" | "renounceRole" | "revokeRole" | "supportsInterface" | "trustedForwarder" | "userCreditHistory" | "userIndex"): FunctionFragment; getEvent(nameOrSignatureOrTopic: "Initialized" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked"): EventFragment; encodeFunctionData(functionFragment: "ArianeeCreditHistoryStorageV0Location", values?: undefined): string; encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; encodeFunctionData(functionFragment: "addCreditHistory", values: [AddressLike, BigNumberish, BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "arianeeStoreAddress", values?: undefined): string; encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "consumeCredits", values: [AddressLike, BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; encodeFunctionData(functionFragment: "initialize", values: [AddressLike, AddressLike]): string; encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; encodeFunctionData(functionFragment: "trustedForwarder", values?: undefined): string; encodeFunctionData(functionFragment: "userCreditHistory", values: [AddressLike, BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "userIndex", values: [AddressLike, BigNumberish]): string; decodeFunctionResult(functionFragment: "ArianeeCreditHistoryStorageV0Location", data: BytesLike): Result; decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; decodeFunctionResult(functionFragment: "addCreditHistory", data: BytesLike): Result; decodeFunctionResult(functionFragment: "arianeeStoreAddress", data: BytesLike): Result; decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; decodeFunctionResult(functionFragment: "consumeCredits", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; decodeFunctionResult(functionFragment: "trustedForwarder", data: BytesLike): Result; decodeFunctionResult(functionFragment: "userCreditHistory", data: BytesLike): Result; decodeFunctionResult(functionFragment: "userIndex", data: BytesLike): Result; } export declare namespace InitializedEvent { type InputTuple = [version: BigNumberish]; type OutputTuple = [version: bigint]; interface OutputObject { version: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace RoleAdminChangedEvent { type InputTuple = [ role: BytesLike, previousAdminRole: BytesLike, newAdminRole: BytesLike ]; type OutputTuple = [ role: string, previousAdminRole: string, newAdminRole: string ]; interface OutputObject { role: string; previousAdminRole: string; newAdminRole: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace RoleGrantedEvent { type InputTuple = [ role: BytesLike, account: AddressLike, sender: AddressLike ]; type OutputTuple = [role: string, account: string, sender: string]; interface OutputObject { role: string; account: string; sender: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace RoleRevokedEvent { type InputTuple = [ role: BytesLike, account: AddressLike, sender: AddressLike ]; type OutputTuple = [role: string, account: string, sender: string]; interface OutputObject { role: string; account: string; sender: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export interface ArianeeCreditHistory extends BaseContract { connect(runner?: ContractRunner | null): ArianeeCreditHistory; waitForDeployment(): Promise; interface: ArianeeCreditHistoryInterface; 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; ArianeeCreditHistoryStorageV0Location: TypedContractMethod<[ ], [ string ], "view">; DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; addCreditHistory: TypedContractMethod<[ _spender: AddressLike, _price: BigNumberish, _quantity: BigNumberish, _type: BigNumberish ], [ void ], "nonpayable">; arianeeStoreAddress: TypedContractMethod<[], [string], "view">; balanceOf: TypedContractMethod<[ _spender: AddressLike, _type: BigNumberish ], [ bigint ], "view">; consumeCredits: TypedContractMethod<[ _spender: AddressLike, _type: BigNumberish, _quantity: BigNumberish ], [ bigint ], "nonpayable">; getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; grantRole: TypedContractMethod<[ role: BytesLike, account: AddressLike ], [ void ], "nonpayable">; hasRole: TypedContractMethod<[ role: BytesLike, account: AddressLike ], [ boolean ], "view">; initialize: TypedContractMethod<[ _initialAdmin: AddressLike, _storeAddress: AddressLike ], [ void ], "nonpayable">; isTrustedForwarder: TypedContractMethod<[ forwarder: AddressLike ], [ boolean ], "view">; renounceRole: TypedContractMethod<[ role: BytesLike, callerConfirmation: AddressLike ], [ void ], "nonpayable">; revokeRole: TypedContractMethod<[ role: BytesLike, account: AddressLike ], [ void ], "nonpayable">; supportsInterface: TypedContractMethod<[ interfaceId: BytesLike ], [ boolean ], "view">; trustedForwarder: TypedContractMethod<[], [string], "view">; userCreditHistory: TypedContractMethod<[ _spender: AddressLike, _type: BigNumberish, _index: BigNumberish ], [ [bigint, bigint] & { _price: bigint; _quantity: bigint; } ], "view">; userIndex: TypedContractMethod<[ _spender: AddressLike, _type: BigNumberish ], [ bigint ], "view">; getFunction(key: string | FunctionFragment): T; getFunction(nameOrSignature: "ArianeeCreditHistoryStorageV0Location"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "addCreditHistory"): TypedContractMethod<[ _spender: AddressLike, _price: BigNumberish, _quantity: BigNumberish, _type: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "arianeeStoreAddress"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ _spender: AddressLike, _type: BigNumberish ], [ bigint ], "view">; getFunction(nameOrSignature: "consumeCredits"): TypedContractMethod<[ _spender: AddressLike, _type: BigNumberish, _quantity: BigNumberish ], [ bigint ], "nonpayable">; getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ role: BytesLike, account: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ role: BytesLike, account: AddressLike ], [ boolean ], "view">; getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ _initialAdmin: AddressLike, _storeAddress: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ role: BytesLike, callerConfirmation: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ role: BytesLike, account: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; getFunction(nameOrSignature: "trustedForwarder"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "userCreditHistory"): TypedContractMethod<[ _spender: AddressLike, _type: BigNumberish, _index: BigNumberish ], [ [bigint, bigint] & { _price: bigint; _quantity: bigint; } ], "view">; getFunction(nameOrSignature: "userIndex"): TypedContractMethod<[ _spender: AddressLike, _type: BigNumberish ], [ bigint ], "view">; getEvent(key: "Initialized"): TypedContractEvent; getEvent(key: "RoleAdminChanged"): TypedContractEvent; getEvent(key: "RoleGranted"): TypedContractEvent; getEvent(key: "RoleRevoked"): TypedContractEvent; filters: { "Initialized(uint64)": TypedContractEvent; Initialized: TypedContractEvent; "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; RoleAdminChanged: TypedContractEvent; "RoleGranted(bytes32,address,address)": TypedContractEvent; RoleGranted: TypedContractEvent; "RoleRevoked(bytes32,address,address)": TypedContractEvent; RoleRevoked: TypedContractEvent; }; }