@exromany/lido-csm-sdk
Version:
[](https://github.com/lidofinance/lido-csm-sdk/blob/main/LICENSE.txt) [](h
1,618 lines • 61 kB
TypeScript
export declare const AccountingAbi: readonly [{
readonly type: "constructor";
readonly inputs: readonly [{
readonly name: "lidoLocator";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "module";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "feeDistributor";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "minBondLockPeriod";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "maxBondLockPeriod";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "DEFAULT_ADMIN_ROLE";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "DEFAULT_BOND_CURVE_ID";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "FEE_DISTRIBUTOR";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
readonly internalType: "contract IFeeDistributor";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "INFINITE_BOND_LOCK_UNTIL";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint128";
readonly internalType: "uint128";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "LIDO";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
readonly internalType: "contract ILido";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "LIDO_LOCATOR";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
readonly internalType: "contract ILidoLocator";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "MANAGE_BOND_CURVES_ROLE";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "MAX_BOND_LOCK_PERIOD";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "MIN_BOND_LOCK_PERIOD";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "MODULE";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
readonly internalType: "contract IBaseModule";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "PAUSE_INFINITELY";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "PAUSE_ROLE";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "RECOVERER_ROLE";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "RESUME_ROLE";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "SET_BOND_CURVE_ROLE";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "WITHDRAWAL_QUEUE";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
readonly internalType: "contract IWithdrawalQueue";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "WSTETH";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
readonly internalType: "contract IWstETH";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "addBondCurve";
readonly inputs: readonly [{
readonly name: "bondCurve";
readonly type: "tuple[]";
readonly internalType: "struct IBondCurve.BondCurveIntervalInput[]";
readonly components: readonly [{
readonly name: "minKeysCount";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "trend";
readonly type: "uint256";
readonly internalType: "uint256";
}];
}];
readonly outputs: readonly [{
readonly name: "id";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "chargeFee";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "amount";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "fullyCharged";
readonly type: "bool";
readonly internalType: "bool";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "chargePenaltyRecipient";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
readonly internalType: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "claimRewardsStETH";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "stETHAmount";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "cumulativeFeeShares";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "rewardsProof";
readonly type: "bytes32[]";
readonly internalType: "bytes32[]";
}];
readonly outputs: readonly [{
readonly name: "claimedShares";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "claimRewardsUnstETH";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "stETHAmount";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "cumulativeFeeShares";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "rewardsProof";
readonly type: "bytes32[]";
readonly internalType: "bytes32[]";
}];
readonly outputs: readonly [{
readonly name: "requestId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "claimRewardsWstETH";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "wstETHAmount";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "cumulativeFeeShares";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "rewardsProof";
readonly type: "bytes32[]";
readonly internalType: "bytes32[]";
}];
readonly outputs: readonly [{
readonly name: "claimedWstETH";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "compensateLockedBondETH";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "payable";
}, {
readonly type: "function";
readonly name: "depositETH";
readonly inputs: readonly [{
readonly name: "from";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "payable";
}, {
readonly type: "function";
readonly name: "depositETH";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "payable";
}, {
readonly type: "function";
readonly name: "depositStETH";
readonly inputs: readonly [{
readonly name: "from";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "stETHAmount";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "permit";
readonly type: "tuple";
readonly internalType: "struct IAccounting.PermitInput";
readonly components: readonly [{
readonly name: "value";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "deadline";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "v";
readonly type: "uint8";
readonly internalType: "uint8";
}, {
readonly name: "r";
readonly type: "bytes32";
readonly internalType: "bytes32";
}, {
readonly name: "s";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "depositStETH";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "stETHAmount";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "permit";
readonly type: "tuple";
readonly internalType: "struct IAccounting.PermitInput";
readonly components: readonly [{
readonly name: "value";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "deadline";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "v";
readonly type: "uint8";
readonly internalType: "uint8";
}, {
readonly name: "r";
readonly type: "bytes32";
readonly internalType: "bytes32";
}, {
readonly name: "s";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "depositWstETH";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "wstETHAmount";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "permit";
readonly type: "tuple";
readonly internalType: "struct IAccounting.PermitInput";
readonly components: readonly [{
readonly name: "value";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "deadline";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "v";
readonly type: "uint8";
readonly internalType: "uint8";
}, {
readonly name: "r";
readonly type: "bytes32";
readonly internalType: "bytes32";
}, {
readonly name: "s";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "depositWstETH";
readonly inputs: readonly [{
readonly name: "from";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "wstETHAmount";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "permit";
readonly type: "tuple";
readonly internalType: "struct IAccounting.PermitInput";
readonly components: readonly [{
readonly name: "value";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "deadline";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "v";
readonly type: "uint8";
readonly internalType: "uint8";
}, {
readonly name: "r";
readonly type: "bytes32";
readonly internalType: "bytes32";
}, {
readonly name: "s";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "finalizeUpgradeV3";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "getActualLockedBond";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getBond";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getBondAmountByKeysCount";
readonly inputs: readonly [{
readonly name: "keys";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "curveId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getBondAmountByKeysCountWstETH";
readonly inputs: readonly [{
readonly name: "keysCount";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "curveId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getBondCurve";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "tuple";
readonly internalType: "struct IBondCurve.BondCurveData";
readonly components: readonly [{
readonly name: "intervals";
readonly type: "tuple[]";
readonly internalType: "struct IBondCurve.BondCurveInterval[]";
readonly components: readonly [{
readonly name: "minKeysCount";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "minBond";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "trend";
readonly type: "uint256";
readonly internalType: "uint256";
}];
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getBondCurveId";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getBondLockPeriod";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getBondShares";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getBondSummary";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "current";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "required";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getBondSummaryShares";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "current";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "required";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getClaimableBondShares";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getClaimableRewardsAndBondShares";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "cumulativeFeeShares";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "rewardsProof";
readonly type: "bytes32[]";
readonly internalType: "bytes32[]";
}];
readonly outputs: readonly [{
readonly name: "claimableShares";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getCurveInfo";
readonly inputs: readonly [{
readonly name: "curveId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "tuple";
readonly internalType: "struct IBondCurve.BondCurveData";
readonly components: readonly [{
readonly name: "intervals";
readonly type: "tuple[]";
readonly internalType: "struct IBondCurve.BondCurveInterval[]";
readonly components: readonly [{
readonly name: "minKeysCount";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "minBond";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "trend";
readonly type: "uint256";
readonly internalType: "uint256";
}];
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getCurvesCount";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getCustomRewardsClaimer";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
readonly internalType: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getFeeSplits";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "tuple[]";
readonly internalType: "struct IAccounting.FeeSplit[]";
readonly components: readonly [{
readonly name: "recipient";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "share";
readonly type: "uint256";
readonly internalType: "uint256";
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getInitializedVersion";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint64";
readonly internalType: "uint64";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getKeysCountByBondAmount";
readonly inputs: readonly [{
readonly name: "amount";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "curveId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getLockedBondInfo";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "tuple";
readonly internalType: "struct IBondLock.BondLockData";
readonly components: readonly [{
readonly name: "amount";
readonly type: "uint128";
readonly internalType: "uint128";
}, {
readonly name: "until";
readonly type: "uint128";
readonly internalType: "uint128";
}];
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getPendingSharesToSplit";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getRequiredBondForNextKeys";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "additionalKeys";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getRequiredBondForNextKeysWstETH";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "additionalKeys";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getResumeSinceTimestamp";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getRoleAdmin";
readonly inputs: readonly [{
readonly name: "role";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getRoleMember";
readonly inputs: readonly [{
readonly name: "role";
readonly type: "bytes32";
readonly internalType: "bytes32";
}, {
readonly name: "index";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "address";
readonly internalType: "address";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getRoleMemberCount";
readonly inputs: readonly [{
readonly name: "role";
readonly type: "bytes32";
readonly internalType: "bytes32";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getUnbondedKeysCount";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "getUnbondedKeysCountToEject";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "grantRole";
readonly inputs: readonly [{
readonly name: "role";
readonly type: "bytes32";
readonly internalType: "bytes32";
}, {
readonly name: "account";
readonly type: "address";
readonly internalType: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "hasRole";
readonly inputs: readonly [{
readonly name: "role";
readonly type: "bytes32";
readonly internalType: "bytes32";
}, {
readonly name: "account";
readonly type: "address";
readonly internalType: "address";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
readonly internalType: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "initialize";
readonly inputs: readonly [{
readonly name: "bondCurve";
readonly type: "tuple[]";
readonly internalType: "struct IBondCurve.BondCurveIntervalInput[]";
readonly components: readonly [{
readonly name: "minKeysCount";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "trend";
readonly type: "uint256";
readonly internalType: "uint256";
}];
}, {
readonly name: "admin";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "bondLockPeriod";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "_chargePenaltyRecipient";
readonly type: "address";
readonly internalType: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "isPaused";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
readonly internalType: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "lockBondETH";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "amount";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "pauseFor";
readonly inputs: readonly [{
readonly name: "duration";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "penalize";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "amount";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "fullyBurned";
readonly type: "bool";
readonly internalType: "bool";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "pullAndSplitFeeRewards";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "cumulativeFeeShares";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "rewardsProof";
readonly type: "bytes32[]";
readonly internalType: "bytes32[]";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "recoverERC1155";
readonly inputs: readonly [{
readonly name: "token";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "tokenId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "recoverERC20";
readonly inputs: readonly [{
readonly name: "token";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "amount";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "recoverERC721";
readonly inputs: readonly [{
readonly name: "token";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "tokenId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "recoverEther";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "recoverStETHShares";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "releaseLockedBondETH";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "amount";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "renewBurnerAllowance";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "renounceRole";
readonly inputs: readonly [{
readonly name: "role";
readonly type: "bytes32";
readonly internalType: "bytes32";
}, {
readonly name: "callerConfirmation";
readonly type: "address";
readonly internalType: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "resume";
readonly inputs: readonly [];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "revokeRole";
readonly inputs: readonly [{
readonly name: "role";
readonly type: "bytes32";
readonly internalType: "bytes32";
}, {
readonly name: "account";
readonly type: "address";
readonly internalType: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setBondCurve";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "curveId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setBondLockPeriod";
readonly inputs: readonly [{
readonly name: "period";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setChargePenaltyRecipient";
readonly inputs: readonly [{
readonly name: "_chargePenaltyRecipient";
readonly type: "address";
readonly internalType: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setCustomRewardsClaimer";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "rewardsClaimer";
readonly type: "address";
readonly internalType: "address";
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "setFeeSplits";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "cumulativeFeeShares";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "rewardsProof";
readonly type: "bytes32[]";
readonly internalType: "bytes32[]";
}, {
readonly name: "feeSplits";
readonly type: "tuple[]";
readonly internalType: "struct IAccounting.FeeSplit[]";
readonly components: readonly [{
readonly name: "recipient";
readonly type: "address";
readonly internalType: "address";
}, {
readonly name: "share";
readonly type: "uint256";
readonly internalType: "uint256";
}];
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "settleLockedBondETH";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly outputs: readonly [{
readonly name: "applied";
readonly type: "bool";
readonly internalType: "bool";
}];
readonly stateMutability: "nonpayable";
}, {
readonly type: "function";
readonly name: "supportsInterface";
readonly inputs: readonly [{
readonly name: "interfaceId";
readonly type: "bytes4";
readonly internalType: "bytes4";
}];
readonly outputs: readonly [{
readonly name: "";
readonly type: "bool";
readonly internalType: "bool";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "totalBondShares";
readonly inputs: readonly [];
readonly outputs: readonly [{
readonly name: "";
readonly type: "uint256";
readonly internalType: "uint256";
}];
readonly stateMutability: "view";
}, {
readonly type: "function";
readonly name: "updateBondCurve";
readonly inputs: readonly [{
readonly name: "curveId";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "bondCurve";
readonly type: "tuple[]";
readonly internalType: "struct IBondCurve.BondCurveIntervalInput[]";
readonly components: readonly [{
readonly name: "minKeysCount";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "trend";
readonly type: "uint256";
readonly internalType: "uint256";
}];
}];
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
}, {
readonly type: "event";
readonly name: "BondBurned";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly indexed: true;
readonly internalType: "uint256";
}, {
readonly name: "amountToBurn";
readonly type: "uint256";
readonly indexed: false;
readonly internalType: "uint256";
}, {
readonly name: "burnedAmount";
readonly type: "uint256";
readonly indexed: false;
readonly internalType: "uint256";
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "BondCharged";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly indexed: true;
readonly internalType: "uint256";
}, {
readonly name: "toChargeAmount";
readonly type: "uint256";
readonly indexed: false;
readonly internalType: "uint256";
}, {
readonly name: "chargedAmount";
readonly type: "uint256";
readonly indexed: false;
readonly internalType: "uint256";
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "BondClaimedStETH";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly indexed: true;
readonly internalType: "uint256";
}, {
readonly name: "to";
readonly type: "address";
readonly indexed: false;
readonly internalType: "address";
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
readonly internalType: "uint256";
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "BondClaimedUnstETH";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly indexed: true;
readonly internalType: "uint256";
}, {
readonly name: "to";
readonly type: "address";
readonly indexed: false;
readonly internalType: "address";
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
readonly internalType: "uint256";
}, {
readonly name: "requestId";
readonly type: "uint256";
readonly indexed: false;
readonly internalType: "uint256";
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "BondClaimedWstETH";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly indexed: true;
readonly internalType: "uint256";
}, {
readonly name: "to";
readonly type: "address";
readonly indexed: false;
readonly internalType: "address";
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
readonly internalType: "uint256";
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "BondCurveAdded";
readonly inputs: readonly [{
readonly name: "curveId";
readonly type: "uint256";
readonly indexed: true;
readonly internalType: "uint256";
}, {
readonly name: "bondCurveIntervals";
readonly type: "tuple[]";
readonly indexed: false;
readonly internalType: "struct IBondCurve.BondCurveIntervalInput[]";
readonly components: readonly [{
readonly name: "minKeysCount";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "trend";
readonly type: "uint256";
readonly internalType: "uint256";
}];
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "BondCurveSet";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly indexed: true;
readonly internalType: "uint256";
}, {
readonly name: "curveId";
readonly type: "uint256";
readonly indexed: false;
readonly internalType: "uint256";
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "BondCurveUpdated";
readonly inputs: readonly [{
readonly name: "curveId";
readonly type: "uint256";
readonly indexed: true;
readonly internalType: "uint256";
}, {
readonly name: "bondCurveIntervals";
readonly type: "tuple[]";
readonly indexed: false;
readonly internalType: "struct IBondCurve.BondCurveIntervalInput[]";
readonly components: readonly [{
readonly name: "minKeysCount";
readonly type: "uint256";
readonly internalType: "uint256";
}, {
readonly name: "trend";
readonly type: "uint256";
readonly internalType: "uint256";
}];
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "BondDepositedETH";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly indexed: true;
readonly internalType: "uint256";
}, {
readonly name: "from";
readonly type: "address";
readonly indexed: false;
readonly internalType: "address";
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
readonly internalType: "uint256";
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "BondDepositedStETH";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly indexed: true;
readonly internalType: "uint256";
}, {
readonly name: "from";
readonly type: "address";
readonly indexed: false;
readonly internalType: "address";
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
readonly internalType: "uint256";
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "BondDepositedWstETH";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly indexed: true;
readonly internalType: "uint256";
}, {
readonly name: "from";
readonly type: "address";
readonly indexed: false;
readonly internalType: "address";
}, {
readonly name: "amount";
readonly type: "uint256";
readonly indexed: false;
readonly internalType: "uint256";
}];
readonly anonymous: false;
}, {
readonly type: "event";
readonly name: "BondLockChanged";
readonly inputs: readonly [{
readonly name: "nodeOperatorId";
readonly type: "uint256";
readonly indexed: true;
readonly internalType: "uint256";
}, {
readonly name: "newAmount";
readonly type: "uint256";
readonly index