UNPKG

@skalenetwork/fair-manager-types

Version:

TypeScript typings for SKALE Fair Manager smart contracts

1,731 lines (1,622 loc) 53.1 kB
/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ 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 declare namespace IStaking { export type ExitRequestStruct = { requestId: BigNumberish; user: AddressLike; nodeId: BigNumberish; amount: BigNumberish; unlockDate: BigNumberish; }; export type ExitRequestStructOutput = [ requestId: bigint, user: string, nodeId: bigint, amount: bigint, unlockDate: bigint ] & { requestId: bigint; user: string; nodeId: bigint; amount: bigint; unlockDate: bigint; }; } export interface StakingInterface extends Interface { getFunction( nameOrSignature: | "DEFAULT_FEE_RATE" | "addAllowedReceiver" | "authority" | "claimRequest" | "committee" | "disable" | "enable" | "getDelegatorsToNode" | "getDelegatorsToNodeCount" | "getEarnedFeeAmount" | "getExitRequest" | "getExitRequestAt" | "getExitRequestsCountFor" | "getMyExitRequestsCount" | "getMyTotalInExitQueue" | "getNodeFeeRate" | "getNodeShare" | "getNodeTotalStake" | "getRetrievingDelay" | "getRewardWallet" | "getStakedAmount" | "getStakedAmountFor" | "getStakedNodes" | "getStakedNodesFor" | "getStakedToNodeAmount" | "getStakedToNodeAmountFor" | "getTotalInExitQueue" | "getTotalInExitQueueFor" | "getUnlockedExitRequestFor" | "initialize" | "isConsumingScheduledOp" | "isNodeEnabled" | "isRequestUnlocked" | "isWithinStakeLimit" | "nodeCreated" | "nodeRemoved" | "nodes" | "payReward" | "removeAllowedReceiver" | "requestAllFees" | "requestFees" | "requestRetrieve" | "requestRetrieveAll" | "requestSendAllFees" | "requestSendFees" | "rewardWalletReference" | "selfStakeRequirement" | "setAuthority" | "setFeeRate" | "setRetrievingDelay" | "setRewardWalletReference" | "setSelfStakeRequirement" | "setStakeLimit" | "stake" | "stakeLimit" | "totalDisabled" ): FunctionFragment; getEvent( nameOrSignatureOrTopic: | "AllowedReceiverAdded" | "AllowedReceiverRemoved" | "AuthorityUpdated" | "FeeClaimRequested" | "Initialized" | "NodeDataRemoved" | "NodeDisabled" | "NodeEnabled" | "NodeFeeRateUpdated" | "NodeRewardReceived" | "RequestClaimed" | "RequestCreated" | "RetrieveRequested" | "RetrievingDelayUpdated" | "RewardReceived" | "RewardWalletCreated" | "RewardWalletReferenceUpdated" | "SelfStakeProvided" | "SelfStakeRequirementUpdated" | "StakeLimitUpdated" | "Staked" | "StakedToNewNode" | "StoppedStaking" ): EventFragment; encodeFunctionData( functionFragment: "DEFAULT_FEE_RATE", values?: undefined ): string; encodeFunctionData( functionFragment: "addAllowedReceiver", values: [AddressLike] ): string; encodeFunctionData(functionFragment: "authority", values?: undefined): string; encodeFunctionData( functionFragment: "claimRequest", values: [BigNumberish] ): string; encodeFunctionData(functionFragment: "committee", values?: undefined): string; encodeFunctionData( functionFragment: "disable", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "enable", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "getDelegatorsToNode", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "getDelegatorsToNodeCount", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "getEarnedFeeAmount", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "getExitRequest", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "getExitRequestAt", values: [AddressLike, BigNumberish] ): string; encodeFunctionData( functionFragment: "getExitRequestsCountFor", values: [AddressLike] ): string; encodeFunctionData( functionFragment: "getMyExitRequestsCount", values?: undefined ): string; encodeFunctionData( functionFragment: "getMyTotalInExitQueue", values?: undefined ): string; encodeFunctionData( functionFragment: "getNodeFeeRate", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "getNodeShare", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "getNodeTotalStake", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "getRetrievingDelay", values?: undefined ): string; encodeFunctionData( functionFragment: "getRewardWallet", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "getStakedAmount", values?: undefined ): string; encodeFunctionData( functionFragment: "getStakedAmountFor", values: [AddressLike] ): string; encodeFunctionData( functionFragment: "getStakedNodes", values?: undefined ): string; encodeFunctionData( functionFragment: "getStakedNodesFor", values: [AddressLike] ): string; encodeFunctionData( functionFragment: "getStakedToNodeAmount", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "getStakedToNodeAmountFor", values: [BigNumberish, AddressLike] ): string; encodeFunctionData( functionFragment: "getTotalInExitQueue", values?: undefined ): string; encodeFunctionData( functionFragment: "getTotalInExitQueueFor", values: [AddressLike] ): string; encodeFunctionData( functionFragment: "getUnlockedExitRequestFor", values: [AddressLike, BigNumberish] ): string; encodeFunctionData( functionFragment: "initialize", values: [AddressLike, AddressLike, AddressLike, AddressLike] ): string; encodeFunctionData( functionFragment: "isConsumingScheduledOp", values?: undefined ): string; encodeFunctionData( functionFragment: "isNodeEnabled", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "isRequestUnlocked", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "isWithinStakeLimit", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "nodeCreated", values: [BigNumberish, AddressLike] ): string; encodeFunctionData( functionFragment: "nodeRemoved", values: [BigNumberish] ): string; encodeFunctionData(functionFragment: "nodes", values?: undefined): string; encodeFunctionData( functionFragment: "payReward", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "removeAllowedReceiver", values: [AddressLike] ): string; encodeFunctionData( functionFragment: "requestAllFees", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "requestFees", values: [BigNumberish, BigNumberish] ): string; encodeFunctionData( functionFragment: "requestRetrieve", values: [BigNumberish, BigNumberish] ): string; encodeFunctionData( functionFragment: "requestRetrieveAll", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "requestSendAllFees", values: [AddressLike] ): string; encodeFunctionData( functionFragment: "requestSendFees", values: [AddressLike, BigNumberish] ): string; encodeFunctionData( functionFragment: "rewardWalletReference", values?: undefined ): string; encodeFunctionData( functionFragment: "selfStakeRequirement", values?: undefined ): string; encodeFunctionData( functionFragment: "setAuthority", values: [AddressLike] ): string; encodeFunctionData( functionFragment: "setFeeRate", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "setRetrievingDelay", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "setRewardWalletReference", values: [AddressLike] ): string; encodeFunctionData( functionFragment: "setSelfStakeRequirement", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "setStakeLimit", values: [BigNumberish] ): string; encodeFunctionData(functionFragment: "stake", values: [BigNumberish]): string; encodeFunctionData( functionFragment: "stakeLimit", values?: undefined ): string; encodeFunctionData( functionFragment: "totalDisabled", values?: undefined ): string; decodeFunctionResult( functionFragment: "DEFAULT_FEE_RATE", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "addAllowedReceiver", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "authority", data: BytesLike): Result; decodeFunctionResult( functionFragment: "claimRequest", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "committee", data: BytesLike): Result; decodeFunctionResult(functionFragment: "disable", data: BytesLike): Result; decodeFunctionResult(functionFragment: "enable", data: BytesLike): Result; decodeFunctionResult( functionFragment: "getDelegatorsToNode", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getDelegatorsToNodeCount", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getEarnedFeeAmount", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getExitRequest", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getExitRequestAt", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getExitRequestsCountFor", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getMyExitRequestsCount", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getMyTotalInExitQueue", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getNodeFeeRate", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getNodeShare", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getNodeTotalStake", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getRetrievingDelay", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getRewardWallet", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getStakedAmount", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getStakedAmountFor", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getStakedNodes", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getStakedNodesFor", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getStakedToNodeAmount", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getStakedToNodeAmountFor", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getTotalInExitQueue", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getTotalInExitQueueFor", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getUnlockedExitRequestFor", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; decodeFunctionResult( functionFragment: "isConsumingScheduledOp", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "isNodeEnabled", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "isRequestUnlocked", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "isWithinStakeLimit", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "nodeCreated", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "nodeRemoved", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "nodes", data: BytesLike): Result; decodeFunctionResult(functionFragment: "payReward", data: BytesLike): Result; decodeFunctionResult( functionFragment: "removeAllowedReceiver", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "requestAllFees", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "requestFees", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "requestRetrieve", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "requestRetrieveAll", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "requestSendAllFees", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "requestSendFees", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "rewardWalletReference", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "selfStakeRequirement", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "setAuthority", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "setFeeRate", data: BytesLike): Result; decodeFunctionResult( functionFragment: "setRetrievingDelay", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "setRewardWalletReference", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "setSelfStakeRequirement", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "setStakeLimit", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "stake", data: BytesLike): Result; decodeFunctionResult(functionFragment: "stakeLimit", data: BytesLike): Result; decodeFunctionResult( functionFragment: "totalDisabled", data: BytesLike ): Result; } export namespace AllowedReceiverAddedEvent { export type InputTuple = [node: BigNumberish, receiver: AddressLike]; export type OutputTuple = [node: bigint, receiver: string]; export interface OutputObject { node: bigint; receiver: string; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace AllowedReceiverRemovedEvent { export type InputTuple = [node: BigNumberish, receiver: AddressLike]; export type OutputTuple = [node: bigint, receiver: string]; export interface OutputObject { node: bigint; receiver: string; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace AuthorityUpdatedEvent { export type InputTuple = [authority: AddressLike]; export type OutputTuple = [authority: string]; export interface OutputObject { authority: string; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace FeeClaimRequestedEvent { export type InputTuple = [ node: BigNumberish, from: AddressLike, to: AddressLike, amount: BigNumberish ]; export type OutputTuple = [ node: bigint, from: string, to: string, amount: bigint ]; export interface OutputObject { node: bigint; from: string; to: string; amount: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace InitializedEvent { export type InputTuple = [version: BigNumberish]; export type OutputTuple = [version: bigint]; export interface OutputObject { version: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace NodeDataRemovedEvent { export type InputTuple = [node: BigNumberish]; export type OutputTuple = [node: bigint]; export interface OutputObject { node: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace NodeDisabledEvent { export type InputTuple = [node: BigNumberish]; export type OutputTuple = [node: bigint]; export interface OutputObject { node: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace NodeEnabledEvent { export type InputTuple = [node: BigNumberish]; export type OutputTuple = [node: bigint]; export interface OutputObject { node: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace NodeFeeRateUpdatedEvent { export type InputTuple = [ node: BigNumberish, oldFeeRate: BigNumberish, newFeeRate: BigNumberish ]; export type OutputTuple = [ node: bigint, oldFeeRate: bigint, newFeeRate: bigint ]; export interface OutputObject { node: bigint; oldFeeRate: bigint; newFeeRate: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace NodeRewardReceivedEvent { export type InputTuple = [node: BigNumberish, amount: BigNumberish]; export type OutputTuple = [node: bigint, amount: bigint]; export interface OutputObject { node: bigint; amount: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace RequestClaimedEvent { export type InputTuple = [ user: AddressLike, requestId: BigNumberish, nodeId: BigNumberish, amount: BigNumberish, claimDate: BigNumberish ]; export type OutputTuple = [ user: string, requestId: bigint, nodeId: bigint, amount: bigint, claimDate: bigint ]; export interface OutputObject { user: string; requestId: bigint; nodeId: bigint; amount: bigint; claimDate: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace RequestCreatedEvent { export type InputTuple = [ user: AddressLike, requestId: BigNumberish, nodeId: BigNumberish, amount: BigNumberish, unlockDate: BigNumberish ]; export type OutputTuple = [ user: string, requestId: bigint, nodeId: bigint, amount: bigint, unlockDate: bigint ]; export interface OutputObject { user: string; requestId: bigint; nodeId: bigint; amount: bigint; unlockDate: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace RetrieveRequestedEvent { export type InputTuple = [ sender: AddressLike, node: BigNumberish, amount: BigNumberish ]; export type OutputTuple = [sender: string, node: bigint, amount: bigint]; export interface OutputObject { sender: string; node: bigint; amount: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace RetrievingDelayUpdatedEvent { export type InputTuple = [retrievingDelay: BigNumberish]; export type OutputTuple = [retrievingDelay: bigint]; export interface OutputObject { retrievingDelay: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace RewardReceivedEvent { export type InputTuple = [sender: AddressLike, amount: BigNumberish]; export type OutputTuple = [sender: string, amount: bigint]; export interface OutputObject { sender: string; amount: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace RewardWalletCreatedEvent { export type InputTuple = [node: BigNumberish]; export type OutputTuple = [node: bigint]; export interface OutputObject { node: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace RewardWalletReferenceUpdatedEvent { export type InputTuple = [ oldReference: AddressLike, newReference: AddressLike ]; export type OutputTuple = [oldReference: string, newReference: string]; export interface OutputObject { oldReference: string; newReference: string; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace SelfStakeProvidedEvent { export type InputTuple = [nodeId: BigNumberish, amount: BigNumberish]; export type OutputTuple = [nodeId: bigint, amount: bigint]; export interface OutputObject { nodeId: bigint; amount: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace SelfStakeRequirementUpdatedEvent { export type InputTuple = [amount: BigNumberish]; export type OutputTuple = [amount: bigint]; export interface OutputObject { amount: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace StakeLimitUpdatedEvent { export type InputTuple = [newLimit: BigNumberish]; export type OutputTuple = [newLimit: bigint]; export interface OutputObject { newLimit: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace StakedEvent { export type InputTuple = [ sender: AddressLike, node: BigNumberish, amount: BigNumberish ]; export type OutputTuple = [sender: string, node: bigint, amount: bigint]; export interface OutputObject { sender: string; node: bigint; amount: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace StakedToNewNodeEvent { export type InputTuple = [sender: AddressLike, node: BigNumberish]; export type OutputTuple = [sender: string, node: bigint]; export interface OutputObject { sender: string; node: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export namespace StoppedStakingEvent { export type InputTuple = [sender: AddressLike, node: BigNumberish]; export type OutputTuple = [sender: string, node: bigint]; export interface OutputObject { sender: string; node: bigint; } export type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; export type Filter = TypedDeferredTopicFilter<Event>; export type Log = TypedEventLog<Event>; export type LogDescription = TypedLogDescription<Event>; } export interface Staking extends BaseContract { connect(runner?: ContractRunner | null): Staking; waitForDeployment(): Promise<this>; interface: StakingInterface; queryFilter<TCEvent extends TypedContractEvent>( event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined ): Promise<Array<TypedEventLog<TCEvent>>>; queryFilter<TCEvent extends TypedContractEvent>( filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined ): Promise<Array<TypedEventLog<TCEvent>>>; on<TCEvent extends TypedContractEvent>( event: TCEvent, listener: TypedListener<TCEvent> ): Promise<this>; on<TCEvent extends TypedContractEvent>( filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent> ): Promise<this>; once<TCEvent extends TypedContractEvent>( event: TCEvent, listener: TypedListener<TCEvent> ): Promise<this>; once<TCEvent extends TypedContractEvent>( filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent> ): Promise<this>; listeners<TCEvent extends TypedContractEvent>( event: TCEvent ): Promise<Array<TypedListener<TCEvent>>>; listeners(eventName?: string): Promise<Array<Listener>>; removeAllListeners<TCEvent extends TypedContractEvent>( event?: TCEvent ): Promise<this>; DEFAULT_FEE_RATE: TypedContractMethod<[], [bigint], "view">; addAllowedReceiver: TypedContractMethod< [receiver: AddressLike], [void], "nonpayable" >; authority: TypedContractMethod<[], [string], "view">; claimRequest: TypedContractMethod< [requestId: BigNumberish], [void], "nonpayable" >; committee: TypedContractMethod<[], [string], "view">; disable: TypedContractMethod<[node: BigNumberish], [void], "nonpayable">; enable: TypedContractMethod<[node: BigNumberish], [void], "nonpayable">; getDelegatorsToNode: TypedContractMethod< [node: BigNumberish], [string[]], "view" >; getDelegatorsToNodeCount: TypedContractMethod< [node: BigNumberish], [bigint], "view" >; getEarnedFeeAmount: TypedContractMethod< [node: BigNumberish], [bigint], "view" >; getExitRequest: TypedContractMethod< [requestId: BigNumberish], [IStaking.ExitRequestStructOutput], "view" >; getExitRequestAt: TypedContractMethod< [user: AddressLike, index: BigNumberish], [IStaking.ExitRequestStructOutput], "view" >; getExitRequestsCountFor: TypedContractMethod< [user: AddressLike], [bigint], "view" >; getMyExitRequestsCount: TypedContractMethod<[], [bigint], "view">; getMyTotalInExitQueue: TypedContractMethod<[], [bigint], "view">; getNodeFeeRate: TypedContractMethod<[node: BigNumberish], [bigint], "view">; getNodeShare: TypedContractMethod<[node: BigNumberish], [bigint], "view">; getNodeTotalStake: TypedContractMethod< [node: BigNumberish], [bigint], "view" >; getRetrievingDelay: TypedContractMethod<[], [bigint], "view">; getRewardWallet: TypedContractMethod<[node: BigNumberish], [string], "view">; getStakedAmount: TypedContractMethod<[], [bigint], "view">; getStakedAmountFor: TypedContractMethod< [holder: AddressLike], [bigint], "view" >; getStakedNodes: TypedContractMethod<[], [bigint[]], "view">; getStakedNodesFor: TypedContractMethod< [holder: AddressLike], [bigint[]], "view" >; getStakedToNodeAmount: TypedContractMethod< [node: BigNumberish], [bigint], "view" >; getStakedToNodeAmountFor: TypedContractMethod< [node: BigNumberish, holder: AddressLike], [bigint], "view" >; getTotalInExitQueue: TypedContractMethod<[], [bigint], "view">; getTotalInExitQueueFor: TypedContractMethod< [user: AddressLike], [bigint], "view" >; getUnlockedExitRequestFor: TypedContractMethod< [user: AddressLike, fromIndex: BigNumberish], [IStaking.ExitRequestStructOutput], "view" >; initialize: TypedContractMethod< [ initialAuthority: AddressLike, committee_: AddressLike, nodes_: AddressLike, rewardWalletReference_: AddressLike ], [void], "nonpayable" >; isConsumingScheduledOp: TypedContractMethod<[], [string], "view">; isNodeEnabled: TypedContractMethod<[node: BigNumberish], [boolean], "view">; isRequestUnlocked: TypedContractMethod< [requestId: BigNumberish], [boolean], "view" >; isWithinStakeLimit: TypedContractMethod< [node: BigNumberish], [boolean], "view" >; nodeCreated: TypedContractMethod< [node: BigNumberish, nodeAddress: AddressLike], [void], "payable" >; nodeRemoved: TypedContractMethod<[node: BigNumberish], [void], "nonpayable">; nodes: TypedContractMethod<[], [string], "view">; payReward: TypedContractMethod<[node: BigNumberish], [void], "payable">; removeAllowedReceiver: TypedContractMethod< [receiver: AddressLike], [void], "nonpayable" >; requestAllFees: TypedContractMethod< [node: BigNumberish], [void], "nonpayable" >; requestFees: TypedContractMethod< [node: BigNumberish, amount: BigNumberish], [void], "nonpayable" >; requestRetrieve: TypedContractMethod< [node: BigNumberish, value: BigNumberish], [void], "nonpayable" >; requestRetrieveAll: TypedContractMethod< [node: BigNumberish], [void], "nonpayable" >; requestSendAllFees: TypedContractMethod< [to: AddressLike], [void], "nonpayable" >; requestSendFees: TypedContractMethod< [to: AddressLike, amount: BigNumberish], [void], "nonpayable" >; rewardWalletReference: TypedContractMethod<[], [string], "view">; selfStakeRequirement: TypedContractMethod<[], [bigint], "view">; setAuthority: TypedContractMethod< [newAuthority: AddressLike], [void], "nonpayable" >; setFeeRate: TypedContractMethod< [feeRate: BigNumberish], [void], "nonpayable" >; setRetrievingDelay: TypedContractMethod< [delay: BigNumberish], [void], "nonpayable" >; setRewardWalletReference: TypedContractMethod< [rewardWalletReference_: AddressLike], [void], "nonpayable" >; setSelfStakeRequirement: TypedContractMethod< [amount: BigNumberish], [void], "nonpayable" >; setStakeLimit: TypedContractMethod< [limit: BigNumberish], [void], "nonpayable" >; stake: TypedContractMethod<[node: BigNumberish], [void], "payable">; stakeLimit: TypedContractMethod<[], [bigint], "view">; totalDisabled: TypedContractMethod<[], [bigint], "view">; getFunction<T extends ContractMethod = ContractMethod>( key: string | FunctionFragment ): T; getFunction( nameOrSignature: "DEFAULT_FEE_RATE" ): TypedContractMethod<[], [bigint], "view">; getFunction( nameOrSignature: "addAllowedReceiver" ): TypedContractMethod<[receiver: AddressLike], [void], "nonpayable">; getFunction( nameOrSignature: "authority" ): TypedContractMethod<[], [string], "view">; getFunction( nameOrSignature: "claimRequest" ): TypedContractMethod<[requestId: BigNumberish], [void], "nonpayable">; getFunction( nameOrSignature: "committee" ): TypedContractMethod<[], [string], "view">; getFunction( nameOrSignature: "disable" ): TypedContractMethod<[node: BigNumberish], [void], "nonpayable">; getFunction( nameOrSignature: "enable" ): TypedContractMethod<[node: BigNumberish], [void], "nonpayable">; getFunction( nameOrSignature: "getDelegatorsToNode" ): TypedContractMethod<[node: BigNumberish], [string[]], "view">; getFunction( nameOrSignature: "getDelegatorsToNodeCount" ): TypedContractMethod<[node: BigNumberish], [bigint], "view">; getFunction( nameOrSignature: "getEarnedFeeAmount" ): TypedContractMethod<[node: BigNumberish], [bigint], "view">; getFunction( nameOrSignature: "getExitRequest" ): TypedContractMethod< [requestId: BigNumberish], [IStaking.ExitRequestStructOutput], "view" >; getFunction( nameOrSignature: "getExitRequestAt" ): TypedContractMethod< [user: AddressLike, index: BigNumberish], [IStaking.ExitRequestStructOutput], "view" >; getFunction( nameOrSignature: "getExitRequestsCountFor" ): TypedContractMethod<[user: AddressLike], [bigint], "view">; getFunction( nameOrSignature: "getMyExitRequestsCount" ): TypedContractMethod<[], [bigint], "view">; getFunction( nameOrSignature: "getMyTotalInExitQueue" ): TypedContractMethod<[], [bigint], "view">; getFunction( nameOrSignature: "getNodeFeeRate" ): TypedContractMethod<[node: BigNumberish], [bigint], "view">; getFunction( nameOrSignature: "getNodeShare" ): TypedContractMethod<[node: BigNumberish], [bigint], "view">; getFunction( nameOrSignature: "getNodeTotalStake" ): TypedContractMethod<[node: BigNumberish], [bigint], "view">; getFunction( nameOrSignature: "getRetrievingDelay" ): TypedContractMethod<[], [bigint], "view">; getFunction( nameOrSignature: "getRewardWallet" ): TypedContractMethod<[node: BigNumberish], [string], "view">; getFunction( nameOrSignature: "getStakedAmount" ): TypedContractMethod<[], [bigint], "view">; getFunction( nameOrSignature: "getStakedAmountFor" ): TypedContractMethod<[holder: AddressLike], [bigint], "view">; getFunction( nameOrSignature: "getStakedNodes" ): TypedContractMethod<[], [bigint[]], "view">; getFunction( nameOrSignature: "getStakedNodesFor" ): TypedContractMethod<[holder: AddressLike], [bigint[]], "view">; getFunction( nameOrSignature: "getStakedToNodeAmount" ): TypedContractMethod<[node: BigNumberish], [bigint], "view">; getFunction( nameOrSignature: "getStakedToNodeAmountFor" ): TypedContractMethod< [node: BigNumberish, holder: AddressLike], [bigint], "view" >; getFunction( nameOrSignature: "getTotalInExitQueue" ): TypedContractMethod<[], [bigint], "view">; getFunction( nameOrSignature: "getTotalInExitQueueFor" ): TypedContractMethod<[user: AddressLike], [bigint], "view">; getFunction( nameOrSignature: "getUnlockedExitRequestFor" ): TypedContractMethod< [user: AddressLike, fromIndex: BigNumberish], [IStaking.ExitRequestStructOutput], "view" >; getFunction( nameOrSignature: "initialize" ): TypedContractMethod< [ initialAuthority: AddressLike, committee_: AddressLike, nodes_: AddressLike, rewardWalletReference_: AddressLike ], [void], "nonpayable" >; getFunction( nameOrSignature: "isConsumingScheduledOp" ): TypedContractMethod<[], [string], "view">; getFunction( nameOrSignature: "isNodeEnabled" ): TypedContractMethod<[node: BigNumberish], [boolean], "view">; getFunction( nameOrSignature: "isRequestUnlocked" ): TypedContractMethod<[requestId: BigNumberish], [boolean], "view">; getFunction( nameOrSignature: "isWithinStakeLimit" ): TypedContractMethod<[node: BigNumberish], [boolean], "view">; getFunction( nameOrSignature: "nodeCreated" ): TypedContractMethod< [node: BigNumberish, nodeAddress: AddressLike], [void], "payable" >; getFunction( nameOrSignature: "nodeRemoved" ): TypedContractMethod<[node: BigNumberish], [void], "nonpayable">; getFunction( nameOrSignature: "nodes" ): TypedContractMethod<[], [string], "view">; getFunction( nameOrSignature: "payReward" ): TypedContractMethod<[node: BigNumberish], [void], "payable">; getFunction( nameOrSignature: "removeAllowedReceiver" ): TypedContractMethod<[receiver: AddressLike], [void], "nonpayable">; getFunction( nameOrSignature: "requestAllFees" ): TypedContractMethod<[node: BigNumberish], [void], "nonpayable">; getFunction( nameOrSignature: "requestFees" ): TypedContractMethod< [node: BigNumberish, amount: BigNumberish], [void], "nonpayable" >; getFunction( nameOrSignature: "requestRetrieve" ): TypedContractMethod< [node: BigNumberish, value: BigNumberish], [void], "nonpayable" >; getFunction( nameOrSignature: "requestRetrieveAll" ): TypedContractMethod<[node: BigNumberish], [void], "nonpayable">; getFunction( nameOrSignature: "requestSendAllFees" ): TypedContractMethod<[to: AddressLike], [void], "nonpayable">; getFunction( nameOrSignature: "requestSendFees" ): TypedContractMethod< [to: AddressLike, amount: BigNumberish], [void], "nonpayable" >; getFunction( nameOrSignature: "rewardWalletReference" ): TypedContractMethod<[], [string], "view">; getFunction( nameOrSignature: "selfStakeRequirement" ): TypedContractMethod<[], [bigint], "view">; getFunction( nameOrSignature: "setAuthority" ): TypedContractMethod<[newAuthority: AddressLike], [void], "nonpayable">; getFunction( nameOrSignature: "setFeeRate" ): TypedContractMethod<[feeRate: BigNumberish], [void], "nonpayable">; getFunction( nameOrSignature: "setRetrievingDelay" ): TypedContractMethod<[delay: BigNumberish], [void], "nonpayable">; getFunction( nameOrSignature: "setRewardWalletReference" ): TypedContractMethod< [rewardWalletReference_: AddressLike], [void], "nonpayable" >; getFunction( nameOrSignature: "setSelfStakeRequirement" ): TypedContractMethod<[amount: BigNumberish], [void], "nonpayable">; getFunction( nameOrSignature: "setStakeLimit" ): TypedContractMethod<[limit: BigNumberish], [void], "nonpayable">; getFunction( nameOrSignature: "stake" ): TypedContractMethod<[node: BigNumberish], [void], "payable">; getFunction( nameOrSignature: "stakeLimit" ): TypedContractMethod<[], [bigint], "view">; getFunction( nameOrSignature: "totalDisabled" ): TypedContractMethod<[], [bigint], "view">; getEvent( key: "AllowedReceiverAdded" ): TypedContractEvent< AllowedReceiverAddedEvent.InputTuple, AllowedReceiverAddedEvent.OutputTuple, AllowedReceiverAddedEvent.OutputObject >; getEvent( key: "AllowedReceiverRemoved" ): TypedContractEvent< AllowedReceiverRemovedEvent.InputTuple, AllowedReceiverRemovedEvent.OutputTuple, AllowedReceiverRemovedEvent.OutputObject >; getEvent( key: "AuthorityUpdated" ): TypedContractEvent< AuthorityUpdatedEvent.InputTuple, AuthorityUpdatedEvent.OutputTuple, AuthorityUpdatedEvent.OutputObject >; getEvent( key: "FeeClaimRequested" ): TypedContractEvent< FeeClaimRequestedEvent.InputTuple, FeeClaimRequestedEvent.OutputTuple, FeeClaimRequestedEvent.OutputObject >; getEvent( key: "Initialized" ): TypedContractEvent< InitializedEvent.InputTuple, InitializedEvent.OutputTuple, InitializedEvent.OutputObject >; getEvent( key: "NodeDataRemoved" ): TypedContractEvent< NodeDataRemovedEvent.InputTuple, NodeDataRemovedEvent.OutputTuple, NodeDataRemovedEvent.OutputObject >; getEvent( key: "NodeDisabled" ): TypedContractEvent< NodeDisabledEvent.InputTuple, NodeDisabledEvent.OutputTuple, NodeDisabledEvent.OutputObject >; getEvent( key: "NodeEnabled" ): TypedContractEvent< NodeEnabledEvent.InputTuple, NodeEnabledEvent.OutputTuple, NodeEnabledEvent.OutputObject >; getEvent( key: "NodeFeeRateUpdated" ): TypedContractEvent< NodeFeeRateUpdatedEvent.InputTuple, NodeFeeRateUpdatedEvent.OutputTuple, NodeFeeRateUpdatedEvent.OutputObject >; getEvent( key: "NodeRewardReceived" ): TypedContractEvent< NodeRewardReceivedEvent.InputTuple, NodeRewardReceivedEvent.OutputTuple, NodeRewardReceivedEvent.OutputObject >; getEvent( key: "RequestClaimed" ): TypedContractEvent< RequestClaimedEvent.InputTuple, RequestClaimedEvent.OutputTuple, RequestClaimedEvent.OutputObject >; getEvent( key: "RequestCreated" ): TypedContractEvent< RequestCreatedEvent.InputTuple, RequestCreatedEvent.OutputTuple, RequestCreatedEvent.OutputObject >; getEvent( key: "RetrieveRequested" ): TypedContractEvent< RetrieveRequestedEvent.InputTuple, RetrieveRequestedEvent.OutputTuple, RetrieveRequestedEvent.OutputObject >; getEvent( key: "RetrievingDelayUpdated" ): TypedContractEvent< RetrievingDelayUpdatedEvent.InputTuple, RetrievingDelayUpdatedEvent.OutputTuple, RetrievingDelayUpdatedEvent.OutputObject >; getEvent( key: "RewardReceived" ): TypedContractEvent< RewardReceivedEvent.InputTuple, RewardReceivedEvent.OutputTuple, RewardReceivedEvent.OutputObject >; getEvent( key: "RewardWalletCreated" ): TypedContractEvent< RewardWalletCreatedEvent.InputTuple, RewardWalletCreatedEvent.OutputTuple, RewardWalletCreatedEvent.OutputObject >; getEvent( key: "RewardWalletReferenceUpdated" ): TypedContractEvent< RewardWalletReferenceUpdatedEvent.InputTuple, RewardWalletReferenceUpdatedEvent.OutputTuple, RewardWalletReferenceUpdatedEvent.OutputObject >; getEvent( key: "SelfStakeProvided" ): TypedContractEvent< SelfStakeProvidedEvent.InputTuple, SelfStakeProvidedEvent.OutputTuple, SelfStakeProvidedEvent.OutputObject >; getEvent( key: "SelfStakeRequirementUpdated" ): TypedContractEvent< SelfStakeRequirementUpdatedEvent.InputTuple, SelfStakeRequirementUpdatedEvent.OutputTuple, SelfStakeRequirementUpdatedEvent.OutputObject >; getEvent( key: "StakeLimitUpdated" ): TypedContractEvent< StakeLimitUpdatedEvent.InputTuple, StakeLimitUpdatedEvent.OutputTuple, StakeLimitUpdatedEvent.OutputObject >; getEvent( key: "Staked" ): TypedContractEvent< StakedEvent.InputTuple, StakedEvent.OutputTuple, StakedEvent.OutputObject >; getEvent( key: "StakedToNewNode" ): TypedContractEvent< StakedToNewNodeEvent.InputTuple, StakedToNewNodeEvent.OutputTuple, StakedToNewNodeEvent.OutputObject >; getEvent( key: "StoppedStaking" ): TypedContractEvent< StoppedStakingEvent.InputTuple, StoppedStakingEvent.OutputTuple, StoppedStakingEvent.OutputObject >; filters: { "AllowedReceiverAdded(uint256,address)": TypedContractEvent< AllowedReceiverAddedEvent.InputTuple, AllowedReceiverAddedEvent.OutputTuple, AllowedReceiverAddedEvent.OutputObject >; AllowedReceiverAdded: TypedContractEvent< AllowedReceiverAddedEvent.InputTuple, AllowedReceiverAddedEvent.OutputTuple, AllowedReceiverAddedEvent.OutputObject >; "AllowedReceiverRemoved(uint256,address)": TypedContractEvent< AllowedReceiverRemovedEvent.InputTuple, AllowedReceiverRemovedEvent.OutputTuple, AllowedReceiverRemovedEvent.OutputObject >; AllowedReceiverRemoved: TypedContractEvent< AllowedReceiverRemovedEvent.InputTuple, AllowedReceiverRemovedEvent.OutputTuple, AllowedReceiverRemovedEvent.OutputObject >; "AuthorityUpdated(address)": TypedContractEvent< AuthorityUpdatedEvent.InputTuple, AuthorityUpdatedEvent.OutputTuple, AuthorityUpdatedEvent.OutputObject >; AuthorityUpdated: TypedContractEvent< AuthorityUpdatedEvent.InputTuple, AuthorityUpdatedEvent.OutputTuple, AuthorityUpdatedEvent.OutputObject >; "FeeClaimRequested(uint256,address,address,uint256)": TypedContractEvent< FeeClaimRequestedEvent.InputTuple, FeeClaimRequestedEvent.OutputTuple, FeeClaimRequestedEvent.OutputObject >; FeeClaimRequested: TypedContractEvent< FeeClaimRequestedEvent.InputTuple, FeeClaimRequestedEvent.OutputTuple, FeeClaimRequestedEvent.OutputObject >; "Initialized(uint64)": TypedContractEvent< InitializedEvent.InputTuple, InitializedEvent.OutputTuple, InitializedEvent.OutputObject >; Initialized: TypedContractEvent< InitializedEvent.InputTuple, InitializedEvent.OutputTuple, InitializedEvent.OutputObject >; "NodeDataRemoved(uint256)": TypedContractEvent< NodeDataRemovedEvent.InputTuple, NodeDataRemovedEvent.OutputTuple, NodeDataRemovedEvent.OutputObject >; NodeDataRemoved: TypedContractEvent< NodeDataRemovedEvent.InputTuple, NodeDataRemovedEvent.OutputTuple, NodeDataRemovedEvent.OutputObject >; "NodeDisabled(uint256)": TypedContractEvent< NodeDisabledEvent.InputTuple, NodeDisabledEvent.OutputTuple, NodeDisabledEvent.OutputObject >; NodeDisabled: TypedContractEvent< NodeDisabledEvent.InputTuple, NodeDisabledEvent.OutputTuple, NodeDisabledEvent.OutputObject >; "NodeEnabled(uint256)": TypedContractEvent< NodeEnabledEvent.InputTuple, NodeEnabledEvent.OutputTuple, NodeEnabledEvent.OutputObject >; NodeEnabled: TypedContractEvent< NodeEnabledEvent.InputTuple, NodeEnabledEvent.OutputTuple, NodeEnabledEvent.OutputObject >; "NodeFeeRateUpdated(uint256,uint16,uint16)": TypedContractEvent< NodeFeeRateUpdatedEvent.InputTuple, NodeFeeRateUpdatedEvent.OutputTuple, NodeFeeRateUpdatedEvent.OutputObject >; NodeFeeRateUpdated: TypedContractEvent< NodeFeeRateUpdatedEvent.InputTuple, NodeFeeRateUpdatedEvent.OutputTuple, NodeFeeRateUpdatedEvent.OutputObject >; "NodeRewardReceived(uint256,uint256)": TypedContractEvent< NodeRewardReceivedEvent.InputTuple, NodeRewardReceivedEvent.OutputTuple, NodeRewardReceivedEvent.OutputObject >; NodeRewardReceived: TypedContractEvent< NodeRewardReceivedEvent.InputTuple, NodeRewardReceivedEvent.OutputTuple, NodeRewardReceivedEvent.OutputObject >; "RequestClaimed(address,uint256,uint256,uint256,uint256)": TypedContractEvent< RequestClaimedEvent.InputTuple, RequestClaimedEvent.OutputTuple, RequestClaimedEvent.OutputObject >; RequestClaimed: TypedContractEvent< RequestClaimedEvent.InputTuple, RequestClaimedEvent.OutputTuple, RequestClaimedEvent.OutputObject >; "RequestCreated(address,uint256,uint256,uint256,uint256)": TypedContractEvent< RequestCreatedEvent.InputTuple, RequestCreatedEvent.OutputTuple, RequestCreatedEvent.OutputObject >; RequestCreated: TypedContractEvent< RequestCreatedEvent.InputTuple, RequestCreatedEvent.OutputTuple, RequestCreatedEvent.OutputObject >; "RetrieveRequested(address,uint256,uint256)": TypedContractEvent< RetrieveRequestedEvent.InputTuple, RetrieveRequestedEvent.OutputTuple, RetrieveRequestedEvent.OutputObject >; RetrieveRequested: TypedContractEvent< RetrieveRequestedEvent.InputTuple, RetrieveRequestedEvent.OutputTuple, RetrieveRequestedEvent.OutputObject >; "RetrievingDelayUpdated(uint256)": TypedContractEvent< RetrievingDelayUpdatedEvent.InputTuple, RetrievingDelayUpdatedEvent.OutputTuple, RetrievingDelayUpdatedEvent.OutputObject >; RetrievingDelayUpdated: TypedContractEvent< RetrievingDelayUpdatedEvent.InputTuple, RetrievingDelayUpdatedEvent.OutputTuple, RetrievingDelayUpdatedEvent.OutputObject >; "RewardReceived(address,uint256)": TypedContractEvent< RewardReceivedEvent.InputTuple, RewardReceivedEvent.OutputTuple, RewardReceivedEvent.OutputObject >; RewardReceived: TypedContractEvent< RewardReceivedEvent.InputTuple, RewardReceivedEvent.