import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedListener, TypedContractMethod } from "../../common"; export interface ICreditManagerInterface extends Interface { getFunction(nameOrSignature: "acceptedToken" | "ariaUsdExchangeRate" | "balanceOf" | "buyCredit" | "consumeCredit(address,address,address,address)" | "consumeCredit(address,address)" | "creditBatches" | "creditHistory" | "creditHistoryIndex" | "creditPriceUSD" | "dispatchPercent" | "exchangeModifier" | "getCreditPriceUsd" | "infraAddress" | "protocolAddress" | "rewardClaim" | "setAriaUsdExchangeRate" | "setCreditPriceUsd" | "setDispatchPercent" | "setExchangeModifier" | "setInfraAddress" | "setProtocolAddress" | "totalCredits"): FunctionFragment; encodeFunctionData(functionFragment: "acceptedToken", values?: undefined): string; encodeFunctionData(functionFragment: "ariaUsdExchangeRate", values?: undefined): string; encodeFunctionData(functionFragment: "balanceOf", values: [AddressLike, AddressLike]): string; encodeFunctionData(functionFragment: "buyCredit", values: [AddressLike, BigNumberish, AddressLike]): string; encodeFunctionData(functionFragment: "consumeCredit(address,address,address,address)", values: [AddressLike, AddressLike, AddressLike, AddressLike]): string; encodeFunctionData(functionFragment: "consumeCredit(address,address)", values: [AddressLike, AddressLike]): string; encodeFunctionData(functionFragment: "creditBatches", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "creditHistory", values: [AddressLike, AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "creditHistoryIndex", values: [AddressLike, AddressLike]): string; encodeFunctionData(functionFragment: "creditPriceUSD", values: [AddressLike]): string; encodeFunctionData(functionFragment: "dispatchPercent", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "exchangeModifier", values?: undefined): string; encodeFunctionData(functionFragment: "getCreditPriceUsd", values: [AddressLike]): string; encodeFunctionData(functionFragment: "infraAddress", values?: undefined): string; encodeFunctionData(functionFragment: "protocolAddress", values?: undefined): string; encodeFunctionData(functionFragment: "rewardClaim", values: [BigNumberish, AddressLike, AddressLike]): string; encodeFunctionData(functionFragment: "setAriaUsdExchangeRate", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "setCreditPriceUsd", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "setDispatchPercent", values: [ BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish ]): string; encodeFunctionData(functionFragment: "setExchangeModifier", values: [AddressLike]): string; encodeFunctionData(functionFragment: "setInfraAddress", values: [AddressLike]): string; encodeFunctionData(functionFragment: "setProtocolAddress", values: [AddressLike]): string; encodeFunctionData(functionFragment: "totalCredits", values: [AddressLike, AddressLike]): string; decodeFunctionResult(functionFragment: "acceptedToken", data: BytesLike): Result; decodeFunctionResult(functionFragment: "ariaUsdExchangeRate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "balanceOf", data: BytesLike): Result; decodeFunctionResult(functionFragment: "buyCredit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "consumeCredit(address,address,address,address)", data: BytesLike): Result; decodeFunctionResult(functionFragment: "consumeCredit(address,address)", data: BytesLike): Result; decodeFunctionResult(functionFragment: "creditBatches", data: BytesLike): Result; decodeFunctionResult(functionFragment: "creditHistory", data: BytesLike): Result; decodeFunctionResult(functionFragment: "creditHistoryIndex", data: BytesLike): Result; decodeFunctionResult(functionFragment: "creditPriceUSD", data: BytesLike): Result; decodeFunctionResult(functionFragment: "dispatchPercent", data: BytesLike): Result; decodeFunctionResult(functionFragment: "exchangeModifier", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getCreditPriceUsd", data: BytesLike): Result; decodeFunctionResult(functionFragment: "infraAddress", data: BytesLike): Result; decodeFunctionResult(functionFragment: "protocolAddress", data: BytesLike): Result; decodeFunctionResult(functionFragment: "rewardClaim", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setAriaUsdExchangeRate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setCreditPriceUsd", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setDispatchPercent", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setExchangeModifier", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setInfraAddress", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setProtocolAddress", data: BytesLike): Result; decodeFunctionResult(functionFragment: "totalCredits", data: BytesLike): Result; } export interface ICreditManager extends BaseContract { connect(runner?: ContractRunner | null): ICreditManager; waitForDeployment(): Promise; interface: ICreditManagerInterface; 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; acceptedToken: TypedContractMethod<[], [string], "view">; ariaUsdExchangeRate: TypedContractMethod<[], [bigint], "view">; balanceOf: TypedContractMethod<[ _creditOwner: AddressLike, _contract: AddressLike ], [ bigint ], "view">; buyCredit: TypedContractMethod<[ _contract: AddressLike, _quantity: BigNumberish, _receiver: AddressLike ], [ void ], "nonpayable">; "consumeCredit(address,address,address,address)": TypedContractMethod<[ _spender: AddressLike, _creatorProvider: AddressLike, _consumerProvider: AddressLike, _firstOwner: AddressLike ], [ void ], "nonpayable">; "consumeCredit(address,address)": TypedContractMethod<[ _spender: AddressLike, _creatorProvider: AddressLike ], [ bigint ], "nonpayable">; creditBatches: TypedContractMethod<[ arg0: BigNumberish ], [ [ bigint, bigint, string ] & { price: bigint; quantity: bigint; contractAddress: string; } ], "view">; creditHistory: TypedContractMethod<[ arg0: AddressLike, arg1: AddressLike, arg2: BigNumberish ], [ bigint ], "view">; creditHistoryIndex: TypedContractMethod<[ arg0: AddressLike, arg1: AddressLike ], [ bigint ], "view">; creditPriceUSD: TypedContractMethod<[arg0: AddressLike], [bigint], "view">; dispatchPercent: TypedContractMethod<[arg0: BigNumberish], [bigint], "view">; exchangeModifier: TypedContractMethod<[], [string], "view">; getCreditPriceUsd: TypedContractMethod<[ _contract: AddressLike ], [ bigint ], "view">; infraAddress: TypedContractMethod<[], [string], "view">; protocolAddress: TypedContractMethod<[], [string], "view">; rewardClaim: TypedContractMethod<[ _batchIndex: BigNumberish, _consumerProvider: AddressLike, _firstOwner: AddressLike ], [ void ], "nonpayable">; setAriaUsdExchangeRate: TypedContractMethod<[ _ariaUsdExchangeRate: BigNumberish ], [ void ], "nonpayable">; setCreditPriceUsd: TypedContractMethod<[ _contract: AddressLike, _creditPriceUsd: BigNumberish ], [ void ], "nonpayable">; setDispatchPercent: TypedContractMethod<[ _percentInfra: BigNumberish, _percentCreatorProvider: BigNumberish, _percentConsumerProvider: BigNumberish, _percentArianeeProject: BigNumberish, _percentFirstOwner: BigNumberish ], [ void ], "nonpayable">; setExchangeModifier: TypedContractMethod<[ _exchangeModifier: AddressLike ], [ void ], "nonpayable">; setInfraAddress: TypedContractMethod<[ _newInfraAddress: AddressLike ], [ void ], "nonpayable">; setProtocolAddress: TypedContractMethod<[ _newProtocolAddress: AddressLike ], [ void ], "nonpayable">; totalCredits: TypedContractMethod<[ arg0: AddressLike, arg1: AddressLike ], [ bigint ], "view">; getFunction(key: string | FunctionFragment): T; getFunction(nameOrSignature: "acceptedToken"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "ariaUsdExchangeRate"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "balanceOf"): TypedContractMethod<[ _creditOwner: AddressLike, _contract: AddressLike ], [ bigint ], "view">; getFunction(nameOrSignature: "buyCredit"): TypedContractMethod<[ _contract: AddressLike, _quantity: BigNumberish, _receiver: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "consumeCredit(address,address,address,address)"): TypedContractMethod<[ _spender: AddressLike, _creatorProvider: AddressLike, _consumerProvider: AddressLike, _firstOwner: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "consumeCredit(address,address)"): TypedContractMethod<[ _spender: AddressLike, _creatorProvider: AddressLike ], [ bigint ], "nonpayable">; getFunction(nameOrSignature: "creditBatches"): TypedContractMethod<[ arg0: BigNumberish ], [ [ bigint, bigint, string ] & { price: bigint; quantity: bigint; contractAddress: string; } ], "view">; getFunction(nameOrSignature: "creditHistory"): TypedContractMethod<[ arg0: AddressLike, arg1: AddressLike, arg2: BigNumberish ], [ bigint ], "view">; getFunction(nameOrSignature: "creditHistoryIndex"): TypedContractMethod<[ arg0: AddressLike, arg1: AddressLike ], [ bigint ], "view">; getFunction(nameOrSignature: "creditPriceUSD"): TypedContractMethod<[arg0: AddressLike], [bigint], "view">; getFunction(nameOrSignature: "dispatchPercent"): TypedContractMethod<[arg0: BigNumberish], [bigint], "view">; getFunction(nameOrSignature: "exchangeModifier"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "getCreditPriceUsd"): TypedContractMethod<[_contract: AddressLike], [bigint], "view">; getFunction(nameOrSignature: "infraAddress"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "protocolAddress"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "rewardClaim"): TypedContractMethod<[ _batchIndex: BigNumberish, _consumerProvider: AddressLike, _firstOwner: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setAriaUsdExchangeRate"): TypedContractMethod<[ _ariaUsdExchangeRate: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setCreditPriceUsd"): TypedContractMethod<[ _contract: AddressLike, _creditPriceUsd: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setDispatchPercent"): TypedContractMethod<[ _percentInfra: BigNumberish, _percentCreatorProvider: BigNumberish, _percentConsumerProvider: BigNumberish, _percentArianeeProject: BigNumberish, _percentFirstOwner: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setExchangeModifier"): TypedContractMethod<[ _exchangeModifier: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setInfraAddress"): TypedContractMethod<[_newInfraAddress: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "setProtocolAddress"): TypedContractMethod<[ _newProtocolAddress: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "totalCredits"): TypedContractMethod<[ arg0: AddressLike, arg1: AddressLike ], [ bigint ], "view">; filters: {}; }