@knine-sdk/contracts
Version:
Contracts for Knine projects. Part of Knine JS SDK
2,025 lines (2,023 loc) • 51.7 kB
JavaScript
import { utils, Contract } from 'ethers';
/* Autogenerated file. Do not edit manually. */
const _abi = [
{
inputs: [],
payable: false,
stateMutability: "nonpayable",
type: "constructor",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "address",
name: "previousOwner",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "newOwner",
type: "address",
},
],
name: "OwnershipTransferred",
type: "event",
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: "address",
name: "previousRootChain",
type: "address",
},
{
indexed: true,
internalType: "address",
name: "newRootChain",
type: "address",
},
],
name: "RootChainChanged",
type: "event",
},
{
constant: true,
inputs: [],
name: "CHECKPOINT_REWARD",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "NFTContract",
outputs: [
{
internalType: "contract StakingNFT",
name: "",
type: "address",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "NFTCounter",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "WITHDRAWAL_DELAY",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "accountStateRoot",
outputs: [
{
internalType: "bytes32",
name: "",
type: "bytes32",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "auctionPeriod",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "address",
name: "newRootChain",
type: "address",
},
],
name: "changeRootChain",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: true,
inputs: [],
name: "checkPointBlockInterval",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "blockInterval",
type: "uint256",
},
{
internalType: "bytes32",
name: "voteHash",
type: "bytes32",
},
{
internalType: "bytes32",
name: "stateRoot",
type: "bytes32",
},
{
internalType: "address",
name: "proposer",
type: "address",
},
{
internalType: "uint256[3][]",
name: "sigs",
type: "uint256[3][]",
},
],
name: "checkSignatures",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: true,
inputs: [],
name: "checkpointRewardDelta",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "accumFeeAmount",
type: "uint256",
},
{
internalType: "uint256",
name: "index",
type: "uint256",
},
{
internalType: "bytes",
name: "proof",
type: "bytes",
},
],
name: "claimFee",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
{
internalType: "uint256",
name: "heimdallFee",
type: "uint256",
},
],
name: "confirmAuctionBid",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: true,
inputs: [],
name: "currentEpoch",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "currentValidatorSetSize",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "currentValidatorSetTotalStake",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "decreaseValidatorDelegatedAmount",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: true,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
],
name: "delegatedAmount",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
{
internalType: "address",
name: "delegator",
type: "address",
},
],
name: "delegationDeposit",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: true,
inputs: [],
name: "delegationEnabled",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
],
name: "delegatorsReward",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "address",
name: "auctionUser",
type: "address",
},
{
internalType: "uint256",
name: "heimdallFee",
type: "uint256",
},
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
{
internalType: "uint256",
name: "auctionAmount",
type: "uint256",
},
{
internalType: "bool",
name: "acceptDelegation",
type: "bool",
},
{
internalType: "bytes",
name: "signerPubkey",
type: "bytes",
},
],
name: "dethroneAndStake",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "address",
name: "destination",
type: "address",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "drain",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
{
internalType: "address",
name: "tokenAddr",
type: "address",
},
{
internalType: "address payable",
name: "destination",
type: "address",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "drainValidatorShares",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: true,
inputs: [],
name: "dynasty",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "epoch",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "eventsHub",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "extensionCode",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
],
name: "forceUnstake",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: true,
inputs: [],
name: "getRegistry",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
],
name: "getValidatorContract",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [
{
internalType: "address",
name: "user",
type: "address",
},
],
name: "getValidatorId",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "governance",
outputs: [
{
internalType: "contract IGovernance",
name: "",
type: "address",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "address",
name: "_registry",
type: "address",
},
{
internalType: "address",
name: "_rootchain",
type: "address",
},
{
internalType: "address",
name: "_token",
type: "address",
},
{
internalType: "address",
name: "_NFTContract",
type: "address",
},
{
internalType: "address",
name: "_stakingLogger",
type: "address",
},
{
internalType: "address",
name: "_validatorShareFactory",
type: "address",
},
{
internalType: "address",
name: "_governance",
type: "address",
},
{
internalType: "address",
name: "_owner",
type: "address",
},
{
internalType: "address",
name: "_extensionCode",
type: "address",
},
],
name: "initialize",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "address[]",
name: "_signers",
type: "address[]",
},
],
name: "insertSigners",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: true,
inputs: [],
name: "isOwner",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
],
name: "isValidator",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
name: "latestSignerUpdateEpoch",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: false,
inputs: [],
name: "lock",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: true,
inputs: [],
name: "locked",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "logger",
outputs: [
{
internalType: "contract StakingInfo",
name: "",
type: "address",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "maxRewardedCheckpoints",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "fromValidatorId",
type: "uint256",
},
{
internalType: "uint256",
name: "toValidatorId",
type: "uint256",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
],
name: "migrateDelegation",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "validatorIdFrom",
type: "uint256",
},
{
internalType: "uint256",
name: "validatorIdTo",
type: "uint256",
},
],
name: "migrateValidatorsData",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: true,
inputs: [],
name: "minDeposit",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "minHeimdallFee",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "owner",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [
{
internalType: "uint256",
name: "tokenId",
type: "uint256",
},
],
name: "ownerOf",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "prevBlockInterval",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "proposerBonus",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "registry",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "address",
name: "_NFTContract",
type: "address",
},
{
internalType: "address",
name: "_stakingLogger",
type: "address",
},
{
internalType: "address",
name: "_validatorShareFactory",
type: "address",
},
{
internalType: "address",
name: "_extensionCode",
type: "address",
},
],
name: "reinitialize",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [],
name: "renounceOwnership",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: true,
inputs: [],
name: "replacementCoolDown",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
{
internalType: "bool",
name: "stakeRewards",
type: "bool",
},
],
name: "restake",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: true,
inputs: [],
name: "rewardDecreasePerCheckpoint",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "rewardPerStake",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "rootChain",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "_currentEpoch",
type: "uint256",
},
],
name: "setCurrentEpoch",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "bool",
name: "enabled",
type: "bool",
},
],
name: "setDelegationEnabled",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "address",
name: "_token",
type: "address",
},
],
name: "setStakingToken",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: true,
inputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
name: "signerToValidator",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "signerUpdateLimit",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
name: "signers",
outputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "bytes",
name: "_slashingInfoList",
type: "bytes",
},
],
name: "slash",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "address",
name: "user",
type: "address",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
{
internalType: "uint256",
name: "heimdallFee",
type: "uint256",
},
{
internalType: "bool",
name: "acceptDelegation",
type: "bool",
},
{
internalType: "bytes",
name: "signerPubkey",
type: "bytes",
},
],
name: "stakeFor",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
{
internalType: "bool",
name: "_acceptDelegation",
type: "bool",
},
{
internalType: "bytes",
name: "_signerPubkey",
type: "bytes",
},
],
name: "startAuction",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "forNCheckpoints",
type: "uint256",
},
],
name: "stopAuctions",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: true,
inputs: [],
name: "token",
outputs: [
{
internalType: "contract IERC20",
name: "",
type: "address",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "address",
name: "user",
type: "address",
},
{
internalType: "uint256",
name: "heimdallFee",
type: "uint256",
},
],
name: "topUpForFee",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: true,
inputs: [],
name: "totalHeimdallFee",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "totalRewards",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "totalRewardsLiquidated",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "totalStaked",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [
{
internalType: "address",
name: "user",
type: "address",
},
],
name: "totalStakedFor",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
{
internalType: "address",
name: "delegator",
type: "address",
},
],
name: "transferFunds",
outputs: [
{
internalType: "bool",
name: "",
type: "bool",
},
],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "address",
name: "newOwner",
type: "address",
},
],
name: "transferOwnership",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
],
name: "unjail",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [],
name: "unlock",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
],
name: "unstake",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
],
name: "unstakeClaim",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "_blocks",
type: "uint256",
},
],
name: "updateCheckPointBlockInterval",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "newReward",
type: "uint256",
},
],
name: "updateCheckpointReward",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "_rewardDecreasePerCheckpoint",
type: "uint256",
},
{
internalType: "uint256",
name: "_maxRewardedCheckpoints",
type: "uint256",
},
{
internalType: "uint256",
name: "_checkpointRewardDelta",
type: "uint256",
},
],
name: "updateCheckpointRewardParams",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
{
internalType: "uint256",
name: "newCommissionRate",
type: "uint256",
},
],
name: "updateCommissionRate",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "newDynasty",
type: "uint256",
},
],
name: "updateDynastyValue",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "_minDeposit",
type: "uint256",
},
{
internalType: "uint256",
name: "_minHeimdallFee",
type: "uint256",
},
],
name: "updateMinAmounts",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "newProposerBonus",
type: "uint256",
},
],
name: "updateProposerBonus",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
{
internalType: "bytes",
name: "signerPubkey",
type: "bytes",
},
],
name: "updateSigner",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "_limit",
type: "uint256",
},
],
name: "updateSignerUpdateLimit",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
{
internalType: "address",
name: "newContractAddress",
type: "address",
},
],
name: "updateValidatorContractAddress",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "bool",
name: "delegation",
type: "bool",
},
],
name: "updateValidatorDelegation",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
{
internalType: "int256",
name: "amount",
type: "int256",
},
],
name: "updateValidatorState",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: false,
inputs: [
{
internalType: "uint256",
name: "newThreshold",
type: "uint256",
},
],
name: "updateValidatorThreshold",
outputs: [],
payable: false,
stateMutability: "nonpayable",
type: "function",
},
{
constant: true,
inputs: [
{
internalType: "address",
name: "",
type: "address",
},
],
name: "userFeeExit",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
name: "validatorAuction",
outputs: [
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
{
internalType: "uint256",
name: "startEpoch",
type: "uint256",
},
{
internalType: "address",
name: "user",
type: "address",
},
{
internalType: "bool",
name: "acceptDelegation",
type: "bool",
},
{
internalType: "bytes",
name: "signerPubkey",
type: "bytes",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
],
name: "validatorReward",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "validatorShareFactory",
outputs: [
{
internalType: "contract ValidatorShareFactory",
name: "",
type: "address",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [
{
internalType: "uint256",
name: "validatorId",
type: "uint256",
},
],
name: "validatorStake",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "validatorState",
outputs: [
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
{
internalType: "uint256",
name: "stakerCount",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
name: "validatorStateChanges",
outputs: [
{
internalType: "int256",
name: "amount",
type: "int256",
},
{
internalType: "int256",
name: "stakerCount",
type: "int256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [],
name: "validatorThreshold",
outputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
payable: false,
stateMutability: "view",
type: "function",
},
{
constant: true,
inputs: [
{
internalType: "uint256",
name: "",
type: "uint256",
},
],
name: "validators",
outputs: [
{
internalType: "uint256",
name: "amount",
type: "uint256",
},
{
internalType: "uint256",
name: "reward",
type: "uint256",
},
{
internalType: "uint256",
name: "activationEpoch",
type: "uint256",
},
{
internalType: "uint256",
name: "deactivationEpoch",
type: "uint256",
},
{
internalType: "uint256",
name: "jailTime",
type: "uint256",
},
{
internalType: "address",
name: "signer",
type: "address",
},
{
internalType: "address",
name: "contractAddress",
type: "address",
},
{
internalType: "enum StakeManagerStorage.Status",
name: "status",
type: "uint8",
},
{
internalType: "uint256",
name: "commissionRate",
type: "uint256",
},
{
internalType: "uint256",
name: "lastCommissionUpdate",
type: "uint256",
},
{
internalType: "uint256",
name: "delegatorsReward",
type: "uint256",
},
{
internalType: "uint256",
name: "delegatedAmount",
type: "uint256",
},
{
internalType: "uint256",
name: "initialRewardPerStake",
type: "uint256",