genlayer-js 0.18.9 → 0.18.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -8177,154 +8177,1006 @@ var VALIDATOR_WALLET_ABI = [
8177
8177
  ];
8178
8178
  var STAKING_ABI = [
8179
8179
  // Custom errors from IGenLayerStaking
8180
+ { name: "BurnTransferFailed", type: "error", inputs: [] },
8181
+ { name: "DeepthoughtCallFailed", type: "error", inputs: [] },
8182
+ { name: "DelegatorBelowMinimumStake", type: "error", inputs: [] },
8183
+ { name: "DelegatorExitExceedsShares", type: "error", inputs: [] },
8184
+ { name: "DelegatorExitWouldBeBelowMinimum", type: "error", inputs: [] },
8185
+ { name: "DelegatorMayNotJoinTwoValidatorsSimultaneously", type: "error", inputs: [] },
8186
+ { name: "DelegatorMayNotJoinWithZeroValue", type: "error", inputs: [] },
8187
+ { name: "DelegatorMustExitAllWhenBelowMinimum", type: "error", inputs: [] },
8188
+ { name: "EpochAdvanceNotReady", type: "error", inputs: [] },
8189
+ { name: "EpochAlreadyFinalized", type: "error", inputs: [] },
8190
+ { name: "EpochNotFinalized", type: "error", inputs: [] },
8191
+ { name: "EpochNotFinished", type: "error", inputs: [] },
8192
+ { name: "FailedTransfer", type: "error", inputs: [{ name: "validator", type: "address" }] },
8193
+ { name: "InflationAlreadyInitialized", type: "error", inputs: [] },
8194
+ { name: "InflationAlreadyReceived", type: "error", inputs: [] },
8195
+ { name: "InflationInvalidAmount", type: "error", inputs: [] },
8196
+ { name: "InsufficientInflationFunds", type: "error", inputs: [] },
8197
+ { name: "InvalidAtEpoch", type: "error", inputs: [] },
8198
+ { name: "InvalidOperatorAddress", type: "error", inputs: [] },
8199
+ { name: "MaxNumberOfValidatorsReached", type: "error", inputs: [] },
8200
+ { name: "MaxValidatorsCannotBeZero", type: "error", inputs: [] },
8201
+ { name: "NFTMinterCallFailed", type: "error", inputs: [] },
8202
+ { name: "NFTMinterNotConfigured", type: "error", inputs: [] },
8203
+ { name: "NoBurning", type: "error", inputs: [] },
8204
+ { name: "NumberOfValidatorsExceedsAvailable", type: "error", inputs: [] },
8180
8205
  { name: "OnlyGEN", type: "error", inputs: [] },
8181
- { name: "OnlyTribunal", type: "error", inputs: [] },
8182
8206
  { name: "OnlyIdleness", type: "error", inputs: [] },
8183
- { name: "OnlyTransactions", type: "error", inputs: [] },
8184
8207
  { name: "OnlyIdlenessOrTribunal", type: "error", inputs: [] },
8208
+ { name: "OnlyTransactions", type: "error", inputs: [] },
8185
8209
  { name: "OnlyTransactionsOrTribunal", type: "error", inputs: [] },
8186
- { name: "InvalidAtEpoch", type: "error", inputs: [] },
8187
- { name: "MaxValidatorsCannotBeZero", type: "error", inputs: [] },
8210
+ { name: "OnlyTribunal", type: "error", inputs: [] },
8211
+ { name: "OperatorAlreadyAssigned", type: "error", inputs: [] },
8212
+ { name: "PendingTribunals", type: "error", inputs: [{ name: "epoch", type: "uint256" }] },
8213
+ { name: "PreviousEpochNotFinalizable", type: "error", inputs: [] },
8214
+ { name: "ReductionFactorCannotBeZero", type: "error", inputs: [] },
8215
+ { name: "ValidatorAlreadyJoined", type: "error", inputs: [] },
8216
+ { name: "ValidatorBelowMinimumStake", type: "error", inputs: [] },
8188
8217
  { name: "ValidatorExitExceedsShares", type: "error", inputs: [] },
8189
- { name: "DelegatorExitExceedsShares", type: "error", inputs: [] },
8190
- { name: "DelegatorMayNotJoinWithZeroValue", type: "error", inputs: [] },
8191
- { name: "DelegatorMayNotJoinTwoValidatorsSimultaneously", type: "error", inputs: [] },
8192
- { name: "DelegatorBelowMinimumStake", type: "error", inputs: [] },
8193
- { name: "DelegatorExitWouldBeBelowMinimum", type: "error", inputs: [] },
8194
- { name: "ValidatorNotActive", type: "error", inputs: [] },
8195
8218
  { name: "ValidatorMayNotBeDelegator", type: "error", inputs: [] },
8196
- { name: "ValidatorMustNotBeDelegator", type: "error", inputs: [] },
8197
- { name: "ValidatorMayNotJoinWithZeroValue", type: "error", inputs: [] },
8198
8219
  { name: "ValidatorMayNotDepositZeroValue", type: "error", inputs: [] },
8199
- { name: "ValidatorWithdrawalExceedsStake", type: "error", inputs: [] },
8200
- { name: "ValidatorAlreadyJoined", type: "error", inputs: [] },
8220
+ { name: "ValidatorMayNotJoinWithZeroValue", type: "error", inputs: [] },
8221
+ { name: "ValidatorMustNotBeDelegator", type: "error", inputs: [] },
8222
+ { name: "ValidatorNotActive", type: "error", inputs: [] },
8201
8223
  { name: "ValidatorNotJoined", type: "error", inputs: [] },
8202
- { name: "ValidatorBelowMinimumStake", type: "error", inputs: [] },
8203
- { name: "OperatorAlreadyAssigned", type: "error", inputs: [] },
8204
- { name: "InvalidOperatorAddress", type: "error", inputs: [] },
8205
- { name: "MaxNumberOfValidatorsReached", type: "error", inputs: [] },
8224
+ { name: "ValidatorWithdrawalExceedsStake", type: "error", inputs: [] },
8206
8225
  { name: "ValidatorsConsumed", type: "error", inputs: [] },
8207
8226
  { name: "ValidatorsUnavailable", type: "error", inputs: [] },
8208
- { name: "EpochNotFinished", type: "error", inputs: [] },
8209
- { name: "EpochNotFinalized", type: "error", inputs: [] },
8210
- { name: "InflationInvalidAmount", type: "error", inputs: [] },
8211
- { name: "InflationAlreadyReceived", type: "error", inputs: [] },
8212
- { name: "InflationAlreadyInitialized", type: "error", inputs: [] },
8213
- { name: "EpochAlreadyFinalized", type: "error", inputs: [] },
8214
- { name: "PendingTribunals", type: "error", inputs: [{ name: "epoch", type: "uint256" }] },
8215
- { name: "FailedTransfer", type: "error", inputs: [{ name: "validator", type: "address" }] },
8216
- { name: "NFTMinterCallFailed", type: "error", inputs: [] },
8217
- { name: "DeepthoughtCallFailed", type: "error", inputs: [] },
8218
- { name: "NFTMinterNotConfigured", type: "error", inputs: [] },
8219
- { name: "NumberOfValidatorsExceedsAvailable", type: "error", inputs: [] },
8220
- { name: "EpochAdvanceNotReady", type: "error", inputs: [] },
8221
- { name: "PreviousEpochNotFinalizable", type: "error", inputs: [] },
8222
- { name: "NoBurning", type: "error", inputs: [] },
8223
- { name: "ReductionFactorCannotBeZero", type: "error", inputs: [] },
8224
- // Validator functions
8227
+ // Events
8228
+ {
8229
+ name: "AllValidatorBansRemoved",
8230
+ type: "event",
8231
+ inputs: []
8232
+ },
8233
+ {
8234
+ name: "BurnFailed",
8235
+ type: "event",
8236
+ inputs: [
8237
+ { name: "amount", type: "uint256", indexed: false }
8238
+ ]
8239
+ },
8240
+ {
8241
+ name: "BurnToL1",
8242
+ type: "event",
8243
+ inputs: [
8244
+ { name: "amount", type: "uint256", indexed: false }
8245
+ ]
8246
+ },
8247
+ {
8248
+ name: "DelegatorClaim",
8249
+ type: "event",
8250
+ inputs: [
8251
+ { name: "delegator", type: "address", indexed: false },
8252
+ { name: "amount", type: "uint256", indexed: false }
8253
+ ]
8254
+ },
8255
+ {
8256
+ name: "DelegatorExit",
8257
+ type: "event",
8258
+ inputs: [
8259
+ { name: "validator", type: "address", indexed: false },
8260
+ { name: "delegator", type: "address", indexed: false },
8261
+ { name: "amount", type: "uint256", indexed: false }
8262
+ ]
8263
+ },
8264
+ {
8265
+ name: "DelegatorJoin",
8266
+ type: "event",
8267
+ inputs: [
8268
+ { name: "validator", type: "address", indexed: false },
8269
+ { name: "delegator", type: "address", indexed: false },
8270
+ { name: "amount", type: "uint256", indexed: false }
8271
+ ]
8272
+ },
8273
+ {
8274
+ name: "EpochAdvance",
8275
+ type: "event",
8276
+ inputs: [
8277
+ { name: "epoch", type: "uint256", indexed: false }
8278
+ ]
8279
+ },
8280
+ {
8281
+ name: "EpochFinalize",
8282
+ type: "event",
8283
+ inputs: [
8284
+ { name: "epoch", type: "uint256", indexed: false }
8285
+ ]
8286
+ },
8287
+ {
8288
+ name: "EpochHasPendingTribunals",
8289
+ type: "event",
8290
+ inputs: [
8291
+ { name: "epoch", type: "uint256", indexed: false }
8292
+ ]
8293
+ },
8294
+ {
8295
+ name: "EpochZeroEnded",
8296
+ type: "event",
8297
+ inputs: [
8298
+ { name: "timestamp", type: "uint256", indexed: false }
8299
+ ]
8300
+ },
8301
+ {
8302
+ name: "FeesReceived",
8303
+ type: "event",
8304
+ inputs: [
8305
+ { name: "sender", type: "address", indexed: true },
8306
+ { name: "amount", type: "uint256", indexed: false }
8307
+ ]
8308
+ },
8309
+ {
8310
+ name: "InflationInitiated",
8311
+ type: "event",
8312
+ inputs: [
8313
+ { name: "timestamp", type: "uint256", indexed: false }
8314
+ ]
8315
+ },
8316
+ {
8317
+ name: "InflationReceived",
8318
+ type: "event",
8319
+ inputs: [
8320
+ { name: "amount", type: "uint256", indexed: false },
8321
+ { name: "epoch", type: "uint256", indexed: false }
8322
+ ]
8323
+ },
8324
+ {
8325
+ name: "QuarantinesCleanedUp",
8326
+ type: "event",
8327
+ inputs: [
8328
+ { name: "startIndex", type: "uint256", indexed: false },
8329
+ { name: "processedCount", type: "uint256", indexed: false },
8330
+ { name: "nextIndex", type: "uint256", indexed: false }
8331
+ ]
8332
+ },
8333
+ {
8334
+ name: "SetDeepthought",
8335
+ type: "event",
8336
+ inputs: [
8337
+ { name: "deepthought", type: "address", indexed: false }
8338
+ ]
8339
+ },
8340
+ {
8341
+ name: "SetDelegatorMinimumStake",
8342
+ type: "event",
8343
+ inputs: [
8344
+ { name: "delegatorMinStake", type: "uint256", indexed: false }
8345
+ ]
8346
+ },
8347
+ {
8348
+ name: "SetEpochMinDuration",
8349
+ type: "event",
8350
+ inputs: [
8351
+ { name: "epochMinDuration", type: "uint256", indexed: false }
8352
+ ]
8353
+ },
8354
+ {
8355
+ name: "SetEpochMinDurationThreshold",
8356
+ type: "event",
8357
+ inputs: [
8358
+ { name: "epochMinDurationThreshold", type: "uint256", indexed: false }
8359
+ ]
8360
+ },
8361
+ {
8362
+ name: "SetEpochZeroMinDuration",
8363
+ type: "event",
8364
+ inputs: [
8365
+ { name: "epochZeroMinDuration", type: "uint256", indexed: false }
8366
+ ]
8367
+ },
8368
+ {
8369
+ name: "SetGen",
8370
+ type: "event",
8371
+ inputs: [
8372
+ { name: "gen", type: "address", indexed: false }
8373
+ ]
8374
+ },
8375
+ {
8376
+ name: "SetMaxValidators",
8377
+ type: "event",
8378
+ inputs: [
8379
+ { name: "maxValidators", type: "uint256", indexed: false }
8380
+ ]
8381
+ },
8382
+ {
8383
+ name: "SetReductionFactor",
8384
+ type: "event",
8385
+ inputs: [
8386
+ { name: "reductionFactor", type: "uint256", indexed: false }
8387
+ ]
8388
+ },
8389
+ {
8390
+ name: "SetStakingInvariant",
8391
+ type: "event",
8392
+ inputs: [
8393
+ { name: "stakingInvariant", type: "address", indexed: false }
8394
+ ]
8395
+ },
8396
+ {
8397
+ name: "SetTransactionFeesManager",
8398
+ type: "event",
8399
+ inputs: [
8400
+ { name: "transactionFeesManager", type: "address", indexed: false }
8401
+ ]
8402
+ },
8403
+ {
8404
+ name: "SetUnbondingPeriods",
8405
+ type: "event",
8406
+ inputs: [
8407
+ { name: "delegatorUnbondingPeriod", type: "uint256", indexed: false },
8408
+ { name: "validatorUnbondingPeriod", type: "uint256", indexed: false }
8409
+ ]
8410
+ },
8411
+ {
8412
+ name: "SetValidatorMinimumStake",
8413
+ type: "event",
8414
+ inputs: [
8415
+ { name: "validatorMinStake", type: "uint256", indexed: false }
8416
+ ]
8417
+ },
8418
+ {
8419
+ name: "SetValidatorWeightParams",
8420
+ type: "event",
8421
+ inputs: [
8422
+ { name: "alpha", type: "uint256", indexed: false },
8423
+ { name: "beta", type: "uint256", indexed: false }
8424
+ ]
8425
+ },
8426
+ {
8427
+ name: "ValidatorBanRemoved",
8428
+ type: "event",
8429
+ inputs: [
8430
+ { name: "validator", type: "address", indexed: false }
8431
+ ]
8432
+ },
8433
+ {
8434
+ name: "ValidatorBannedDeterministic",
8435
+ type: "event",
8436
+ inputs: [
8437
+ { name: "validator", type: "address", indexed: false }
8438
+ ]
8439
+ },
8440
+ {
8441
+ name: "ValidatorBannedIdleness",
8442
+ type: "event",
8443
+ inputs: [
8444
+ { name: "validator", type: "address", indexed: false },
8445
+ { name: "bannedAt", type: "uint256", indexed: false },
8446
+ { name: "bannedUntil", type: "uint256", indexed: false }
8447
+ ]
8448
+ },
8449
+ {
8450
+ name: "ValidatorClaim",
8451
+ type: "event",
8452
+ inputs: [
8453
+ { name: "validator", type: "address", indexed: false },
8454
+ { name: "amount", type: "uint256", indexed: false }
8455
+ ]
8456
+ },
8457
+ {
8458
+ name: "ValidatorDeposit",
8459
+ type: "event",
8460
+ inputs: [
8461
+ { name: "validator", type: "address", indexed: false },
8462
+ { name: "amount", type: "uint256", indexed: false }
8463
+ ]
8464
+ },
8465
+ {
8466
+ name: "ValidatorExit",
8467
+ type: "event",
8468
+ inputs: [
8469
+ { name: "validator", type: "address", indexed: false },
8470
+ { name: "amount", type: "uint256", indexed: false }
8471
+ ]
8472
+ },
8473
+ {
8474
+ name: "ValidatorJoin",
8475
+ type: "event",
8476
+ inputs: [
8477
+ { name: "operator", type: "address", indexed: false },
8478
+ { name: "validator", type: "address", indexed: false },
8479
+ { name: "amount", type: "uint256", indexed: false }
8480
+ ]
8481
+ },
8482
+ {
8483
+ name: "ValidatorPrime",
8484
+ type: "event",
8485
+ inputs: [
8486
+ { name: "validator", type: "address", indexed: false },
8487
+ { name: "epoch", type: "uint256", indexed: false },
8488
+ { name: "validatorRewards", type: "uint256", indexed: false },
8489
+ { name: "delegatorRewards", type: "uint256", indexed: false },
8490
+ { name: "feeRewards", type: "uint256", indexed: false },
8491
+ { name: "feePenalties", type: "uint256", indexed: false }
8492
+ ]
8493
+ },
8494
+ {
8495
+ name: "ValidatorQuarantineRemoved",
8496
+ type: "event",
8497
+ inputs: [
8498
+ { name: "validator", type: "address", indexed: false }
8499
+ ]
8500
+ },
8501
+ {
8502
+ name: "ValidatorQuarantineRepealed",
8503
+ type: "event",
8504
+ inputs: [
8505
+ { name: "validator", type: "address", indexed: false }
8506
+ ]
8507
+ },
8508
+ {
8509
+ name: "ValidatorQuarantined",
8510
+ type: "event",
8511
+ inputs: [
8512
+ { name: "validator", type: "address", indexed: false },
8513
+ { name: "quarantinedAt", type: "uint256", indexed: false }
8514
+ ]
8515
+ },
8516
+ {
8517
+ name: "ValidatorSlash",
8518
+ type: "event",
8519
+ inputs: [
8520
+ { name: "validator", type: "address", indexed: false },
8521
+ { name: "validatorSlashing", type: "uint256", indexed: false },
8522
+ { name: "delegatorSlashing", type: "uint256", indexed: false },
8523
+ { name: "epoch", type: "uint256", indexed: false }
8524
+ ]
8525
+ },
8526
+ {
8527
+ name: "ValidatorsRegistered",
8528
+ type: "event",
8529
+ inputs: [
8530
+ { name: "count", type: "uint256", indexed: false }
8531
+ ]
8532
+ },
8533
+ // Functions
8534
+ {
8535
+ name: "activeValidators",
8536
+ type: "function",
8537
+ stateMutability: "view",
8538
+ inputs: [],
8539
+ outputs: [{ name: "", type: "address[]" }]
8540
+ },
8541
+ {
8542
+ name: "activeValidatorsCount",
8543
+ type: "function",
8544
+ stateMutability: "view",
8545
+ inputs: [],
8546
+ outputs: [{ name: "", type: "uint256" }]
8547
+ },
8548
+ {
8549
+ name: "activeWeights",
8550
+ type: "function",
8551
+ stateMutability: "view",
8552
+ inputs: [],
8553
+ outputs: [{ name: "", type: "uint256[]" }]
8554
+ },
8555
+ {
8556
+ name: "adminRegisterValidators",
8557
+ type: "function",
8558
+ stateMutability: "nonpayable",
8559
+ inputs: [{ name: "validatorAddresses", type: "address[]" }],
8560
+ outputs: []
8561
+ },
8562
+ {
8563
+ name: "burning",
8564
+ type: "function",
8565
+ stateMutability: "view",
8566
+ inputs: [],
8567
+ outputs: [{ name: "", type: "uint256" }]
8568
+ },
8569
+ {
8570
+ name: "canAdvance",
8571
+ type: "function",
8572
+ stateMutability: "view",
8573
+ inputs: [],
8574
+ outputs: [{ name: "", type: "bool" }]
8575
+ },
8576
+ {
8577
+ name: "deepthoughtInflation",
8578
+ type: "function",
8579
+ stateMutability: "pure",
8580
+ inputs: [{ name: "_inflation", type: "uint256" }],
8581
+ outputs: [{ name: "", type: "uint256" }]
8582
+ },
8583
+ {
8584
+ name: "delegatorClaim",
8585
+ type: "function",
8586
+ stateMutability: "nonpayable",
8587
+ inputs: [
8588
+ { name: "_delegator", type: "address" },
8589
+ { name: "_validator", type: "address" }
8590
+ ],
8591
+ outputs: []
8592
+ },
8593
+ {
8594
+ name: "delegatorDeposit",
8595
+ type: "function",
8596
+ stateMutability: "view",
8597
+ inputs: [
8598
+ { name: "_delegator", type: "address" },
8599
+ { name: "_validator", type: "address" },
8600
+ { name: "_index", type: "uint256" }
8601
+ ],
8602
+ outputs: [
8603
+ {
8604
+ name: "claim_",
8605
+ type: "tuple",
8606
+ components: [
8607
+ { name: "quantity", type: "uint256" },
8608
+ { name: "commit", type: "uint256" }
8609
+ ]
8610
+ },
8611
+ {
8612
+ name: "commit_",
8613
+ type: "tuple",
8614
+ components: [
8615
+ { name: "input", type: "uint256" },
8616
+ { name: "output", type: "uint256" },
8617
+ { name: "epoch", type: "uint256" },
8618
+ { name: "linkToNextCommit", type: "uint256" }
8619
+ ]
8620
+ }
8621
+ ]
8622
+ },
8623
+ {
8624
+ name: "delegatorDepositByEpoch",
8625
+ type: "function",
8626
+ stateMutability: "view",
8627
+ inputs: [
8628
+ { name: "_delegator", type: "address" },
8629
+ { name: "_validator", type: "address" },
8630
+ { name: "_epoch", type: "uint256" }
8631
+ ],
8632
+ outputs: [
8633
+ {
8634
+ name: "commit_",
8635
+ type: "tuple",
8636
+ components: [
8637
+ { name: "input", type: "uint256" },
8638
+ { name: "output", type: "uint256" },
8639
+ { name: "epoch", type: "uint256" },
8640
+ { name: "linkToNextCommit", type: "uint256" }
8641
+ ]
8642
+ }
8643
+ ]
8644
+ },
8645
+ {
8646
+ name: "delegatorDepositLen",
8647
+ type: "function",
8648
+ stateMutability: "view",
8649
+ inputs: [
8650
+ { name: "_delegator", type: "address" },
8651
+ { name: "_validator", type: "address" }
8652
+ ],
8653
+ outputs: [{ name: "", type: "uint256" }]
8654
+ },
8655
+ {
8656
+ name: "delegatorExit",
8657
+ type: "function",
8658
+ stateMutability: "nonpayable",
8659
+ inputs: [
8660
+ { name: "_validator", type: "address" },
8661
+ { name: "_amount", type: "uint256" }
8662
+ ],
8663
+ outputs: []
8664
+ },
8665
+ {
8666
+ name: "delegatorJoin",
8667
+ type: "function",
8668
+ stateMutability: "payable",
8669
+ inputs: [{ name: "_validator", type: "address" }],
8670
+ outputs: []
8671
+ },
8672
+ {
8673
+ name: "delegatorWithdrawal",
8674
+ type: "function",
8675
+ stateMutability: "view",
8676
+ inputs: [
8677
+ { name: "_delegator", type: "address" },
8678
+ { name: "_validator", type: "address" },
8679
+ { name: "_index", type: "uint256" }
8680
+ ],
8681
+ outputs: [
8682
+ {
8683
+ name: "claim_",
8684
+ type: "tuple",
8685
+ components: [
8686
+ { name: "quantity", type: "uint256" },
8687
+ { name: "commit", type: "uint256" }
8688
+ ]
8689
+ },
8690
+ {
8691
+ name: "commit_",
8692
+ type: "tuple",
8693
+ components: [
8694
+ { name: "input", type: "uint256" },
8695
+ { name: "output", type: "uint256" },
8696
+ { name: "epoch", type: "uint256" },
8697
+ { name: "linkToNextCommit", type: "uint256" }
8698
+ ]
8699
+ }
8700
+ ]
8701
+ },
8702
+ {
8703
+ name: "delegatorWithdrawalByEpoch",
8704
+ type: "function",
8705
+ stateMutability: "view",
8706
+ inputs: [
8707
+ { name: "_delegator", type: "address" },
8708
+ { name: "_validator", type: "address" },
8709
+ { name: "_epoch", type: "uint256" }
8710
+ ],
8711
+ outputs: [
8712
+ {
8713
+ name: "commit_",
8714
+ type: "tuple",
8715
+ components: [
8716
+ { name: "input", type: "uint256" },
8717
+ { name: "output", type: "uint256" },
8718
+ { name: "epoch", type: "uint256" },
8719
+ { name: "linkToNextCommit", type: "uint256" }
8720
+ ]
8721
+ }
8722
+ ]
8723
+ },
8724
+ {
8725
+ name: "delegatorWithdrawalLen",
8726
+ type: "function",
8727
+ stateMutability: "view",
8728
+ inputs: [
8729
+ { name: "_delegator", type: "address" },
8730
+ { name: "_validator", type: "address" }
8731
+ ],
8732
+ outputs: [{ name: "", type: "uint256" }]
8733
+ },
8734
+ {
8735
+ name: "developerInflation",
8736
+ type: "function",
8737
+ stateMutability: "pure",
8738
+ inputs: [{ name: "_inflation", type: "uint256" }],
8739
+ outputs: [{ name: "", type: "uint256" }]
8740
+ },
8741
+ {
8742
+ name: "epoch",
8743
+ type: "function",
8744
+ stateMutability: "view",
8745
+ inputs: [],
8746
+ outputs: [{ name: "", type: "uint256" }]
8747
+ },
8748
+ {
8749
+ name: "epochAdvance",
8750
+ type: "function",
8751
+ stateMutability: "nonpayable",
8752
+ inputs: [],
8753
+ outputs: []
8754
+ },
8755
+ {
8756
+ name: "epochEven",
8757
+ type: "function",
8758
+ stateMutability: "view",
8759
+ inputs: [],
8760
+ outputs: [
8761
+ { name: "start", type: "uint256" },
8762
+ { name: "end", type: "uint256" },
8763
+ { name: "inflation", type: "uint256" },
8764
+ { name: "weight", type: "uint256" },
8765
+ { name: "weightDeposit", type: "uint256" },
8766
+ { name: "weightWithdrawal", type: "uint256" },
8767
+ { name: "vcount", type: "uint256" },
8768
+ { name: "claimed", type: "uint256" },
8769
+ { name: "stakeDeposit", type: "uint256" },
8770
+ { name: "stakeWithdrawal", type: "uint256" },
8771
+ { name: "slashed", type: "uint256" }
8772
+ ]
8773
+ },
8774
+ {
8775
+ name: "epochFinalize",
8776
+ type: "function",
8777
+ stateMutability: "nonpayable",
8778
+ inputs: [],
8779
+ outputs: []
8780
+ },
8781
+ {
8782
+ name: "epochFinalizeImmediate",
8783
+ type: "function",
8784
+ stateMutability: "nonpayable",
8785
+ inputs: [],
8786
+ outputs: []
8787
+ },
8788
+ {
8789
+ name: "epochInflation",
8790
+ type: "function",
8791
+ stateMutability: "view",
8792
+ inputs: [{ name: "_epoch", type: "uint256" }],
8793
+ outputs: [{ name: "", type: "uint256" }]
8794
+ },
8795
+ {
8796
+ name: "epochMinDuration",
8797
+ type: "function",
8798
+ stateMutability: "view",
8799
+ inputs: [],
8800
+ outputs: [{ name: "", type: "uint256" }]
8801
+ },
8802
+ {
8803
+ name: "epochOdd",
8804
+ type: "function",
8805
+ stateMutability: "view",
8806
+ inputs: [],
8807
+ outputs: [
8808
+ { name: "start", type: "uint256" },
8809
+ { name: "end", type: "uint256" },
8810
+ { name: "inflation", type: "uint256" },
8811
+ { name: "weight", type: "uint256" },
8812
+ { name: "weightDeposit", type: "uint256" },
8813
+ { name: "weightWithdrawal", type: "uint256" },
8814
+ { name: "vcount", type: "uint256" },
8815
+ { name: "claimed", type: "uint256" },
8816
+ { name: "stakeDeposit", type: "uint256" },
8817
+ { name: "stakeWithdrawal", type: "uint256" },
8818
+ { name: "slashed", type: "uint256" }
8819
+ ]
8820
+ },
8821
+ {
8822
+ name: "epochZeroMinDuration",
8823
+ type: "function",
8824
+ stateMutability: "view",
8825
+ inputs: [],
8826
+ outputs: [{ name: "", type: "uint256" }]
8827
+ },
8828
+ {
8829
+ name: "finalized",
8830
+ type: "function",
8831
+ stateMutability: "view",
8832
+ inputs: [],
8833
+ outputs: [{ name: "", type: "uint256" }]
8834
+ },
8835
+ {
8836
+ name: "getActivatorForSeed",
8837
+ type: "function",
8838
+ stateMutability: "view",
8839
+ inputs: [
8840
+ { name: "_randomSeed", type: "bytes32" },
8841
+ { name: "_txCreatedTimestamp", type: "uint256" }
8842
+ ],
8843
+ outputs: [{ name: "", type: "address" }]
8844
+ },
8845
+ {
8846
+ name: "getAllBannedValidators",
8847
+ type: "function",
8848
+ stateMutability: "view",
8849
+ inputs: [
8850
+ { name: "_startIndex", type: "uint256" },
8851
+ { name: "_size", type: "uint256" }
8852
+ ],
8853
+ outputs: [
8854
+ {
8855
+ name: "validatorList",
8856
+ type: "tuple[]",
8857
+ components: [
8858
+ { name: "validator", type: "address" },
8859
+ { name: "untilEpochBanned", type: "uint256" },
8860
+ { name: "permanentlyBanned", type: "bool" }
8861
+ ]
8862
+ }
8863
+ ]
8864
+ },
8865
+ {
8866
+ name: "getAllBannedValidatorsForEpoch",
8867
+ type: "function",
8868
+ stateMutability: "view",
8869
+ inputs: [
8870
+ { name: "_epoch", type: "uint256" },
8871
+ { name: "_startIndex", type: "uint256" },
8872
+ { name: "_size", type: "uint256" }
8873
+ ],
8874
+ outputs: [
8875
+ {
8876
+ name: "validatorList",
8877
+ type: "tuple[]",
8878
+ components: [
8879
+ { name: "validator", type: "address" },
8880
+ { name: "untilEpochBanned", type: "uint256" },
8881
+ { name: "permanentlyBanned", type: "bool" }
8882
+ ]
8883
+ }
8884
+ ]
8885
+ },
8886
+ {
8887
+ name: "getAllQuarantinedValidators",
8888
+ type: "function",
8889
+ stateMutability: "view",
8890
+ inputs: [
8891
+ { name: "_startIndex", type: "uint256" },
8892
+ { name: "_size", type: "uint256" }
8893
+ ],
8894
+ outputs: [
8895
+ {
8896
+ name: "validatorList",
8897
+ type: "tuple[]",
8898
+ components: [
8899
+ { name: "validator", type: "address" },
8900
+ { name: "untilEpochBanned", type: "uint256" },
8901
+ { name: "permanentlyBanned", type: "bool" }
8902
+ ]
8903
+ }
8904
+ ]
8905
+ },
8906
+ {
8907
+ name: "getAllQuarantinedValidatorsForEpoch",
8908
+ type: "function",
8909
+ stateMutability: "view",
8910
+ inputs: [
8911
+ { name: "_epoch", type: "uint256" },
8912
+ { name: "_startIndex", type: "uint256" },
8913
+ { name: "_size", type: "uint256" }
8914
+ ],
8915
+ outputs: [
8916
+ {
8917
+ name: "validatorList",
8918
+ type: "tuple[]",
8919
+ components: [
8920
+ { name: "validator", type: "address" },
8921
+ { name: "untilEpochBanned", type: "uint256" },
8922
+ { name: "permanentlyBanned", type: "bool" }
8923
+ ]
8924
+ }
8925
+ ]
8926
+ },
8225
8927
  {
8226
- name: "validatorJoin",
8928
+ name: "getPendingDelegatorDeposits",
8227
8929
  type: "function",
8228
- stateMutability: "payable",
8229
- inputs: [],
8230
- outputs: [{ name: "validator", type: "address" }]
8930
+ stateMutability: "view",
8931
+ inputs: [
8932
+ { name: "_delegator", type: "address" },
8933
+ { name: "_validator", type: "address" }
8934
+ ],
8935
+ outputs: [{ name: "total", type: "uint256" }]
8231
8936
  },
8232
8937
  {
8233
- name: "validatorJoin",
8938
+ name: "getPendingDelegatorWithdrawals",
8234
8939
  type: "function",
8235
- stateMutability: "payable",
8236
- inputs: [{ name: "_operator", type: "address" }],
8237
- outputs: [{ name: "validator", type: "address" }]
8940
+ stateMutability: "view",
8941
+ inputs: [
8942
+ { name: "_delegator", type: "address" },
8943
+ { name: "_validator", type: "address" }
8944
+ ],
8945
+ outputs: [{ name: "total", type: "uint256" }]
8238
8946
  },
8239
8947
  {
8240
- name: "validatorDeposit",
8948
+ name: "getPendingValidatorDeposits",
8241
8949
  type: "function",
8242
- stateMutability: "payable",
8950
+ stateMutability: "view",
8951
+ inputs: [{ name: "_validator", type: "address" }],
8952
+ outputs: [{ name: "total", type: "uint256" }]
8953
+ },
8954
+ {
8955
+ name: "getPendingValidatorWithdrawals",
8956
+ type: "function",
8957
+ stateMutability: "view",
8958
+ inputs: [{ name: "_validator", type: "address" }],
8959
+ outputs: [{ name: "total", type: "uint256" }]
8960
+ },
8961
+ {
8962
+ name: "getValidatorDelegators",
8963
+ type: "function",
8964
+ stateMutability: "view",
8965
+ inputs: [{ name: "_validator", type: "address" }],
8966
+ outputs: [{ name: "", type: "address[]" }]
8967
+ },
8968
+ {
8969
+ name: "getValidatorDelegatorsPaginated",
8970
+ type: "function",
8971
+ stateMutability: "view",
8972
+ inputs: [
8973
+ { name: "_validator", type: "address" },
8974
+ { name: "_startIndex", type: "uint256" },
8975
+ { name: "_pageSize", type: "uint256" }
8976
+ ],
8977
+ outputs: [{ name: "", type: "address[]" }]
8978
+ },
8979
+ {
8980
+ name: "getValidatorQuarantineList",
8981
+ type: "function",
8982
+ stateMutability: "view",
8243
8983
  inputs: [],
8244
- outputs: []
8984
+ outputs: [{ name: "", type: "address[]" }]
8245
8985
  },
8246
8986
  {
8247
- name: "validatorExit",
8987
+ name: "getValidatorsJoined",
8988
+ type: "function",
8989
+ stateMutability: "view",
8990
+ inputs: [
8991
+ { name: "_startIndex", type: "uint256" },
8992
+ { name: "_pageSize", type: "uint256" }
8993
+ ],
8994
+ outputs: [{ name: "", type: "address[]" }]
8995
+ },
8996
+ {
8997
+ name: "idlenessBan",
8248
8998
  type: "function",
8249
8999
  stateMutability: "nonpayable",
8250
- inputs: [{ name: "_sharesWithdrawal", type: "uint256" }],
9000
+ inputs: [
9001
+ { name: "_validator", type: "address" },
9002
+ { name: "_at", type: "uint256" },
9003
+ { name: "_until", type: "uint256" }
9004
+ ],
8251
9005
  outputs: []
8252
9006
  },
8253
9007
  {
8254
- name: "validatorClaim",
9008
+ name: "idlenessBanBatch",
8255
9009
  type: "function",
8256
9010
  stateMutability: "nonpayable",
8257
- inputs: [{ name: "_validator", type: "address" }],
9011
+ inputs: [
9012
+ { name: "_validators", type: "address[]" },
9013
+ { name: "_quarantinedAt", type: "uint256" },
9014
+ { name: "_quarantinedUntil", type: "uint256" }
9015
+ ],
9016
+ outputs: []
9017
+ },
9018
+ {
9019
+ name: "inflationEpoch",
9020
+ type: "function",
9021
+ stateMutability: "view",
9022
+ inputs: [],
8258
9023
  outputs: [{ name: "", type: "uint256" }]
8259
9024
  },
8260
9025
  {
8261
- name: "validatorPrime",
9026
+ name: "inflationInit",
8262
9027
  type: "function",
8263
9028
  stateMutability: "nonpayable",
8264
- inputs: [{ name: "_validator", type: "address" }],
9029
+ inputs: [{ name: "_inflationOnset", type: "uint256" }],
8265
9030
  outputs: []
8266
9031
  },
8267
- // Delegator functions
8268
9032
  {
8269
- name: "delegatorJoin",
9033
+ name: "inflationReceive",
8270
9034
  type: "function",
8271
9035
  stateMutability: "payable",
8272
- inputs: [{ name: "_validator", type: "address" }],
9036
+ inputs: [{ name: "_epoch", type: "uint256" }],
8273
9037
  outputs: []
8274
9038
  },
8275
9039
  {
8276
- name: "delegatorExit",
9040
+ name: "isDelegatorOfValidator",
8277
9041
  type: "function",
8278
- stateMutability: "nonpayable",
9042
+ stateMutability: "view",
8279
9043
  inputs: [
8280
9044
  { name: "_validator", type: "address" },
8281
- { name: "_sharesExit", type: "uint256" }
9045
+ { name: "_delegator", type: "address" }
8282
9046
  ],
9047
+ outputs: [{ name: "", type: "bool" }]
9048
+ },
9049
+ {
9050
+ name: "isValidator",
9051
+ type: "function",
9052
+ stateMutability: "view",
9053
+ inputs: [{ name: "_validator", type: "address" }],
9054
+ outputs: [{ name: "", type: "bool" }]
9055
+ },
9056
+ {
9057
+ name: "isValidatorBanned",
9058
+ type: "function",
9059
+ stateMutability: "view",
9060
+ inputs: [{ name: "_validator", type: "address" }],
9061
+ outputs: [{ name: "", type: "bool" }]
9062
+ },
9063
+ {
9064
+ name: "setDeepthought",
9065
+ type: "function",
9066
+ stateMutability: "nonpayable",
9067
+ inputs: [{ name: "_deepthought", type: "address" }],
8283
9068
  outputs: []
8284
9069
  },
8285
9070
  {
8286
- name: "delegatorClaim",
9071
+ name: "setDelegatorMinimumStake",
9072
+ type: "function",
9073
+ stateMutability: "nonpayable",
9074
+ inputs: [{ name: "_delegatorMinStake", type: "uint256" }],
9075
+ outputs: []
9076
+ },
9077
+ {
9078
+ name: "setEpochMinDuration",
9079
+ type: "function",
9080
+ stateMutability: "nonpayable",
9081
+ inputs: [{ name: "_epochMinDuration", type: "uint256" }],
9082
+ outputs: []
9083
+ },
9084
+ {
9085
+ name: "setEpochMinDurationThreshold",
9086
+ type: "function",
9087
+ stateMutability: "nonpayable",
9088
+ inputs: [{ name: "_epochMinDurationThreshold", type: "uint256" }],
9089
+ outputs: []
9090
+ },
9091
+ {
9092
+ name: "setEpochZeroMinDuration",
9093
+ type: "function",
9094
+ stateMutability: "nonpayable",
9095
+ inputs: [{ name: "_epochZeroMinDuration", type: "uint256" }],
9096
+ outputs: []
9097
+ },
9098
+ {
9099
+ name: "setFinalizationPhase",
9100
+ type: "function",
9101
+ stateMutability: "nonpayable",
9102
+ inputs: [{ name: "_finalizationPhase", type: "address" }],
9103
+ outputs: []
9104
+ },
9105
+ {
9106
+ name: "setGen",
9107
+ type: "function",
9108
+ stateMutability: "nonpayable",
9109
+ inputs: [{ name: "_gen", type: "address" }],
9110
+ outputs: []
9111
+ },
9112
+ {
9113
+ name: "setIdlenessPhase",
9114
+ type: "function",
9115
+ stateMutability: "nonpayable",
9116
+ inputs: [{ name: "_idlenessPhase", type: "address" }],
9117
+ outputs: []
9118
+ },
9119
+ {
9120
+ name: "setMaxValidators",
9121
+ type: "function",
9122
+ stateMutability: "nonpayable",
9123
+ inputs: [{ name: "_maxValidators", type: "uint256" }],
9124
+ outputs: []
9125
+ },
9126
+ {
9127
+ name: "setReductionFactor",
9128
+ type: "function",
9129
+ stateMutability: "nonpayable",
9130
+ inputs: [{ name: "_reductionFactor", type: "uint256" }],
9131
+ outputs: []
9132
+ },
9133
+ {
9134
+ name: "setRevealingPhase",
9135
+ type: "function",
9136
+ stateMutability: "nonpayable",
9137
+ inputs: [{ name: "_revealingPhase", type: "address" }],
9138
+ outputs: []
9139
+ },
9140
+ {
9141
+ name: "setStakingInvariant",
9142
+ type: "function",
9143
+ stateMutability: "nonpayable",
9144
+ inputs: [{ name: "_stakingInvariant", type: "address" }],
9145
+ outputs: []
9146
+ },
9147
+ {
9148
+ name: "setTransactionFeesManager",
9149
+ type: "function",
9150
+ stateMutability: "nonpayable",
9151
+ inputs: [{ name: "_transactionFeesManager", type: "address" }],
9152
+ outputs: []
9153
+ },
9154
+ {
9155
+ name: "setUnbondingPeriods",
8287
9156
  type: "function",
8288
9157
  stateMutability: "nonpayable",
8289
9158
  inputs: [
8290
- { name: "_delegator", type: "address" },
8291
- { name: "_validator", type: "address" }
9159
+ { name: "_delegatorUnbondingPeriod", type: "uint256" },
9160
+ { name: "_validatorUnbondingPeriod", type: "uint256" }
8292
9161
  ],
8293
9162
  outputs: []
8294
9163
  },
8295
- // View functions
8296
9164
  {
8297
- name: "isValidator",
9165
+ name: "setValidatorMinimumStake",
8298
9166
  type: "function",
8299
- stateMutability: "view",
8300
- inputs: [{ name: "_address", type: "address" }],
8301
- outputs: [{ name: "", type: "bool" }]
9167
+ stateMutability: "nonpayable",
9168
+ inputs: [{ name: "_validatorMinStake", type: "uint256" }],
9169
+ outputs: []
8302
9170
  },
8303
9171
  {
8304
- name: "validatorView",
9172
+ name: "setValidatorWeightParams",
8305
9173
  type: "function",
8306
- stateMutability: "view",
8307
- inputs: [{ name: "_validator", type: "address" }],
8308
- outputs: [
8309
- {
8310
- name: "",
8311
- type: "tuple",
8312
- components: [
8313
- { name: "left", type: "address" },
8314
- { name: "right", type: "address" },
8315
- { name: "parent", type: "address" },
8316
- { name: "eBanned", type: "uint256" },
8317
- { name: "ePrimed", type: "uint256" },
8318
- { name: "vStake", type: "uint256" },
8319
- { name: "vShares", type: "uint256" },
8320
- { name: "dStake", type: "uint256" },
8321
- { name: "dShares", type: "uint256" },
8322
- { name: "vDeposit", type: "uint256" },
8323
- { name: "vWithdrawal", type: "uint256" },
8324
- { name: "live", type: "bool" }
8325
- ]
8326
- }
8327
- ]
9174
+ stateMutability: "nonpayable",
9175
+ inputs: [
9176
+ { name: "_alpha", type: "uint256" },
9177
+ { name: "_beta", type: "uint256" }
9178
+ ],
9179
+ outputs: []
8328
9180
  },
8329
9181
  {
8330
9182
  name: "sharesOf",
@@ -8347,235 +9199,249 @@ var STAKING_ABI = [
8347
9199
  outputs: [{ name: "", type: "uint256" }]
8348
9200
  },
8349
9201
  {
8350
- name: "epoch",
9202
+ name: "validatorBanDeterministic",
8351
9203
  type: "function",
8352
- stateMutability: "view",
8353
- inputs: [],
9204
+ stateMutability: "nonpayable",
9205
+ inputs: [{ name: "_validator", type: "address" }],
9206
+ outputs: []
9207
+ },
9208
+ {
9209
+ name: "validatorClaim",
9210
+ type: "function",
9211
+ stateMutability: "nonpayable",
9212
+ inputs: [{ name: "_validator", type: "address" }],
8354
9213
  outputs: [{ name: "", type: "uint256" }]
8355
9214
  },
8356
9215
  {
8357
- name: "finalized",
9216
+ name: "validatorDelegatorCount",
8358
9217
  type: "function",
8359
9218
  stateMutability: "view",
8360
- inputs: [],
9219
+ inputs: [{ name: "_validator", type: "address" }],
8361
9220
  outputs: [{ name: "", type: "uint256" }]
8362
9221
  },
8363
9222
  {
8364
- name: "validatorMinStake",
9223
+ name: "validatorDeposit",
8365
9224
  type: "function",
8366
9225
  stateMutability: "view",
9226
+ inputs: [
9227
+ { name: "_validator", type: "address" },
9228
+ { name: "_index", type: "uint256" }
9229
+ ],
9230
+ outputs: [
9231
+ { name: "epoch_", type: "uint256" },
9232
+ {
9233
+ name: "commit_",
9234
+ type: "tuple",
9235
+ components: [
9236
+ { name: "input", type: "uint256" },
9237
+ { name: "output", type: "uint256" },
9238
+ { name: "epoch", type: "uint256" },
9239
+ { name: "linkToNextCommit", type: "uint256" }
9240
+ ]
9241
+ }
9242
+ ]
9243
+ },
9244
+ {
9245
+ name: "validatorDeposit",
9246
+ type: "function",
9247
+ stateMutability: "payable",
8367
9248
  inputs: [],
8368
- outputs: [{ name: "", type: "uint256" }]
9249
+ outputs: []
9250
+ },
9251
+ {
9252
+ name: "validatorDepositByEpoch",
9253
+ type: "function",
9254
+ stateMutability: "view",
9255
+ inputs: [
9256
+ { name: "_validator", type: "address" },
9257
+ { name: "_epoch", type: "uint256" }
9258
+ ],
9259
+ outputs: [
9260
+ {
9261
+ name: "commit_",
9262
+ type: "tuple",
9263
+ components: [
9264
+ { name: "input", type: "uint256" },
9265
+ { name: "output", type: "uint256" },
9266
+ { name: "epoch", type: "uint256" },
9267
+ { name: "linkToNextCommit", type: "uint256" }
9268
+ ]
9269
+ }
9270
+ ]
8369
9271
  },
8370
9272
  {
8371
- name: "delegatorMinStake",
9273
+ name: "validatorDepositLen",
8372
9274
  type: "function",
8373
9275
  stateMutability: "view",
8374
- inputs: [],
9276
+ inputs: [{ name: "_validator", type: "address" }],
8375
9277
  outputs: [{ name: "", type: "uint256" }]
8376
9278
  },
8377
9279
  {
8378
- name: "activeValidators",
9280
+ name: "validatorExit",
8379
9281
  type: "function",
8380
- stateMutability: "view",
8381
- inputs: [],
8382
- outputs: [{ name: "", type: "address[]" }]
9282
+ stateMutability: "nonpayable",
9283
+ inputs: [{ name: "_amount", type: "uint256" }],
9284
+ outputs: []
8383
9285
  },
8384
9286
  {
8385
- name: "activeValidatorsCount",
9287
+ name: "validatorJoin",
8386
9288
  type: "function",
8387
- stateMutability: "view",
8388
- inputs: [],
8389
- outputs: [{ name: "", type: "uint256" }]
9289
+ stateMutability: "payable",
9290
+ inputs: [{ name: "_operator", type: "address" }],
9291
+ outputs: [{ name: "", type: "address" }]
8390
9292
  },
8391
9293
  {
8392
- name: "epochOdd",
9294
+ name: "validatorJoin",
8393
9295
  type: "function",
8394
- stateMutability: "view",
9296
+ stateMutability: "payable",
8395
9297
  inputs: [],
8396
- outputs: [
8397
- {
8398
- name: "",
8399
- type: "tuple",
8400
- components: [
8401
- { name: "start", type: "uint256" },
8402
- { name: "end", type: "uint256" },
8403
- { name: "inflation", type: "uint256" },
8404
- { name: "weight", type: "uint256" },
8405
- { name: "weightDeposit", type: "uint256" },
8406
- { name: "weightWithdrawal", type: "uint256" },
8407
- { name: "vcount", type: "uint256" },
8408
- { name: "claimed", type: "uint256" },
8409
- { name: "stakeDeposit", type: "uint256" },
8410
- { name: "stakeWithdrawal", type: "uint256" },
8411
- { name: "slashed", type: "uint256" }
8412
- ]
8413
- }
8414
- ]
9298
+ outputs: [{ name: "", type: "address" }]
8415
9299
  },
8416
9300
  {
8417
- name: "epochEven",
9301
+ name: "validatorPrime",
8418
9302
  type: "function",
8419
- stateMutability: "view",
8420
- inputs: [],
8421
- outputs: [
8422
- {
8423
- name: "",
8424
- type: "tuple",
8425
- components: [
8426
- { name: "start", type: "uint256" },
8427
- { name: "end", type: "uint256" },
8428
- { name: "inflation", type: "uint256" },
8429
- { name: "weight", type: "uint256" },
8430
- { name: "weightDeposit", type: "uint256" },
8431
- { name: "weightWithdrawal", type: "uint256" },
8432
- { name: "vcount", type: "uint256" },
8433
- { name: "claimed", type: "uint256" },
8434
- { name: "stakeDeposit", type: "uint256" },
8435
- { name: "stakeWithdrawal", type: "uint256" },
8436
- { name: "slashed", type: "uint256" }
8437
- ]
8438
- }
8439
- ]
9303
+ stateMutability: "nonpayable",
9304
+ inputs: [{ name: "_validator", type: "address" }],
9305
+ outputs: []
8440
9306
  },
8441
9307
  {
8442
- name: "epochMinDuration",
9308
+ name: "validatorQuarantine",
8443
9309
  type: "function",
8444
- stateMutability: "view",
8445
- inputs: [],
8446
- outputs: [{ name: "", type: "uint256" }]
9310
+ stateMutability: "nonpayable",
9311
+ inputs: [
9312
+ { name: "_validator", type: "address" },
9313
+ { name: "_at", type: "uint256" }
9314
+ ],
9315
+ outputs: []
8447
9316
  },
8448
9317
  {
8449
- name: "epochZeroMinDuration",
9318
+ name: "validatorQuarantineCount",
8450
9319
  type: "function",
8451
9320
  stateMutability: "view",
8452
9321
  inputs: [],
8453
9322
  outputs: [{ name: "", type: "uint256" }]
8454
9323
  },
8455
9324
  {
8456
- name: "getQuarantinedValidators",
9325
+ name: "validatorQuarantineRepeal",
8457
9326
  type: "function",
8458
- stateMutability: "view",
8459
- inputs: [],
8460
- outputs: [{ name: "", type: "address[]" }]
9327
+ stateMutability: "nonpayable",
9328
+ inputs: [{ name: "_validator", type: "address" }],
9329
+ outputs: []
8461
9330
  },
8462
9331
  {
8463
- name: "getAllQuarantinedValidators",
9332
+ name: "validatorSelection",
8464
9333
  type: "function",
8465
9334
  stateMutability: "view",
8466
9335
  inputs: [
8467
- { name: "_startIndex", type: "uint256" },
8468
- { name: "_size", type: "uint256" }
9336
+ { name: "_seed", type: "bytes32" },
9337
+ { name: "_slot", type: "uint256" },
9338
+ { name: "_epoch", type: "uint256" },
9339
+ { name: "_txCreatedTimestamp", type: "uint256" },
9340
+ { name: "_number", type: "uint256" },
9341
+ { name: "_weighted", type: "bool" },
9342
+ { name: "_consumed", type: "address[]" }
8469
9343
  ],
8470
9344
  outputs: [
8471
- {
8472
- name: "validatorList",
8473
- type: "tuple[]",
8474
- components: [
8475
- { name: "validator", type: "address" },
8476
- { name: "untilEpochBanned", type: "uint256" },
8477
- { name: "permanentlyBanned", type: "bool" }
8478
- ]
8479
- }
9345
+ { name: "leader_", type: "uint256" },
9346
+ { name: "validators_", type: "address[]" },
9347
+ { name: "penalized_", type: "address[]" }
8480
9348
  ]
8481
9349
  },
8482
9350
  {
8483
- name: "getAllBannedValidators",
9351
+ name: "validatorSelection",
8484
9352
  type: "function",
8485
9353
  stateMutability: "view",
8486
9354
  inputs: [
8487
- { name: "_startIndex", type: "uint256" },
8488
- { name: "_size", type: "uint256" }
9355
+ { name: "_seed", type: "bytes32" },
9356
+ { name: "_slot", type: "uint256" },
9357
+ { name: "_txCreatedTimestamp", type: "uint256" },
9358
+ { name: "_number", type: "uint256" },
9359
+ { name: "_weighted", type: "bool" },
9360
+ { name: "_consumed", type: "address[]" }
8489
9361
  ],
8490
9362
  outputs: [
8491
- {
8492
- name: "validatorList",
8493
- type: "tuple[]",
8494
- components: [
8495
- { name: "validator", type: "address" },
8496
- { name: "untilEpochBanned", type: "uint256" },
8497
- { name: "permanentlyBanned", type: "bool" }
8498
- ]
8499
- }
9363
+ { name: "leader_", type: "uint256" },
9364
+ { name: "validators_", type: "address[]" },
9365
+ { name: "penalized_", type: "address[]" }
8500
9366
  ]
8501
9367
  },
8502
- // Deposit query functions
8503
9368
  {
8504
- name: "validatorDepositLen",
9369
+ name: "validatorView",
8505
9370
  type: "function",
8506
9371
  stateMutability: "view",
8507
9372
  inputs: [{ name: "_validator", type: "address" }],
8508
- outputs: [{ name: "len_", type: "uint256" }]
8509
- },
8510
- {
8511
- name: "validatorDeposit",
8512
- type: "function",
8513
- stateMutability: "view",
8514
- inputs: [
8515
- { name: "_validator", type: "address" },
8516
- { name: "_index", type: "uint256" }
8517
- ],
8518
9373
  outputs: [
8519
- { name: "epoch_", type: "uint256" },
8520
9374
  {
8521
- name: "commit_",
9375
+ name: "",
8522
9376
  type: "tuple",
8523
9377
  components: [
8524
- { name: "input", type: "uint256" },
8525
- { name: "output", type: "uint256" },
8526
- { name: "epoch", type: "uint256" },
8527
- { name: "linkToNextCommit", type: "uint256" }
9378
+ { name: "left", type: "address" },
9379
+ { name: "right", type: "address" },
9380
+ { name: "parent", type: "address" },
9381
+ { name: "eBanned", type: "uint256" },
9382
+ { name: "ePrimed", type: "uint256" },
9383
+ { name: "vStake", type: "uint256" },
9384
+ { name: "vShares", type: "uint256" },
9385
+ { name: "dStake", type: "uint256" },
9386
+ { name: "dShares", type: "uint256" },
9387
+ { name: "vDeposit", type: "uint256" },
9388
+ { name: "vWithdrawal", type: "uint256" },
9389
+ { name: "live", type: "bool" }
8528
9390
  ]
8529
9391
  }
8530
9392
  ]
8531
9393
  },
8532
9394
  {
8533
- name: "delegatorDepositLen",
8534
- type: "function",
8535
- stateMutability: "view",
8536
- inputs: [
8537
- { name: "_delegator", type: "address" },
8538
- { name: "_validator", type: "address" }
8539
- ],
8540
- outputs: [{ name: "", type: "uint256" }]
8541
- },
8542
- {
8543
- name: "delegatorDeposit",
9395
+ name: "validatorViewPrePrimed",
8544
9396
  type: "function",
8545
9397
  stateMutability: "view",
8546
- inputs: [
8547
- { name: "_delegator", type: "address" },
8548
- { name: "_validator", type: "address" },
8549
- { name: "_index", type: "uint256" }
8550
- ],
9398
+ inputs: [{ name: "_validator", type: "address" }],
8551
9399
  outputs: [
8552
9400
  {
8553
- name: "claim_",
8554
- type: "tuple",
8555
- components: [
8556
- { name: "quantity", type: "uint256" },
8557
- { name: "commit", type: "uint256" }
8558
- ]
8559
- },
8560
- {
8561
- name: "commit_",
9401
+ name: "",
8562
9402
  type: "tuple",
8563
9403
  components: [
8564
- { name: "input", type: "uint256" },
8565
- { name: "output", type: "uint256" },
8566
- { name: "epoch", type: "uint256" },
8567
- { name: "linkToNextCommit", type: "uint256" }
9404
+ { name: "left", type: "address" },
9405
+ { name: "right", type: "address" },
9406
+ { name: "parent", type: "address" },
9407
+ { name: "eBanned", type: "uint256" },
9408
+ { name: "ePrimed", type: "uint256" },
9409
+ { name: "vStake", type: "uint256" },
9410
+ { name: "vShares", type: "uint256" },
9411
+ { name: "dStake", type: "uint256" },
9412
+ { name: "dShares", type: "uint256" },
9413
+ { name: "vDeposit", type: "uint256" },
9414
+ { name: "vWithdrawal", type: "uint256" },
9415
+ { name: "live", type: "bool" }
8568
9416
  ]
8569
9417
  }
8570
9418
  ]
8571
9419
  },
8572
- // Withdrawal query functions
8573
9420
  {
8574
- name: "validatorWithdrawalLen",
9421
+ name: "validatorViewPrimed",
8575
9422
  type: "function",
8576
9423
  stateMutability: "view",
8577
9424
  inputs: [{ name: "_validator", type: "address" }],
8578
- outputs: [{ name: "len_", type: "uint256" }]
9425
+ outputs: [
9426
+ {
9427
+ name: "",
9428
+ type: "tuple",
9429
+ components: [
9430
+ { name: "left", type: "address" },
9431
+ { name: "right", type: "address" },
9432
+ { name: "parent", type: "address" },
9433
+ { name: "eBanned", type: "uint256" },
9434
+ { name: "ePrimed", type: "uint256" },
9435
+ { name: "vStake", type: "uint256" },
9436
+ { name: "vShares", type: "uint256" },
9437
+ { name: "dStake", type: "uint256" },
9438
+ { name: "dShares", type: "uint256" },
9439
+ { name: "vDeposit", type: "uint256" },
9440
+ { name: "vWithdrawal", type: "uint256" },
9441
+ { name: "live", type: "bool" }
9442
+ ]
9443
+ }
9444
+ ]
8579
9445
  },
8580
9446
  {
8581
9447
  name: "validatorWithdrawal",
@@ -8600,33 +9466,14 @@ var STAKING_ABI = [
8600
9466
  ]
8601
9467
  },
8602
9468
  {
8603
- name: "delegatorWithdrawalLen",
8604
- type: "function",
8605
- stateMutability: "view",
8606
- inputs: [
8607
- { name: "_delegator", type: "address" },
8608
- { name: "_validator", type: "address" }
8609
- ],
8610
- outputs: [{ name: "", type: "uint256" }]
8611
- },
8612
- {
8613
- name: "delegatorWithdrawal",
9469
+ name: "validatorWithdrawalByEpoch",
8614
9470
  type: "function",
8615
9471
  stateMutability: "view",
8616
9472
  inputs: [
8617
- { name: "_delegator", type: "address" },
8618
9473
  { name: "_validator", type: "address" },
8619
- { name: "_index", type: "uint256" }
9474
+ { name: "_epoch", type: "uint256" }
8620
9475
  ],
8621
9476
  outputs: [
8622
- {
8623
- name: "claim_",
8624
- type: "tuple",
8625
- components: [
8626
- { name: "quantity", type: "uint256" },
8627
- { name: "commit", type: "uint256" }
8628
- ]
8629
- },
8630
9477
  {
8631
9478
  name: "commit_",
8632
9479
  type: "tuple",
@@ -8639,79 +9486,46 @@ var STAKING_ABI = [
8639
9486
  }
8640
9487
  ]
8641
9488
  },
8642
- // Events (none indexed to match deployed contract)
8643
- {
8644
- name: "ValidatorJoin",
8645
- type: "event",
8646
- inputs: [
8647
- { name: "operator", type: "address", indexed: false },
8648
- { name: "validator", type: "address", indexed: false },
8649
- { name: "amount", type: "uint256", indexed: false }
8650
- ]
8651
- },
8652
- {
8653
- name: "ValidatorDeposit",
8654
- type: "event",
8655
- inputs: [
8656
- { name: "validator", type: "address", indexed: false },
8657
- { name: "amount", type: "uint256", indexed: false }
8658
- ]
8659
- },
8660
9489
  {
8661
- name: "ValidatorExit",
8662
- type: "event",
8663
- inputs: [
8664
- { name: "validator", type: "address", indexed: false },
8665
- { name: "shares", type: "uint256", indexed: false }
8666
- ]
9490
+ name: "validatorWithdrawalLen",
9491
+ type: "function",
9492
+ stateMutability: "view",
9493
+ inputs: [{ name: "_validator", type: "address" }],
9494
+ outputs: [{ name: "", type: "uint256" }]
8667
9495
  },
8668
9496
  {
8669
- name: "DelegatorJoin",
8670
- type: "event",
8671
- inputs: [
8672
- { name: "delegator", type: "address", indexed: false },
8673
- { name: "validator", type: "address", indexed: false },
8674
- { name: "amount", type: "uint256", indexed: false }
8675
- ]
9497
+ name: "validatorsCount",
9498
+ type: "function",
9499
+ stateMutability: "view",
9500
+ inputs: [],
9501
+ outputs: [{ name: "", type: "uint256" }]
8676
9502
  },
8677
9503
  {
8678
- name: "ValidatorPrime",
8679
- type: "event",
8680
- inputs: [
8681
- { name: "validator", type: "address", indexed: false },
8682
- { name: "epoch", type: "uint256", indexed: false },
8683
- { name: "validatorRewards", type: "uint256", indexed: false },
8684
- { name: "delegatorRewards", type: "uint256", indexed: false }
8685
- ]
9504
+ name: "validatorsJoinedCount",
9505
+ type: "function",
9506
+ stateMutability: "view",
9507
+ inputs: [],
9508
+ outputs: [{ name: "", type: "uint256" }]
8686
9509
  },
8687
- // External contracts getter
8688
9510
  {
8689
- name: "contracts",
9511
+ name: "validatorsRoot",
8690
9512
  type: "function",
8691
9513
  stateMutability: "view",
8692
9514
  inputs: [],
8693
- outputs: [
8694
- { name: "gen", type: "address" },
8695
- { name: "transactions", type: "address" },
8696
- { name: "idleness", type: "address" },
8697
- { name: "tribunal", type: "address" },
8698
- { name: "slashing", type: "address" },
8699
- { name: "consensus", type: "address" },
8700
- { name: "validatorWalletFactory", type: "address" },
8701
- { name: "nftMinter", type: "address" }
8702
- ]
9515
+ outputs: [{ name: "", type: "address" }]
8703
9516
  }
8704
9517
  ];
8705
9518
 
8706
9519
  // src/chains/testnetAsimov.ts
8707
- var TESTNET_JSON_RPC_URL = "https://genlayer-testnet.rpc.caldera.xyz/http";
9520
+ var TESTNET_JSON_RPC_URL = "https://zksync-os-testnet-genlayer.zksync.dev";
9521
+ var TESTNET_WS_URL = "wss://zksync-os-testnet-genlayer.zksync.dev/ws";
8708
9522
  var STAKING_CONTRACT = {
8709
- address: "0x03f410748EBdb4026a6b8299E9B6603A273709D1",
9523
+ address: "0x63Fa5E0bb10fb6fA98F44726C5518223F767687A",
8710
9524
  abi: STAKING_ABI
8711
9525
  };
8712
9526
  var EXPLORER_URL2 = "https://explorer-asimov.genlayer.com/";
8713
9527
  var CONSENSUS_MAIN_CONTRACT3 = {
8714
- address: "0x67fd4aC71530FB220E0B7F90668BAF977B88fF07",
9528
+ address: "0x6CAFF6769d70824745AD895663409DC70aB5B28E",
8715
9529
  abi: [
8716
9530
  {
8717
9531
  inputs: [],
@@ -10100,7 +10914,7 @@ var CONSENSUS_MAIN_CONTRACT3 = {
10100
10914
  bytecode: ""
10101
10915
  };
10102
10916
  var CONSENSUS_DATA_CONTRACT3 = {
10103
- address: "0xB6E1316E57d47d82FDcEa5002028a554754EF243",
10917
+ address: "0x0D9d1d74d72Fa5eB94bcf746C8FCcb312a722c9B",
10104
10918
  abi: [
10105
10919
  {
10106
10920
  inputs: [],
@@ -12686,7 +13500,8 @@ var testnetAsimov = _viem.defineChain.call(void 0, {
12686
13500
  name: "Genlayer Asimov Testnet",
12687
13501
  rpcUrls: {
12688
13502
  default: {
12689
- http: [TESTNET_JSON_RPC_URL]
13503
+ http: [TESTNET_JSON_RPC_URL],
13504
+ webSocket: [TESTNET_WS_URL]
12690
13505
  }
12691
13506
  },
12692
13507
  nativeCurrency: {