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 HederaReserveFacetInterface extends Interface { getFunction(nameOrSignature: "decimals" | "description" | "getRoundData" | "getStaticFunctionSelectors" | "getStaticInterfaceIds" | "getStaticResolverKey" | "initialize" | "latestRoundData" | "setAdmin" | "setAmount" | "version"): FunctionFragment; getEvent(nameOrSignatureOrTopic: "AdminChanged" | "AmountChanged" | "Initialized" | "ReserveInitialized"): EventFragment; encodeFunctionData(functionFragment: "decimals", values?: undefined): string; encodeFunctionData(functionFragment: "description", values?: undefined): string; encodeFunctionData(functionFragment: "getRoundData", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "getStaticFunctionSelectors", values?: undefined): string; encodeFunctionData(functionFragment: "getStaticInterfaceIds", values?: undefined): string; encodeFunctionData(functionFragment: "getStaticResolverKey", values?: undefined): string; encodeFunctionData(functionFragment: "initialize", values: [BigNumberish, AddressLike]): string; encodeFunctionData(functionFragment: "latestRoundData", values?: undefined): string; encodeFunctionData(functionFragment: "setAdmin", values: [AddressLike]): string; encodeFunctionData(functionFragment: "setAmount", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "version", values?: undefined): string; decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; decodeFunctionResult(functionFragment: "description", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getRoundData", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getStaticFunctionSelectors", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getStaticInterfaceIds", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getStaticResolverKey", data: BytesLike): Result; decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; decodeFunctionResult(functionFragment: "latestRoundData", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setAdmin", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setAmount", data: BytesLike): Result; decodeFunctionResult(functionFragment: "version", data: BytesLike): Result; } export declare namespace AdminChangedEvent { type InputTuple = [previousAdmin: AddressLike, newAdmin: AddressLike]; type OutputTuple = [previousAdmin: string, newAdmin: string]; interface OutputObject { previousAdmin: string; newAdmin: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace AmountChangedEvent { type InputTuple = [ previousAmount: BigNumberish, newAmount: BigNumberish ]; type OutputTuple = [previousAmount: bigint, newAmount: bigint]; interface OutputObject { previousAmount: bigint; newAmount: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace InitializedEvent { type InputTuple = [facet: BytesLike]; type OutputTuple = [facet: string]; interface OutputObject { facet: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace ReserveInitializedEvent { type InputTuple = [initialReserve: BigNumberish]; type OutputTuple = [initialReserve: bigint]; interface OutputObject { initialReserve: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export interface HederaReserveFacet extends BaseContract { connect(runner?: ContractRunner | null): HederaReserveFacet; waitForDeployment(): Promise; interface: HederaReserveFacetInterface; 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; decimals: TypedContractMethod<[], [bigint], "view">; description: TypedContractMethod<[], [string], "view">; getRoundData: TypedContractMethod<[ arg0: BigNumberish ], [ [bigint, bigint, bigint, bigint, bigint] ], "view">; getStaticFunctionSelectors: TypedContractMethod<[], [string[]], "view">; getStaticInterfaceIds: TypedContractMethod<[], [string[]], "view">; getStaticResolverKey: TypedContractMethod<[], [string], "view">; initialize: TypedContractMethod<[ initialReserve: BigNumberish, admin: AddressLike ], [ void ], "nonpayable">; latestRoundData: TypedContractMethod<[ ], [ [ bigint, bigint, bigint, bigint, bigint ] & { roundId: bigint; answer: bigint; startedAt: bigint; updatedAt: bigint; answeredInRound: bigint; } ], "view">; setAdmin: TypedContractMethod<[admin: AddressLike], [void], "nonpayable">; setAmount: TypedContractMethod<[ newValue: BigNumberish ], [ void ], "nonpayable">; version: TypedContractMethod<[], [bigint], "view">; getFunction(key: string | FunctionFragment): T; getFunction(nameOrSignature: "decimals"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "description"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "getRoundData"): TypedContractMethod<[ arg0: BigNumberish ], [ [bigint, bigint, bigint, bigint, bigint] ], "view">; getFunction(nameOrSignature: "getStaticFunctionSelectors"): TypedContractMethod<[], [string[]], "view">; getFunction(nameOrSignature: "getStaticInterfaceIds"): TypedContractMethod<[], [string[]], "view">; getFunction(nameOrSignature: "getStaticResolverKey"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ initialReserve: BigNumberish, admin: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "latestRoundData"): TypedContractMethod<[ ], [ [ bigint, bigint, bigint, bigint, bigint ] & { roundId: bigint; answer: bigint; startedAt: bigint; updatedAt: bigint; answeredInRound: bigint; } ], "view">; getFunction(nameOrSignature: "setAdmin"): TypedContractMethod<[admin: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "setAmount"): TypedContractMethod<[newValue: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "version"): TypedContractMethod<[], [bigint], "view">; getEvent(key: "AdminChanged"): TypedContractEvent; getEvent(key: "AmountChanged"): TypedContractEvent; getEvent(key: "Initialized"): TypedContractEvent; getEvent(key: "ReserveInitialized"): TypedContractEvent; filters: { "AdminChanged(address,address)": TypedContractEvent; AdminChanged: TypedContractEvent; "AmountChanged(int256,int256)": TypedContractEvent; AmountChanged: TypedContractEvent; "Initialized(bytes32)": TypedContractEvent; Initialized: TypedContractEvent; "ReserveInitialized(int256)": TypedContractEvent; ReserveInitialized: TypedContractEvent; }; }