export declare const CONTRACT_BASE_ABI: {
    readonly stakingRouter: readonly [{
        readonly type: "receive";
        readonly stateMutability: "payable";
    }, {
        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: "DEPOSIT_CONTRACT";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "FEE_PRECISION_POINTS";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MANAGE_WITHDRAWAL_CREDENTIALS_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MAX_STAKING_MODULES_COUNT";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MAX_STAKING_MODULE_NAME_LENGTH";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "REPORT_EXITED_VALIDATORS_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "REPORT_REWARDS_MINTED_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "STAKING_MODULE_MANAGE_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "STAKING_MODULE_UNVETTING_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "TOTAL_BASIS_POINTS";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "UNSAFE_SET_EXITED_VALIDATORS_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "addStakingModule";
        readonly inputs: readonly [{
            readonly name: "_name";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "_stakingModuleAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "_stakeShareLimit";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_priorityExitShareThreshold";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_stakingModuleFee";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_treasuryFee";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_maxDepositsPerBlock";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_minDepositBlockDistance";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "decreaseStakingModuleVettedKeysCountByNodeOperator";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_nodeOperatorIds";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "_vettedSigningKeysCounts";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "deposit";
        readonly inputs: readonly [{
            readonly name: "_depositsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_depositCalldata";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
    }, {
        readonly type: "function";
        readonly name: "finalizeUpgrade_v2";
        readonly inputs: readonly [{
            readonly name: "_priorityExitShareThresholds";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "getAllNodeOperatorDigests";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "tuple[]";
            readonly internalType: "struct IStakingRouter.NodeOperatorDigest[]";
            readonly components: readonly [{
                readonly name: "id";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "isActive";
                readonly type: "bool";
                readonly internalType: "bool";
            }, {
                readonly name: "summary";
                readonly type: "tuple";
                readonly internalType: "struct IStakingRouter.NodeOperatorSummary";
                readonly components: readonly [{
                    readonly name: "targetLimitMode";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "targetValidatorsCount";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "stuckValidatorsCount";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "refundedValidatorsCount";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "stuckPenaltyEndTimestamp";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "totalExitedValidators";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "totalDepositedValidators";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "depositableValidatorsCount";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }];
            }];
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getAllStakingModuleDigests";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "tuple[]";
            readonly internalType: "struct IStakingRouter.StakingModuleDigest[]";
            readonly components: readonly [{
                readonly name: "nodeOperatorsCount";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "activeNodeOperatorsCount";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "state";
                readonly type: "tuple";
                readonly internalType: "struct IStakingRouter.StakingModule";
                readonly components: readonly [{
                    readonly name: "id";
                    readonly type: "uint24";
                    readonly internalType: "uint24";
                }, {
                    readonly name: "stakingModuleAddress";
                    readonly type: "address";
                    readonly internalType: "address";
                }, {
                    readonly name: "stakingModuleFee";
                    readonly type: "uint16";
                    readonly internalType: "uint16";
                }, {
                    readonly name: "treasuryFee";
                    readonly type: "uint16";
                    readonly internalType: "uint16";
                }, {
                    readonly name: "stakeShareLimit";
                    readonly type: "uint16";
                    readonly internalType: "uint16";
                }, {
                    readonly name: "status";
                    readonly type: "uint8";
                    readonly internalType: "uint8";
                }, {
                    readonly name: "name";
                    readonly type: "string";
                    readonly internalType: "string";
                }, {
                    readonly name: "lastDepositAt";
                    readonly type: "uint64";
                    readonly internalType: "uint64";
                }, {
                    readonly name: "lastDepositBlock";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "exitedValidatorsCount";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "priorityExitShareThreshold";
                    readonly type: "uint16";
                    readonly internalType: "uint16";
                }, {
                    readonly name: "maxDepositsPerBlock";
                    readonly type: "uint64";
                    readonly internalType: "uint64";
                }, {
                    readonly name: "minDepositBlockDistance";
                    readonly type: "uint64";
                    readonly internalType: "uint64";
                }];
            }, {
                readonly name: "summary";
                readonly type: "tuple";
                readonly internalType: "struct IStakingRouter.StakingModuleSummary";
                readonly components: readonly [{
                    readonly name: "totalExitedValidators";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "totalDepositedValidators";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "depositableValidatorsCount";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }];
            }];
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getContractVersion";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getDepositsAllocation";
        readonly inputs: readonly [{
            readonly name: "_depositsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "allocated";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "allocations";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getLido";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNodeOperatorDigests";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_nodeOperatorIds";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }];
        readonly outputs: readonly [{
            readonly name: "digests";
            readonly type: "tuple[]";
            readonly internalType: "struct IStakingRouter.NodeOperatorDigest[]";
            readonly components: readonly [{
                readonly name: "id";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "isActive";
                readonly type: "bool";
                readonly internalType: "bool";
            }, {
                readonly name: "summary";
                readonly type: "tuple";
                readonly internalType: "struct IStakingRouter.NodeOperatorSummary";
                readonly components: readonly [{
                    readonly name: "targetLimitMode";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "targetValidatorsCount";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "stuckValidatorsCount";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "refundedValidatorsCount";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "stuckPenaltyEndTimestamp";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "totalExitedValidators";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "totalDepositedValidators";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "depositableValidatorsCount";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }];
            }];
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNodeOperatorDigests";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_offset";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_limit";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "tuple[]";
            readonly internalType: "struct IStakingRouter.NodeOperatorDigest[]";
            readonly components: readonly [{
                readonly name: "id";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "isActive";
                readonly type: "bool";
                readonly internalType: "bool";
            }, {
                readonly name: "summary";
                readonly type: "tuple";
                readonly internalType: "struct IStakingRouter.NodeOperatorSummary";
                readonly components: readonly [{
                    readonly name: "targetLimitMode";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "targetValidatorsCount";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "stuckValidatorsCount";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "refundedValidatorsCount";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "stuckPenaltyEndTimestamp";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "totalExitedValidators";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "totalDepositedValidators";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "depositableValidatorsCount";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }];
            }];
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNodeOperatorSummary";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "summary";
            readonly type: "tuple";
            readonly internalType: "struct IStakingRouter.NodeOperatorSummary";
            readonly components: readonly [{
                readonly name: "targetLimitMode";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "targetValidatorsCount";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "stuckValidatorsCount";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "refundedValidatorsCount";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "stuckPenaltyEndTimestamp";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "totalExitedValidators";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "totalDepositedValidators";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "depositableValidatorsCount";
                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: "getStakingFeeAggregateDistribution";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "modulesFee";
            readonly type: "uint96";
            readonly internalType: "uint96";
        }, {
            readonly name: "treasuryFee";
            readonly type: "uint96";
            readonly internalType: "uint96";
        }, {
            readonly name: "basePrecision";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getStakingFeeAggregateDistributionE4Precision";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "modulesFee";
            readonly type: "uint16";
            readonly internalType: "uint16";
        }, {
            readonly name: "treasuryFee";
            readonly type: "uint16";
            readonly internalType: "uint16";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getStakingModule";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "tuple";
            readonly internalType: "struct IStakingRouter.StakingModule";
            readonly components: readonly [{
                readonly name: "id";
                readonly type: "uint24";
                readonly internalType: "uint24";
            }, {
                readonly name: "stakingModuleAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "stakingModuleFee";
                readonly type: "uint16";
                readonly internalType: "uint16";
            }, {
                readonly name: "treasuryFee";
                readonly type: "uint16";
                readonly internalType: "uint16";
            }, {
                readonly name: "stakeShareLimit";
                readonly type: "uint16";
                readonly internalType: "uint16";
            }, {
                readonly name: "status";
                readonly type: "uint8";
                readonly internalType: "uint8";
            }, {
                readonly name: "name";
                readonly type: "string";
                readonly internalType: "string";
            }, {
                readonly name: "lastDepositAt";
                readonly type: "uint64";
                readonly internalType: "uint64";
            }, {
                readonly name: "lastDepositBlock";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "exitedValidatorsCount";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "priorityExitShareThreshold";
                readonly type: "uint16";
                readonly internalType: "uint16";
            }, {
                readonly name: "maxDepositsPerBlock";
                readonly type: "uint64";
                readonly internalType: "uint64";
            }, {
                readonly name: "minDepositBlockDistance";
                readonly type: "uint64";
                readonly internalType: "uint64";
            }];
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getStakingModuleActiveValidatorsCount";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "activeValidatorsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getStakingModuleDigests";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleIds";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }];
        readonly outputs: readonly [{
            readonly name: "digests";
            readonly type: "tuple[]";
            readonly internalType: "struct IStakingRouter.StakingModuleDigest[]";
            readonly components: readonly [{
                readonly name: "nodeOperatorsCount";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "activeNodeOperatorsCount";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "state";
                readonly type: "tuple";
                readonly internalType: "struct IStakingRouter.StakingModule";
                readonly components: readonly [{
                    readonly name: "id";
                    readonly type: "uint24";
                    readonly internalType: "uint24";
                }, {
                    readonly name: "stakingModuleAddress";
                    readonly type: "address";
                    readonly internalType: "address";
                }, {
                    readonly name: "stakingModuleFee";
                    readonly type: "uint16";
                    readonly internalType: "uint16";
                }, {
                    readonly name: "treasuryFee";
                    readonly type: "uint16";
                    readonly internalType: "uint16";
                }, {
                    readonly name: "stakeShareLimit";
                    readonly type: "uint16";
                    readonly internalType: "uint16";
                }, {
                    readonly name: "status";
                    readonly type: "uint8";
                    readonly internalType: "uint8";
                }, {
                    readonly name: "name";
                    readonly type: "string";
                    readonly internalType: "string";
                }, {
                    readonly name: "lastDepositAt";
                    readonly type: "uint64";
                    readonly internalType: "uint64";
                }, {
                    readonly name: "lastDepositBlock";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "exitedValidatorsCount";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "priorityExitShareThreshold";
                    readonly type: "uint16";
                    readonly internalType: "uint16";
                }, {
                    readonly name: "maxDepositsPerBlock";
                    readonly type: "uint64";
                    readonly internalType: "uint64";
                }, {
                    readonly name: "minDepositBlockDistance";
                    readonly type: "uint64";
                    readonly internalType: "uint64";
                }];
            }, {
                readonly name: "summary";
                readonly type: "tuple";
                readonly internalType: "struct IStakingRouter.StakingModuleSummary";
                readonly components: readonly [{
                    readonly name: "totalExitedValidators";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "totalDepositedValidators";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }, {
                    readonly name: "depositableValidatorsCount";
                    readonly type: "uint256";
                    readonly internalType: "uint256";
                }];
            }];
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getStakingModuleIds";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "stakingModuleIds";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getStakingModuleIsActive";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getStakingModuleIsDepositsPaused";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getStakingModuleIsStopped";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getStakingModuleLastDepositBlock";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            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: "getStakingModuleMaxDepositsCount";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_maxDepositsValue";
            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: "getStakingModuleMaxDepositsPerBlock";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            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: "getStakingModuleMinDepositBlockDistance";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            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: "getStakingModuleNonce";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            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: "getStakingModuleStatus";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint8";
            readonly internalType: "uint8";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getStakingModuleSummary";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "summary";
            readonly type: "tuple";
            readonly internalType: "struct IStakingRouter.StakingModuleSummary";
            readonly components: readonly [{
                readonly name: "totalExitedValidators";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "totalDepositedValidators";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "depositableValidatorsCount";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }];
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getStakingModules";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "res";
            readonly type: "tuple[]";
            readonly internalType: "struct IStakingRouter.StakingModule[]";
            readonly components: readonly [{
                readonly name: "id";
                readonly type: "uint24";
                readonly internalType: "uint24";
            }, {
                readonly name: "stakingModuleAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "stakingModuleFee";
                readonly type: "uint16";
                readonly internalType: "uint16";
            }, {
                readonly name: "treasuryFee";
                readonly type: "uint16";
                readonly internalType: "uint16";
            }, {
                readonly name: "stakeShareLimit";
                readonly type: "uint16";
                readonly internalType: "uint16";
            }, {
                readonly name: "status";
                readonly type: "uint8";
                readonly internalType: "uint8";
            }, {
                readonly name: "name";
                readonly type: "string";
                readonly internalType: "string";
            }, {
                readonly name: "lastDepositAt";
                readonly type: "uint64";
                readonly internalType: "uint64";
            }, {
                readonly name: "lastDepositBlock";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "exitedValidatorsCount";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "priorityExitShareThreshold";
                readonly type: "uint16";
                readonly internalType: "uint16";
            }, {
                readonly name: "maxDepositsPerBlock";
                readonly type: "uint64";
                readonly internalType: "uint64";
            }, {
                readonly name: "minDepositBlockDistance";
                readonly type: "uint64";
                readonly internalType: "uint64";
            }];
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getStakingModulesCount";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getStakingRewardsDistribution";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "recipients";
            readonly type: "address[]";
            readonly internalType: "address[]";
        }, {
            readonly name: "stakingModuleIds";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }, {
            readonly name: "stakingModuleFees";
            readonly type: "uint96[]";
            readonly internalType: "uint96[]";
        }, {
            readonly name: "totalFee";
            readonly type: "uint96";
            readonly internalType: "uint96";
        }, {
            readonly name: "precisionPoints";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getTotalFeeE4Precision";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "totalFee";
            readonly type: "uint16";
            readonly internalType: "uint16";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getWithdrawalCredentials";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        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: "hasStakingModule";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        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: "_admin";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "_lido";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "_withdrawalCredentials";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "onValidatorsCountsByNodeOperatorReportingFinished";
        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: "account";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "reportRewardsMinted";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleIds";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }, {
            readonly name: "_totalShares";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "reportStakingModuleExitedValidatorsCountByNodeOperator";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_nodeOperatorIds";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "_exitedValidatorsCounts";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "reportStakingModuleStuckValidatorsCountByNodeOperator";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_nodeOperatorIds";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "_stuckValidatorsCounts";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "reportValidatorExitDelay";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_proofSlotTimestamp";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_publicKey";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "_eligibleToExitInSec";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        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: "setStakingModuleStatus";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_status";
            readonly type: "uint8";
            readonly internalType: "uint8";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setWithdrawalCredentials";
        readonly inputs: readonly [{
            readonly name: "_withdrawalCredentials";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly outputs: readonly [];
        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: "unsafeSetExitedValidatorsCount";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_triggerUpdateFinish";
            readonly type: "bool";
            readonly internalType: "bool";
        }, {
            readonly name: "_correction";
            readonly type: "tuple";
            readonly internalType: "struct IStakingRouter.ValidatorsCountsCorrection";
            readonly components: readonly [{
                readonly name: "currentModuleExitedValidatorsCount";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "currentNodeOperatorExitedValidatorsCount";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "newModuleExitedValidatorsCount";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "newNodeOperatorExitedValidatorsCount";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }];
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "updateExitedValidatorsCountByStakingModule";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleIds";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }, {
            readonly name: "_exitedValidatorsCounts";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "updateRefundedValidatorsCount";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_refundedValidatorsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "updateStakingModule";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_stakeShareLimit";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_priorityExitShareThreshold";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_stakingModuleFee";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_treasuryFee";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_maxDepositsPerBlock";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_minDepositBlockDistance";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "updateTargetValidatorsLimits";
        readonly inputs: readonly [{
            readonly name: "_stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_targetLimitMode";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_targetLimit";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "event";
        readonly name: "ContractVersionSet";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ExitedAndStuckValidatorsCountsUpdateFailed";
        readonly inputs: readonly [{
            readonly name: "stakingModuleId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "lowLevelRevertData";
            readonly type: "bytes";
            readonly indexed: false;
            readonly internalType: "bytes";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RewardsMintedReportFailed";
        readonly inputs: readonly [{
            readonly name: "stakingModuleId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "lowLevelRevertData";
            readonly type: "bytes";
            readonly indexed: false;
            readonly internalType: "bytes";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "StakingModuleAdded";
        readonly inputs: readonly [{
            readonly name: "stakingModuleId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "stakingModule";
            readonly type: "address";
            readonly indexed: false;
            readonly internalType: "address";
        }, {
            readonly name: "name";
            readonly type: "string";
            readonly indexed: false;
            readonly internalType: "string";
        }, {
            readonly name: "createdBy";
            readonly type: "address";
            readonly indexed: false;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "StakingModuleExitedValidatorsIncompleteReporting";
        readonly inputs: readonly [{
            readonly name: "stakingModuleId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "unreportedExitedValidatorsCount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "StakingModuleFeesSet";
        readonly inputs: readonly [{
            readonly name: "stakingModuleId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "stakingModuleFee";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "treasuryFee";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "setBy";
            readonly type: "address";
            readonly indexed: false;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "StakingModuleMaxDepositsPerBlockSet";
        readonly inputs: readonly [{
            readonly name: "stakingModuleId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "maxDepositsPerBlock";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "setBy";
            readonly type: "address";
            readonly indexed: false;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "StakingModuleMinDepositBlockDistanceSet";
        readonly inputs: readonly [{
            readonly name: "stakingModuleId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "minDepositBlockDistance";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "setBy";
            readonly type: "address";
            readonly indexed: false;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "StakingModuleShareLimitSet";
        readonly inputs: readonly [{
            readonly name: "stakingModuleId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "stakeShareLimit";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "priorityExitShareThreshold";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "setBy";
            readonly type: "address";
            readonly indexed: false;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "StakingModuleStatusSet";
        readonly inputs: readonly [{
            readonly name: "stakingModuleId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "status";
            readonly type: "uint8";
            readonly indexed: false;
            readonly internalType: "uint8";
        }, {
            readonly name: "setBy";
            readonly type: "address";
            readonly indexed: false;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "StakingRouterETHDeposited";
        readonly inputs: readonly [{
            readonly name: "stakingModuleId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "WithdrawalCredentialsSet";
        readonly inputs: readonly [{
            readonly name: "withdrawalCredentials";
            readonly type: "bytes32";
            readonly indexed: false;
            readonly internalType: "bytes32";
        }, {
            readonly name: "setBy";
            readonly type: "address";
            readonly indexed: false;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "WithdrawalsCredentialsChangeFailed";
        readonly inputs: readonly [{
            readonly name: "stakingModuleId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "lowLevelRevertData";
            readonly type: "bytes";
            readonly indexed: false;
            readonly internalType: "bytes";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AppAuthLidoFailed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ArraysLengthMismatch";
        readonly inputs: readonly [{
            readonly name: "firstArrayLength";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "secondArrayLength";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "DepositContractZeroAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "DirectETHTransfer";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "EmptyWithdrawalsCredentials";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ExitedValidatorsCountCannotDecrease";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidContractVersionIncrement";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidDepositsValue";
        readonly inputs: readonly [{
            readonly name: "etherValue";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "depositsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "InvalidMinDepositBlockDistance";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidPriorityExitShareThreshold";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidPublicKeysBatchLength";
        readonly inputs: readonly [{
            readonly name: "actual";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "expected";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "InvalidReportData";
        readonly inputs: readonly [{
            readonly name: "code";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "InvalidSignaturesBatchLength";
        readonly inputs: readonly [{
            readonly name: "actual";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "expected";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "NonZeroContractVersionOnInit";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ReportedExitedValidatorsExceedDeposited";
        readonly inputs: readonly [{
            readonly name: "reportedExitedValidatorsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "depositedValidatorsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "StakingModuleAddressExists";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "StakingModuleNotActive";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "StakingModuleStatusTheSame";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "StakingModuleUnregistered";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "StakingModuleWrongName";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "StakingModulesLimitExceeded";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "UnexpectedContractVersion";
        readonly inputs: readonly [{
            readonly name: "expected";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "received";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "UnexpectedCurrentValidatorsCount";
        readonly inputs: readonly [{
            readonly name: "currentModuleExitedValidatorsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "currentNodeOpExitedValidatorsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "currentNodeOpStuckValidatorsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "UnrecoverableModuleError";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ValueOver100Percent";
        readonly inputs: readonly [{
            readonly name: "field";
            readonly type: "string";
            readonly internalType: "string";
        }];
    }, {
        readonly type: "error";
        readonly name: "ZeroAddress";
        readonly inputs: readonly [{
            readonly name: "field";
            readonly type: "string";
            readonly internalType: "string";
        }];
    }];
    readonly validatorsExitBusOracle: readonly [{
        readonly type: "event";
        readonly name: "ValidatorExitRequest";
        readonly inputs: readonly [{
            readonly name: "stakingModuleId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "validatorIndex";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "validatorPubkey";
            readonly type: "bytes";
            readonly indexed: false;
            readonly internalType: "bytes";
        }, {
            readonly name: "timestamp";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }];
    readonly withdrawalVault: readonly [{
        readonly type: "function";
        readonly name: "getWithdrawalRequestFee";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "event";
        readonly name: "WithdrawalRequestAdded";
        readonly inputs: readonly [{
            readonly name: "request";
            readonly type: "bytes";
            readonly indexed: false;
            readonly internalType: "bytes";
        }];
        readonly anonymous: false;
    }];
    readonly stETH: readonly [{
        readonly type: "event";
        readonly name: "Approval";
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly name: "owner";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly name: "spender";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly name: "value";
            readonly type: "uint256";
        }];
    }, {
        readonly type: "event";
        readonly name: "Transfer";
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly name: "from";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly name: "value";
            readonly type: "uint256";
        }];
    }, {
        readonly type: "function";
        readonly name: "allowance";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly name: "owner";
            readonly type: "address";
        }, {
            readonly name: "spender";
            readonly type: "address";
        }];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly type: "function";
        readonly name: "approve";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly name: "spender";
            readonly type: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
        }];
    }, {
        readonly type: "function";
        readonly name: "balanceOf";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
        }];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly type: "function";
        readonly name: "decimals";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint8";
        }];
    }, {
        readonly type: "function";
        readonly name: "name";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "string";
        }];
    }, {
        readonly type: "function";
        readonly name: "symbol";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "string";
        }];
    }, {
        readonly type: "function";
        readonly name: "totalSupply";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly type: "function";
        readonly name: "transfer";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly name: "recipient";
            readonly type: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
        }];
    }, {
        readonly type: "function";
        readonly name: "transferFrom";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly name: "sender";
            readonly type: "address";
        }, {
            readonly name: "recipient";
            readonly type: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
        }];
    }];
    readonly wstETH: readonly [{
        readonly type: "event";
        readonly name: "Approval";
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly name: "owner";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly name: "spender";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly name: "value";
            readonly type: "uint256";
        }];
    }, {
        readonly type: "event";
        readonly name: "Transfer";
        readonly inputs: readonly [{
            readonly indexed: true;
            readonly name: "from";
            readonly type: "address";
        }, {
            readonly indexed: true;
            readonly name: "to";
            readonly type: "address";
        }, {
            readonly indexed: false;
            readonly name: "value";
            readonly type: "uint256";
        }];
    }, {
        readonly type: "function";
        readonly name: "allowance";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly name: "owner";
            readonly type: "address";
        }, {
            readonly name: "spender";
            readonly type: "address";
        }];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly type: "function";
        readonly name: "approve";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly name: "spender";
            readonly type: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
        }];
    }, {
        readonly type: "function";
        readonly name: "balanceOf";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
        }];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly type: "function";
        readonly name: "decimals";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint8";
        }];
    }, {
        readonly type: "function";
        readonly name: "name";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "string";
        }];
    }, {
        readonly type: "function";
        readonly name: "symbol";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "string";
        }];
    }, {
        readonly type: "function";
        readonly name: "totalSupply";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly type: "function";
        readonly name: "transfer";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly name: "recipient";
            readonly type: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
        }];
    }, {
        readonly type: "function";
        readonly name: "transferFrom";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly name: "sender";
            readonly type: "address";
        }, {
            readonly name: "recipient";
            readonly type: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
        }];
    }];
    readonly SMDiscovery: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "_stakingRouter";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "STAKING_ROUTER";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IStakingRouter";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "_tryGetQueuePriority";
        readonly inputs: readonly [{
            readonly name: "_module";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "findNodeOperatorsByAddress";
        readonly inputs: readonly [{
            readonly name: "_moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_addressToSearch";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "_offset";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_limit";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_searchMode";
            readonly type: "uint8";
            readonly internalType: "enum SearchMode";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getDepositQueueBatches";
        readonly inputs: readonly [{
            readonly name: "_moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_queuePriority";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_cursorIndex";
            readonly type: "uint128";
            readonly internalType: "uint128";
        }, {
            readonly name: "_limit";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256[]";
            readonly internalType: "Batch[]";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNodeOperatorsByAddress";
        readonly inputs: readonly [{
            readonly name: "_moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_addressToSearch";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "_offset";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_limit";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "tuple[]";
            readonly internalType: "struct NodeOperatorShort[]";
            readonly components: readonly [{
                readonly name: "id";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "managerAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "rewardAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "extendedManagerPermissions";
                readonly type: "bool";
                readonly internalType: "bool";
            }, {
                readonly name: "curveId";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }];
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNodeOperatorsByProposedAddress";
        readonly inputs: readonly [{
            readonly name: "_moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_addressToSearch";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "_offset";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_limit";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "tuple[]";
            readonly internalType: "struct NodeOperatorProposed[]";
            readonly components: readonly [{
                readonly name: "id";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "proposedManagerAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "proposedRewardAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "curveId";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }];
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNodeOperatorsDepositableValidatorsCount";
        readonly inputs: readonly [{
            readonly name: "_moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_offset";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_limit";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint32[]";
            readonly internalType: "uint32[]";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "moduleCache";
        readonly inputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "moduleAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "accountingAddress";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "updateModuleCache";
        readonly inputs: readonly [{
            readonly name: "_moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "event";
        readonly name: "ModuleCacheUpdated";
        readonly inputs: readonly [{
            readonly name: "moduleId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "moduleAddress";
            readonly type: "address";
            readonly indexed: false;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AddressCannotBeZero";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "CursorBehindQueueHead";
        readonly inputs: readonly [{
            readonly name: "cursor";
            readonly type: "uint128";
            readonly internalType: "uint128";
        }, {
            readonly name: "head";
            readonly type: "uint128";
            readonly internalType: "uint128";
        }];
    }, {
        readonly type: "error";
        readonly name: "InvalidLimit";
        readonly inputs: readonly [{
            readonly name: "provided";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "max";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "InvalidQueuePriority";
        readonly inputs: readonly [{
            readonly name: "provided";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "max";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "InvalidStakingRouterAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ModuleAlreadyCached";
        readonly inputs: readonly [{
            readonly name: "moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "moduleAddress";
            readonly type: "address";
            readonly internalType: "address";
        }];
    }, {
        readonly type: "error";
        readonly name: "ModuleCacheNotInitialized";
        readonly inputs: readonly [{
            readonly name: "moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "ModuleDoesNotSupportQueueOperations";
        readonly inputs: readonly [{
            readonly name: "moduleAddress";
            readonly type: "address";
            readonly internalType: "address";
        }];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleId";
        readonly inputs: readonly [];
    }];
    readonly csModule: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "moduleType";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "lidoLocator";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "parametersRegistry";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "accounting";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "exitPenalties";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "ACCOUNTING";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IAccounting";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "CREATE_NODE_OPERATOR_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        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: "EXIT_PENALTIES";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IExitPenalties";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "FEE_DISTRIBUTOR";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "address";
        }];
        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_TOP_UP_QUEUE_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "PARAMETERS_REGISTRY";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IParametersRegistry";
        }];
        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: "QUEUE_LOWEST_PRIORITY";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        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: "REPORT_GENERAL_DELAYED_PENALTY_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: "SETTLE_GENERAL_DELAYED_PENALTY_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "STAKING_ROUTER_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "STETH";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IStETH";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "SUBMIT_WITHDRAWALS_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "VERIFIER_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "addValidatorKeysETH";
        readonly inputs: readonly [{
            readonly name: "from";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKeys";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "signatures";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
    }, {
        readonly type: "function";
        readonly name: "addValidatorKeysStETH";
        readonly inputs: readonly [{
            readonly name: "from";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKeys";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "signatures";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            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: "addValidatorKeysWstETH";
        readonly inputs: readonly [{
            readonly name: "from";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKeys";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "signatures";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            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: "cancelGeneralDelayedPenalty";
        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: "changeNodeOperatorRewardAddress";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "newAddress";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "cleanDepositQueue";
        readonly inputs: readonly [{
            readonly name: "maxItems";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "removed";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "lastRemovedAtDepth";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "compensateGeneralDelayedPenalty";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
    }, {
        readonly type: "function";
        readonly name: "confirmNodeOperatorManagerAddressChange";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "confirmNodeOperatorRewardAddressChange";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "createNodeOperator";
        readonly inputs: readonly [{
            readonly name: "from";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "managementProperties";
            readonly type: "tuple";
            readonly internalType: "struct NodeOperatorManagementProperties";
            readonly components: readonly [{
                readonly name: "managerAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "rewardAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "extendedManagerPermissions";
                readonly type: "bool";
                readonly internalType: "bool";
            }];
        }, {
            readonly name: "referrer";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "decreaseVettedSigningKeysCount";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorIds";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "vettedSigningKeysCounts";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "depositQueueItem";
        readonly inputs: readonly [{
            readonly name: "queuePriority";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "index";
            readonly type: "uint128";
            readonly internalType: "uint128";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "Batch";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "depositQueuePointers";
        readonly inputs: readonly [{
            readonly name: "queuePriority";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "head";
            readonly type: "uint128";
            readonly internalType: "uint128";
        }, {
            readonly name: "tail";
            readonly type: "uint128";
            readonly internalType: "uint128";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "exitDeadlineThreshold";
        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: "finalizeUpgradeV3";
        readonly inputs: readonly [];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "getActiveNodeOperatorsCount";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            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: "getKeysForTopUp";
        readonly inputs: readonly [{
            readonly name: "keyCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "pubkeys";
            readonly type: "bytes[]";
            readonly internalType: "bytes[]";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNodeOperator";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "tuple";
            readonly internalType: "struct NodeOperator";
            readonly components: readonly [{
                readonly name: "totalAddedKeys";
                readonly type: "uint32";
                readonly internalType: "uint32";
            }, {
                readonly name: "totalWithdrawnKeys";
                readonly type: "uint32";
                readonly internalType: "uint32";
            }, {
                readonly name: "totalDepositedKeys";
                readonly type: "uint32";
                readonly internalType: "uint32";
            }, {
                readonly name: "totalVettedKeys";
                readonly type: "uint32";
                readonly internalType: "uint32";
            }, {
                readonly name: "stuckValidatorsCount";
                readonly type: "uint32";
                readonly internalType: "uint32";
            }, {
                readonly name: "depositableValidatorsCount";
                readonly type: "uint32";
                readonly internalType: "uint32";
            }, {
                readonly name: "targetLimit";
                readonly type: "uint32";
                readonly internalType: "uint32";
            }, {
                readonly name: "targetLimitMode";
                readonly type: "uint8";
                readonly internalType: "uint8";
            }, {
                readonly name: "totalExitedKeys";
                readonly type: "uint32";
                readonly internalType: "uint32";
            }, {
                readonly name: "enqueuedCount";
                readonly type: "uint32";
                readonly internalType: "uint32";
            }, {
                readonly name: "managerAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "proposedManagerAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "rewardAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "proposedRewardAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "extendedManagerPermissions";
                readonly type: "bool";
                readonly internalType: "bool";
            }, {
                readonly name: "usedPriorityQueue";
                readonly type: "bool";
                readonly internalType: "bool";
            }];
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNodeOperatorIds";
        readonly inputs: readonly [{
            readonly name: "offset";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "limit";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorIds";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNodeOperatorIsActive";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNodeOperatorManagementProperties";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "tuple";
            readonly internalType: "struct NodeOperatorManagementProperties";
            readonly components: readonly [{
                readonly name: "managerAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "rewardAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "extendedManagerPermissions";
                readonly type: "bool";
                readonly internalType: "bool";
            }];
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNodeOperatorNonWithdrawnKeys";
        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: "getNodeOperatorOwner";
        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: "getNodeOperatorSummary";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "targetLimitMode";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "targetValidatorsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "stuckValidatorsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "refundedValidatorsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "stuckPenaltyEndTimestamp";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "totalExitedValidators";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "totalDepositedValidators";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "depositableValidatorsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNodeOperatorTotalDepositedKeys";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "totalDepositedKeys";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNodeOperatorsCount";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNonce";
        readonly inputs: readonly [];
        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: "getSigningKeys";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "startIndex";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getSigningKeysWithSignatures";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "startIndex";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "keys";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "signatures";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getStakingModuleSummary";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "totalExitedValidators";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "totalDepositedValidators";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "depositableValidatorsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getTopUpQueue";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "active";
            readonly type: "bool";
            readonly internalType: "bool";
        }, {
            readonly name: "limit";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "length";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getTopUpQueueItem";
        readonly inputs: readonly [{
            readonly name: "index";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keyIndex";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getType";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        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: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "topUpQueueLimit";
            readonly type: "uint32";
            readonly internalType: "uint32";
        }];
        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: "isValidatorExitDelayPenaltyApplicable";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKey";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "eligibleToExitInSec";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "isValidatorSlashed";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keyIndex";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "isValidatorWithdrawn";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keyIndex";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "obtainDepositData";
        readonly inputs: readonly [{
            readonly name: "depositAmount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "packedPubkeys";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "keyIndices";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }, {
            readonly name: "operatorIds";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }, {
            readonly name: "topUpLimits";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }];
        readonly outputs: readonly [{
            readonly name: "publicKeys";
            readonly type: "bytes[]";
            readonly internalType: "bytes[]";
        }, {
            readonly name: "allocations";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "obtainDepositData";
        readonly inputs: readonly [{
            readonly name: "depositsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly outputs: readonly [{
            readonly name: "publicKeys";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "signatures";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "onExitedAndStuckValidatorsCountsUpdated";
        readonly inputs: readonly [];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "onRewardsMinted";
        readonly inputs: readonly [{
            readonly name: "totalShares";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "onValidatorExitTriggered";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKey";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "withdrawalRequestPaidFee";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "exitType";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "onValidatorSlashed";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keyIndex";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "onWithdrawalCredentialsChanged";
        readonly inputs: readonly [];
        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: "proposeNodeOperatorManagerAddressChange";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "proposedAddress";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "proposeNodeOperatorRewardAddressChange";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "proposedAddress";
            readonly type: "address";
            readonly internalType: "address";
        }];
        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: "removeKeys";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "startIndex";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        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: "reportGeneralDelayedPenalty";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "penaltyType";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "details";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "reportValidatorExitDelay";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKey";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "eligibleToExitInSec";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "reportWithdrawnValidators";
        readonly inputs: readonly [{
            readonly name: "validatorInfos";
            readonly type: "tuple[]";
            readonly internalType: "struct WithdrawnValidatorInfo[]";
            readonly components: readonly [{
                readonly name: "nodeOperatorId";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "keyIndex";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "exitBalance";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "slashingPenalty";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "isSlashed";
                readonly type: "bool";
                readonly internalType: "bool";
            }];
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "resetNodeOperatorManagerAddress";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        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: "setTopUpQueueLimit";
        readonly inputs: readonly [{
            readonly name: "limit";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "settleGeneralDelayedPenalty";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorIds";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }, {
            readonly name: "maxAmounts";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }];
        readonly outputs: readonly [];
        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: "unsafeUpdateValidatorsCount";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "exitedValidatorsKeysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "updateDepositableValidatorsCount";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "updateExitedValidatorsCount";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorIds";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "exitedValidatorsCounts";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "updateOperatorBalances";
        readonly inputs: readonly [{
            readonly name: "";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }, {
            readonly name: "";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }, {
            readonly name: "";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }, {
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "updateTargetValidatorsLimits";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "targetLimitMode";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "targetLimit";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "event";
        readonly name: "BatchEnqueued";
        readonly inputs: readonly [{
            readonly name: "queuePriority";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "count";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "DepositableSigningKeysCountChanged";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "depositableKeysCount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "DepositedSigningKeysCountChanged";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "depositedKeysCount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ERC1155Recovered";
        readonly inputs: readonly [{
            readonly name: "token";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "tokenId";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ERC20Recovered";
        readonly inputs: readonly [{
            readonly name: "token";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ERC721Recovered";
        readonly inputs: readonly [{
            readonly name: "token";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "tokenId";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "EtherRecovered";
        readonly inputs: readonly [{
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ExitedSigningKeysCountChanged";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "exitedKeysCount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Initialized";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint64";
            readonly indexed: false;
            readonly internalType: "uint64";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "KeyRemovalChargeApplied";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "NodeOperatorAdded";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "managerAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "rewardAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "extendedManagerPermissions";
            readonly type: "bool";
            readonly indexed: false;
            readonly internalType: "bool";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "NodeOperatorManagerAddressChangeProposed";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "oldProposedAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "newProposedAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "NodeOperatorManagerAddressChanged";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "oldAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "newAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "NodeOperatorRewardAddressChangeProposed";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "oldProposedAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "newProposedAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "NodeOperatorRewardAddressChanged";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "oldAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "newAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "NonceChanged";
        readonly inputs: readonly [{
            readonly name: "nonce";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Paused";
        readonly inputs: readonly [{
            readonly name: "duration";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ReferrerSet";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "referrer";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Resumed";
        readonly inputs: readonly [];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "SigningKeyAdded";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "pubkey";
            readonly type: "bytes";
            readonly indexed: false;
            readonly internalType: "bytes";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "SigningKeyRemoved";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "pubkey";
            readonly type: "bytes";
            readonly indexed: false;
            readonly internalType: "bytes";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "StETHSharesRecovered";
        readonly inputs: readonly [{
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "shares";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "TargetValidatorsCountChanged";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "targetLimitMode";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "targetValidatorsCount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "TopUpQueueLimitSet";
        readonly inputs: readonly [{
            readonly name: "limit";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "TotalSigningKeysCountChanged";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "totalKeysCount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ValidatorSlashingReported";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "keyIndex";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "pubkey";
            readonly type: "bytes";
            readonly indexed: false;
            readonly internalType: "bytes";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ValidatorWithdrawn";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "keyIndex";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "exitBalance";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "slashingPenalty";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "pubkey";
            readonly type: "bytes";
            readonly indexed: false;
            readonly internalType: "bytes";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "VettedSigningKeysCountChanged";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "vettedKeysCount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "VettedSigningKeysCountDecreased";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "AlreadyProposed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "CannotAddKeys";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "DepositQueueHasUnsupportedWithdrawalCredentials";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "DepositQueueIsEmpty";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "DepositQueueLookupNoLimit";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "EmptyKey";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ExitedKeysDecrease";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ExitedKeysHigherThanTotalDeposited";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "FailedToSendEther";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidAmount";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitialization";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInput";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidKeysCount";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidLength";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidReportData";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidSigningKey";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTopUpOrder";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidVetKeysPointer";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidWithdrawnValidatorInfo";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "KeysLimitExceeded";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "MethodCallIsNotAllowed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NoQueuedKeysToMigrate";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NodeOperatorDoesNotExist";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotAllowedToRecover";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotEligibleForPriorityQueue";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotEnoughKeys";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotInitializing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PauseUntilMustBeInFuture";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PausedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PriorityQueueAlreadyUsed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PriorityQueueMaxDepositsUsed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ResumedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SafeCastOverflowedUintDowncast";
        readonly inputs: readonly [{
            readonly name: "bits";
            readonly type: "uint8";
            readonly internalType: "uint8";
        }, {
            readonly name: "value";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "SameAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SenderIsNotEligible";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SenderIsNotManagerAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SenderIsNotProposedAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SenderIsNotRewardAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SigningKeysInvalidOffset";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SlashingPenaltyIsNotApplicable";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "TopUpQueueDisabled";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "TopUpQueueIsEmpty";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "TopUpQueueIsFull";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "UnexpectedExtraKey";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ValidatorSlashingAlreadyReported";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAccountingAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroExitBalance";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroExitPenaltiesAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroLocatorAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroManagerAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroParametersRegistryAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroPauseDuration";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroRewardAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroSenderAddress";
        readonly inputs: readonly [];
    }];
    readonly curatedModule: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "moduleType";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "lidoLocator";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "parametersRegistry";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "accounting";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "exitPenalties";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "ACCOUNTING";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IAccounting";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "CREATE_NODE_OPERATOR_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        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: "EXIT_PENALTIES";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IExitPenalties";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "FEE_DISTRIBUTOR";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "address";
        }];
        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: "OPERATOR_ADDRESSES_ADMIN_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "PARAMETERS_REGISTRY";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IParametersRegistry";
        }];
        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: "REPORT_GENERAL_DELAYED_PENALTY_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: "SETTLE_GENERAL_DELAYED_PENALTY_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "STAKING_ROUTER_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "STETH";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IStETH";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "SUBMIT_WITHDRAWALS_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "VERIFIER_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "addValidatorKeysETH";
        readonly inputs: readonly [{
            readonly name: "from";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKeys";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "signatures";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
    }, {
        readonly type: "function";
        readonly name: "addValidatorKeysStETH";
        readonly inputs: readonly [{
            readonly name: "from";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKeys";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "signatures";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            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: "addValidatorKeysWstETH";
        readonly inputs: readonly [{
            readonly name: "from";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKeys";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "signatures";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            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: "cancelGeneralDelayedPenalty";
        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: "changeNodeOperatorAddresses";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "newManagerAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "newRewardAddress";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "changeNodeOperatorRewardAddress";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "newAddress";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "compensateGeneralDelayedPenalty";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
    }, {
        readonly type: "function";
        readonly name: "confirmNodeOperatorManagerAddressChange";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "confirmNodeOperatorRewardAddressChange";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "createNodeOperator";
        readonly inputs: readonly [{
            readonly name: "from";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "managementProperties";
            readonly type: "tuple";
            readonly internalType: "struct NodeOperatorManagementProperties";
            readonly components: readonly [{
                readonly name: "managerAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "rewardAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "extendedManagerPermissions";
                readonly type: "bool";
                readonly internalType: "bool";
            }];
        }, {
            readonly name: "referrer";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "decreaseVettedSigningKeysCount";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorIds";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "vettedSigningKeysCounts";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "exitDeadlineThreshold";
        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: "getActiveNodeOperatorsCount";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getDepositsAllocation";
        readonly inputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "allocated";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "operatorIds";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }, {
            readonly name: "allocations";
            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: "getNodeOperator";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "tuple";
            readonly internalType: "struct NodeOperator";
            readonly components: readonly [{
                readonly name: "totalAddedKeys";
                readonly type: "uint32";
                readonly internalType: "uint32";
            }, {
                readonly name: "totalWithdrawnKeys";
                readonly type: "uint32";
                readonly internalType: "uint32";
            }, {
                readonly name: "totalDepositedKeys";
                readonly type: "uint32";
                readonly internalType: "uint32";
            }, {
                readonly name: "totalVettedKeys";
                readonly type: "uint32";
                readonly internalType: "uint32";
            }, {
                readonly name: "stuckValidatorsCount";
                readonly type: "uint32";
                readonly internalType: "uint32";
            }, {
                readonly name: "depositableValidatorsCount";
                readonly type: "uint32";
                readonly internalType: "uint32";
            }, {
                readonly name: "targetLimit";
                readonly type: "uint32";
                readonly internalType: "uint32";
            }, {
                readonly name: "targetLimitMode";
                readonly type: "uint8";
                readonly internalType: "uint8";
            }, {
                readonly name: "totalExitedKeys";
                readonly type: "uint32";
                readonly internalType: "uint32";
            }, {
                readonly name: "enqueuedCount";
                readonly type: "uint32";
                readonly internalType: "uint32";
            }, {
                readonly name: "managerAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "proposedManagerAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "rewardAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "proposedRewardAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "extendedManagerPermissions";
                readonly type: "bool";
                readonly internalType: "bool";
            }, {
                readonly name: "usedPriorityQueue";
                readonly type: "bool";
                readonly internalType: "bool";
            }];
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNodeOperatorIds";
        readonly inputs: readonly [{
            readonly name: "offset";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "limit";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorIds";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNodeOperatorIsActive";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNodeOperatorManagementProperties";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "tuple";
            readonly internalType: "struct NodeOperatorManagementProperties";
            readonly components: readonly [{
                readonly name: "managerAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "rewardAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "extendedManagerPermissions";
                readonly type: "bool";
                readonly internalType: "bool";
            }];
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNodeOperatorNonWithdrawnKeys";
        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: "getNodeOperatorOwner";
        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: "getNodeOperatorSummary";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "targetLimitMode";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "targetValidatorsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "stuckValidatorsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "refundedValidatorsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "stuckPenaltyEndTimestamp";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "totalExitedValidators";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "totalDepositedValidators";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "depositableValidatorsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNodeOperatorTotalDepositedKeys";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "totalDepositedKeys";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNodeOperatorsCount";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getNonce";
        readonly inputs: readonly [];
        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: "getSigningKeys";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "startIndex";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getSigningKeysWithSignatures";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "startIndex";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "keys";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "signatures";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getStakingModuleSummary";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "totalExitedValidators";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "totalDepositedValidators";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "depositableValidatorsCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getType";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        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: "admin";
            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: "isValidatorExitDelayPenaltyApplicable";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKey";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "eligibleToExitInSec";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "isValidatorSlashed";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keyIndex";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "isValidatorWithdrawn";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keyIndex";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "obtainDepositData";
        readonly inputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }, {
            readonly name: "";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }, {
            readonly name: "";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }];
        readonly outputs: readonly [{
            readonly name: "publicKeys";
            readonly type: "bytes[]";
            readonly internalType: "bytes[]";
        }, {
            readonly name: "allocations";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "obtainDepositData";
        readonly inputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly outputs: readonly [{
            readonly name: "publicKeys";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "signatures";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "onExitedAndStuckValidatorsCountsUpdated";
        readonly inputs: readonly [];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "onRewardsMinted";
        readonly inputs: readonly [{
            readonly name: "totalShares";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "onValidatorExitTriggered";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKey";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "withdrawalRequestPaidFee";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "exitType";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "onValidatorSlashed";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keyIndex";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "onWithdrawalCredentialsChanged";
        readonly inputs: readonly [];
        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: "proposeNodeOperatorManagerAddressChange";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "proposedAddress";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "proposeNodeOperatorRewardAddressChange";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "proposedAddress";
            readonly type: "address";
            readonly internalType: "address";
        }];
        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: "removeKeys";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "startIndex";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        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: "reportGeneralDelayedPenalty";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "penaltyType";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "details";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "reportValidatorExitDelay";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKey";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "eligibleToExitInSec";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "reportWithdrawnValidators";
        readonly inputs: readonly [{
            readonly name: "validatorInfos";
            readonly type: "tuple[]";
            readonly internalType: "struct WithdrawnValidatorInfo[]";
            readonly components: readonly [{
                readonly name: "nodeOperatorId";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "keyIndex";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "exitBalance";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "slashingPenalty";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "isSlashed";
                readonly type: "bool";
                readonly internalType: "bool";
            }];
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "resetNodeOperatorManagerAddress";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        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: "settleGeneralDelayedPenalty";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorIds";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }, {
            readonly name: "maxAmounts";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }];
        readonly outputs: readonly [];
        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: "unsafeUpdateValidatorsCount";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "exitedValidatorsKeysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "updateDepositableValidatorsCount";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "updateExitedValidatorsCount";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorIds";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "exitedValidatorsCounts";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "updateOperatorBalances";
        readonly inputs: readonly [{
            readonly name: "";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }, {
            readonly name: "";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }, {
            readonly name: "";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }, {
            readonly name: "refSlot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "updateTargetValidatorsLimits";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "targetLimitMode";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "targetLimit";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "event";
        readonly name: "DepositableSigningKeysCountChanged";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "depositableKeysCount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "DepositedSigningKeysCountChanged";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "depositedKeysCount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ERC1155Recovered";
        readonly inputs: readonly [{
            readonly name: "token";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "tokenId";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ERC20Recovered";
        readonly inputs: readonly [{
            readonly name: "token";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ERC721Recovered";
        readonly inputs: readonly [{
            readonly name: "token";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "tokenId";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "EtherRecovered";
        readonly inputs: readonly [{
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ExitedSigningKeysCountChanged";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "exitedKeysCount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Initialized";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint64";
            readonly indexed: false;
            readonly internalType: "uint64";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "KeyRemovalChargeApplied";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "NodeOperatorAdded";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "managerAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "rewardAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "extendedManagerPermissions";
            readonly type: "bool";
            readonly indexed: false;
            readonly internalType: "bool";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "NodeOperatorManagerAddressChangeProposed";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "oldProposedAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "newProposedAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "NodeOperatorManagerAddressChanged";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "oldAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "newAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "NodeOperatorRewardAddressChangeProposed";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "oldProposedAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "newProposedAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "NodeOperatorRewardAddressChanged";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "oldAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "newAddress";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "NonceChanged";
        readonly inputs: readonly [{
            readonly name: "nonce";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Paused";
        readonly inputs: readonly [{
            readonly name: "duration";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ReferrerSet";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "referrer";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Resumed";
        readonly inputs: readonly [];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "SigningKeyAdded";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "pubkey";
            readonly type: "bytes";
            readonly indexed: false;
            readonly internalType: "bytes";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "SigningKeyRemoved";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "pubkey";
            readonly type: "bytes";
            readonly indexed: false;
            readonly internalType: "bytes";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "StETHSharesRecovered";
        readonly inputs: readonly [{
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "shares";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "TargetValidatorsCountChanged";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "targetLimitMode";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "targetValidatorsCount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "TotalSigningKeysCountChanged";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "totalKeysCount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ValidatorSlashingReported";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "keyIndex";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "pubkey";
            readonly type: "bytes";
            readonly indexed: false;
            readonly internalType: "bytes";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ValidatorWithdrawn";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "keyIndex";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "exitBalance";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "slashingPenalty";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "pubkey";
            readonly type: "bytes";
            readonly indexed: false;
            readonly internalType: "bytes";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "VettedSigningKeysCountChanged";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "vettedKeysCount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "VettedSigningKeysCountDecreased";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "AlreadyProposed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "CannotAddKeys";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "EmptyKey";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ExitedKeysDecrease";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ExitedKeysHigherThanTotalDeposited";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "FailedToSendEther";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidAmount";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitialization";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInput";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidKeysCount";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidLength";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidReportData";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidVetKeysPointer";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidWithdrawnValidatorInfo";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "KeysLimitExceeded";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "MethodCallIsNotAllowed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NodeOperatorDoesNotExist";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotAllowedToRecover";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotEnoughKeys";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotImplemented";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotInitializing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PauseUntilMustBeInFuture";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PausedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ResumedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SameAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SenderIsNotEligible";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SenderIsNotManagerAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SenderIsNotProposedAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SenderIsNotRewardAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SigningKeysInvalidOffset";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SlashingPenaltyIsNotApplicable";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ValidatorSlashingAlreadyReported";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAccountingAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroExitBalance";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroExitPenaltiesAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroLocatorAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroManagerAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroParametersRegistryAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroPauseDuration";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroRewardAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroSenderAddress";
        readonly inputs: readonly [];
    }];
    readonly accounting: 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 indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "until";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "BondLockCompensated";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "BondLockPeriodChanged";
        readonly inputs: readonly [{
            readonly name: "period";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "BondLockRemoved";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ChargePenaltyRecipientSet";
        readonly inputs: readonly [{
            readonly name: "chargePenaltyRecipient";
            readonly type: "address";
            readonly indexed: false;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "CustomRewardsClaimerSet";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "rewardsClaimer";
            readonly type: "address";
            readonly indexed: false;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ERC1155Recovered";
        readonly inputs: readonly [{
            readonly name: "token";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "tokenId";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ERC20Recovered";
        readonly inputs: readonly [{
            readonly name: "token";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ERC721Recovered";
        readonly inputs: readonly [{
            readonly name: "token";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "tokenId";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "EtherRecovered";
        readonly inputs: readonly [{
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Initialized";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint64";
            readonly indexed: false;
            readonly internalType: "uint64";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Paused";
        readonly inputs: readonly [{
            readonly name: "duration";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Resumed";
        readonly inputs: readonly [];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "StETHSharesRecovered";
        readonly inputs: readonly [{
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "shares";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "ElRewardsVaultReceiveFailed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "FailedToSendEther";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidBondCurveId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidBondCurveLength";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidBondCurveValues";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidBondCurvesLength";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidBondLockAmount";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidBondLockPeriod";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitialization";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitializationCurveId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NodeOperatorDoesNotExist";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotAllowedToRecover";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotInitializing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NothingToClaim";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PauseUntilMustBeInFuture";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PausedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ResumedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SafeCastOverflowedUintDowncast";
        readonly inputs: readonly [{
            readonly name: "bits";
            readonly type: "uint8";
            readonly internalType: "uint8";
        }, {
            readonly name: "value";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "SameAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SenderIsNotEligible";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SenderIsNotModule";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroChargePenaltyRecipientAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroFeeDistributorAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroLocatorAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroPauseDuration";
        readonly inputs: readonly [];
    }];
    readonly ejector: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "module";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "strikes";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "stakingModuleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }];
        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: "MODULE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract ICSModule";
        }];
        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: "STAKING_MODULE_ID";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "STRIKES";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "STRIKES_EXIT_TYPE_ID";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint8";
            readonly internalType: "uint8";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "VOLUNTARY_EXIT_TYPE_ID";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint8";
            readonly internalType: "uint8";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "ejectBadPerformer";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keyIndex";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "refundRecipient";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
    }, {
        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: "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: "isPaused";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        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: "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: "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: "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: "triggerableWithdrawalsGateway";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract ITriggerableWithdrawalsGateway";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "voluntaryEject";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "startFrom";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "refundRecipient";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
    }, {
        readonly type: "function";
        readonly name: "voluntaryEjectByArray";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keyIndices";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }, {
            readonly name: "refundRecipient";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
    }, {
        readonly type: "event";
        readonly name: "BadPerformerEjectionRequested";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "pubkey";
            readonly type: "bytes";
            readonly indexed: false;
            readonly internalType: "bytes";
        }, {
            readonly name: "refundRecipient";
            readonly type: "address";
            readonly indexed: false;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Paused";
        readonly inputs: readonly [{
            readonly name: "duration";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Resumed";
        readonly inputs: readonly [];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "VoluntaryEjectionRequested";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "pubkey";
            readonly type: "bytes";
            readonly indexed: false;
            readonly internalType: "bytes";
        }, {
            readonly name: "refundRecipient";
            readonly type: "address";
            readonly indexed: false;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "AlreadyWithdrawn";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NodeOperatorDoesNotExist";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NothingToEject";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PauseUntilMustBeInFuture";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PausedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ResumedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SenderIsNotEligible";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SenderIsNotStrikes";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SigningKeysInvalidOffset";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroPauseDuration";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroStrikesAddress";
        readonly inputs: readonly [];
    }];
    readonly exitPenalties: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "module";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "parametersRegistry";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "strikes";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "ACCOUNTING";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IAccounting";
        }];
        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: "PARAMETERS_REGISTRY";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IParametersRegistry";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "STRIKES";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "STRIKES_EXIT_TYPE_ID";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint8";
            readonly internalType: "uint8";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "VOLUNTARY_EXIT_TYPE_ID";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint8";
            readonly internalType: "uint8";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getExitPenaltyInfo";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKey";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "tuple";
            readonly internalType: "struct ExitPenaltyInfo";
            readonly components: readonly [{
                readonly name: "delayFee";
                readonly type: "tuple";
                readonly internalType: "struct MarkedUint248";
                readonly components: readonly [{
                    readonly name: "value";
                    readonly type: "uint248";
                    readonly internalType: "uint248";
                }, {
                    readonly name: "isValue";
                    readonly type: "bool";
                    readonly internalType: "bool";
                }];
            }, {
                readonly name: "strikesPenalty";
                readonly type: "tuple";
                readonly internalType: "struct MarkedUint248";
                readonly components: readonly [{
                    readonly name: "value";
                    readonly type: "uint248";
                    readonly internalType: "uint248";
                }, {
                    readonly name: "isValue";
                    readonly type: "bool";
                    readonly internalType: "bool";
                }];
            }, {
                readonly name: "withdrawalRequestFee";
                readonly type: "tuple";
                readonly internalType: "struct MarkedUint248";
                readonly components: readonly [{
                    readonly name: "value";
                    readonly type: "uint248";
                    readonly internalType: "uint248";
                }, {
                    readonly name: "isValue";
                    readonly type: "bool";
                    readonly internalType: "bool";
                }];
            }];
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "isValidatorExitDelayPenaltyApplicable";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKey";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "eligibleToExitInSec";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "processExitDelayReport";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKey";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "eligibleToExitInSec";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "processStrikesReport";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKey";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "processTriggeredExit";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKey";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "withdrawalRequestPaidFee";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "exitType";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "event";
        readonly name: "StrikesPenaltyProcessed";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "pubkey";
            readonly type: "bytes";
            readonly indexed: false;
            readonly internalType: "bytes";
        }, {
            readonly name: "strikesPenalty";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "TriggeredExitFeeRecorded";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "exitType";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "pubkey";
            readonly type: "bytes";
            readonly indexed: false;
            readonly internalType: "bytes";
        }, {
            readonly name: "withdrawalRequestPaidFee";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "withdrawalRequestRecordedFee";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ValidatorExitDelayProcessed";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "pubkey";
            readonly type: "bytes";
            readonly indexed: false;
            readonly internalType: "bytes";
        }, {
            readonly name: "delayFee";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "SafeCastOverflowedUintDowncast";
        readonly inputs: readonly [{
            readonly name: "bits";
            readonly type: "uint8";
            readonly internalType: "uint8";
        }, {
            readonly name: "value";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "SenderIsNotModule";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SenderIsNotStrikes";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ValidatorExitDelayNotApplicable";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroParametersRegistryAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroStrikesAddress";
        readonly inputs: readonly [];
    }];
    readonly feeDistributor: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "stETH";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "accounting";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "oracle";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "ACCOUNTING";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "view";
    }, {
        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: "ORACLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "address";
        }];
        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: "STETH";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IStETH";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "distributeFees";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "cumulativeFeeShares";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "sharesToDistribute";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "distributedShares";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "distributed";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "distributionDataHistoryCount";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "finalizeUpgradeV3";
        readonly inputs: readonly [];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "getFeesToDistribute";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "cumulativeFeeShares";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "sharesToDistribute";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getHistoricalDistributionData";
        readonly inputs: readonly [{
            readonly name: "index";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "tuple";
            readonly internalType: "struct IFeeDistributor.DistributionData";
            readonly components: readonly [{
                readonly name: "refSlot";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "treeRoot";
                readonly type: "bytes32";
                readonly internalType: "bytes32";
            }, {
                readonly name: "treeCid";
                readonly type: "string";
                readonly internalType: "string";
            }, {
                readonly name: "logCid";
                readonly type: "string";
                readonly internalType: "string";
            }, {
                readonly name: "distributed";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "rebate";
                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: "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: "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: "hashLeaf";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "shares";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "pure";
    }, {
        readonly type: "function";
        readonly name: "initialize";
        readonly inputs: readonly [{
            readonly name: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "_rebateRecipient";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "logCid";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "pendingSharesToDistribute";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "processOracleReport";
        readonly inputs: readonly [{
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "_logCid";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "distributed";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "rebate";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "refSlot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "rebateRecipient";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "view";
    }, {
        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: "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: "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: "setRebateRecipient";
        readonly inputs: readonly [{
            readonly name: "_rebateRecipient";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        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: "totalClaimableShares";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "treeCid";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "treeRoot";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "event";
        readonly name: "DistributionDataUpdated";
        readonly inputs: readonly [{
            readonly name: "totalClaimableShares";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "treeRoot";
            readonly type: "bytes32";
            readonly indexed: false;
            readonly internalType: "bytes32";
        }, {
            readonly name: "treeCid";
            readonly type: "string";
            readonly indexed: false;
            readonly internalType: "string";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "DistributionLogUpdated";
        readonly inputs: readonly [{
            readonly name: "logCid";
            readonly type: "string";
            readonly indexed: false;
            readonly internalType: "string";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ERC1155Recovered";
        readonly inputs: readonly [{
            readonly name: "token";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "tokenId";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ERC20Recovered";
        readonly inputs: readonly [{
            readonly name: "token";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ERC721Recovered";
        readonly inputs: readonly [{
            readonly name: "token";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "tokenId";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "EtherRecovered";
        readonly inputs: readonly [{
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Initialized";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint64";
            readonly indexed: false;
            readonly internalType: "uint64";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ModuleFeeDistributed";
        readonly inputs: readonly [{
            readonly name: "shares";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "OperatorFeeDistributed";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "shares";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RebateRecipientSet";
        readonly inputs: readonly [{
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: false;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RebateTransferred";
        readonly inputs: readonly [{
            readonly name: "shares";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "StETHSharesRecovered";
        readonly inputs: readonly [{
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "shares";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "FailedToSendEther";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "FeeSharesDecrease";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitialization";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidLogCID";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidProof";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidReportData";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidShares";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeCid";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeRoot";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotAllowedToRecover";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotEnoughShares";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotInitializing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SenderIsNotAccounting";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SenderIsNotOracle";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAccountingAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroOracleAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroRebateRecipientAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroStEthAddress";
        readonly inputs: readonly [];
    }];
    readonly feeOracle: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "feeDistributor";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "strikes";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "secondsPerSlot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "genesisTime";
            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: "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: "GENESIS_TIME";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MANAGE_CONSENSUS_CONTRACT_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MANAGE_CONSENSUS_VERSION_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        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: "SECONDS_PER_SLOT";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "STRIKES";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IValidatorStrikes";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "SUBMIT_DATA_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "discardConsensusReport";
        readonly inputs: readonly [{
            readonly name: "refSlot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        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: "getConsensusContract";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getConsensusReport";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "hash";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "refSlot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "processingDeadlineTime";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "processingStarted";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getConsensusVersion";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getContractVersion";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getLastProcessingRefSlot";
        readonly inputs: readonly [];
        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: "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: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "consensusContract";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "consensusVersion";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        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: "pauseFor";
        readonly inputs: readonly [{
            readonly name: "duration";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        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: "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: "setConsensusContract";
        readonly inputs: readonly [{
            readonly name: "addr";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setConsensusVersion";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "submitConsensusReport";
        readonly inputs: readonly [{
            readonly name: "reportHash";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "refSlot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "deadline";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "submitReportData";
        readonly inputs: readonly [{
            readonly name: "data";
            readonly type: "tuple";
            readonly internalType: "struct IFeeOracle.ReportData";
            readonly components: readonly [{
                readonly name: "consensusVersion";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "refSlot";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "treeRoot";
                readonly type: "bytes32";
                readonly internalType: "bytes32";
            }, {
                readonly name: "treeCid";
                readonly type: "string";
                readonly internalType: "string";
            }, {
                readonly name: "logCid";
                readonly type: "string";
                readonly internalType: "string";
            }, {
                readonly name: "distributed";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "rebate";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "strikesTreeRoot";
                readonly type: "bytes32";
                readonly internalType: "bytes32";
            }, {
                readonly name: "strikesTreeCid";
                readonly type: "string";
                readonly internalType: "string";
            }];
        }, {
            readonly name: "contractVersion";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        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: "event";
        readonly name: "ConsensusHashContractSet";
        readonly inputs: readonly [{
            readonly name: "addr";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "prevAddr";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ConsensusVersionSet";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "prevVersion";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ContractVersionSet";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ERC1155Recovered";
        readonly inputs: readonly [{
            readonly name: "token";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "tokenId";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ERC20Recovered";
        readonly inputs: readonly [{
            readonly name: "token";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ERC721Recovered";
        readonly inputs: readonly [{
            readonly name: "token";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "tokenId";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "EtherRecovered";
        readonly inputs: readonly [{
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "amount";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Initialized";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint64";
            readonly indexed: false;
            readonly internalType: "uint64";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Paused";
        readonly inputs: readonly [{
            readonly name: "duration";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ProcessingStarted";
        readonly inputs: readonly [{
            readonly name: "refSlot";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "hash";
            readonly type: "bytes32";
            readonly indexed: false;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ReportDiscarded";
        readonly inputs: readonly [{
            readonly name: "refSlot";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "hash";
            readonly type: "bytes32";
            readonly indexed: false;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ReportSubmitted";
        readonly inputs: readonly [{
            readonly name: "refSlot";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "hash";
            readonly type: "bytes32";
            readonly indexed: false;
            readonly internalType: "bytes32";
        }, {
            readonly name: "processingDeadlineTime";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Resumed";
        readonly inputs: readonly [];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "StETHSharesRecovered";
        readonly inputs: readonly [{
            readonly name: "recipient";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "shares";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "WarnProcessingMissed";
        readonly inputs: readonly [{
            readonly name: "refSlot";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "AddressCannotBeSame";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AddressCannotBeZero";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "FailedToSendEther";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "HashCannotBeZero";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InitialRefSlotCannotBeLessThanProcessingOne";
        readonly inputs: readonly [{
            readonly name: "initialRefSlot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "processingRefSlot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "InvalidContractVersion";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidContractVersionIncrement";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitialization";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NoConsensusReportToProcess";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NonZeroContractVersionOnInit";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotAllowedToRecover";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotInitializing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PauseUntilMustBeInFuture";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PausedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ProcessingDeadlineMissed";
        readonly inputs: readonly [{
            readonly name: "deadline";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "RefSlotAlreadyProcessing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "RefSlotCannotDecrease";
        readonly inputs: readonly [{
            readonly name: "refSlot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "prevRefSlot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "RefSlotMustBeGreaterThanProcessingOne";
        readonly inputs: readonly [{
            readonly name: "refSlot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "processingRefSlot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "ResumedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SafeCastOverflowedUintDowncast";
        readonly inputs: readonly [{
            readonly name: "bits";
            readonly type: "uint8";
            readonly internalType: "uint8";
        }, {
            readonly name: "value";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "SecondsPerSlotCannotBeZero";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SenderIsNotTheConsensusContract";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SenderNotAllowed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "UnexpectedChainConfig";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "UnexpectedConsensusVersion";
        readonly inputs: readonly [{
            readonly name: "expectedVersion";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "receivedVersion";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "UnexpectedContractVersion";
        readonly inputs: readonly [{
            readonly name: "expected";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "received";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "UnexpectedDataHash";
        readonly inputs: readonly [{
            readonly name: "consensusHash";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "receivedHash";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "UnexpectedRefSlot";
        readonly inputs: readonly [{
            readonly name: "consensusRefSlot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "dataRefSlot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "VersionCannotBeSame";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "VersionCannotBeZero";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroFeeDistributorAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroPauseDuration";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroStrikesAddress";
        readonly inputs: readonly [];
    }];
    readonly hashConsensus: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "slotsPerEpoch";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "secondsPerSlot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "genesisTime";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "epochsPerFrame";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "fastLaneLengthSlots";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "reportProcessor";
            readonly type: "address";
            readonly internalType: "address";
        }];
        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: "DISABLE_CONSENSUS_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MANAGE_FAST_LANE_CONFIG_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MANAGE_FRAME_CONFIG_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MANAGE_MEMBERS_AND_QUORUM_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MANAGE_REPORT_PROCESSOR_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "addMember";
        readonly inputs: readonly [{
            readonly name: "addr";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "quorum";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "disableConsensus";
        readonly inputs: readonly [];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "getChainConfig";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "slotsPerEpoch";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "secondsPerSlot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "genesisTime";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getConsensusState";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "refSlot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "consensusReport";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "isReportProcessing";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getConsensusStateForMember";
        readonly inputs: readonly [{
            readonly name: "addr";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "result";
            readonly type: "tuple";
            readonly internalType: "struct HashConsensus.MemberConsensusState";
            readonly components: readonly [{
                readonly name: "currentFrameRefSlot";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "currentFrameConsensusReport";
                readonly type: "bytes32";
                readonly internalType: "bytes32";
            }, {
                readonly name: "isMember";
                readonly type: "bool";
                readonly internalType: "bool";
            }, {
                readonly name: "isFastLane";
                readonly type: "bool";
                readonly internalType: "bool";
            }, {
                readonly name: "canReport";
                readonly type: "bool";
                readonly internalType: "bool";
            }, {
                readonly name: "lastMemberReportRefSlot";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "currentFrameMemberReport";
                readonly type: "bytes32";
                readonly internalType: "bytes32";
            }];
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getCurrentFrame";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "refSlot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "reportProcessingDeadlineSlot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getFastLaneMembers";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "addresses";
            readonly type: "address[]";
            readonly internalType: "address[]";
        }, {
            readonly name: "lastReportedRefSlots";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getFrameConfig";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "initialEpoch";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "epochsPerFrame";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "fastLaneLengthSlots";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getInitialRefSlot";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getIsFastLaneMember";
        readonly inputs: readonly [{
            readonly name: "addr";
            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: "getIsMember";
        readonly inputs: readonly [{
            readonly name: "addr";
            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: "getMembers";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "addresses";
            readonly type: "address[]";
            readonly internalType: "address[]";
        }, {
            readonly name: "lastReportedRefSlots";
            readonly type: "uint256[]";
            readonly internalType: "uint256[]";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getQuorum";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getReportProcessor";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getReportVariants";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "variants";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }, {
            readonly name: "support";
            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: "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: "removeMember";
        readonly inputs: readonly [{
            readonly name: "addr";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "quorum";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        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: "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: "setFastLaneLengthSlots";
        readonly inputs: readonly [{
            readonly name: "fastLaneLengthSlots";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setFrameConfig";
        readonly inputs: readonly [{
            readonly name: "epochsPerFrame";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "fastLaneLengthSlots";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setQuorum";
        readonly inputs: readonly [{
            readonly name: "quorum";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setReportProcessor";
        readonly inputs: readonly [{
            readonly name: "newProcessor";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "submitReport";
        readonly inputs: readonly [{
            readonly name: "slot";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "report";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "consensusVersion";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        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: "updateInitialEpoch";
        readonly inputs: readonly [{
            readonly name: "initialEpoch";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "event";
        readonly name: "ConsensusLost";
        readonly inputs: readonly [{
            readonly name: "refSlot";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ConsensusReached";
        readonly inputs: readonly [{
            readonly name: "refSlot";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "report";
            readonly type: "bytes32";
            readonly indexed: false;
            readonly internalType: "bytes32";
        }, {
            readonly name: "support";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "FastLaneConfigSet";
        readonly inputs: readonly [{
            readonly name: "fastLaneLengthSlots";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "FrameConfigSet";
        readonly inputs: readonly [{
            readonly name: "newInitialEpoch";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "newEpochsPerFrame";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Initialized";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint64";
            readonly indexed: false;
            readonly internalType: "uint64";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "MemberAdded";
        readonly inputs: readonly [{
            readonly name: "addr";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "newTotalMembers";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "newQuorum";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "MemberRemoved";
        readonly inputs: readonly [{
            readonly name: "addr";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "newTotalMembers";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "newQuorum";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "QuorumSet";
        readonly inputs: readonly [{
            readonly name: "newQuorum";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "totalMembers";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "prevQuorum";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ReportProcessorSet";
        readonly inputs: readonly [{
            readonly name: "processor";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "prevProcessor";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ReportReceived";
        readonly inputs: readonly [{
            readonly name: "refSlot";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "member";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "report";
            readonly type: "bytes32";
            readonly indexed: false;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "AddressCannotBeZero";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AdminCannotBeZero";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ConsensusReportAlreadyProcessing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "DuplicateMember";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "DuplicateReport";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "EmptyReport";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "EpochsPerFrameCannotBeZero";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "FastLanePeriodCannotBeLongerThanFrame";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InitialEpochAlreadyArrived";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InitialEpochIsYetToArrive";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InitialEpochRefSlotCannotBeEarlierThanProcessingSlot";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidChainConfig";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitialization";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidSlot";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NewProcessorCannotBeTheSame";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NonFastLaneMemberCannotReportWithinFastLaneInterval";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NonMember";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotInitializing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NumericOverflow";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "QuorumTooSmall";
        readonly inputs: readonly [{
            readonly name: "minQuorum";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "receivedQuorum";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "ReportProcessorCannotBeZero";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SafeCastOverflowedUintDowncast";
        readonly inputs: readonly [{
            readonly name: "bits";
            readonly type: "uint8";
            readonly internalType: "uint8";
        }, {
            readonly name: "value";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "StaleReport";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "UnexpectedConsensusVersion";
        readonly inputs: readonly [{
            readonly name: "expected";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "received";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }];
    readonly parametersRegistry: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "queueLowestPriority";
            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: "MANAGE_ALLOCATION_WEIGHTS_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MANAGE_GENERAL_PENALTIES_AND_CHARGES_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MANAGE_KEYS_LIMIT_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MANAGE_PERFORMANCE_PARAMETERS_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MANAGE_QUEUE_CONFIG_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MANAGE_REWARD_SHARE_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MANAGE_VALIDATOR_EXIT_PARAMETERS_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "QUEUE_LOWEST_PRIORITY";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "defaultAllowedExitDelay";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "defaultBadPerformancePenalty";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "defaultDepositAllocationWeight";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "defaultExitDelayFee";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "defaultGeneralDelayedPenaltyAdditionalFine";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "defaultKeyRemovalCharge";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "defaultKeysLimit";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "defaultMaxElWithdrawalRequestFee";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "defaultPerformanceCoefficients";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "attestationsWeight";
            readonly type: "uint32";
            readonly internalType: "uint32";
        }, {
            readonly name: "blocksWeight";
            readonly type: "uint32";
            readonly internalType: "uint32";
        }, {
            readonly name: "syncWeight";
            readonly type: "uint32";
            readonly internalType: "uint32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "defaultPerformanceLeeway";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "defaultQueueConfig";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "priority";
            readonly type: "uint32";
            readonly internalType: "uint32";
        }, {
            readonly name: "maxDeposits";
            readonly type: "uint32";
            readonly internalType: "uint32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "defaultRewardShare";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "defaultStrikesParams";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "lifetime";
            readonly type: "uint32";
            readonly internalType: "uint32";
        }, {
            readonly name: "threshold";
            readonly type: "uint32";
            readonly internalType: "uint32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getAllowedExitDelay";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "delay";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getBadPerformancePenalty";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "penalty";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getDepositAllocationWeight";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "weight";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getExitDelayFee";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "penalty";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getGeneralDelayedPenaltyAdditionalFine";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "fine";
            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: "getKeyRemovalCharge";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "keyRemovalCharge";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getKeysLimit";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "limit";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getMaxElWithdrawalRequestFee";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "fee";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getPerformanceCoefficients";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "attestationsWeight";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "blocksWeight";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "syncWeight";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getPerformanceLeewayData";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "data";
            readonly type: "tuple[]";
            readonly internalType: "struct IParametersRegistry.KeyNumberValueInterval[]";
            readonly components: readonly [{
                readonly name: "minKeyNumber";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "value";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }];
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getQueueConfig";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "queuePriority";
            readonly type: "uint32";
            readonly internalType: "uint32";
        }, {
            readonly name: "maxDeposits";
            readonly type: "uint32";
            readonly internalType: "uint32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getRewardShareData";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "data";
            readonly type: "tuple[]";
            readonly internalType: "struct IParametersRegistry.KeyNumberValueInterval[]";
            readonly components: readonly [{
                readonly name: "minKeyNumber";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "value";
                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: "getStrikesParams";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "lifetime";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "threshold";
            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: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "data";
            readonly type: "tuple";
            readonly internalType: "struct IParametersRegistry.InitializationData";
            readonly components: readonly [{
                readonly name: "defaultKeyRemovalCharge";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "defaultGeneralDelayedPenaltyAdditionalFine";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "defaultKeysLimit";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "defaultRewardShare";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "defaultPerformanceLeeway";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "defaultStrikesLifetime";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "defaultStrikesThreshold";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "defaultQueuePriority";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "defaultQueueMaxDeposits";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "defaultBadPerformancePenalty";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "defaultAttestationsWeight";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "defaultBlocksWeight";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "defaultSyncWeight";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "defaultAllowedExitDelay";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "defaultExitDelayFee";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "defaultMaxElWithdrawalRequestFee";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "defaultDepositAllocationWeight";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }];
        }];
        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: "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: "setAllowedExitDelay";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "delay";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setBadPerformancePenalty";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "penalty";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setDefaultAllowedExitDelay";
        readonly inputs: readonly [{
            readonly name: "delay";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setDefaultBadPerformancePenalty";
        readonly inputs: readonly [{
            readonly name: "penalty";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setDefaultDepositAllocationWeight";
        readonly inputs: readonly [{
            readonly name: "weight";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setDefaultExitDelayFee";
        readonly inputs: readonly [{
            readonly name: "penalty";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setDefaultGeneralDelayedPenaltyAdditionalFine";
        readonly inputs: readonly [{
            readonly name: "fine";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setDefaultKeyRemovalCharge";
        readonly inputs: readonly [{
            readonly name: "keyRemovalCharge";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setDefaultKeysLimit";
        readonly inputs: readonly [{
            readonly name: "limit";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setDefaultMaxElWithdrawalRequestFee";
        readonly inputs: readonly [{
            readonly name: "fee";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setDefaultPerformanceCoefficients";
        readonly inputs: readonly [{
            readonly name: "attestationsWeight";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "blocksWeight";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "syncWeight";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setDefaultPerformanceLeeway";
        readonly inputs: readonly [{
            readonly name: "leeway";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setDefaultQueueConfig";
        readonly inputs: readonly [{
            readonly name: "priority";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "maxDeposits";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setDefaultRewardShare";
        readonly inputs: readonly [{
            readonly name: "share";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setDefaultStrikesParams";
        readonly inputs: readonly [{
            readonly name: "lifetime";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "threshold";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setDepositAllocationWeight";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "weight";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setExitDelayFee";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "penalty";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setGeneralDelayedPenaltyAdditionalFine";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "fine";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setKeyRemovalCharge";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "keyRemovalCharge";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setKeysLimit";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "limit";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setMaxElWithdrawalRequestFee";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "fee";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setPerformanceCoefficients";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "attestationsWeight";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "blocksWeight";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "syncWeight";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setPerformanceLeewayData";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "data";
            readonly type: "tuple[]";
            readonly internalType: "struct IParametersRegistry.KeyNumberValueInterval[]";
            readonly components: readonly [{
                readonly name: "minKeyNumber";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "value";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }];
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setQueueConfig";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "priority";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "maxDeposits";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setRewardShareData";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "data";
            readonly type: "tuple[]";
            readonly internalType: "struct IParametersRegistry.KeyNumberValueInterval[]";
            readonly components: readonly [{
                readonly name: "minKeyNumber";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "value";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }];
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setStrikesParams";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "lifetime";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "threshold";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        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: "unsetAllowedExitDelay";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "unsetBadPerformancePenalty";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "unsetDepositAllocationWeight";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "unsetExitDelayFee";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "unsetGeneralDelayedPenaltyAdditionalFine";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "unsetKeyRemovalCharge";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "unsetKeysLimit";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "unsetMaxElWithdrawalRequestFee";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "unsetPerformanceCoefficients";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "unsetPerformanceLeewayData";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "unsetQueueConfig";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "unsetRewardShareData";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "unsetStrikesParams";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "event";
        readonly name: "AllowedExitDelaySet";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "delay";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "AllowedExitDelayUnset";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "BadPerformancePenaltySet";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "penalty";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "BadPerformancePenaltyUnset";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "DefaultAllowedExitDelaySet";
        readonly inputs: readonly [{
            readonly name: "delay";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "DefaultBadPerformancePenaltySet";
        readonly inputs: readonly [{
            readonly name: "value";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "DefaultDepositAllocationWeightSet";
        readonly inputs: readonly [{
            readonly name: "weight";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "DefaultExitDelayFeeSet";
        readonly inputs: readonly [{
            readonly name: "penalty";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "DefaultGeneralDelayedPenaltyAdditionalFineSet";
        readonly inputs: readonly [{
            readonly name: "value";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "DefaultKeyRemovalChargeSet";
        readonly inputs: readonly [{
            readonly name: "value";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "DefaultKeysLimitSet";
        readonly inputs: readonly [{
            readonly name: "value";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "DefaultMaxElWithdrawalRequestFeeSet";
        readonly inputs: readonly [{
            readonly name: "fee";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "DefaultPerformanceCoefficientsSet";
        readonly inputs: readonly [{
            readonly name: "attestationsWeight";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "blocksWeight";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "syncWeight";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "DefaultPerformanceLeewaySet";
        readonly inputs: readonly [{
            readonly name: "value";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "DefaultQueueConfigSet";
        readonly inputs: readonly [{
            readonly name: "priority";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "maxDeposits";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "DefaultRewardShareSet";
        readonly inputs: readonly [{
            readonly name: "value";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "DefaultStrikesParamsSet";
        readonly inputs: readonly [{
            readonly name: "lifetime";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "threshold";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "DepositAllocationWeightSet";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "weight";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "DepositAllocationWeightUnset";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ExitDelayFeeSet";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "penalty";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ExitDelayFeeUnset";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "GeneralDelayedPenaltyAdditionalFineSet";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "fine";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "GeneralDelayedPenaltyAdditionalFineUnset";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Initialized";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint64";
            readonly indexed: false;
            readonly internalType: "uint64";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "KeyRemovalChargeSet";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "keyRemovalCharge";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "KeyRemovalChargeUnset";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "KeysLimitSet";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "limit";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "KeysLimitUnset";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "MaxElWithdrawalRequestFeeSet";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "fee";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "MaxElWithdrawalRequestFeeUnset";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "PerformanceCoefficientsSet";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "attestationsWeight";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "blocksWeight";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "syncWeight";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "PerformanceCoefficientsUnset";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "PerformanceLeewayDataSet";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "data";
            readonly type: "tuple[]";
            readonly indexed: false;
            readonly internalType: "struct IParametersRegistry.KeyNumberValueInterval[]";
            readonly components: readonly [{
                readonly name: "minKeyNumber";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "value";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }];
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "PerformanceLeewayDataUnset";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "QueueConfigSet";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "priority";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "maxDeposits";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "QueueConfigUnset";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RewardShareDataSet";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "data";
            readonly type: "tuple[]";
            readonly indexed: false;
            readonly internalType: "struct IParametersRegistry.KeyNumberValueInterval[]";
            readonly components: readonly [{
                readonly name: "minKeyNumber";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "value";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }];
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RewardShareDataUnset";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "StrikesParamsSet";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "lifetime";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "threshold";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "StrikesParamsUnset";
        readonly inputs: readonly [{
            readonly name: "curveId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "InvalidAllowedExitDelay";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitialization";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidKeyNumberValueIntervals";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidPerformanceCoefficients";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidPerformanceLeewayData";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidRewardShareData";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidStrikesParams";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotInitializing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "QueueCannotBeUsed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SafeCastOverflowedUintDowncast";
        readonly inputs: readonly [{
            readonly name: "bits";
            readonly type: "uint8";
            readonly internalType: "uint8";
        }, {
            readonly name: "value";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroMaxDeposits";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroQueueLowestPriority";
        readonly inputs: readonly [];
    }];
    readonly validatorStrikes: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "module";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "oracle";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "exitPenalties";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "parametersRegistry";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "ACCOUNTING";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IAccounting";
        }];
        readonly stateMutability: "view";
    }, {
        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: "EXIT_PENALTIES";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IExitPenalties";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MODULE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract ICSModule";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "ORACLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "PARAMETERS_REGISTRY";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IParametersRegistry";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "ejector";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IEjector";
        }];
        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: "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: "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: "hashLeaf";
        readonly inputs: readonly [{
            readonly name: "keyStrikes";
            readonly type: "tuple";
            readonly internalType: "struct IValidatorStrikes.KeyStrikes";
            readonly components: readonly [{
                readonly name: "nodeOperatorId";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "keyIndex";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "data";
                readonly type: "uint256[]";
                readonly internalType: "uint256[]";
            }];
        }, {
            readonly name: "pubkey";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "pure";
    }, {
        readonly type: "function";
        readonly name: "initialize";
        readonly inputs: readonly [{
            readonly name: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "_ejector";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "processBadPerformanceProof";
        readonly inputs: readonly [{
            readonly name: "keyStrikesList";
            readonly type: "tuple[]";
            readonly internalType: "struct IValidatorStrikes.KeyStrikes[]";
            readonly components: readonly [{
                readonly name: "nodeOperatorId";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "keyIndex";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "data";
                readonly type: "uint256[]";
                readonly internalType: "uint256[]";
            }];
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }, {
            readonly name: "proofFlags";
            readonly type: "bool[]";
            readonly internalType: "bool[]";
        }, {
            readonly name: "refundRecipient";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "payable";
    }, {
        readonly type: "function";
        readonly name: "processOracleReport";
        readonly inputs: readonly [{
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }];
        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: "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: "setEjector";
        readonly inputs: readonly [{
            readonly name: "_ejector";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        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: "treeCid";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "treeRoot";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "verifyProof";
        readonly inputs: readonly [{
            readonly name: "keyStrikesList";
            readonly type: "tuple[]";
            readonly internalType: "struct IValidatorStrikes.KeyStrikes[]";
            readonly components: readonly [{
                readonly name: "nodeOperatorId";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "keyIndex";
                readonly type: "uint256";
                readonly internalType: "uint256";
            }, {
                readonly name: "data";
                readonly type: "uint256[]";
                readonly internalType: "uint256[]";
            }];
        }, {
            readonly name: "pubkeys";
            readonly type: "bytes[]";
            readonly internalType: "bytes[]";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }, {
            readonly name: "proofFlags";
            readonly type: "bool[]";
            readonly internalType: "bool[]";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "event";
        readonly name: "EjectorSet";
        readonly inputs: readonly [{
            readonly name: "ejector";
            readonly type: "address";
            readonly indexed: false;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Initialized";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint64";
            readonly indexed: false;
            readonly internalType: "uint64";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "StrikesDataUpdated";
        readonly inputs: readonly [{
            readonly name: "treeRoot";
            readonly type: "bytes32";
            readonly indexed: false;
            readonly internalType: "bytes32";
        }, {
            readonly name: "treeCid";
            readonly type: "string";
            readonly indexed: false;
            readonly internalType: "string";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "StrikesDataWiped";
        readonly inputs: readonly [];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "EmptyKeyStrikesList";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitialization";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidProof";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidReportData";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "MerkleProofInvalidMultiproof";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotEnoughStrikesToEject";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotInitializing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SenderIsNotOracle";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ValueNotEvenlyDivisible";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroEjectorAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroExitPenaltiesAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroMsgValue";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroOracleAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroParametersRegistryAddress";
        readonly inputs: readonly [];
    }];
    readonly verifier: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "withdrawalAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "module";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "slotsPerEpoch";
            readonly type: "uint64";
            readonly internalType: "uint64";
        }, {
            readonly name: "slotsPerHistoricalRoot";
            readonly type: "uint64";
            readonly internalType: "uint64";
        }, {
            readonly name: "gindices";
            readonly type: "tuple";
            readonly internalType: "struct IVerifier.GIndices";
            readonly components: readonly [{
                readonly name: "gIFirstWithdrawalPrev";
                readonly type: "bytes32";
                readonly internalType: "GIndex";
            }, {
                readonly name: "gIFirstWithdrawalCurr";
                readonly type: "bytes32";
                readonly internalType: "GIndex";
            }, {
                readonly name: "gIFirstValidatorPrev";
                readonly type: "bytes32";
                readonly internalType: "GIndex";
            }, {
                readonly name: "gIFirstValidatorCurr";
                readonly type: "bytes32";
                readonly internalType: "GIndex";
            }, {
                readonly name: "gIFirstHistoricalSummaryPrev";
                readonly type: "bytes32";
                readonly internalType: "GIndex";
            }, {
                readonly name: "gIFirstHistoricalSummaryCurr";
                readonly type: "bytes32";
                readonly internalType: "GIndex";
            }, {
                readonly name: "gIFirstBlockRootInSummaryPrev";
                readonly type: "bytes32";
                readonly internalType: "GIndex";
            }, {
                readonly name: "gIFirstBlockRootInSummaryCurr";
                readonly type: "bytes32";
                readonly internalType: "GIndex";
            }, {
                readonly name: "gIFirstBalanceNodePrev";
                readonly type: "bytes32";
                readonly internalType: "GIndex";
            }, {
                readonly name: "gIFirstBalanceNodeCurr";
                readonly type: "bytes32";
                readonly internalType: "GIndex";
            }, {
                readonly name: "gIFirstPendingConsolidationPrev";
                readonly type: "bytes32";
                readonly internalType: "GIndex";
            }, {
                readonly name: "gIFirstPendingConsolidationCurr";
                readonly type: "bytes32";
                readonly internalType: "GIndex";
            }];
        }, {
            readonly name: "firstSupportedSlot";
            readonly type: "uint64";
            readonly internalType: "Slot";
        }, {
            readonly name: "pivotSlot";
            readonly type: "uint64";
            readonly internalType: "Slot";
        }, {
            readonly name: "capellaSlot";
            readonly type: "uint64";
            readonly internalType: "Slot";
        }, {
            readonly name: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "BEACON_ROOTS";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "CAPELLA_SLOT";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint64";
            readonly internalType: "Slot";
        }];
        readonly stateMutability: "view";
    }, {
        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: "FIRST_SUPPORTED_SLOT";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint64";
            readonly internalType: "Slot";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "GI_FIRST_BALANCES_NODE_CURR";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "GIndex";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "GI_FIRST_BALANCES_NODE_PREV";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "GIndex";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "GI_FIRST_BLOCK_ROOT_IN_SUMMARY_CURR";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "GIndex";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "GI_FIRST_BLOCK_ROOT_IN_SUMMARY_PREV";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "GIndex";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "GI_FIRST_HISTORICAL_SUMMARY_CURR";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "GIndex";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "GI_FIRST_HISTORICAL_SUMMARY_PREV";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "GIndex";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "GI_FIRST_PENDING_CONSOLIDATION_CURR";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "GIndex";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "GI_FIRST_PENDING_CONSOLIDATION_PREV";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "GIndex";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "GI_FIRST_VALIDATOR_CURR";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "GIndex";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "GI_FIRST_VALIDATOR_PREV";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "GIndex";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "GI_FIRST_WITHDRAWAL_CURR";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "GIndex";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "GI_FIRST_WITHDRAWAL_PREV";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "GIndex";
        }];
        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: "PIVOT_SLOT";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint64";
            readonly internalType: "Slot";
        }];
        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: "SLOTS_PER_EPOCH";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint64";
            readonly internalType: "uint64";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "SLOTS_PER_HISTORICAL_ROOT";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint64";
            readonly internalType: "uint64";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "WITHDRAWAL_ADDRESS";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "address";
        }];
        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: "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: "isPaused";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        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: "processConsolidation";
        readonly inputs: readonly [{
            readonly name: "data";
            readonly type: "tuple";
            readonly internalType: "struct IVerifier.ProcessConsolidationInput";
            readonly components: readonly [{
                readonly name: "consolidation";
                readonly type: "tuple";
                readonly internalType: "struct IVerifier.PendingConsolidationWitness";
                readonly components: readonly [{
                    readonly name: "object";
                    readonly type: "tuple";
                    readonly internalType: "struct PendingConsolidation";
                    readonly components: readonly [{
                        readonly name: "sourceIndex";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "targetIndex";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }];
                }, {
                    readonly name: "offset";
                    readonly type: "uint64";
                    readonly internalType: "uint64";
                }, {
                    readonly name: "proof";
                    readonly type: "bytes32[]";
                    readonly internalType: "bytes32[]";
                }];
            }, {
                readonly name: "validator";
                readonly type: "tuple";
                readonly internalType: "struct IVerifier.ValidatorWitness";
                readonly components: readonly [{
                    readonly name: "index";
                    readonly type: "uint64";
                    readonly internalType: "uint64";
                }, {
                    readonly name: "nodeOperatorId";
                    readonly type: "uint32";
                    readonly internalType: "uint32";
                }, {
                    readonly name: "keyIndex";
                    readonly type: "uint32";
                    readonly internalType: "uint32";
                }, {
                    readonly name: "object";
                    readonly type: "tuple";
                    readonly internalType: "struct Validator";
                    readonly components: readonly [{
                        readonly name: "pubkey";
                        readonly type: "bytes";
                        readonly internalType: "bytes";
                    }, {
                        readonly name: "withdrawalCredentials";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }, {
                        readonly name: "effectiveBalance";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "slashed";
                        readonly type: "bool";
                        readonly internalType: "bool";
                    }, {
                        readonly name: "activationEligibilityEpoch";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "activationEpoch";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "exitEpoch";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "withdrawableEpoch";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }];
                }, {
                    readonly name: "proof";
                    readonly type: "bytes32[]";
                    readonly internalType: "bytes32[]";
                }];
            }, {
                readonly name: "balance";
                readonly type: "tuple";
                readonly internalType: "struct IVerifier.BalanceWitness";
                readonly components: readonly [{
                    readonly name: "node";
                    readonly type: "bytes32";
                    readonly internalType: "bytes32";
                }, {
                    readonly name: "proof";
                    readonly type: "bytes32[]";
                    readonly internalType: "bytes32[]";
                }];
            }, {
                readonly name: "recentBlock";
                readonly type: "tuple";
                readonly internalType: "struct IVerifier.RecentHeaderWitness";
                readonly components: readonly [{
                    readonly name: "header";
                    readonly type: "tuple";
                    readonly internalType: "struct BeaconBlockHeader";
                    readonly components: readonly [{
                        readonly name: "slot";
                        readonly type: "uint64";
                        readonly internalType: "Slot";
                    }, {
                        readonly name: "proposerIndex";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "parentRoot";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }, {
                        readonly name: "stateRoot";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }, {
                        readonly name: "bodyRoot";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }];
                }, {
                    readonly name: "rootsTimestamp";
                    readonly type: "uint64";
                    readonly internalType: "uint64";
                }];
            }, {
                readonly name: "consolidationBlock";
                readonly type: "tuple";
                readonly internalType: "struct IVerifier.HistoricalHeaderWitness";
                readonly components: readonly [{
                    readonly name: "header";
                    readonly type: "tuple";
                    readonly internalType: "struct BeaconBlockHeader";
                    readonly components: readonly [{
                        readonly name: "slot";
                        readonly type: "uint64";
                        readonly internalType: "Slot";
                    }, {
                        readonly name: "proposerIndex";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "parentRoot";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }, {
                        readonly name: "stateRoot";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }, {
                        readonly name: "bodyRoot";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }];
                }, {
                    readonly name: "proof";
                    readonly type: "bytes32[]";
                    readonly internalType: "bytes32[]";
                }];
            }];
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "processHistoricalWithdrawalProof";
        readonly inputs: readonly [{
            readonly name: "data";
            readonly type: "tuple";
            readonly internalType: "struct IVerifier.ProcessHistoricalWithdrawalInput";
            readonly components: readonly [{
                readonly name: "withdrawal";
                readonly type: "tuple";
                readonly internalType: "struct IVerifier.WithdrawalWitness";
                readonly components: readonly [{
                    readonly name: "offset";
                    readonly type: "uint8";
                    readonly internalType: "uint8";
                }, {
                    readonly name: "object";
                    readonly type: "tuple";
                    readonly internalType: "struct Withdrawal";
                    readonly components: readonly [{
                        readonly name: "index";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "validatorIndex";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "withdrawalAddress";
                        readonly type: "address";
                        readonly internalType: "address";
                    }, {
                        readonly name: "amount";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }];
                }, {
                    readonly name: "proof";
                    readonly type: "bytes32[]";
                    readonly internalType: "bytes32[]";
                }];
            }, {
                readonly name: "validator";
                readonly type: "tuple";
                readonly internalType: "struct IVerifier.ValidatorWitness";
                readonly components: readonly [{
                    readonly name: "index";
                    readonly type: "uint64";
                    readonly internalType: "uint64";
                }, {
                    readonly name: "nodeOperatorId";
                    readonly type: "uint32";
                    readonly internalType: "uint32";
                }, {
                    readonly name: "keyIndex";
                    readonly type: "uint32";
                    readonly internalType: "uint32";
                }, {
                    readonly name: "object";
                    readonly type: "tuple";
                    readonly internalType: "struct Validator";
                    readonly components: readonly [{
                        readonly name: "pubkey";
                        readonly type: "bytes";
                        readonly internalType: "bytes";
                    }, {
                        readonly name: "withdrawalCredentials";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }, {
                        readonly name: "effectiveBalance";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "slashed";
                        readonly type: "bool";
                        readonly internalType: "bool";
                    }, {
                        readonly name: "activationEligibilityEpoch";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "activationEpoch";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "exitEpoch";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "withdrawableEpoch";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }];
                }, {
                    readonly name: "proof";
                    readonly type: "bytes32[]";
                    readonly internalType: "bytes32[]";
                }];
            }, {
                readonly name: "recentBlock";
                readonly type: "tuple";
                readonly internalType: "struct IVerifier.RecentHeaderWitness";
                readonly components: readonly [{
                    readonly name: "header";
                    readonly type: "tuple";
                    readonly internalType: "struct BeaconBlockHeader";
                    readonly components: readonly [{
                        readonly name: "slot";
                        readonly type: "uint64";
                        readonly internalType: "Slot";
                    }, {
                        readonly name: "proposerIndex";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "parentRoot";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }, {
                        readonly name: "stateRoot";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }, {
                        readonly name: "bodyRoot";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }];
                }, {
                    readonly name: "rootsTimestamp";
                    readonly type: "uint64";
                    readonly internalType: "uint64";
                }];
            }, {
                readonly name: "withdrawalBlock";
                readonly type: "tuple";
                readonly internalType: "struct IVerifier.HistoricalHeaderWitness";
                readonly components: readonly [{
                    readonly name: "header";
                    readonly type: "tuple";
                    readonly internalType: "struct BeaconBlockHeader";
                    readonly components: readonly [{
                        readonly name: "slot";
                        readonly type: "uint64";
                        readonly internalType: "Slot";
                    }, {
                        readonly name: "proposerIndex";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "parentRoot";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }, {
                        readonly name: "stateRoot";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }, {
                        readonly name: "bodyRoot";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }];
                }, {
                    readonly name: "proof";
                    readonly type: "bytes32[]";
                    readonly internalType: "bytes32[]";
                }];
            }];
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "processSlashedProof";
        readonly inputs: readonly [{
            readonly name: "data";
            readonly type: "tuple";
            readonly internalType: "struct IVerifier.ProcessSlashedInput";
            readonly components: readonly [{
                readonly name: "validator";
                readonly type: "tuple";
                readonly internalType: "struct IVerifier.ValidatorWitness";
                readonly components: readonly [{
                    readonly name: "index";
                    readonly type: "uint64";
                    readonly internalType: "uint64";
                }, {
                    readonly name: "nodeOperatorId";
                    readonly type: "uint32";
                    readonly internalType: "uint32";
                }, {
                    readonly name: "keyIndex";
                    readonly type: "uint32";
                    readonly internalType: "uint32";
                }, {
                    readonly name: "object";
                    readonly type: "tuple";
                    readonly internalType: "struct Validator";
                    readonly components: readonly [{
                        readonly name: "pubkey";
                        readonly type: "bytes";
                        readonly internalType: "bytes";
                    }, {
                        readonly name: "withdrawalCredentials";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }, {
                        readonly name: "effectiveBalance";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "slashed";
                        readonly type: "bool";
                        readonly internalType: "bool";
                    }, {
                        readonly name: "activationEligibilityEpoch";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "activationEpoch";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "exitEpoch";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "withdrawableEpoch";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }];
                }, {
                    readonly name: "proof";
                    readonly type: "bytes32[]";
                    readonly internalType: "bytes32[]";
                }];
            }, {
                readonly name: "recentBlock";
                readonly type: "tuple";
                readonly internalType: "struct IVerifier.RecentHeaderWitness";
                readonly components: readonly [{
                    readonly name: "header";
                    readonly type: "tuple";
                    readonly internalType: "struct BeaconBlockHeader";
                    readonly components: readonly [{
                        readonly name: "slot";
                        readonly type: "uint64";
                        readonly internalType: "Slot";
                    }, {
                        readonly name: "proposerIndex";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "parentRoot";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }, {
                        readonly name: "stateRoot";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }, {
                        readonly name: "bodyRoot";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }];
                }, {
                    readonly name: "rootsTimestamp";
                    readonly type: "uint64";
                    readonly internalType: "uint64";
                }];
            }];
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "processWithdrawalProof";
        readonly inputs: readonly [{
            readonly name: "data";
            readonly type: "tuple";
            readonly internalType: "struct IVerifier.ProcessWithdrawalInput";
            readonly components: readonly [{
                readonly name: "withdrawal";
                readonly type: "tuple";
                readonly internalType: "struct IVerifier.WithdrawalWitness";
                readonly components: readonly [{
                    readonly name: "offset";
                    readonly type: "uint8";
                    readonly internalType: "uint8";
                }, {
                    readonly name: "object";
                    readonly type: "tuple";
                    readonly internalType: "struct Withdrawal";
                    readonly components: readonly [{
                        readonly name: "index";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "validatorIndex";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "withdrawalAddress";
                        readonly type: "address";
                        readonly internalType: "address";
                    }, {
                        readonly name: "amount";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }];
                }, {
                    readonly name: "proof";
                    readonly type: "bytes32[]";
                    readonly internalType: "bytes32[]";
                }];
            }, {
                readonly name: "validator";
                readonly type: "tuple";
                readonly internalType: "struct IVerifier.ValidatorWitness";
                readonly components: readonly [{
                    readonly name: "index";
                    readonly type: "uint64";
                    readonly internalType: "uint64";
                }, {
                    readonly name: "nodeOperatorId";
                    readonly type: "uint32";
                    readonly internalType: "uint32";
                }, {
                    readonly name: "keyIndex";
                    readonly type: "uint32";
                    readonly internalType: "uint32";
                }, {
                    readonly name: "object";
                    readonly type: "tuple";
                    readonly internalType: "struct Validator";
                    readonly components: readonly [{
                        readonly name: "pubkey";
                        readonly type: "bytes";
                        readonly internalType: "bytes";
                    }, {
                        readonly name: "withdrawalCredentials";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }, {
                        readonly name: "effectiveBalance";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "slashed";
                        readonly type: "bool";
                        readonly internalType: "bool";
                    }, {
                        readonly name: "activationEligibilityEpoch";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "activationEpoch";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "exitEpoch";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "withdrawableEpoch";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }];
                }, {
                    readonly name: "proof";
                    readonly type: "bytes32[]";
                    readonly internalType: "bytes32[]";
                }];
            }, {
                readonly name: "withdrawalBlock";
                readonly type: "tuple";
                readonly internalType: "struct IVerifier.RecentHeaderWitness";
                readonly components: readonly [{
                    readonly name: "header";
                    readonly type: "tuple";
                    readonly internalType: "struct BeaconBlockHeader";
                    readonly components: readonly [{
                        readonly name: "slot";
                        readonly type: "uint64";
                        readonly internalType: "Slot";
                    }, {
                        readonly name: "proposerIndex";
                        readonly type: "uint64";
                        readonly internalType: "uint64";
                    }, {
                        readonly name: "parentRoot";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }, {
                        readonly name: "stateRoot";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }, {
                        readonly name: "bodyRoot";
                        readonly type: "bytes32";
                        readonly internalType: "bytes32";
                    }];
                }, {
                    readonly name: "rootsTimestamp";
                    readonly type: "uint64";
                    readonly internalType: "uint64";
                }];
            }];
        }];
        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: "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: "event";
        readonly name: "Paused";
        readonly inputs: readonly [{
            readonly name: "duration";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Resumed";
        readonly inputs: readonly [];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "HistoricalSummaryDoesNotExist";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "IndexOutOfRange";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidBlockHeader";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidCapellaSlot";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidChainConfig";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidConsolidationSource";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidPivotSlot";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidPublicKey";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidValidatorIndex";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidWithdrawalAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PartialWithdrawal";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PauseUntilMustBeInFuture";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PausedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ResumedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "RootNotFound";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "UnsupportedSlot";
        readonly inputs: readonly [{
            readonly name: "slot";
            readonly type: "uint64";
            readonly internalType: "Slot";
        }];
    }, {
        readonly type: "error";
        readonly name: "ValidatorIsNotSlashed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ValidatorIsNotWithdrawable";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ValidatorIsSlashed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroPauseDuration";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroWithdrawalAddress";
        readonly inputs: readonly [];
    }];
    readonly operatorsData: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "stakingRouter";
            readonly type: "address";
            readonly internalType: "address";
        }];
        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: "SETTER_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "STAKING_ROUTER";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IStakingRouter";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "get";
        readonly inputs: readonly [{
            readonly name: "moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "info";
            readonly type: "tuple";
            readonly internalType: "struct OperatorInfo";
            readonly components: readonly [{
                readonly name: "name";
                readonly type: "string";
                readonly internalType: "string";
            }, {
                readonly name: "description";
                readonly type: "string";
                readonly internalType: "string";
            }, {
                readonly name: "ownerEditsRestricted";
                readonly type: "bool";
                readonly internalType: "bool";
            }];
        }];
        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: "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: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "isOwnerEditsRestricted";
        readonly inputs: readonly [{
            readonly name: "moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        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: "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: "set";
        readonly inputs: readonly [{
            readonly name: "moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "info";
            readonly type: "tuple";
            readonly internalType: "struct OperatorInfo";
            readonly components: readonly [{
                readonly name: "name";
                readonly type: "string";
                readonly internalType: "string";
            }, {
                readonly name: "description";
                readonly type: "string";
                readonly internalType: "string";
            }, {
                readonly name: "ownerEditsRestricted";
                readonly type: "bool";
                readonly internalType: "bool";
            }];
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "setByOwner";
        readonly inputs: readonly [{
            readonly name: "moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "name";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "description";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly outputs: readonly [];
        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: "event";
        readonly name: "Initialized";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint64";
            readonly indexed: false;
            readonly internalType: "uint64";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ModuleAddressCached";
        readonly inputs: readonly [{
            readonly name: "moduleId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "moduleAddress";
            readonly type: "address";
            readonly indexed: false;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "OperatorDataSet";
        readonly inputs: readonly [{
            readonly name: "moduleId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "module";
            readonly type: "address";
            readonly indexed: false;
            readonly internalType: "address";
        }, {
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "name";
            readonly type: "string";
            readonly indexed: false;
            readonly internalType: "string";
        }, {
            readonly name: "description";
            readonly type: "string";
            readonly indexed: false;
            readonly internalType: "string";
        }, {
            readonly name: "ownerEditsRestricted";
            readonly type: "bool";
            readonly indexed: false;
            readonly internalType: "bool";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitialization";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ModuleDoesNotSupportNodeOperatorOwnerInterface";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NodeOperatorDoesNotExist";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotInitializing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "OwnerEditsRestricted";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "SenderIsNotEligible";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "UnknownModule";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroStakingRouterAddress";
        readonly inputs: readonly [];
    }];
    readonly permissionlessGate: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "module";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "CURVE_ID";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        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: "MODULE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IBaseModule";
        }];
        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: "addNodeOperatorETH";
        readonly inputs: readonly [{
            readonly name: "keysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKeys";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "signatures";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "managementProperties";
            readonly type: "tuple";
            readonly internalType: "struct NodeOperatorManagementProperties";
            readonly components: readonly [{
                readonly name: "managerAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "rewardAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "extendedManagerPermissions";
                readonly type: "bool";
                readonly internalType: "bool";
            }];
        }, {
            readonly name: "referrer";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "payable";
    }, {
        readonly type: "function";
        readonly name: "addNodeOperatorStETH";
        readonly inputs: readonly [{
            readonly name: "keysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKeys";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "signatures";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "managementProperties";
            readonly type: "tuple";
            readonly internalType: "struct NodeOperatorManagementProperties";
            readonly components: readonly [{
                readonly name: "managerAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "rewardAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "extendedManagerPermissions";
                readonly type: "bool";
                readonly internalType: "bool";
            }];
        }, {
            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 name: "referrer";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "addNodeOperatorWstETH";
        readonly inputs: readonly [{
            readonly name: "keysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKeys";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "signatures";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "managementProperties";
            readonly type: "tuple";
            readonly internalType: "struct NodeOperatorManagementProperties";
            readonly components: readonly [{
                readonly name: "managerAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "rewardAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "extendedManagerPermissions";
                readonly type: "bool";
                readonly internalType: "bool";
            }];
        }, {
            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 name: "referrer";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        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: "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: "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: "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: "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: "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: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleAddress";
        readonly inputs: readonly [];
    }];
    readonly vettedGate: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "module";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "ACCOUNTING";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IAccounting";
        }];
        readonly stateMutability: "view";
    }, {
        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: "END_REFERRAL_SEASON_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        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_TREE_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "START_REFERRAL_SEASON_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "addNodeOperatorETH";
        readonly inputs: readonly [{
            readonly name: "keysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKeys";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "signatures";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "managementProperties";
            readonly type: "tuple";
            readonly internalType: "struct NodeOperatorManagementProperties";
            readonly components: readonly [{
                readonly name: "managerAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "rewardAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "extendedManagerPermissions";
                readonly type: "bool";
                readonly internalType: "bool";
            }];
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }, {
            readonly name: "referrer";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "payable";
    }, {
        readonly type: "function";
        readonly name: "addNodeOperatorStETH";
        readonly inputs: readonly [{
            readonly name: "keysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKeys";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "signatures";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "managementProperties";
            readonly type: "tuple";
            readonly internalType: "struct NodeOperatorManagementProperties";
            readonly components: readonly [{
                readonly name: "managerAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "rewardAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "extendedManagerPermissions";
                readonly type: "bool";
                readonly internalType: "bool";
            }];
        }, {
            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 name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }, {
            readonly name: "referrer";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "addNodeOperatorWstETH";
        readonly inputs: readonly [{
            readonly name: "keysCount";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "publicKeys";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "signatures";
            readonly type: "bytes";
            readonly internalType: "bytes";
        }, {
            readonly name: "managementProperties";
            readonly type: "tuple";
            readonly internalType: "struct NodeOperatorManagementProperties";
            readonly components: readonly [{
                readonly name: "managerAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "rewardAddress";
                readonly type: "address";
                readonly internalType: "address";
            }, {
                readonly name: "extendedManagerPermissions";
                readonly type: "bool";
                readonly internalType: "bool";
            }];
        }, {
            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 name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }, {
            readonly name: "referrer";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "claimBondCurve";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "claimReferrerBondCurve";
        readonly inputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "curveId";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "endCurrentReferralProgramSeason";
        readonly inputs: readonly [];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        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: "getReferralsCount";
        readonly inputs: readonly [{
            readonly name: "referrer";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "getReferralsCount";
        readonly inputs: readonly [{
            readonly name: "referrer";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "season";
            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: "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: "hashLeaf";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "pure";
    }, {
        readonly type: "function";
        readonly name: "initialize";
        readonly inputs: readonly [{
            readonly name: "_curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "isConsumed";
        readonly inputs: readonly [{
            readonly name: "member";
            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: "isPaused";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "isReferralProgramSeasonActive";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "isReferrerConsumed";
        readonly inputs: readonly [{
            readonly name: "referrer";
            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: "pauseFor";
        readonly inputs: readonly [{
            readonly name: "duration";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        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: "referralCurveId";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "referralProgramSeasonNumber";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "referralsThreshold";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        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: "setTreeParams";
        readonly inputs: readonly [{
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "startNewReferralProgramSeason";
        readonly inputs: readonly [{
            readonly name: "_referralCurveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_referralsThreshold";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly outputs: readonly [{
            readonly name: "season";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        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: "treeCid";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "treeRoot";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "verifyProof";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "event";
        readonly name: "Consumed";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Initialized";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint64";
            readonly indexed: false;
            readonly internalType: "uint64";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Paused";
        readonly inputs: readonly [{
            readonly name: "duration";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ReferralProgramSeasonEnded";
        readonly inputs: readonly [{
            readonly name: "season";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ReferralProgramSeasonStarted";
        readonly inputs: readonly [{
            readonly name: "season";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "referralCurveId";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }, {
            readonly name: "referralsThreshold";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ReferralRecorded";
        readonly inputs: readonly [{
            readonly name: "referrer";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "season";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }, {
            readonly name: "referralNodeOperatorId";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "ReferrerConsumed";
        readonly inputs: readonly [{
            readonly name: "referrer";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "season";
            readonly type: "uint256";
            readonly indexed: true;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Resumed";
        readonly inputs: readonly [];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "TreeSet";
        readonly inputs: readonly [{
            readonly name: "treeRoot";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "treeCid";
            readonly type: "string";
            readonly indexed: false;
            readonly internalType: "string";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "AlreadyConsumed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidCurveId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitialization";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidProof";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidReferralsThreshold";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeCid";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeRoot";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NodeOperatorDoesNotExist";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotAllowedToClaim";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotEnoughReferrals";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotInitializing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PauseUntilMustBeInFuture";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PausedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ReferralProgramIsActive";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ReferralProgramIsNotActive";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ResumedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroPauseDuration";
        readonly inputs: readonly [];
    }];
    readonly curatedGate1: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "module";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "operatorsData";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "ACCOUNTING";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IAccounting";
        }];
        readonly stateMutability: "view";
    }, {
        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: "MODULE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract ICuratedModule";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MODULE_ID";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "OPERATORS_DATA";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IOperatorsData";
        }];
        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_TREE_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "createNodeOperator";
        readonly inputs: readonly [{
            readonly name: "name";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "description";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "managerAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "rewardAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "curveId";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            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: "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: "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: "hashLeaf";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "pure";
    }, {
        readonly type: "function";
        readonly name: "initialize";
        readonly inputs: readonly [{
            readonly name: "_curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "isConsumed";
        readonly inputs: readonly [{
            readonly name: "member";
            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: "isPaused";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        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: "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: "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: "setTreeParams";
        readonly inputs: readonly [{
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly outputs: readonly [];
        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: "treeCid";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "treeRoot";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "verifyProof";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "event";
        readonly name: "Consumed";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Initialized";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint64";
            readonly indexed: false;
            readonly internalType: "uint64";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Paused";
        readonly inputs: readonly [{
            readonly name: "duration";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Resumed";
        readonly inputs: readonly [];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "TreeSet";
        readonly inputs: readonly [{
            readonly name: "treeRoot";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "treeCid";
            readonly type: "string";
            readonly indexed: false;
            readonly internalType: "string";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "AlreadyConsumed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidCurveId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitialization";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidProof";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeCid";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeRoot";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotInitializing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PauseUntilMustBeInFuture";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PausedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ResumedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroOperatorsDataAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroPauseDuration";
        readonly inputs: readonly [];
    }];
    readonly curatedGate2: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "module";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "operatorsData";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "ACCOUNTING";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IAccounting";
        }];
        readonly stateMutability: "view";
    }, {
        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: "MODULE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract ICuratedModule";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MODULE_ID";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "OPERATORS_DATA";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IOperatorsData";
        }];
        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_TREE_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "createNodeOperator";
        readonly inputs: readonly [{
            readonly name: "name";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "description";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "managerAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "rewardAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "curveId";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            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: "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: "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: "hashLeaf";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "pure";
    }, {
        readonly type: "function";
        readonly name: "initialize";
        readonly inputs: readonly [{
            readonly name: "_curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "isConsumed";
        readonly inputs: readonly [{
            readonly name: "member";
            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: "isPaused";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        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: "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: "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: "setTreeParams";
        readonly inputs: readonly [{
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly outputs: readonly [];
        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: "treeCid";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "treeRoot";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "verifyProof";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "event";
        readonly name: "Consumed";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Initialized";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint64";
            readonly indexed: false;
            readonly internalType: "uint64";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Paused";
        readonly inputs: readonly [{
            readonly name: "duration";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Resumed";
        readonly inputs: readonly [];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "TreeSet";
        readonly inputs: readonly [{
            readonly name: "treeRoot";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "treeCid";
            readonly type: "string";
            readonly indexed: false;
            readonly internalType: "string";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "AlreadyConsumed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidCurveId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitialization";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidProof";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeCid";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeRoot";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotInitializing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PauseUntilMustBeInFuture";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PausedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ResumedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroOperatorsDataAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroPauseDuration";
        readonly inputs: readonly [];
    }];
    readonly curatedGate3: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "module";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "operatorsData";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "ACCOUNTING";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IAccounting";
        }];
        readonly stateMutability: "view";
    }, {
        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: "MODULE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract ICuratedModule";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MODULE_ID";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "OPERATORS_DATA";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IOperatorsData";
        }];
        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_TREE_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "createNodeOperator";
        readonly inputs: readonly [{
            readonly name: "name";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "description";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "managerAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "rewardAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "curveId";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            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: "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: "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: "hashLeaf";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "pure";
    }, {
        readonly type: "function";
        readonly name: "initialize";
        readonly inputs: readonly [{
            readonly name: "_curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "isConsumed";
        readonly inputs: readonly [{
            readonly name: "member";
            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: "isPaused";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        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: "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: "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: "setTreeParams";
        readonly inputs: readonly [{
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly outputs: readonly [];
        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: "treeCid";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "treeRoot";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "verifyProof";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "event";
        readonly name: "Consumed";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Initialized";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint64";
            readonly indexed: false;
            readonly internalType: "uint64";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Paused";
        readonly inputs: readonly [{
            readonly name: "duration";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Resumed";
        readonly inputs: readonly [];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "TreeSet";
        readonly inputs: readonly [{
            readonly name: "treeRoot";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "treeCid";
            readonly type: "string";
            readonly indexed: false;
            readonly internalType: "string";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "AlreadyConsumed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidCurveId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitialization";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidProof";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeCid";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeRoot";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotInitializing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PauseUntilMustBeInFuture";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PausedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ResumedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroOperatorsDataAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroPauseDuration";
        readonly inputs: readonly [];
    }];
    readonly curatedGate4: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "module";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "operatorsData";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "ACCOUNTING";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IAccounting";
        }];
        readonly stateMutability: "view";
    }, {
        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: "MODULE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract ICuratedModule";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MODULE_ID";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "OPERATORS_DATA";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IOperatorsData";
        }];
        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_TREE_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "createNodeOperator";
        readonly inputs: readonly [{
            readonly name: "name";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "description";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "managerAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "rewardAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "curveId";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            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: "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: "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: "hashLeaf";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "pure";
    }, {
        readonly type: "function";
        readonly name: "initialize";
        readonly inputs: readonly [{
            readonly name: "_curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "isConsumed";
        readonly inputs: readonly [{
            readonly name: "member";
            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: "isPaused";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        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: "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: "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: "setTreeParams";
        readonly inputs: readonly [{
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly outputs: readonly [];
        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: "treeCid";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "treeRoot";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "verifyProof";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "event";
        readonly name: "Consumed";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Initialized";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint64";
            readonly indexed: false;
            readonly internalType: "uint64";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Paused";
        readonly inputs: readonly [{
            readonly name: "duration";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Resumed";
        readonly inputs: readonly [];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "TreeSet";
        readonly inputs: readonly [{
            readonly name: "treeRoot";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "treeCid";
            readonly type: "string";
            readonly indexed: false;
            readonly internalType: "string";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "AlreadyConsumed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidCurveId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitialization";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidProof";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeCid";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeRoot";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotInitializing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PauseUntilMustBeInFuture";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PausedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ResumedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroOperatorsDataAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroPauseDuration";
        readonly inputs: readonly [];
    }];
    readonly curatedGate5: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "module";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "operatorsData";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "ACCOUNTING";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IAccounting";
        }];
        readonly stateMutability: "view";
    }, {
        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: "MODULE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract ICuratedModule";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MODULE_ID";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "OPERATORS_DATA";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IOperatorsData";
        }];
        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_TREE_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "createNodeOperator";
        readonly inputs: readonly [{
            readonly name: "name";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "description";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "managerAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "rewardAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "curveId";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            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: "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: "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: "hashLeaf";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "pure";
    }, {
        readonly type: "function";
        readonly name: "initialize";
        readonly inputs: readonly [{
            readonly name: "_curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "isConsumed";
        readonly inputs: readonly [{
            readonly name: "member";
            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: "isPaused";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        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: "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: "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: "setTreeParams";
        readonly inputs: readonly [{
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly outputs: readonly [];
        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: "treeCid";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "treeRoot";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "verifyProof";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "event";
        readonly name: "Consumed";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Initialized";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint64";
            readonly indexed: false;
            readonly internalType: "uint64";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Paused";
        readonly inputs: readonly [{
            readonly name: "duration";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Resumed";
        readonly inputs: readonly [];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "TreeSet";
        readonly inputs: readonly [{
            readonly name: "treeRoot";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "treeCid";
            readonly type: "string";
            readonly indexed: false;
            readonly internalType: "string";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "AlreadyConsumed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidCurveId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitialization";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidProof";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeCid";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeRoot";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotInitializing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PauseUntilMustBeInFuture";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PausedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ResumedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroOperatorsDataAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroPauseDuration";
        readonly inputs: readonly [];
    }];
    readonly curatedGate6: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "module";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "operatorsData";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "ACCOUNTING";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IAccounting";
        }];
        readonly stateMutability: "view";
    }, {
        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: "MODULE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract ICuratedModule";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MODULE_ID";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "OPERATORS_DATA";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IOperatorsData";
        }];
        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_TREE_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "createNodeOperator";
        readonly inputs: readonly [{
            readonly name: "name";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "description";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "managerAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "rewardAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "curveId";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            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: "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: "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: "hashLeaf";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "pure";
    }, {
        readonly type: "function";
        readonly name: "initialize";
        readonly inputs: readonly [{
            readonly name: "_curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "isConsumed";
        readonly inputs: readonly [{
            readonly name: "member";
            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: "isPaused";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        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: "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: "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: "setTreeParams";
        readonly inputs: readonly [{
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly outputs: readonly [];
        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: "treeCid";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "treeRoot";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "verifyProof";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "event";
        readonly name: "Consumed";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Initialized";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint64";
            readonly indexed: false;
            readonly internalType: "uint64";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Paused";
        readonly inputs: readonly [{
            readonly name: "duration";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Resumed";
        readonly inputs: readonly [];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "TreeSet";
        readonly inputs: readonly [{
            readonly name: "treeRoot";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "treeCid";
            readonly type: "string";
            readonly indexed: false;
            readonly internalType: "string";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "AlreadyConsumed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidCurveId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitialization";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidProof";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeCid";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeRoot";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotInitializing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PauseUntilMustBeInFuture";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PausedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ResumedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroOperatorsDataAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroPauseDuration";
        readonly inputs: readonly [];
    }];
    readonly curatedGate7: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "module";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "operatorsData";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "ACCOUNTING";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IAccounting";
        }];
        readonly stateMutability: "view";
    }, {
        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: "MODULE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract ICuratedModule";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MODULE_ID";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "OPERATORS_DATA";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IOperatorsData";
        }];
        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_TREE_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "createNodeOperator";
        readonly inputs: readonly [{
            readonly name: "name";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "description";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "managerAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "rewardAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "curveId";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            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: "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: "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: "hashLeaf";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "pure";
    }, {
        readonly type: "function";
        readonly name: "initialize";
        readonly inputs: readonly [{
            readonly name: "_curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "isConsumed";
        readonly inputs: readonly [{
            readonly name: "member";
            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: "isPaused";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        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: "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: "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: "setTreeParams";
        readonly inputs: readonly [{
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly outputs: readonly [];
        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: "treeCid";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "treeRoot";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "verifyProof";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "event";
        readonly name: "Consumed";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Initialized";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint64";
            readonly indexed: false;
            readonly internalType: "uint64";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Paused";
        readonly inputs: readonly [{
            readonly name: "duration";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Resumed";
        readonly inputs: readonly [];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "TreeSet";
        readonly inputs: readonly [{
            readonly name: "treeRoot";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "treeCid";
            readonly type: "string";
            readonly indexed: false;
            readonly internalType: "string";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "AlreadyConsumed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidCurveId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitialization";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidProof";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeCid";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeRoot";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotInitializing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PauseUntilMustBeInFuture";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PausedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ResumedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroOperatorsDataAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroPauseDuration";
        readonly inputs: readonly [];
    }];
    readonly curatedGate8: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "module";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "operatorsData";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "ACCOUNTING";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IAccounting";
        }];
        readonly stateMutability: "view";
    }, {
        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: "MODULE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract ICuratedModule";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MODULE_ID";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "OPERATORS_DATA";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IOperatorsData";
        }];
        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_TREE_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "createNodeOperator";
        readonly inputs: readonly [{
            readonly name: "name";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "description";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "managerAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "rewardAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "curveId";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            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: "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: "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: "hashLeaf";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "pure";
    }, {
        readonly type: "function";
        readonly name: "initialize";
        readonly inputs: readonly [{
            readonly name: "_curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "isConsumed";
        readonly inputs: readonly [{
            readonly name: "member";
            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: "isPaused";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        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: "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: "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: "setTreeParams";
        readonly inputs: readonly [{
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly outputs: readonly [];
        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: "treeCid";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "treeRoot";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "verifyProof";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "event";
        readonly name: "Consumed";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Initialized";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint64";
            readonly indexed: false;
            readonly internalType: "uint64";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Paused";
        readonly inputs: readonly [{
            readonly name: "duration";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Resumed";
        readonly inputs: readonly [];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "TreeSet";
        readonly inputs: readonly [{
            readonly name: "treeRoot";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "treeCid";
            readonly type: "string";
            readonly indexed: false;
            readonly internalType: "string";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "AlreadyConsumed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidCurveId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitialization";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidProof";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeCid";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeRoot";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotInitializing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PauseUntilMustBeInFuture";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PausedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ResumedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroOperatorsDataAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroPauseDuration";
        readonly inputs: readonly [];
    }];
    readonly curatedGate9: readonly [{
        readonly type: "constructor";
        readonly inputs: readonly [{
            readonly name: "module";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "moduleId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "operatorsData";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "ACCOUNTING";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IAccounting";
        }];
        readonly stateMutability: "view";
    }, {
        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: "MODULE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract ICuratedModule";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "MODULE_ID";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "OPERATORS_DATA";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "address";
            readonly internalType: "contract IOperatorsData";
        }];
        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_TREE_ROLE";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "createNodeOperator";
        readonly inputs: readonly [{
            readonly name: "name";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "description";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "managerAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "rewardAddress";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "nodeOperatorId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "curveId";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            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: "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: "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: "hashLeaf";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "pure";
    }, {
        readonly type: "function";
        readonly name: "initialize";
        readonly inputs: readonly [{
            readonly name: "_curveId";
            readonly type: "uint256";
            readonly internalType: "uint256";
        }, {
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }, {
            readonly name: "admin";
            readonly type: "address";
            readonly internalType: "address";
        }];
        readonly outputs: readonly [];
        readonly stateMutability: "nonpayable";
    }, {
        readonly type: "function";
        readonly name: "isConsumed";
        readonly inputs: readonly [{
            readonly name: "member";
            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: "isPaused";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        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: "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: "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: "setTreeParams";
        readonly inputs: readonly [{
            readonly name: "_treeRoot";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }, {
            readonly name: "_treeCid";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly outputs: readonly [];
        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: "treeCid";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "string";
            readonly internalType: "string";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "treeRoot";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "function";
        readonly name: "verifyProof";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "proof";
            readonly type: "bytes32[]";
            readonly internalType: "bytes32[]";
        }];
        readonly outputs: readonly [{
            readonly name: "";
            readonly type: "bool";
            readonly internalType: "bool";
        }];
        readonly stateMutability: "view";
    }, {
        readonly type: "event";
        readonly name: "Consumed";
        readonly inputs: readonly [{
            readonly name: "member";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Initialized";
        readonly inputs: readonly [{
            readonly name: "version";
            readonly type: "uint64";
            readonly indexed: false;
            readonly internalType: "uint64";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Paused";
        readonly inputs: readonly [{
            readonly name: "duration";
            readonly type: "uint256";
            readonly indexed: false;
            readonly internalType: "uint256";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "Resumed";
        readonly inputs: readonly [];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleAdminChanged";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "previousAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "newAdminRole";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleGranted";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "RoleRevoked";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "account";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }, {
            readonly name: "sender";
            readonly type: "address";
            readonly indexed: true;
            readonly internalType: "address";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "event";
        readonly name: "TreeSet";
        readonly inputs: readonly [{
            readonly name: "treeRoot";
            readonly type: "bytes32";
            readonly indexed: true;
            readonly internalType: "bytes32";
        }, {
            readonly name: "treeCid";
            readonly type: "string";
            readonly indexed: false;
            readonly internalType: "string";
        }];
        readonly anonymous: false;
    }, {
        readonly type: "error";
        readonly name: "AccessControlBadConfirmation";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "AccessControlUnauthorizedAccount";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "address";
            readonly internalType: "address";
        }, {
            readonly name: "neededRole";
            readonly type: "bytes32";
            readonly internalType: "bytes32";
        }];
    }, {
        readonly type: "error";
        readonly name: "AlreadyConsumed";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidCurveId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidInitialization";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidProof";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeCid";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "InvalidTreeRoot";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "NotInitializing";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PauseUntilMustBeInFuture";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "PausedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ResumedExpected";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroAdminAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroModuleId";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroOperatorsDataAddress";
        readonly inputs: readonly [];
    }, {
        readonly type: "error";
        readonly name: "ZeroPauseDuration";
        readonly inputs: readonly [];
    }];
};
//# sourceMappingURL=contract-abi.d.ts.map