declare const contract: {
    readonly id: 1801;
    readonly address: "0x475d6005d57d1b93cb4acf7866ddc16925097e88";
    readonly contract_name: "RoninValidatorSet";
    readonly display_name: "Ronin Validator Set";
    readonly is_deprecated: false;
    readonly is_proxy: false;
    readonly proxy_to: false;
    readonly created_at: 1709535712;
    readonly abi: readonly [{
        readonly type: "constructor";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [];
    }, {
        readonly name: "ErrAlreadyRequestedEmergencyExit";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ErrAlreadyRequestedRevokingCandidate";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ErrAlreadyRequestedUpdatingCommissionRate";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ErrAlreadyWrappedEpoch";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ErrAtEndOfEpochOnly";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ErrCallPrecompiled";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ErrCallerMustBeCoinbase";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ErrCannotBailout";
        readonly type: "error";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "validator";
        }];
    }, {
        readonly name: "ErrContractTypeNotFound";
        readonly type: "error";
        readonly inputs: readonly [{
            readonly type: "uint8";
            readonly name: "contractType";
        }];
    }, {
        readonly name: "ErrExceedsMaxNumberOfCandidate";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ErrExistentCandidate";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ErrExistentCandidateAdmin";
        readonly type: "error";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "candidateAdminAddr";
        }];
    }, {
        readonly name: "ErrExistentTreasury";
        readonly type: "error";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "treasuryAddr";
        }];
    }, {
        readonly name: "ErrInsufficientBalance";
        readonly type: "error";
        readonly inputs: readonly [{
            readonly type: "bytes4";
            readonly name: "msgSig";
        }, {
            readonly type: "uint256";
            readonly name: "currentBalance";
        }, {
            readonly type: "uint256";
            readonly name: "sendAmount";
        }];
    }, {
        readonly name: "ErrInvalidCommissionRate";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ErrInvalidEffectiveDaysOnwards";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ErrInvalidMaxPrioritizedValidatorNumber";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ErrInvalidMinEffectiveDaysOnwards";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ErrLockedFundMightBeRecycled";
        readonly type: "error";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
        }];
    }, {
        readonly name: "ErrLockedFundReleaseInfoNotFound";
        readonly type: "error";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
        }];
    }, {
        readonly name: "ErrNonExistentCandidate";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ErrRecipientRevert";
        readonly type: "error";
        readonly inputs: readonly [{
            readonly type: "bytes4";
            readonly name: "msgSig";
        }];
    }, {
        readonly name: "ErrTrustedOrgCannotRenounce";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ErrUnauthorized";
        readonly type: "error";
        readonly inputs: readonly [{
            readonly type: "bytes4";
            readonly name: "msgSig";
        }, {
            readonly type: "uint8";
            readonly name: "expectedRole";
        }];
    }, {
        readonly name: "ErrUnauthorizedReceiveRON";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "ErrUnexpectedInternalCall";
        readonly type: "error";
        readonly inputs: readonly [{
            readonly type: "bytes4";
            readonly name: "msgSig";
        }, {
            readonly type: "uint8";
            readonly name: "expectedContractType";
        }, {
            readonly type: "address";
            readonly name: "actual";
        }];
    }, {
        readonly name: "ErrZeroCodeContract";
        readonly type: "error";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "addr";
        }];
    }, {
        readonly name: "NonExistentRecyclingInfo";
        readonly type: "error";
        readonly inputs: readonly [];
    }, {
        readonly name: "BlockProducerSetUpdated";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "period";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "epoch";
            readonly indexed: true;
        }, {
            readonly type: "address[]";
            readonly name: "cids";
        }];
    }, {
        readonly name: "BlockRewardDeprecated";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "rewardAmount";
        }, {
            readonly type: "uint8";
            readonly name: "deprecatedType";
        }];
    }, {
        readonly name: "BlockRewardSubmitted";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "submittedAmount";
        }, {
            readonly type: "uint256";
            readonly name: "bonusAmount";
        }];
    }, {
        readonly name: "BridgeOperatorRewardDistributed";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "bridgeOperator";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "recipientAddr";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "amount";
        }];
    }, {
        readonly name: "BridgeOperatorRewardDistributionFailed";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "bridgeOperator";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "recipient";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "amount";
        }, {
            readonly type: "uint256";
            readonly name: "contractBalance";
        }];
    }, {
        readonly name: "BridgeOperatorSetUpdated";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "period";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "epoch";
            readonly indexed: true;
        }, {
            readonly type: "address[]";
            readonly name: "bridgeOperators";
        }];
    }, {
        readonly name: "CandidateGranted";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "treasuryAddr";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "admin";
            readonly indexed: true;
        }];
    }, {
        readonly name: "CandidateRevokingTimestampUpdated";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "revokingTimestamp";
        }];
    }, {
        readonly name: "CandidateTopupDeadlineUpdated";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "topupDeadline";
        }];
    }, {
        readonly name: "CandidatesRevoked";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address[]";
            readonly name: "cids";
        }];
    }, {
        readonly name: "CommissionRateUpdateScheduled";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "effectiveTimestamp";
        }, {
            readonly type: "uint256";
            readonly name: "rate";
        }];
    }, {
        readonly name: "CommissionRateUpdated";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "rate";
        }];
    }, {
        readonly name: "ContractUpdated";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint8";
            readonly name: "contractType";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "addr";
            readonly indexed: true;
        }];
    }, {
        readonly name: "DeprecatedRewardRecycleFailed";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "recipientAddr";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "amount";
        }, {
            readonly type: "uint256";
            readonly name: "balance";
        }];
    }, {
        readonly name: "DeprecatedRewardRecycled";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "recipientAddr";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "amount";
        }];
    }, {
        readonly name: "EmergencyExitLockedAmountUpdated";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "amount";
        }];
    }, {
        readonly name: "EmergencyExitLockedFundReleased";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "recipient";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "unlockedAmount";
        }];
    }, {
        readonly name: "EmergencyExitLockedFundReleasingFailed";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "recipient";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "unlockedAmount";
        }, {
            readonly type: "uint256";
            readonly name: "contractBalance";
        }];
    }, {
        readonly name: "EmergencyExitRequested";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "lockedAmount";
        }];
    }, {
        readonly name: "EmergencyExpiryDurationUpdated";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "amount";
        }];
    }, {
        readonly name: "FastFinalityRewardDistributed";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "recipient";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "amount";
        }];
    }, {
        readonly name: "FastFinalityRewardDistributionFailed";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "recipient";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "amount";
        }, {
            readonly type: "uint256";
            readonly name: "contractBalance";
        }];
    }, {
        readonly name: "Initialized";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint8";
            readonly name: "version";
        }];
    }, {
        readonly name: "MaxPrioritizedValidatorNumberUpdated";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "MaxValidatorCandidateUpdated";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "threshold";
        }];
    }, {
        readonly name: "MaxValidatorNumberUpdated";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "MinEffectiveDaysOnwardsUpdated";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "numOfDays";
        }];
    }, {
        readonly name: "MiningRewardDistributed";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "recipient";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "amount";
        }];
    }, {
        readonly name: "MiningRewardDistributionFailed";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
            readonly indexed: true;
        }, {
            readonly type: "address";
            readonly name: "recipient";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "amount";
        }, {
            readonly type: "uint256";
            readonly name: "contractBalance";
        }];
    }, {
        readonly name: "StakingRewardDistributed";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "totalAmount";
        }, {
            readonly type: "address[]";
            readonly name: "cids";
        }, {
            readonly type: "uint256[]";
            readonly name: "amounts";
        }];
    }, {
        readonly name: "StakingRewardDistributionFailed";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "totalAmount";
        }, {
            readonly type: "address[]";
            readonly name: "cids";
        }, {
            readonly type: "uint256[]";
            readonly name: "amounts";
        }, {
            readonly type: "uint256";
            readonly name: "contractBalance";
        }];
    }, {
        readonly name: "ValidatorPunished";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "period";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "jailedUntil";
        }, {
            readonly type: "uint256";
            readonly name: "deductedStakingAmount";
        }, {
            readonly type: "bool";
            readonly name: "blockProducerRewardDeprecated";
        }, {
            readonly type: "bool";
            readonly name: "bridgeOperatorRewardDeprecated";
        }];
    }, {
        readonly name: "ValidatorSetUpdated";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "period";
            readonly indexed: true;
        }, {
            readonly type: "address[]";
            readonly name: "cids";
        }];
    }, {
        readonly name: "ValidatorUnjailed";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "period";
        }];
    }, {
        readonly name: "WrappedUpEpoch";
        readonly type: "event";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "periodNumber";
            readonly indexed: true;
        }, {
            readonly type: "uint256";
            readonly name: "epochNumber";
            readonly indexed: true;
        }, {
            readonly type: "bool";
            readonly name: "periodEnding";
        }];
    }, {
        readonly type: "fallback";
        readonly stateMutability: "payable";
    }, {
        readonly name: "DEFAULT_ADDITION_GAS";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "PERIOD_DURATION";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "checkJailed";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "consensus";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
        }];
    }, {
        readonly name: "checkJailedAtBlock";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "addr";
        }, {
            readonly type: "uint256";
            readonly name: "blockNum";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
        }];
    }, {
        readonly name: "checkManyJailed";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address[]";
            readonly name: "consensusList";
        }];
        readonly outputs: readonly [{
            readonly type: "bool[]";
        }];
    }, {
        readonly name: "checkManyJailedById";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address[]";
            readonly name: "candidateIds";
        }];
        readonly outputs: readonly [{
            readonly type: "bool[]";
        }];
    }, {
        readonly name: "checkMiningRewardDeprecated";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "consensus";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
        }];
    }, {
        readonly name: "checkMiningRewardDeprecatedAtPeriod";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "consensus";
        }, {
            readonly type: "uint256";
            readonly name: "period";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
        }];
    }, {
        readonly name: "currentPeriod";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "currentPeriodStartAtBlock";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "emergencyExitLockedAmount";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "emergencyExpiryDuration";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "epochEndingAt";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "_block";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
        }];
    }, {
        readonly name: "epochOf";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "_block";
        }];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "execApplyValidatorCandidate";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "candidateAdmin";
        }, {
            readonly type: "address";
            readonly name: "cid";
        }, {
            readonly type: "address";
            readonly name: "treasuryAddr";
        }, {
            readonly type: "uint256";
            readonly name: "commissionRate";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "execBailOut";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "validatorId";
        }, {
            readonly type: "uint256";
            readonly name: "period";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "execChangeAdminAddr";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
        }, {
            readonly type: "address";
            readonly name: "newAdmin";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "execChangeConsensusAddr";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
        }, {
            readonly type: "address";
            readonly name: "newConsensusAddr";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "execChangeTreasuryAddr";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
        }, {
            readonly type: "address";
            readonly name: "newTreasury";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "execReleaseLockedFundForEmergencyExitRequest";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
        }, {
            readonly type: "address";
            readonly name: "recipient";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "execRequestEmergencyExit";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
        }, {
            readonly type: "uint256";
            readonly name: "secLeftToRevoke";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "execRequestRenounceCandidate";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
        }, {
            readonly type: "uint256";
            readonly name: "secsLeft";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "execRequestUpdateCommissionRate";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
        }, {
            readonly type: "uint256";
            readonly name: "effectiveDaysOnwards";
        }, {
            readonly type: "uint256";
            readonly name: "commissionRate";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "execSlash";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "validatorId";
        }, {
            readonly type: "uint256";
            readonly name: "newJailedUntil";
        }, {
            readonly type: "uint256";
            readonly name: "slashAmount";
        }, {
            readonly type: "bool";
            readonly name: "cannotBailout";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "getBlockProducerIds";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "address[]";
            readonly name: "cids";
        }];
    }, {
        readonly name: "getBlockProducers";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "address[]";
            readonly name: "consensusList";
        }];
    }, {
        readonly name: "getCandidateInfo";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "consensus";
        }];
        readonly outputs: readonly [{
            readonly type: "tuple";
            readonly components: readonly [{
                readonly type: "address";
                readonly name: "__shadowedAdmin";
            }, {
                readonly type: "address";
                readonly name: "__shadowedConsensus";
            }, {
                readonly type: "address";
                readonly name: "__shadowedTreasury";
            }, {
                readonly type: "address";
                readonly name: "____deprecatedBridgeOperatorAddr";
            }, {
                readonly type: "uint256";
                readonly name: "commissionRate";
            }, {
                readonly type: "uint256";
                readonly name: "revokingTimestamp";
            }, {
                readonly type: "uint256";
                readonly name: "topupDeadline";
            }];
        }];
    }, {
        readonly name: "getCandidateInfoById";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "cid";
        }];
        readonly outputs: readonly [{
            readonly type: "tuple";
            readonly components: readonly [{
                readonly type: "address";
                readonly name: "__shadowedAdmin";
            }, {
                readonly type: "address";
                readonly name: "__shadowedConsensus";
            }, {
                readonly type: "address";
                readonly name: "__shadowedTreasury";
            }, {
                readonly type: "address";
                readonly name: "____deprecatedBridgeOperatorAddr";
            }, {
                readonly type: "uint256";
                readonly name: "commissionRate";
            }, {
                readonly type: "uint256";
                readonly name: "revokingTimestamp";
            }, {
                readonly type: "uint256";
                readonly name: "topupDeadline";
            }];
        }];
    }, {
        readonly name: "getCandidateInfos";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "tuple[]";
            readonly name: "list";
            readonly components: readonly [{
                readonly type: "address";
                readonly name: "__shadowedAdmin";
            }, {
                readonly type: "address";
                readonly name: "__shadowedConsensus";
            }, {
                readonly type: "address";
                readonly name: "__shadowedTreasury";
            }, {
                readonly type: "address";
                readonly name: "____deprecatedBridgeOperatorAddr";
            }, {
                readonly type: "uint256";
                readonly name: "commissionRate";
            }, {
                readonly type: "uint256";
                readonly name: "revokingTimestamp";
            }, {
                readonly type: "uint256";
                readonly name: "topupDeadline";
            }];
        }];
    }, {
        readonly name: "getCommissionChangeSchedule";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "consensus";
        }];
        readonly outputs: readonly [{
            readonly type: "tuple";
            readonly components: readonly [{
                readonly type: "uint256";
                readonly name: "effectiveTimestamp";
            }, {
                readonly type: "uint256";
                readonly name: "commissionRate";
            }];
        }];
    }, {
        readonly name: "getContract";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "uint8";
            readonly name: "contractType";
        }];
        readonly outputs: readonly [{
            readonly type: "address";
            readonly name: "contract_";
        }];
    }, {
        readonly name: "getEmergencyExitInfo";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "consensus";
        }];
        readonly outputs: readonly [{
            readonly type: "tuple";
            readonly name: "_info";
            readonly components: readonly [{
                readonly type: "uint256";
                readonly name: "lockedAmount";
            }, {
                readonly type: "uint256";
                readonly name: "recyclingAt";
            }];
        }];
    }, {
        readonly name: "getJailedTimeLeft";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "consensus";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
            readonly name: "isJailed_";
        }, {
            readonly type: "uint256";
            readonly name: "blockLeft_";
        }, {
            readonly type: "uint256";
            readonly name: "epochLeft_";
        }];
    }, {
        readonly name: "getJailedTimeLeftAtBlock";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "consensus";
        }, {
            readonly type: "uint256";
            readonly name: "_blockNum";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
            readonly name: "isJailed_";
        }, {
            readonly type: "uint256";
            readonly name: "blockLeft_";
        }, {
            readonly type: "uint256";
            readonly name: "epochLeft_";
        }];
    }, {
        readonly name: "getLastUpdatedBlock";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "getValidatorCandidateIds";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "address[]";
        }];
    }, {
        readonly name: "getValidatorCandidates";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "address[]";
        }];
    }, {
        readonly name: "getValidatorIds";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "address[]";
            readonly name: "cids";
        }];
    }, {
        readonly name: "getValidators";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "address[]";
            readonly name: "consensusList";
        }];
    }, {
        readonly name: "initialize";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "__slashIndicatorContract";
        }, {
            readonly type: "address";
            readonly name: "__stakingContract";
        }, {
            readonly type: "address";
            readonly name: "__stakingVestingContract";
        }, {
            readonly type: "address";
            readonly name: "__maintenanceContract";
        }, {
            readonly type: "address";
            readonly name: "__roninTrustedOrganizationContract";
        }, {
            readonly type: "address";
        }, {
            readonly type: "uint256";
            readonly name: "__maxValidatorNumber";
        }, {
            readonly type: "uint256";
            readonly name: "__maxValidatorCandidate";
        }, {
            readonly type: "uint256";
            readonly name: "__maxPrioritizedValidatorNumber";
        }, {
            readonly type: "uint256";
            readonly name: "__minEffectiveDaysOnwards";
        }, {
            readonly type: "uint256";
            readonly name: "__numberOfBlocksInEpoch";
        }, {
            readonly type: "uint256[2]";
            readonly name: "__emergencyExitConfigs";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "initializeV2";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [];
        readonly outputs: readonly [];
    }, {
        readonly name: "initializeV3";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "fastFinalityTrackingContract";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "initializeV4";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "profileContract";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "isBlockProducer";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "consensusAddr";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
        }];
    }, {
        readonly name: "isBlockProducerById";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "id";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
        }];
    }, {
        readonly name: "isCandidateAdmin";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "consensusAddr";
        }, {
            readonly type: "address";
            readonly name: "admin";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
        }];
    }, {
        readonly name: "isCandidateAdminById";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "candidateId";
        }, {
            readonly type: "address";
            readonly name: "admin";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
        }];
    }, {
        readonly name: "isPeriodEnding";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "bool";
        }];
    }, {
        readonly name: "isValidatorCandidate";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "address";
            readonly name: "consensus";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
        }];
    }, {
        readonly name: "maxPrioritizedValidatorNumber";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
            readonly name: "_maximumPrioritizedValidatorNumber";
        }];
    }, {
        readonly name: "maxValidatorCandidate";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "maxValidatorNumber";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
            readonly name: "_maximumValidatorNumber";
        }];
    }, {
        readonly name: "minEffectiveDaysOnward";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "numberOfBlocksInEpoch";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
            readonly name: "_numberOfBlocks";
        }];
    }, {
        readonly name: "precompilePickValidatorSetAddress";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "address";
        }];
    }, {
        readonly name: "precompileSortValidatorsAddress";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "address";
        }];
    }, {
        readonly name: "setContract";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "uint8";
            readonly name: "contractType";
        }, {
            readonly type: "address";
            readonly name: "addr";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "setEmergencyExitLockedAmount";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "amount";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "setEmergencyExpiryDuration";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "duration";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "setMaxPrioritizedValidatorNumber";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "_number";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "setMaxValidatorCandidate";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "_number";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "setMaxValidatorNumber";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "_max";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "setMinEffectiveDaysOnwards";
        readonly type: "function";
        readonly stateMutability: "nonpayable";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "_numOfDays";
        }];
        readonly outputs: readonly [];
    }, {
        readonly name: "submitBlockReward";
        readonly type: "function";
        readonly stateMutability: "payable";
        readonly inputs: readonly [];
        readonly outputs: readonly [];
    }, {
        readonly name: "totalBlockProducer";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
            readonly name: "total";
        }];
    }, {
        readonly name: "totalDeprecatedReward";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "tryGetPeriodOfEpoch";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [{
            readonly type: "uint256";
            readonly name: "_epoch";
        }];
        readonly outputs: readonly [{
            readonly type: "bool";
            readonly name: "_filled";
        }, {
            readonly type: "uint256";
            readonly name: "_periodNumber";
        }];
    }, {
        readonly name: "validatorCount";
        readonly type: "function";
        readonly stateMutability: "view";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "uint256";
        }];
    }, {
        readonly name: "wrapUpEpoch";
        readonly type: "function";
        readonly stateMutability: "payable";
        readonly inputs: readonly [];
        readonly outputs: readonly [];
    }, {
        readonly type: "receive";
        readonly stateMutability: "payable";
    }];
};

export { contract as default };
