@knine-sdk/contracts
Version:
Contracts for Knine projects. Part of Knine JS SDK
1,169 lines (1,164 loc) • 31.3 kB
JavaScript
'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
var ethers = require('ethers');
/* Autogenerated file. Do not edit manually. */
const _abi = [
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
{
indexed: false,
internalType: "address",
name: "rewardAddress",
type: "address",
},
],
name: "AddNodeOperator",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
{
indexed: false,
internalType: "address",
name: "rewardAddress",
type: "address",
},
],
name: "ExitNodeOperator",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "account",
type: "address",
},
],
name: "Paused",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
{
indexed: false,
internalType: "address",
name: "rewardAddress",
type: "address",
},
],
name: "RemoveInvalidNodeOperator",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
{
indexed: false,
internalType: "address",
name: "rewardAddress",
type: "address",
},
],
name: "RemoveNodeOperator",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "bytes32",
name: "role",
type: "bytes32",
},
{
indexed: true,
internalType: "bytes32",
name: "previousAdminRole",
type: "bytes32",
},
{
indexed: true,
internalType: "bytes32",
name: "newAdminRole",
type: "bytes32",
},
],
name: "RoleAdminChanged",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "bytes32",
name: "role",
type: "bytes32",
},
{
indexed: true,
internalType: "address",
name: "account",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "sender",
type: "address",
},
],
name: "RoleGranted",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "bytes32",
name: "role",
type: "bytes32",
},
{
indexed: true,
internalType: "address",
name: "account",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "sender",
type: "address",
},
],
name: "RoleRevoked",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "uint256",
name: "oldDistanceThreshold",
type: "uint256",
},
{
indexed: false,
internalType: "uint256",
name: "newDistanceThreshold",
type: "uint256",
},
],
name: "SetDistanceThreshold",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "oldKnBONE",
type: "address",
},
{
indexed: false,
internalType: "address",
name: "newKnBONE",
type: "address",
},
],
name: "SetKnBONEAddress",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "uint256",
name: "oldMaxWithdrawPercentagePerRebalance",
type: "uint256",
},
{
indexed: false,
internalType: "uint256",
name: "newMaxWithdrawPercentagePerRebalance",
type: "uint256",
},
],
name: "SetMaxWithdrawPercentagePerRebalance",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "uint8",
name: "oldMinRequestWithdrawRange",
type: "uint8",
},
{
indexed: false,
internalType: "uint8",
name: "newMinRequestWithdrawRange",
type: "uint8",
},
],
name: "SetMinRequestWithdrawRange",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
{
indexed: false,
internalType: "address",
name: "oldRewardAddress",
type: "address",
},
{
indexed: false,
internalType: "address",
name: "newRewardAddress",
type: "address",
},
],
name: "SetRewardAddress",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: "address",
name: "account",
type: "address",
},
],
name: "Unpaused",
type: "event",
},
{
inputs: [],
name: "ADD_NODE_OPERATOR_ROLE",
outputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "DAO_ROLE",
outputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "DEFAULT_ADMIN_ROLE",
outputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "DISTANCE_THRESHOLD_PERCENTS",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "MAX_WITHDRAW_PERCENTAGE_PER_REBALANCE",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "MIN_REQUEST_WITHDRAW_RANGE_PERCENTS",
outputs: [
{
internalType: "uint8",
name: "",
type: "uint8",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "PAUSE_ROLE",
outputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "REMOVE_NODE_OPERATOR_ROLE",
outputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "UNPAUSE_ROLE",
outputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "_validatorId",
type: "uint256",
},
{
internalType: "address",
name: "_rewardAddress",
type: "address",
},
],
name: "addNodeOperator",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "exitNodeOperatorRegistry",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_rewardAddress",
type: "address",
},
],
name: "getNodeOperator",
outputs: [
{
components: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
{
internalType: "uint256",
name: "commissionRate",
type: "uint256",
},
{
internalType: "address",
name: "validatorShare",
type: "address",
},
{
internalType: "address",
name: "rewardAddress",
type: "address",
},
{
internalType: "bool",
name: "delegation",
type: "bool",
},
{
internalType: "enum INodeOperatorRegistry.NodeOperatorRegistryStatus",
name: "status",
type: "uint8",
},
],
internalType: "struct INodeOperatorRegistry.FullNodeOperatorRegistry",
name: "nodeOperator",
type: "tuple",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "_validatorId",
type: "uint256",
},
],
name: "getNodeOperator",
outputs: [
{
components: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
{
internalType: "uint256",
name: "commissionRate",
type: "uint256",
},
{
internalType: "address",
name: "validatorShare",
type: "address",
},
{
internalType: "address",
name: "rewardAddress",
type: "address",
},
{
internalType: "bool",
name: "delegation",
type: "bool",
},
{
internalType: "enum INodeOperatorRegistry.NodeOperatorRegistryStatus",
name: "status",
type: "uint8",
},
],
internalType: "struct INodeOperatorRegistry.FullNodeOperatorRegistry",
name: "nodeOperator",
type: "tuple",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "_validatorId",
type: "uint256",
},
],
name: "getNodeOperatorStatus",
outputs: [
{
internalType: "enum INodeOperatorRegistry.NodeOperatorRegistryStatus",
name: "operatorStatus",
type: "uint8",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "getProtocolStats",
outputs: [
{
internalType: "bool",
name: "isBalanced",
type: "bool",
},
{
internalType: "uint256",
name: "distanceMinMaxStake",
type: "uint256",
},
{
internalType: "uint256",
name: "minAmount",
type: "uint256",
},
{
internalType: "uint256",
name: "maxAmount",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "bytes32",
name: "role",
type: "bytes32",
},
],
name: "getRoleAdmin",
outputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "getStats",
outputs: [
{
internalType: "uint256",
name: "inactiveNodeOperator",
type: "uint256",
},
{
internalType: "uint256",
name: "activeNodeOperator",
type: "uint256",
},
{
internalType: "uint256",
name: "jailedNodeOperator",
type: "uint256",
},
{
internalType: "uint256",
name: "ejectedNodeOperator",
type: "uint256",
},
{
internalType: "uint256",
name: "unstakedNodeOperator",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "getValidatorIds",
outputs: [
{
internalType: "uint256[]",
name: "",
type: "uint256[]",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "_amountToDelegate",
type: "uint256",
},
],
name: "getValidatorsDelegationAmount",
outputs: [
{
components: [
{
internalType: "address",
name: "validatorShare",
type: "address",
},
{
internalType: "address",
name: "rewardAddress",
type: "address",
},
],
internalType: "struct INodeOperatorRegistry.ValidatorData[]",
name: "validators",
type: "tuple[]",
},
{
internalType: "uint256[]",
name: "operatorRatiosToDelegate",
type: "uint256[]",
},
{
internalType: "uint256",
name: "totalRatio",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "_amountToReDelegate",
type: "uint256",
},
],
name: "getValidatorsRebalanceAmount",
outputs: [
{
components: [
{
internalType: "address",
name: "validatorShare",
type: "address",
},
{
internalType: "address",
name: "rewardAddress",
type: "address",
},
],
internalType: "struct INodeOperatorRegistry.ValidatorData[]",
name: "validators",
type: "tuple[]",
},
{
internalType: "uint256[]",
name: "operatorRatiosToRebalance",
type: "uint256[]",
},
{
internalType: "uint256",
name: "totalRatio",
type: "uint256",
},
{
internalType: "uint256",
name: "totalToWithdraw",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "_withdrawAmount",
type: "uint256",
},
],
name: "getValidatorsRequestWithdraw",
outputs: [
{
components: [
{
internalType: "address",
name: "validatorShare",
type: "address",
},
{
internalType: "address",
name: "rewardAddress",
type: "address",
},
],
internalType: "struct INodeOperatorRegistry.ValidatorData[]",
name: "validators",
type: "tuple[]",
},
{
internalType: "uint256",
name: "totalDelegated",
type: "uint256",
},
{
internalType: "uint256[]",
name: "bigNodeOperatorIds",
type: "uint256[]",
},
{
internalType: "uint256[]",
name: "smallNodeOperatorIds",
type: "uint256[]",
},
{
internalType: "uint256[]",
name: "operatorAmountCanBeRequested",
type: "uint256[]",
},
{
internalType: "uint256",
name: "totalValidatorToWithdrawFrom",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "bytes32",
name: "role",
type: "bytes32",
},
{
internalType: "address",
name: "account",
type: "address",
},
],
name: "grantRole",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "bytes32",
name: "role",
type: "bytes32",
},
{
internalType: "address",
name: "account",
type: "address",
},
],
name: "hasRole",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "contract IStakeManager",
name: "_stakeManager",
type: "address",
},
{
internalType: "contract IKnBONE",
name: "_knBONE",
type: "address",
},
{
internalType: "address",
name: "_dao",
type: "address",
},
],
name: "initialize",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "knBONE",
outputs: [
{
internalType: "contract IKnBONE",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "listDelegatedNodeOperators",
outputs: [
{
components: [
{
internalType: "address",
name: "validatorShare",
type: "address",
},
{
internalType: "address",
name: "rewardAddress",
type: "address",
},
],
internalType: "struct INodeOperatorRegistry.ValidatorData[]",
name: "",
type: "tuple[]",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "listWithdrawNodeOperators",
outputs: [
{
components: [
{
internalType: "address",
name: "validatorShare",
type: "address",
},
{
internalType: "address",
name: "rewardAddress",
type: "address",
},
],
internalType: "struct INodeOperatorRegistry.ValidatorData[]",
name: "",
type: "tuple[]",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "pause",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "paused",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "_validatorId",
type: "uint256",
},
],
name: "removeInvalidNodeOperator",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "_validatorId",
type: "uint256",
},
],
name: "removeNodeOperator",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "bytes32",
name: "role",
type: "bytes32",
},
{
internalType: "address",
name: "account",
type: "address",
},
],
name: "renounceRole",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "bytes32",
name: "role",
type: "bytes32",
},
{
internalType: "address",
name: "account",
type: "address",
},
],
name: "revokeRole",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "_newDistanceThreshold",
type: "uint256",
},
],
name: "setDistanceThreshold",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_newKnBONE",
type: "address",
},
],
name: "setKnBONEAddress",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "_newMaxWithdrawPercentagePerRebalance",
type: "uint256",
},
],
name: "setMaxWithdrawPercentagePerRebalance",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "uint8",
name: "_newMinRequestWithdrawRangePercents",
type: "uint8",
},
],
name: "setMinRequestWithdrawRange",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "_newRewardAddress",
type: "address",
},
],
name: "setRewardAddress",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [],
name: "stakeManager",
outputs: [
{
internalType: "contract IStakeManager",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "bytes4",
name: "interfaceId",
type: "bytes4",
},
],
name: "supportsInterface",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [],
name: "unpause",
outputs: [],
stateMutability: "nonpayable",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
name: "validatorIdToRewardAddress",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
name: "validatorIds",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
{
inputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
name: "validatorRewardAddressToId",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
stateMutability: "view",
type: "function",
},
];
class NodeOperatorRegistryAbi__factory {
static createInterface() {
return new ethers.utils.Interface(_abi);
}
static connect(address, signerOrProvider) {
return new ethers.Contract(address, _abi, signerOrProvider);
}
}
NodeOperatorRegistryAbi__factory.abi = _abi;
exports.NodeOperatorRegistryAbi__factory = NodeOperatorRegistryAbi__factory;