@lidofinance/lido-ethereum-sdk
Version:
<div style="display: flex;" align="center"> <h1 align="center">Lido Ethereum SDK</h1> </div>
2,065 lines • 65.2 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.VaultHubAbi = void 0;
const abi = [
{
inputs: [
{
internalType: 'contract ILidoLocator',
name: '_locator',
type: 'address',
},
{
internalType: 'contract ILido',
name: '_lido',
type: 'address',
},
{
internalType: 'contract IHashConsensus',
name: '_consensusContract',
type: 'address',
},
{
internalType: 'uint256',
name: '_maxRelativeShareLimitBP',
type: 'uint256',
},
],
stateMutability: 'nonpayable',
type: 'constructor',
},
{
inputs: [],
name: 'AccessControlBadConfirmation',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'account',
type: 'address',
},
{
internalType: 'bytes32',
name: 'neededRole',
type: 'bytes32',
},
],
name: 'AccessControlUnauthorizedAccount',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
{
internalType: 'uint256',
name: 'index',
type: 'uint256',
},
],
name: 'AlreadyConnected',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
{
internalType: 'uint256',
name: 'totalValue',
type: 'uint256',
},
{
internalType: 'uint256',
name: 'withdrawAmount',
type: 'uint256',
},
],
name: 'AmountExceedsTotalValue',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
{
internalType: 'uint256',
name: 'withdrawable',
type: 'uint256',
},
{
internalType: 'uint256',
name: 'requested',
type: 'uint256',
},
],
name: 'AmountExceedsWithdrawableValue',
type: 'error',
},
{
inputs: [],
name: 'BadDebtSocializationNotAllowed',
type: 'error',
},
{
inputs: [],
name: 'ForcedValidatorExitNotAllowed',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
{
internalType: 'uint256',
name: 'amount',
type: 'uint256',
},
],
name: 'InsufficientSharesToBurn',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
],
name: 'InsufficientStagedBalance',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
{
internalType: 'uint256',
name: 'etherToLock',
type: 'uint256',
},
{
internalType: 'uint256',
name: 'maxLockableValue',
type: 'uint256',
},
],
name: 'InsufficientValue',
type: 'error',
},
{
inputs: [
{
internalType: 'uint256',
name: 'valueBP',
type: 'uint256',
},
{
internalType: 'uint256',
name: 'maxValueBP',
type: 'uint256',
},
],
name: 'InvalidBasisPoints',
type: 'error',
},
{
inputs: [],
name: 'InvalidInitialization',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
],
name: 'NoFundsForForceRebalance',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
{
internalType: 'uint256',
name: 'unsettledLidoFees',
type: 'uint256',
},
],
name: 'NoFundsToSettleLidoFees',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
{
internalType: 'uint256',
name: 'liabilityShares',
type: 'uint256',
},
],
name: 'NoLiabilitySharesShouldBeLeft',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
],
name: 'NoReasonForForceRebalance',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
{
internalType: 'uint256',
name: 'unsettledLidoFees',
type: 'uint256',
},
],
name: 'NoUnsettledLidoFeesShouldBeLeft',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
],
name: 'NoUnsettledLidoFeesToSettle',
type: 'error',
},
{
inputs: [],
name: 'NotAuthorized',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
],
name: 'NotConnectedToHub',
type: 'error',
},
{
inputs: [],
name: 'NotInitializing',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
],
name: 'PDGNotDepositor',
type: 'error',
},
{
inputs: [],
name: 'PartialValidatorWithdrawalNotAllowed',
type: 'error',
},
{
inputs: [],
name: 'PauseIntentAlreadySet',
type: 'error',
},
{
inputs: [],
name: 'PauseIntentAlreadyUnset',
type: 'error',
},
{
inputs: [],
name: 'PauseUntilMustBeInFuture',
type: 'error',
},
{
inputs: [],
name: 'PausedExpected',
type: 'error',
},
{
inputs: [],
name: 'ResumedExpected',
type: 'error',
},
{
inputs: [
{
internalType: 'int256',
name: 'value',
type: 'int256',
},
],
name: 'SafeCastOverflowedIntToUint',
type: 'error',
},
{
inputs: [
{
internalType: 'uint8',
name: 'bits',
type: 'uint8',
},
{
internalType: 'uint256',
name: 'value',
type: 'uint256',
},
],
name: 'SafeCastOverflowedUintDowncast',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
{
internalType: 'uint256',
name: 'expectedSharesAfterMint',
type: 'uint256',
},
{
internalType: 'uint256',
name: 'shareLimit',
type: 'uint256',
},
],
name: 'ShareLimitExceeded',
type: 'error',
},
{
inputs: [
{
internalType: 'uint256',
name: 'shareLimit',
type: 'uint256',
},
{
internalType: 'uint256',
name: 'maxShareLimit',
type: 'uint256',
},
],
name: 'ShareLimitTooHigh',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
],
name: 'VaultHubNotPendingOwner',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
{
internalType: 'uint256',
name: 'currentBalance',
type: 'uint256',
},
{
internalType: 'uint256',
name: 'expectedBalance',
type: 'uint256',
},
],
name: 'VaultInsufficientBalance',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
],
name: 'VaultIsDisconnecting',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
{
internalType: 'uint256',
name: 'totalValue',
type: 'uint256',
},
{
internalType: 'uint256',
name: 'liabilityShares',
type: 'uint256',
},
{
internalType: 'uint256',
name: 'newRebalanceThresholdBP',
type: 'uint256',
},
],
name: 'VaultMintingCapacityExceeded',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
],
name: 'VaultNotFactoryDeployed',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
],
name: 'VaultOssified',
type: 'error',
},
{
inputs: [
{
internalType: 'address',
name: 'vault',
type: 'address',
},
],
name: 'VaultReportStale',
type: 'error',
},
{
inputs: [],
name: 'ZeroAddress',
type: 'error',
},
{
inputs: [],
name: 'ZeroArgument',
type: 'error',
},
{
inputs: [],
name: 'ZeroPauseDuration',
type: 'error',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'vaultDonor',
type: 'address',
},
{
indexed: true,
internalType: 'address',
name: 'vaultAcceptor',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'badDebtShares',
type: 'uint256',
},
],
name: 'BadDebtSocialized',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'vault',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'badDebtShares',
type: 'uint256',
},
],
name: 'BadDebtWrittenOffToBeInternalized',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'vault',
type: 'address',
},
{
indexed: false,
internalType: 'bool',
name: 'pauseIntent',
type: 'bool',
},
],
name: 'BeaconChainDepositsPauseIntentSet',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'vault',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'amountOfShares',
type: 'uint256',
},
],
name: 'BurnedSharesOnVault',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'vault',
type: 'address',
},
{
indexed: false,
internalType: 'bytes',
name: 'pubkeys',
type: 'bytes',
},
{
indexed: false,
internalType: 'address',
name: 'refundRecipient',
type: 'address',
},
],
name: 'ForcedValidatorExitTriggered',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: 'uint64',
name: 'version',
type: 'uint64',
},
],
name: 'Initialized',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'vault',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'transferred',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'cumulativeLidoFees',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'settledLidoFees',
type: 'uint256',
},
],
name: 'LidoFeesSettled',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'vault',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'amountOfShares',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'lockedAmount',
type: 'uint256',
},
],
name: 'MintedSharesOnVault',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: false,
internalType: 'uint256',
name: 'duration',
type: 'uint256',
},
],
name: 'Paused',
type: 'event',
},
{
anonymous: false,
inputs: [],
name: 'Resumed',
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: true,
internalType: 'address',
name: 'vault',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'shareLimit',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'reserveRatioBP',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'forcedRebalanceThresholdBP',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'infraFeeBP',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'liquidityFeeBP',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'reservationFeeBP',
type: 'uint256',
},
],
name: 'VaultConnected',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'vault',
type: 'address',
},
{
indexed: true,
internalType: 'address',
name: 'nodeOperator',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'shareLimit',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'reserveRatioBP',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'forcedRebalanceThresholdBP',
type: 'uint256',
},
],
name: 'VaultConnectionUpdated',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'vault',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'slashingReserve',
type: 'uint256',
},
],
name: 'VaultDisconnectAborted',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'vault',
type: 'address',
},
],
name: 'VaultDisconnectCompleted',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'vault',
type: 'address',
},
],
name: 'VaultDisconnectInitiated',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'vault',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'preInfraFeeBP',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'preLiquidityFeeBP',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'preReservationFeeBP',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'infraFeeBP',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'liquidityFeeBP',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'reservationFeeBP',
type: 'uint256',
},
],
name: 'VaultFeesUpdated',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'vault',
type: 'address',
},
{
indexed: false,
internalType: 'int256',
name: 'inOutDelta',
type: 'int256',
},
],
name: 'VaultInOutDeltaUpdated',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'vault',
type: 'address',
},
{
indexed: true,
internalType: 'address',
name: 'newOwner',
type: 'address',
},
{
indexed: true,
internalType: 'address',
name: 'oldOwner',
type: 'address',
},
],
name: 'VaultOwnershipTransferred',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'vault',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'sharesBurned',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'etherWithdrawn',
type: 'uint256',
},
],
name: 'VaultRebalanced',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'vault',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'redemptionShares',
type: 'uint256',
},
],
name: 'VaultRedemptionSharesUpdated',
type: 'event',
},
{
anonymous: false,
inputs: [
{
indexed: true,
internalType: 'address',
name: 'vault',
type: 'address',
},
{
indexed: false,
internalType: 'uint256',
name: 'reportTimestamp',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'reportTotalValue',
type: 'uint256',
},
{
indexed: false,
internalType: 'int256',
name: 'reportInOutDelta',
type: 'int256',
},
{
indexed: false,
internalType: 'uint256',
name: 'reportCumulativeLidoFees',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'reportLiabilityShares',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'reportMaxLiabilityShares',
type: 'uint256',
},
{
indexed: false,
internalType: 'uint256',
name: 'reportSlashingReserve',
type: 'uint256',
},
],
name: 'VaultReportApplied',
type: 'event',
},
{
inputs: [],
name: 'BAD_DEBT_MASTER_ROLE',
outputs: [
{
internalType: 'bytes32',
name: '',
type: 'bytes32',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [],
name: 'CONNECT_DEPOSIT',
outputs: [
{
internalType: 'uint256',
name: '',
type: 'uint256',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [],
name: 'CONSENSUS_CONTRACT',
outputs: [
{
internalType: 'contract IHashConsensus',
name: '',
type: 'address',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [],
name: 'DEFAULT_ADMIN_ROLE',
outputs: [
{
internalType: 'bytes32',
name: '',
type: 'bytes32',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [],
name: 'LIDO',
outputs: [
{
internalType: 'contract ILido',
name: '',
type: 'address',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [],
name: 'LIDO_LOCATOR',
outputs: [
{
internalType: 'contract ILidoLocator',
name: '',
type: 'address',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [],
name: 'MAX_RELATIVE_SHARE_LIMIT_BP',
outputs: [
{
internalType: 'uint256',
name: '',
type: 'uint256',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [],
name: 'PAUSE_INFINITELY',
outputs: [
{
internalType: 'uint256',
name: '',
type: 'uint256',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [],
name: 'PAUSE_ROLE',
outputs: [
{
internalType: 'bytes32',
name: '',
type: 'bytes32',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [],
name: 'REDEMPTION_MASTER_ROLE',
outputs: [
{
internalType: 'bytes32',
name: '',
type: 'bytes32',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [],
name: 'REPORT_FRESHNESS_DELTA',
outputs: [
{
internalType: 'uint256',
name: '',
type: 'uint256',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [],
name: 'RESUME_ROLE',
outputs: [
{
internalType: 'bytes32',
name: '',
type: 'bytes32',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [],
name: 'VALIDATOR_EXIT_ROLE',
outputs: [
{
internalType: 'bytes32',
name: '',
type: 'bytes32',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [],
name: 'VAULT_MASTER_ROLE',
outputs: [
{
internalType: 'bytes32',
name: '',
type: 'bytes32',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
{
internalType: 'uint256',
name: '_reportTimestamp',
type: 'uint256',
},
{
internalType: 'uint256',
name: '_reportTotalValue',
type: 'uint256',
},
{
internalType: 'int256',
name: '_reportInOutDelta',
type: 'int256',
},
{
internalType: 'uint256',
name: '_reportCumulativeLidoFees',
type: 'uint256',
},
{
internalType: 'uint256',
name: '_reportLiabilityShares',
type: 'uint256',
},
{
internalType: 'uint256',
name: '_reportMaxLiabilityShares',
type: 'uint256',
},
{
internalType: 'uint256',
name: '_reportSlashingReserve',
type: 'uint256',
},
],
name: 'applyVaultReport',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [],
name: 'badDebtToInternalize',
outputs: [
{
internalType: 'uint256',
name: '',
type: 'uint256',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [],
name: 'badDebtToInternalizeForLastRefSlot',
outputs: [
{
internalType: 'uint256',
name: '',
type: 'uint256',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
{
internalType: 'uint256',
name: '_amountOfShares',
type: 'uint256',
},
],
name: 'burnShares',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
{
internalType: 'address',
name: '_token',
type: 'address',
},
{
internalType: 'address',
name: '_recipient',
type: 'address',
},
{
internalType: 'uint256',
name: '_amount',
type: 'uint256',
},
],
name: 'collectERC20FromVault',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
],
name: 'connectVault',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{
internalType: 'uint256',
name: '_amountOfShares',
type: 'uint256',
},
],
name: 'decreaseInternalizedBadDebt',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
],
name: 'disconnect',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
],
name: 'forceRebalance',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
{
internalType: 'bytes',
name: '_pubkeys',
type: 'bytes',
},
{
internalType: 'address',
name: '_refundRecipient',
type: 'address',
},
],
name: 'forceValidatorExit',
outputs: [],
stateMutability: 'payable',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
],
name: 'fund',
outputs: [],
stateMutability: 'payable',
type: 'function',
},
{
inputs: [],
name: 'getResumeSinceTimestamp',
outputs: [
{
internalType: 'uint256',
name: '',
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: [
{
internalType: 'bytes32',
name: 'role',
type: 'bytes32',
},
{
internalType: 'uint256',
name: 'index',
type: 'uint256',
},
],
name: 'getRoleMember',
outputs: [
{
internalType: 'address',
name: '',
type: 'address',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{
internalType: 'bytes32',
name: 'role',
type: 'bytes32',
},
],
name: 'getRoleMemberCount',
outputs: [
{
internalType: 'uint256',
name: '',
type: 'uint256',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{
internalType: 'bytes32',
name: 'role',
type: 'bytes32',
},
],
name: 'getRoleMembers',
outputs: [
{
internalType: 'address[]',
name: '',
type: 'address[]',
},
],
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: 'address',
name: '_vault',
type: 'address',
},
],
name: 'healthShortfallShares',
outputs: [
{
internalType: 'uint256',
name: '',
type: 'uint256',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_admin',
type: 'address',
},
],
name: 'initialize',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_badDebtVault',
type: 'address',
},
{
internalType: 'uint256',
name: '_maxSharesToInternalize',
type: 'uint256',
},
],
name: 'internalizeBadDebt',
outputs: [
{
internalType: 'uint256',
name: '',
type: 'uint256',
},
],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [],
name: 'isPaused',
outputs: [
{
internalType: 'bool',
name: '',
type: 'bool',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
],
name: 'isPendingDisconnect',
outputs: [
{
internalType: 'bool',
name: '',
type: 'bool',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
],
name: 'isReportFresh',
outputs: [
{
internalType: 'bool',
name: '',
type: 'bool',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
],
name: 'isVaultConnected',
outputs: [
{
internalType: 'bool',
name: '',
type: 'bool',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
],
name: 'isVaultHealthy',
outputs: [
{
internalType: 'bool',
name: '',
type: 'bool',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
],
name: 'latestReport',
outputs: [
{
components: [
{
internalType: 'uint104',
name: 'totalValue',
type: 'uint104',
},
{
internalType: 'int104',
name: 'inOutDelta',
type: 'int104',
},
{
internalType: 'uint48',
name: 'timestamp',
type: 'uint48',
},
],
internalType: 'struct VaultHub.Report',
name: '',
type: 'tuple',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
],
name: 'liabilityShares',
outputs: [
{
internalType: 'uint256',
name: '',
type: 'uint256',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
],
name: 'locked',
outputs: [
{
internalType: 'uint256',
name: '',
type: 'uint256',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
],
name: 'maxLockableValue',
outputs: [
{
internalType: 'uint256',
name: '',
type: 'uint256',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
{
internalType: 'address',
name: '_recipient',
type: 'address',
},
{
internalType: 'uint256',
name: '_amountOfShares',
type: 'uint256',
},
],
name: 'mintShares',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
],
name: 'obligations',
outputs: [
{
internalType: 'uint256',
name: 'sharesToBurn',
type: 'uint256',
},
{
internalType: 'uint256',
name: 'feesToSettle',
type: 'uint256',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
],
name: 'obligationsShortfallValue',
outputs: [
{
internalType: 'uint256',
name: '',
type: 'uint256',
},
],
stateMutability: 'view',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
],
name: 'pauseBeaconChainDeposits',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{
internalType: 'uint256',
name: '_duration',
type: 'uint256',
},
],
name: 'pauseFor',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{
internalType: 'uint256',
name: '_pauseUntilInclusive',
type: 'uint256',
},
],
name: 'pauseUntil',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
{
components: [
{
internalType: 'bytes32[]',
name: 'proof',
type: 'bytes32[]',
},
{
internalType: 'bytes',
name: 'pubkey',
type: 'bytes',
},
{
internalType: 'uint256',
name: 'validatorIndex',
type: 'uint256',
},
{
internalType: 'uint64',
name: 'childBlockTimestamp',
type: 'uint64',
},
{
internalType: 'uint64',
name: 'slot',
type: 'uint64',
},
{
internalType: 'uint64',
name: 'proposerIndex',
type: 'uint64',
},
],
internalType: 'struct IPredepositGuarantee.ValidatorWitness',
name: '_witness',
type: 'tuple',
},
],
name: 'proveUnknownValidatorToPDG',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault',
type: 'address',
},
{
internalType: 'uint256',
name: '_shares',
type: 'uint256',
},
],
name: 'rebalance',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{
internalType: 'bytes32',
name: 'role',
type: 'bytes32',
},
{
internalType: 'address',
name: 'callerConfirmation',
type: 'address',
},
],
name: 'renounceRole',
outputs: [],
stateMutability: 'nonpayable',
type: 'function',
},
{
inputs: [
{
internalType: 'address',
name: '_vault