UNPKG

mind-hubs-sdk

Version:

Typescript SDK to interact with MIND Hub Framework

864 lines (863 loc) 41.1 kB
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 IMemberPool { type StakeDelegateStruct = { subnetID: BigNumberish; user: AddressLike; assetAmount: BigNumberish; sig: BytesLike; sigTimestamp: BigNumberish; sigNonce: BigNumberish; }; type StakeDelegateStructOutput = [ subnetID: bigint, user: string, assetAmount: bigint, sig: string, sigTimestamp: bigint, sigNonce: bigint ] & { subnetID: bigint; user: string; assetAmount: bigint; sig: string; sigTimestamp: bigint; sigNonce: bigint; }; } export interface MemberPoolInterface extends Interface { getFunction(nameOrSignature: "ADMIN_ROLE" | "BATCH_ROLE" | "DEFAULT_ADMIN_ROLE" | "REWARD_ROLE" | "SUBNET_ROLE" | "daoToken" | "distributeReward" | "getRoleAdmin" | "getUserAssetAmounts" | "grantRole" | "hasRole" | "initialize" | "maxAssetAmountPerSubnet" | "maxUserAssetAmount" | "maxUserAssetAmountPerSubnet" | "previewReward" | "previewRewardForSubnets" | "renounceRole" | "revokeRole" | "rewardPerDay" | "rewardPerSubnetX10000" | "settleAndReserveReward" | "settleReward" | "settleRewardBatch" | "setup" | "setupRewardPerDay" | "setupRewardPerSubnetX10000" | "setupSubnetParams" | "signatureVerifierContract" | "stakeDelegate" | "stakeDelegateBatch" | "stakerRewardEarned" | "subnetAssetAmount" | "subnetRewardAmount" | "subnetRewardBalance" | "subnetRewardBalanceReserved" | "subnetRewardDistroStakerX10000" | "subnetRewardSettlementTs" | "supportsInterface" | "totalAssetAmount" | "totalRewardPerSubnetX10000" | "totalStakeReward" | "unstakeUndelegate" | "unstakeUndelegateBatch" | "userAssetAmount" | "userRewardBalance" | "userRewardDebt" | "voterRewardEarned"): FunctionFragment; getEvent(nameOrSignatureOrTopic: "Deposit" | "Initialized" | "RewardDistributed" | "RewardSettled" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked" | "StakeDelegateBatchFail" | "StakeDelegateBatchSuccess" | "UnstakeUndelegateBatchFail" | "UnstakeUndelegateBatchSuccess" | "Withdraw"): EventFragment; encodeFunctionData(functionFragment: "ADMIN_ROLE", values?: undefined): string; encodeFunctionData(functionFragment: "BATCH_ROLE", values?: undefined): string; encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; encodeFunctionData(functionFragment: "REWARD_ROLE", values?: undefined): string; encodeFunctionData(functionFragment: "SUBNET_ROLE", values?: undefined): string; encodeFunctionData(functionFragment: "daoToken", values?: undefined): string; encodeFunctionData(functionFragment: "distributeReward", values: [BigNumberish, AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; encodeFunctionData(functionFragment: "getUserAssetAmounts", values: [AddressLike[], BigNumberish[]]): string; encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; encodeFunctionData(functionFragment: "initialize", values: [AddressLike, AddressLike]): string; encodeFunctionData(functionFragment: "maxAssetAmountPerSubnet", values?: undefined): string; encodeFunctionData(functionFragment: "maxUserAssetAmount", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "maxUserAssetAmountPerSubnet", values?: undefined): string; encodeFunctionData(functionFragment: "previewReward", values: [BigNumberish, AddressLike]): string; encodeFunctionData(functionFragment: "previewRewardForSubnets", values: [BigNumberish[], AddressLike]): string; encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; encodeFunctionData(functionFragment: "rewardPerDay", values?: undefined): string; encodeFunctionData(functionFragment: "rewardPerSubnetX10000", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "settleAndReserveReward", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "settleReward", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "settleRewardBatch", values: [BigNumberish[]]): string; encodeFunctionData(functionFragment: "setup", values: [AddressLike, BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "setupRewardPerDay", values: [BigNumberish[], BigNumberish]): string; encodeFunctionData(functionFragment: "setupRewardPerSubnetX10000", values: [BigNumberish[], BigNumberish[]]): string; encodeFunctionData(functionFragment: "setupSubnetParams", values: [BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "signatureVerifierContract", values?: undefined): string; encodeFunctionData(functionFragment: "stakeDelegate", values: [ BigNumberish, AddressLike, BigNumberish, BytesLike, BigNumberish, BigNumberish ]): string; encodeFunctionData(functionFragment: "stakeDelegateBatch", values: [IMemberPool.StakeDelegateStruct[]]): string; encodeFunctionData(functionFragment: "stakerRewardEarned", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "subnetAssetAmount", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "subnetRewardAmount", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "subnetRewardBalance", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "subnetRewardBalanceReserved", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "subnetRewardDistroStakerX10000", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "subnetRewardSettlementTs", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; encodeFunctionData(functionFragment: "totalAssetAmount", values?: undefined): string; encodeFunctionData(functionFragment: "totalRewardPerSubnetX10000", values?: undefined): string; encodeFunctionData(functionFragment: "totalStakeReward", values: [BigNumberish, AddressLike]): string; encodeFunctionData(functionFragment: "unstakeUndelegate", values: [ BigNumberish, AddressLike, BigNumberish, BytesLike, BigNumberish, BigNumberish ]): string; encodeFunctionData(functionFragment: "unstakeUndelegateBatch", values: [IMemberPool.StakeDelegateStruct[]]): string; encodeFunctionData(functionFragment: "userAssetAmount", values: [BigNumberish, AddressLike]): string; encodeFunctionData(functionFragment: "userRewardBalance", values: [AddressLike]): string; encodeFunctionData(functionFragment: "userRewardDebt", values: [BigNumberish, AddressLike]): string; encodeFunctionData(functionFragment: "voterRewardEarned", values: [AddressLike, BigNumberish]): string; decodeFunctionResult(functionFragment: "ADMIN_ROLE", data: BytesLike): Result; decodeFunctionResult(functionFragment: "BATCH_ROLE", data: BytesLike): Result; decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; decodeFunctionResult(functionFragment: "REWARD_ROLE", data: BytesLike): Result; decodeFunctionResult(functionFragment: "SUBNET_ROLE", data: BytesLike): Result; decodeFunctionResult(functionFragment: "daoToken", data: BytesLike): Result; decodeFunctionResult(functionFragment: "distributeReward", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getUserAssetAmounts", data: BytesLike): Result; decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; decodeFunctionResult(functionFragment: "maxAssetAmountPerSubnet", data: BytesLike): Result; decodeFunctionResult(functionFragment: "maxUserAssetAmount", data: BytesLike): Result; decodeFunctionResult(functionFragment: "maxUserAssetAmountPerSubnet", data: BytesLike): Result; decodeFunctionResult(functionFragment: "previewReward", data: BytesLike): Result; decodeFunctionResult(functionFragment: "previewRewardForSubnets", data: BytesLike): Result; decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "rewardPerDay", data: BytesLike): Result; decodeFunctionResult(functionFragment: "rewardPerSubnetX10000", data: BytesLike): Result; decodeFunctionResult(functionFragment: "settleAndReserveReward", data: BytesLike): Result; decodeFunctionResult(functionFragment: "settleReward", data: BytesLike): Result; decodeFunctionResult(functionFragment: "settleRewardBatch", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setup", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setupRewardPerDay", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setupRewardPerSubnetX10000", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setupSubnetParams", data: BytesLike): Result; decodeFunctionResult(functionFragment: "signatureVerifierContract", data: BytesLike): Result; decodeFunctionResult(functionFragment: "stakeDelegate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "stakeDelegateBatch", data: BytesLike): Result; decodeFunctionResult(functionFragment: "stakerRewardEarned", data: BytesLike): Result; decodeFunctionResult(functionFragment: "subnetAssetAmount", data: BytesLike): Result; decodeFunctionResult(functionFragment: "subnetRewardAmount", data: BytesLike): Result; decodeFunctionResult(functionFragment: "subnetRewardBalance", data: BytesLike): Result; decodeFunctionResult(functionFragment: "subnetRewardBalanceReserved", data: BytesLike): Result; decodeFunctionResult(functionFragment: "subnetRewardDistroStakerX10000", data: BytesLike): Result; decodeFunctionResult(functionFragment: "subnetRewardSettlementTs", data: BytesLike): Result; decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; decodeFunctionResult(functionFragment: "totalAssetAmount", data: BytesLike): Result; decodeFunctionResult(functionFragment: "totalRewardPerSubnetX10000", data: BytesLike): Result; decodeFunctionResult(functionFragment: "totalStakeReward", data: BytesLike): Result; decodeFunctionResult(functionFragment: "unstakeUndelegate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "unstakeUndelegateBatch", data: BytesLike): Result; decodeFunctionResult(functionFragment: "userAssetAmount", data: BytesLike): Result; decodeFunctionResult(functionFragment: "userRewardBalance", data: BytesLike): Result; decodeFunctionResult(functionFragment: "userRewardDebt", data: BytesLike): Result; decodeFunctionResult(functionFragment: "voterRewardEarned", data: BytesLike): Result; } export declare namespace DepositEvent { type InputTuple = [ subnetID: BigNumberish, user: AddressLike, assetAmount: BigNumberish ]; type OutputTuple = [ subnetID: bigint, user: string, assetAmount: bigint ]; interface OutputObject { subnetID: bigint; user: string; assetAmount: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace InitializedEvent { type InputTuple = [version: BigNumberish]; type OutputTuple = [version: bigint]; interface OutputObject { version: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace RewardDistributedEvent { type InputTuple = [ subnetID: BigNumberish, receiver: AddressLike, rewardAmount: BigNumberish ]; type OutputTuple = [ subnetID: bigint, receiver: string, rewardAmount: bigint ]; interface OutputObject { subnetID: bigint; receiver: string; rewardAmount: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace RewardSettledEvent { type InputTuple = [ tsFrom: BigNumberish, tsTo: BigNumberish, subnetID: BigNumberish, stakerRewardAmount: BigNumberish, subnetRewardAmount: BigNumberish ]; type OutputTuple = [ tsFrom: bigint, tsTo: bigint, subnetID: bigint, stakerRewardAmount: bigint, subnetRewardAmount: bigint ]; interface OutputObject { tsFrom: bigint; tsTo: bigint; subnetID: bigint; stakerRewardAmount: bigint; subnetRewardAmount: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } 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<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } 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<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } 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<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace StakeDelegateBatchFailEvent { type InputTuple = [ subnetID: BigNumberish, user: AddressLike, assetAmount: BigNumberish, sigTimestamp: BigNumberish, sigNonce: BigNumberish, contractID: BytesLike, errorCode: BigNumberish, error: BytesLike ]; type OutputTuple = [ subnetID: bigint, user: string, assetAmount: bigint, sigTimestamp: bigint, sigNonce: bigint, contractID: string, errorCode: bigint, error: string ]; interface OutputObject { subnetID: bigint; user: string; assetAmount: bigint; sigTimestamp: bigint; sigNonce: bigint; contractID: string; errorCode: bigint; error: string; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace StakeDelegateBatchSuccessEvent { type InputTuple = [ subnetID: BigNumberish, user: AddressLike, assetAmount: BigNumberish, sigTimestamp: BigNumberish, sigNonce: BigNumberish ]; type OutputTuple = [ subnetID: bigint, user: string, assetAmount: bigint, sigTimestamp: bigint, sigNonce: bigint ]; interface OutputObject { subnetID: bigint; user: string; assetAmount: bigint; sigTimestamp: bigint; sigNonce: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace UnstakeUndelegateBatchFailEvent { type InputTuple = [ subnetID: BigNumberish, user: AddressLike, assetAmount: BigNumberish, sigTimestamp: BigNumberish, sigNonce: BigNumberish, contractID: BytesLike, errorCode: BigNumberish, error: BytesLike ]; type OutputTuple = [ subnetID: bigint, user: string, assetAmount: bigint, sigTimestamp: bigint, sigNonce: bigint, contractID: string, errorCode: bigint, error: string ]; interface OutputObject { subnetID: bigint; user: string; assetAmount: bigint; sigTimestamp: bigint; sigNonce: bigint; contractID: string; errorCode: bigint; error: string; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace UnstakeUndelegateBatchSuccessEvent { type InputTuple = [ subnetID: BigNumberish, user: AddressLike, assetAmount: BigNumberish, sigTimestamp: BigNumberish, sigNonce: BigNumberish ]; type OutputTuple = [ subnetID: bigint, user: string, assetAmount: bigint, sigTimestamp: bigint, sigNonce: bigint ]; interface OutputObject { subnetID: bigint; user: string; assetAmount: bigint; sigTimestamp: bigint; sigNonce: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace WithdrawEvent { type InputTuple = [ subnetID: BigNumberish, user: AddressLike, assetAmount: BigNumberish, rewardAmount: BigNumberish ]; type OutputTuple = [ subnetID: bigint, user: string, assetAmount: bigint, rewardAmount: bigint ]; interface OutputObject { subnetID: bigint; user: string; assetAmount: bigint; rewardAmount: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export interface MemberPool extends BaseContract { connect(runner?: ContractRunner | null): MemberPool; waitForDeployment(): Promise<this>; interface: MemberPoolInterface; 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>; ADMIN_ROLE: TypedContractMethod<[], [string], "view">; BATCH_ROLE: TypedContractMethod<[], [string], "view">; DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; REWARD_ROLE: TypedContractMethod<[], [string], "view">; SUBNET_ROLE: TypedContractMethod<[], [string], "view">; daoToken: TypedContractMethod<[], [string], "view">; distributeReward: TypedContractMethod<[ subnetID: BigNumberish, receiver: AddressLike, rewardAmount: BigNumberish ], [ void ], "nonpayable">; getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; getUserAssetAmounts: TypedContractMethod<[ users: AddressLike[], subnetIDs: BigNumberish[] ], [ bigint[][] ], "view">; grantRole: TypedContractMethod<[ role: BytesLike, account: AddressLike ], [ void ], "nonpayable">; hasRole: TypedContractMethod<[ role: BytesLike, account: AddressLike ], [ boolean ], "view">; initialize: TypedContractMethod<[ _owner: AddressLike, _daoToken: AddressLike ], [ void ], "nonpayable">; maxAssetAmountPerSubnet: TypedContractMethod<[], [bigint], "view">; maxUserAssetAmount: TypedContractMethod<[ subnetID: BigNumberish ], [ bigint ], "view">; maxUserAssetAmountPerSubnet: TypedContractMethod<[], [bigint], "view">; previewReward: TypedContractMethod<[ subnetID: BigNumberish, user: AddressLike ], [ bigint ], "view">; previewRewardForSubnets: TypedContractMethod<[ subnetIDs: BigNumberish[], user: AddressLike ], [ bigint ], "view">; renounceRole: TypedContractMethod<[ role: BytesLike, callerConfirmation: AddressLike ], [ void ], "nonpayable">; revokeRole: TypedContractMethod<[ role: BytesLike, account: AddressLike ], [ void ], "nonpayable">; rewardPerDay: TypedContractMethod<[], [bigint], "view">; rewardPerSubnetX10000: TypedContractMethod<[ subnetID: BigNumberish ], [ bigint ], "view">; settleAndReserveReward: TypedContractMethod<[ subnetID: BigNumberish ], [ bigint ], "nonpayable">; settleReward: TypedContractMethod<[ subnetID: BigNumberish ], [ void ], "nonpayable">; settleRewardBatch: TypedContractMethod<[ subnetIDs: BigNumberish[] ], [ void ], "nonpayable">; setup: TypedContractMethod<[ _signatureVerifier: AddressLike, _maxAssetAmountPerSubnet: BigNumberish, _maxUserAssetAmountPerSubnet: BigNumberish ], [ void ], "nonpayable">; setupRewardPerDay: TypedContractMethod<[ subnetIDs: BigNumberish[], _emissionPerDay: BigNumberish ], [ void ], "nonpayable">; setupRewardPerSubnetX10000: TypedContractMethod<[ subnetIDs: BigNumberish[], x10000: BigNumberish[] ], [ void ], "nonpayable">; setupSubnetParams: TypedContractMethod<[ subnetID: BigNumberish, stakerDistroX10000: BigNumberish ], [ void ], "nonpayable">; signatureVerifierContract: TypedContractMethod<[], [string], "view">; stakeDelegate: TypedContractMethod<[ subnetID: BigNumberish, user: AddressLike, assetAmount: BigNumberish, sig: BytesLike, sigTimestamp: BigNumberish, sigNonce: BigNumberish ], [ bigint ], "nonpayable">; stakeDelegateBatch: TypedContractMethod<[ requests: IMemberPool.StakeDelegateStruct[] ], [ void ], "nonpayable">; stakerRewardEarned: TypedContractMethod<[ wallet: AddressLike, subnetID: BigNumberish ], [ bigint ], "view">; subnetAssetAmount: TypedContractMethod<[ subnetID: BigNumberish ], [ bigint ], "view">; subnetRewardAmount: TypedContractMethod<[ subnetID: BigNumberish ], [ bigint ], "view">; subnetRewardBalance: TypedContractMethod<[ subnetID: BigNumberish ], [ bigint ], "view">; subnetRewardBalanceReserved: TypedContractMethod<[ subnetID: BigNumberish ], [ bigint ], "view">; subnetRewardDistroStakerX10000: TypedContractMethod<[ subnetID: BigNumberish ], [ bigint ], "view">; subnetRewardSettlementTs: TypedContractMethod<[ subnetID: BigNumberish ], [ bigint ], "view">; supportsInterface: TypedContractMethod<[ interfaceId: BytesLike ], [ boolean ], "view">; totalAssetAmount: TypedContractMethod<[], [bigint], "view">; totalRewardPerSubnetX10000: TypedContractMethod<[], [bigint], "view">; totalStakeReward: TypedContractMethod<[ subnetID: BigNumberish, user: AddressLike ], [ bigint ], "view">; unstakeUndelegate: TypedContractMethod<[ subnetID: BigNumberish, user: AddressLike, assetAmount: BigNumberish, sig: BytesLike, sigTimestamp: BigNumberish, sigNonce: BigNumberish ], [ bigint ], "nonpayable">; unstakeUndelegateBatch: TypedContractMethod<[ requests: IMemberPool.StakeDelegateStruct[] ], [ void ], "nonpayable">; userAssetAmount: TypedContractMethod<[ subnetID: BigNumberish, user: AddressLike ], [ bigint ], "view">; userRewardBalance: TypedContractMethod<[ wallet: AddressLike ], [ bigint ], "view">; userRewardDebt: TypedContractMethod<[ subnetID: BigNumberish, user: AddressLike ], [ bigint ], "view">; voterRewardEarned: TypedContractMethod<[ wallet: AddressLike, subnetID: BigNumberish ], [ bigint ], "view">; getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T; getFunction(nameOrSignature: "ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "BATCH_ROLE"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "REWARD_ROLE"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "SUBNET_ROLE"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "daoToken"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "distributeReward"): TypedContractMethod<[ subnetID: BigNumberish, receiver: AddressLike, rewardAmount: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; getFunction(nameOrSignature: "getUserAssetAmounts"): TypedContractMethod<[ users: AddressLike[], subnetIDs: BigNumberish[] ], [ bigint[][] ], "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<[ _owner: AddressLike, _daoToken: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "maxAssetAmountPerSubnet"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "maxUserAssetAmount"): TypedContractMethod<[subnetID: BigNumberish], [bigint], "view">; getFunction(nameOrSignature: "maxUserAssetAmountPerSubnet"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "previewReward"): TypedContractMethod<[ subnetID: BigNumberish, user: AddressLike ], [ bigint ], "view">; getFunction(nameOrSignature: "previewRewardForSubnets"): TypedContractMethod<[ subnetIDs: BigNumberish[], user: AddressLike ], [ bigint ], "view">; getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ role: BytesLike, callerConfirmation: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ role: BytesLike, account: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "rewardPerDay"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "rewardPerSubnetX10000"): TypedContractMethod<[subnetID: BigNumberish], [bigint], "view">; getFunction(nameOrSignature: "settleAndReserveReward"): TypedContractMethod<[subnetID: BigNumberish], [bigint], "nonpayable">; getFunction(nameOrSignature: "settleReward"): TypedContractMethod<[subnetID: BigNumberish], [void], "nonpayable">; getFunction(nameOrSignature: "settleRewardBatch"): TypedContractMethod<[subnetIDs: BigNumberish[]], [void], "nonpayable">; getFunction(nameOrSignature: "setup"): TypedContractMethod<[ _signatureVerifier: AddressLike, _maxAssetAmountPerSubnet: BigNumberish, _maxUserAssetAmountPerSubnet: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setupRewardPerDay"): TypedContractMethod<[ subnetIDs: BigNumberish[], _emissionPerDay: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setupRewardPerSubnetX10000"): TypedContractMethod<[ subnetIDs: BigNumberish[], x10000: BigNumberish[] ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setupSubnetParams"): TypedContractMethod<[ subnetID: BigNumberish, stakerDistroX10000: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "signatureVerifierContract"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "stakeDelegate"): TypedContractMethod<[ subnetID: BigNumberish, user: AddressLike, assetAmount: BigNumberish, sig: BytesLike, sigTimestamp: BigNumberish, sigNonce: BigNumberish ], [ bigint ], "nonpayable">; getFunction(nameOrSignature: "stakeDelegateBatch"): TypedContractMethod<[ requests: IMemberPool.StakeDelegateStruct[] ], [ void ], "nonpayable">; getFunction(nameOrSignature: "stakerRewardEarned"): TypedContractMethod<[ wallet: AddressLike, subnetID: BigNumberish ], [ bigint ], "view">; getFunction(nameOrSignature: "subnetAssetAmount"): TypedContractMethod<[subnetID: BigNumberish], [bigint], "view">; getFunction(nameOrSignature: "subnetRewardAmount"): TypedContractMethod<[subnetID: BigNumberish], [bigint], "view">; getFunction(nameOrSignature: "subnetRewardBalance"): TypedContractMethod<[subnetID: BigNumberish], [bigint], "view">; getFunction(nameOrSignature: "subnetRewardBalanceReserved"): TypedContractMethod<[subnetID: BigNumberish], [bigint], "view">; getFunction(nameOrSignature: "subnetRewardDistroStakerX10000"): TypedContractMethod<[subnetID: BigNumberish], [bigint], "view">; getFunction(nameOrSignature: "subnetRewardSettlementTs"): TypedContractMethod<[subnetID: BigNumberish], [bigint], "view">; getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; getFunction(nameOrSignature: "totalAssetAmount"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "totalRewardPerSubnetX10000"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "totalStakeReward"): TypedContractMethod<[ subnetID: BigNumberish, user: AddressLike ], [ bigint ], "view">; getFunction(nameOrSignature: "unstakeUndelegate"): TypedContractMethod<[ subnetID: BigNumberish, user: AddressLike, assetAmount: BigNumberish, sig: BytesLike, sigTimestamp: BigNumberish, sigNonce: BigNumberish ], [ bigint ], "nonpayable">; getFunction(nameOrSignature: "unstakeUndelegateBatch"): TypedContractMethod<[ requests: IMemberPool.StakeDelegateStruct[] ], [ void ], "nonpayable">; getFunction(nameOrSignature: "userAssetAmount"): TypedContractMethod<[ subnetID: BigNumberish, user: AddressLike ], [ bigint ], "view">; getFunction(nameOrSignature: "userRewardBalance"): TypedContractMethod<[wallet: AddressLike], [bigint], "view">; getFunction(nameOrSignature: "userRewardDebt"): TypedContractMethod<[ subnetID: BigNumberish, user: AddressLike ], [ bigint ], "view">; getFunction(nameOrSignature: "voterRewardEarned"): TypedContractMethod<[ wallet: AddressLike, subnetID: BigNumberish ], [ bigint ], "view">; getEvent(key: "Deposit"): TypedContractEvent<DepositEvent.InputTuple, DepositEvent.OutputTuple, DepositEvent.OutputObject>; getEvent(key: "Initialized"): TypedContractEvent<InitializedEvent.InputTuple, InitializedEvent.OutputTuple, InitializedEvent.OutputObject>; getEvent(key: "RewardDistributed"): TypedContractEvent<RewardDistributedEvent.InputTuple, RewardDistributedEvent.OutputTuple, RewardDistributedEvent.OutputObject>; getEvent(key: "RewardSettled"): TypedContractEvent<RewardSettledEvent.InputTuple, RewardSettledEvent.OutputTuple, RewardSettledEvent.OutputObject>; getEvent(key: "RoleAdminChanged"): TypedContractEvent<RoleAdminChangedEvent.InputTuple, RoleAdminChangedEvent.OutputTuple, RoleAdminChangedEvent.OutputObject>; getEvent(key: "RoleGranted"): TypedContractEvent<RoleGrantedEvent.InputTuple, RoleGrantedEvent.OutputTuple, RoleGrantedEvent.OutputObject>; getEvent(key: "RoleRevoked"): TypedContractEvent<RoleRevokedEvent.InputTuple, RoleRevokedEvent.OutputTuple, RoleRevokedEvent.OutputObject>; getEvent(key: "StakeDelegateBatchFail"): TypedContractEvent<StakeDelegateBatchFailEvent.InputTuple, StakeDelegateBatchFailEvent.OutputTuple, StakeDelegateBatchFailEvent.OutputObject>; getEvent(key: "StakeDelegateBatchSuccess"): TypedContractEvent<StakeDelegateBatchSuccessEvent.InputTuple, StakeDelegateBatchSuccessEvent.OutputTuple, StakeDelegateBatchSuccessEvent.OutputObject>; getEvent(key: "UnstakeUndelegateBatchFail"): TypedContractEvent<UnstakeUndelegateBatchFailEvent.InputTuple, UnstakeUndelegateBatchFailEvent.OutputTuple, UnstakeUndelegateBatchFailEvent.OutputObject>; getEvent(key: "UnstakeUndelegateBatchSuccess"): TypedContractEvent<UnstakeUndelegateBatchSuccessEvent.InputTuple, UnstakeUndelegateBatchSuccessEvent.OutputTuple, UnstakeUndelegateBatchSuccessEvent.OutputObject>; getEvent(key: "Withdraw"): TypedContractEvent<WithdrawEvent.InputTuple, WithdrawEvent.OutputTuple, WithdrawEvent.OutputObject>; filters: { "Deposit(uint256,address,uint256)": TypedContractEvent<DepositEvent.InputTuple, DepositEvent.OutputTuple, DepositEvent.OutputObject>; Deposit: TypedContractEvent<DepositEvent.InputTuple, DepositEvent.OutputTuple, DepositEvent.OutputObject>; "Initialized(uint64)": TypedContractEvent<InitializedEvent.InputTuple, InitializedEvent.OutputTuple, InitializedEvent.OutputObject>; Initialized: TypedContractEvent<InitializedEvent.InputTuple, InitializedEvent.OutputTuple, InitializedEvent.OutputObject>; "RewardDistributed(uint256,address,uint256)": TypedContractEvent<RewardDistributedEvent.InputTuple, RewardDistributedEvent.OutputTuple, RewardDistributedEvent.OutputObject>; RewardDistributed: TypedContractEvent<RewardDistributedEvent.InputTuple, RewardDistributedEvent.OutputTuple, RewardDistributedEvent.OutputObject>; "RewardSettled(uint256,uint256,uint256,uint256,uint256)": TypedContractEvent<RewardSettledEvent.InputTuple, RewardSettledEvent.OutputTuple, RewardSettledEvent.OutputObject>; RewardSettled: TypedContractEvent<RewardSettledEvent.InputTuple, RewardSettledEvent.OutputTuple, RewardSettledEvent.OutputObject>; "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent<RoleAdminChangedEvent.InputTuple, RoleAdminChangedEvent.OutputTuple, RoleAdminChangedEvent.OutputObject>; RoleAdminChanged: TypedContractEvent<RoleAdminChangedEvent.InputTuple, RoleAdminChangedEvent.OutputTuple, RoleAdminChangedEvent.OutputObject>; "RoleGranted(bytes32,address,address)": TypedContractEvent<RoleGrantedEvent.InputTuple, RoleGrantedEvent.OutputTuple, RoleGrantedEvent.OutputObject>; RoleGranted: TypedContractEvent<RoleGrantedEvent.InputTuple, RoleGrantedEvent.OutputTuple, RoleGrantedEvent.OutputObject>; "RoleRevoked(bytes32,address,address)": TypedContractEvent<RoleRevokedEvent.InputTuple, RoleRevokedEvent.OutputTuple, RoleRevokedEvent.OutputObject>; RoleRevoked: TypedContractEvent<RoleRevokedEvent.InputTuple, RoleRevokedEvent.OutputTuple, RoleRevokedEvent.OutputObject>; "StakeDelegateBatchFail(uint256,address,uint256,uint256,uint256,bytes32,uint16,bytes)": TypedContractEvent<StakeDelegateBatchFailEvent.InputTuple, StakeDelegateBatchFailEvent.OutputTuple, StakeDelegateBatchFailEvent.OutputObject>; StakeDelegateBatchFail: TypedContractEvent<StakeDelegateBatchFailEvent.InputTuple, StakeDelegateBatchFailEvent.OutputTuple, StakeDelegateBatchFailEvent.OutputObject>; "StakeDelegateBatchSuccess(uint256,address,uint256,uint256,uint256)": TypedContractEvent<StakeDelegateBatchSuccessEvent.InputTuple, StakeDelegateBatchSuccessEvent.OutputTuple, StakeDelegateBatchSuccessEvent.OutputObject>; StakeDelegateBatchSuccess: TypedContractEvent<StakeDelegateBatchSuccessEvent.InputTuple, StakeDelegateBatchSuccessEvent.OutputTuple, StakeDelegateBatchSuccessEvent.OutputObject>; "UnstakeUndelegateBatchFail(uint256,address,uint256,uint256,uint256,bytes32,uint16,bytes)": TypedContractEvent<UnstakeUndelegateBatchFailEvent.InputTuple, UnstakeUndelegateBatchFailEvent.OutputTuple, UnstakeUndelegateBatchFailEvent.OutputObject>; UnstakeUndelegateBatchFail: TypedContractEvent<UnstakeUndelegateBatchFailEvent.InputTuple, UnstakeUndelegateBatchFailEvent.OutputTuple, UnstakeUndelegateBatchFailEvent.OutputObject>; "UnstakeUndelegateBatchSuccess(uint256,address,uint256,uint256,uint256)": TypedContractEvent<UnstakeUndelegateBatchSuccessEvent.InputTuple, UnstakeUndelegateBatchSuccessEvent.OutputTuple, UnstakeUndelegateBatchSuccessEvent.OutputObject>; UnstakeUndelegateBatchSuccess: TypedContractEvent<UnstakeUndelegateBatchSuccessEvent.InputTuple, UnstakeUndelegateBatchSuccessEvent.OutputTuple, UnstakeUndelegateBatchSuccessEvent.OutputObject>; "Withdraw(uint256,address,uint256,uint256)": TypedContractEvent<WithdrawEvent.InputTuple, WithdrawEvent.OutputTuple, WithdrawEvent.OutputObject>; Withdraw: TypedContractEvent<WithdrawEvent.InputTuple, WithdrawEvent.OutputTuple, WithdrawEvent.OutputObject>; }; }