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