mind-hubs-sdk
Version:
Typescript SDK to interact with MIND Hub Framework
864 lines (863 loc) • 41.1 kB
TypeScript
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>;
};
}