viem 2.47.10 → 2.47.12

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.
Files changed (81) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/_cjs/actions/wallet/prepareTransactionRequest.js +5 -0
  3. package/_cjs/actions/wallet/prepareTransactionRequest.js.map +1 -1
  4. package/_cjs/chains/definitions/fluent.js +26 -0
  5. package/_cjs/chains/definitions/fluent.js.map +1 -0
  6. package/_cjs/chains/index.js +13 -11
  7. package/_cjs/chains/index.js.map +1 -1
  8. package/_cjs/errors/version.js +1 -1
  9. package/_cjs/tempo/Abis.js +656 -4
  10. package/_cjs/tempo/Abis.js.map +1 -1
  11. package/_cjs/tempo/Account.js +6 -2
  12. package/_cjs/tempo/Account.js.map +1 -1
  13. package/_cjs/tempo/Expiry.js +31 -0
  14. package/_cjs/tempo/Expiry.js.map +1 -0
  15. package/_cjs/tempo/actions/accessKey.js +2 -1
  16. package/_cjs/tempo/actions/accessKey.js.map +1 -1
  17. package/_cjs/tempo/actions/validator.js +11 -11
  18. package/_cjs/tempo/actions/validator.js.map +1 -1
  19. package/_cjs/tempo/index.js +3 -1
  20. package/_cjs/tempo/index.js.map +1 -1
  21. package/_cjs/utils/buildRequest.js +2 -0
  22. package/_cjs/utils/buildRequest.js.map +1 -1
  23. package/_esm/actions/wallet/prepareTransactionRequest.js +5 -0
  24. package/_esm/actions/wallet/prepareTransactionRequest.js.map +1 -1
  25. package/_esm/chains/definitions/fluent.js +23 -0
  26. package/_esm/chains/definitions/fluent.js.map +1 -0
  27. package/_esm/chains/index.js +1 -0
  28. package/_esm/chains/index.js.map +1 -1
  29. package/_esm/errors/version.js +1 -1
  30. package/_esm/tempo/Abis.js +655 -3
  31. package/_esm/tempo/Abis.js.map +1 -1
  32. package/_esm/tempo/Account.js +6 -2
  33. package/_esm/tempo/Account.js.map +1 -1
  34. package/_esm/tempo/Expiry.js +29 -0
  35. package/_esm/tempo/Expiry.js.map +1 -0
  36. package/_esm/tempo/actions/accessKey.js +2 -1
  37. package/_esm/tempo/actions/accessKey.js.map +1 -1
  38. package/_esm/tempo/actions/validator.js +11 -11
  39. package/_esm/tempo/actions/validator.js.map +1 -1
  40. package/_esm/tempo/index.js +2 -1
  41. package/_esm/tempo/index.js.map +1 -1
  42. package/_esm/utils/buildRequest.js +5 -0
  43. package/_esm/utils/buildRequest.js.map +1 -1
  44. package/_types/actions/wallet/prepareTransactionRequest.d.ts.map +1 -1
  45. package/_types/chains/definitions/fluent.d.ts +48 -0
  46. package/_types/chains/definitions/fluent.d.ts.map +1 -0
  47. package/_types/chains/definitions/tempo.d.ts +10 -10
  48. package/_types/chains/definitions/tempoDevnet.d.ts +10 -10
  49. package/_types/chains/definitions/tempoLocalnet.d.ts +10 -10
  50. package/_types/chains/definitions/tempoModerato.d.ts +10 -10
  51. package/_types/chains/index.d.ts +1 -0
  52. package/_types/chains/index.d.ts.map +1 -1
  53. package/_types/errors/version.d.ts +1 -1
  54. package/_types/tempo/Abis.d.ts +1072 -35
  55. package/_types/tempo/Abis.d.ts.map +1 -1
  56. package/_types/tempo/Account.d.ts +2 -2
  57. package/_types/tempo/Account.d.ts.map +1 -1
  58. package/_types/tempo/Expiry.d.ts +15 -0
  59. package/_types/tempo/Expiry.d.ts.map +1 -0
  60. package/_types/tempo/actions/accessKey.d.ts +539 -0
  61. package/_types/tempo/actions/accessKey.d.ts.map +1 -1
  62. package/_types/tempo/actions/policy.d.ts +444 -4
  63. package/_types/tempo/actions/policy.d.ts.map +1 -1
  64. package/_types/tempo/actions/validator.d.ts +6 -6
  65. package/_types/tempo/actions/validator.d.ts.map +1 -1
  66. package/_types/tempo/chainConfig.d.ts +5 -5
  67. package/_types/tempo/index.d.ts +2 -1
  68. package/_types/tempo/index.d.ts.map +1 -1
  69. package/_types/utils/buildRequest.d.ts.map +1 -1
  70. package/actions/wallet/prepareTransactionRequest.ts +5 -0
  71. package/chains/definitions/fluent.ts +23 -0
  72. package/chains/index.ts +1 -0
  73. package/errors/version.ts +1 -1
  74. package/package.json +2 -2
  75. package/tempo/Abis.ts +658 -3
  76. package/tempo/Account.ts +8 -4
  77. package/tempo/Expiry.ts +34 -0
  78. package/tempo/actions/accessKey.ts +13 -2
  79. package/tempo/actions/validator.ts +17 -17
  80. package/tempo/index.ts +2 -1
  81. package/utils/buildRequest.ts +4 -0
@@ -558,6 +558,384 @@ export const tip20 = [
558
558
  },
559
559
  { name: 'Unauthorized', type: 'error', inputs: [] },
560
560
  ];
561
+ export const validatorConfigV2 = [
562
+ {
563
+ name: 'getActiveValidators',
564
+ type: 'function',
565
+ stateMutability: 'view',
566
+ inputs: [],
567
+ outputs: [
568
+ {
569
+ type: 'tuple[]',
570
+ name: 'validators',
571
+ components: [
572
+ { type: 'bytes32', name: 'publicKey' },
573
+ { type: 'address', name: 'validatorAddress' },
574
+ { type: 'string', name: 'ingress' },
575
+ { type: 'string', name: 'egress' },
576
+ { type: 'address', name: 'feeRecipient' },
577
+ { type: 'uint64', name: 'index' },
578
+ { type: 'uint64', name: 'addedAtHeight' },
579
+ { type: 'uint64', name: 'deactivatedAtHeight' },
580
+ ],
581
+ },
582
+ ],
583
+ },
584
+ {
585
+ name: 'getInitializedAtHeight',
586
+ type: 'function',
587
+ stateMutability: 'view',
588
+ inputs: [],
589
+ outputs: [{ type: 'uint64' }],
590
+ },
591
+ {
592
+ name: 'owner',
593
+ type: 'function',
594
+ stateMutability: 'view',
595
+ inputs: [],
596
+ outputs: [{ type: 'address' }],
597
+ },
598
+ {
599
+ name: 'validatorCount',
600
+ type: 'function',
601
+ stateMutability: 'view',
602
+ inputs: [],
603
+ outputs: [{ type: 'uint64' }],
604
+ },
605
+ {
606
+ name: 'validatorByIndex',
607
+ type: 'function',
608
+ stateMutability: 'view',
609
+ inputs: [{ type: 'uint64', name: 'index' }],
610
+ outputs: [
611
+ {
612
+ type: 'tuple',
613
+ components: [
614
+ { type: 'bytes32', name: 'publicKey' },
615
+ { type: 'address', name: 'validatorAddress' },
616
+ { type: 'string', name: 'ingress' },
617
+ { type: 'string', name: 'egress' },
618
+ { type: 'address', name: 'feeRecipient' },
619
+ { type: 'uint64', name: 'index' },
620
+ { type: 'uint64', name: 'addedAtHeight' },
621
+ { type: 'uint64', name: 'deactivatedAtHeight' },
622
+ ],
623
+ },
624
+ ],
625
+ },
626
+ {
627
+ name: 'validatorByAddress',
628
+ type: 'function',
629
+ stateMutability: 'view',
630
+ inputs: [{ type: 'address', name: 'validatorAddress' }],
631
+ outputs: [
632
+ {
633
+ type: 'tuple',
634
+ components: [
635
+ { type: 'bytes32', name: 'publicKey' },
636
+ { type: 'address', name: 'validatorAddress' },
637
+ { type: 'string', name: 'ingress' },
638
+ { type: 'string', name: 'egress' },
639
+ { type: 'address', name: 'feeRecipient' },
640
+ { type: 'uint64', name: 'index' },
641
+ { type: 'uint64', name: 'addedAtHeight' },
642
+ { type: 'uint64', name: 'deactivatedAtHeight' },
643
+ ],
644
+ },
645
+ ],
646
+ },
647
+ {
648
+ name: 'validatorByPublicKey',
649
+ type: 'function',
650
+ stateMutability: 'view',
651
+ inputs: [{ type: 'bytes32', name: 'publicKey' }],
652
+ outputs: [
653
+ {
654
+ type: 'tuple',
655
+ components: [
656
+ { type: 'bytes32', name: 'publicKey' },
657
+ { type: 'address', name: 'validatorAddress' },
658
+ { type: 'string', name: 'ingress' },
659
+ { type: 'string', name: 'egress' },
660
+ { type: 'address', name: 'feeRecipient' },
661
+ { type: 'uint64', name: 'index' },
662
+ { type: 'uint64', name: 'addedAtHeight' },
663
+ { type: 'uint64', name: 'deactivatedAtHeight' },
664
+ ],
665
+ },
666
+ ],
667
+ },
668
+ {
669
+ name: 'getNextNetworkIdentityRotationEpoch',
670
+ type: 'function',
671
+ stateMutability: 'view',
672
+ inputs: [],
673
+ outputs: [{ type: 'uint64' }],
674
+ },
675
+ {
676
+ name: 'isInitialized',
677
+ type: 'function',
678
+ stateMutability: 'view',
679
+ inputs: [],
680
+ outputs: [{ type: 'bool' }],
681
+ },
682
+ {
683
+ name: 'addValidator',
684
+ type: 'function',
685
+ stateMutability: 'nonpayable',
686
+ inputs: [
687
+ { type: 'address', name: 'validatorAddress' },
688
+ { type: 'bytes32', name: 'publicKey' },
689
+ { type: 'string', name: 'ingress' },
690
+ { type: 'string', name: 'egress' },
691
+ { type: 'address', name: 'feeRecipient' },
692
+ { type: 'bytes', name: 'signature' },
693
+ ],
694
+ outputs: [{ type: 'uint64', name: 'index' }],
695
+ },
696
+ {
697
+ name: 'deactivateValidator',
698
+ type: 'function',
699
+ stateMutability: 'nonpayable',
700
+ inputs: [{ type: 'uint64', name: 'idx' }],
701
+ outputs: [],
702
+ },
703
+ {
704
+ name: 'rotateValidator',
705
+ type: 'function',
706
+ stateMutability: 'nonpayable',
707
+ inputs: [
708
+ { type: 'uint64', name: 'idx' },
709
+ { type: 'bytes32', name: 'publicKey' },
710
+ { type: 'string', name: 'ingress' },
711
+ { type: 'string', name: 'egress' },
712
+ { type: 'bytes', name: 'signature' },
713
+ ],
714
+ outputs: [],
715
+ },
716
+ {
717
+ name: 'setFeeRecipient',
718
+ type: 'function',
719
+ stateMutability: 'nonpayable',
720
+ inputs: [
721
+ { type: 'uint64', name: 'idx' },
722
+ { type: 'address', name: 'feeRecipient' },
723
+ ],
724
+ outputs: [],
725
+ },
726
+ {
727
+ name: 'setIpAddresses',
728
+ type: 'function',
729
+ stateMutability: 'nonpayable',
730
+ inputs: [
731
+ { type: 'uint64', name: 'idx' },
732
+ { type: 'string', name: 'ingress' },
733
+ { type: 'string', name: 'egress' },
734
+ ],
735
+ outputs: [],
736
+ },
737
+ {
738
+ name: 'transferValidatorOwnership',
739
+ type: 'function',
740
+ stateMutability: 'nonpayable',
741
+ inputs: [
742
+ { type: 'uint64', name: 'idx' },
743
+ { type: 'address', name: 'newAddress' },
744
+ ],
745
+ outputs: [],
746
+ },
747
+ {
748
+ name: 'transferOwnership',
749
+ type: 'function',
750
+ stateMutability: 'nonpayable',
751
+ inputs: [{ type: 'address', name: 'newOwner' }],
752
+ outputs: [],
753
+ },
754
+ {
755
+ name: 'setNetworkIdentityRotationEpoch',
756
+ type: 'function',
757
+ stateMutability: 'nonpayable',
758
+ inputs: [{ type: 'uint64', name: 'epoch' }],
759
+ outputs: [],
760
+ },
761
+ {
762
+ name: 'migrateValidator',
763
+ type: 'function',
764
+ stateMutability: 'nonpayable',
765
+ inputs: [{ type: 'uint64', name: 'idx' }],
766
+ outputs: [],
767
+ },
768
+ {
769
+ name: 'initializeIfMigrated',
770
+ type: 'function',
771
+ stateMutability: 'nonpayable',
772
+ inputs: [],
773
+ outputs: [],
774
+ },
775
+ {
776
+ name: 'ValidatorAdded',
777
+ type: 'event',
778
+ inputs: [
779
+ { type: 'uint64', name: 'index', indexed: true },
780
+ { type: 'address', name: 'validatorAddress', indexed: true },
781
+ { type: 'bytes32', name: 'publicKey' },
782
+ { type: 'string', name: 'ingress' },
783
+ { type: 'string', name: 'egress' },
784
+ { type: 'address', name: 'feeRecipient' },
785
+ ],
786
+ },
787
+ {
788
+ name: 'ValidatorDeactivated',
789
+ type: 'event',
790
+ inputs: [
791
+ { type: 'uint64', name: 'index', indexed: true },
792
+ { type: 'address', name: 'validatorAddress', indexed: true },
793
+ ],
794
+ },
795
+ {
796
+ name: 'ValidatorRotated',
797
+ type: 'event',
798
+ inputs: [
799
+ { type: 'uint64', name: 'index', indexed: true },
800
+ { type: 'uint64', name: 'deactivatedIndex', indexed: true },
801
+ { type: 'address', name: 'validatorAddress', indexed: true },
802
+ { type: 'bytes32', name: 'oldPublicKey' },
803
+ { type: 'bytes32', name: 'newPublicKey' },
804
+ { type: 'string', name: 'ingress' },
805
+ { type: 'string', name: 'egress' },
806
+ { type: 'address', name: 'caller' },
807
+ ],
808
+ },
809
+ {
810
+ name: 'FeeRecipientUpdated',
811
+ type: 'event',
812
+ inputs: [
813
+ { type: 'uint64', name: 'index', indexed: true },
814
+ { type: 'address', name: 'feeRecipient' },
815
+ { type: 'address', name: 'caller' },
816
+ ],
817
+ },
818
+ {
819
+ name: 'IpAddressesUpdated',
820
+ type: 'event',
821
+ inputs: [
822
+ { type: 'uint64', name: 'index', indexed: true },
823
+ { type: 'string', name: 'ingress' },
824
+ { type: 'string', name: 'egress' },
825
+ { type: 'address', name: 'caller' },
826
+ ],
827
+ },
828
+ {
829
+ name: 'ValidatorOwnershipTransferred',
830
+ type: 'event',
831
+ inputs: [
832
+ { type: 'uint64', name: 'index', indexed: true },
833
+ { type: 'address', name: 'oldAddress', indexed: true },
834
+ { type: 'address', name: 'newAddress', indexed: true },
835
+ { type: 'address', name: 'caller' },
836
+ ],
837
+ },
838
+ {
839
+ name: 'OwnershipTransferred',
840
+ type: 'event',
841
+ inputs: [
842
+ { type: 'address', name: 'oldOwner', indexed: true },
843
+ { type: 'address', name: 'newOwner', indexed: true },
844
+ ],
845
+ },
846
+ {
847
+ name: 'ValidatorMigrated',
848
+ type: 'event',
849
+ inputs: [
850
+ { type: 'uint64', name: 'index', indexed: true },
851
+ { type: 'address', name: 'validatorAddress', indexed: true },
852
+ { type: 'bytes32', name: 'publicKey' },
853
+ ],
854
+ },
855
+ {
856
+ name: 'NetworkIdentityRotationEpochSet',
857
+ type: 'event',
858
+ inputs: [
859
+ { type: 'uint64', name: 'previousEpoch', indexed: true },
860
+ { type: 'uint64', name: 'nextEpoch', indexed: true },
861
+ ],
862
+ },
863
+ {
864
+ name: 'Initialized',
865
+ type: 'event',
866
+ inputs: [{ type: 'uint64', name: 'height' }],
867
+ },
868
+ {
869
+ name: 'SkippedValidatorMigration',
870
+ type: 'event',
871
+ inputs: [
872
+ { type: 'uint64', name: 'index', indexed: true },
873
+ { type: 'address', name: 'validatorAddress', indexed: true },
874
+ { type: 'bytes32', name: 'publicKey' },
875
+ ],
876
+ },
877
+ { name: 'AlreadyInitialized', type: 'error', inputs: [] },
878
+ {
879
+ name: 'IngressAlreadyExists',
880
+ type: 'error',
881
+ inputs: [{ type: 'string', name: 'ingress' }],
882
+ },
883
+ { name: 'EmptyV1ValidatorSet', type: 'error', inputs: [] },
884
+ { name: 'InvalidMigrationIndex', type: 'error', inputs: [] },
885
+ { name: 'InvalidOwner', type: 'error', inputs: [] },
886
+ { name: 'InvalidPublicKey', type: 'error', inputs: [] },
887
+ { name: 'InvalidSignature', type: 'error', inputs: [] },
888
+ { name: 'InvalidSignatureFormat', type: 'error', inputs: [] },
889
+ { name: 'InvalidValidatorAddress', type: 'error', inputs: [] },
890
+ { name: 'MigrationNotComplete', type: 'error', inputs: [] },
891
+ { name: 'NotInitialized', type: 'error', inputs: [] },
892
+ {
893
+ name: 'NotIp',
894
+ type: 'error',
895
+ inputs: [
896
+ { type: 'string', name: 'input' },
897
+ { type: 'string', name: 'backtrace' },
898
+ ],
899
+ },
900
+ {
901
+ name: 'NotIpPort',
902
+ type: 'error',
903
+ inputs: [
904
+ { type: 'string', name: 'input' },
905
+ { type: 'string', name: 'backtrace' },
906
+ ],
907
+ },
908
+ { name: 'PublicKeyAlreadyExists', type: 'error', inputs: [] },
909
+ { name: 'Unauthorized', type: 'error', inputs: [] },
910
+ { name: 'AddressAlreadyHasValidator', type: 'error', inputs: [] },
911
+ { name: 'ValidatorAlreadyDeactivated', type: 'error', inputs: [] },
912
+ { name: 'ValidatorNotFound', type: 'error', inputs: [] },
913
+ ];
914
+ export const signatureVerifier = [
915
+ {
916
+ name: 'recover',
917
+ type: 'function',
918
+ stateMutability: 'view',
919
+ inputs: [
920
+ { type: 'bytes32', name: 'hash' },
921
+ { type: 'bytes', name: 'signature' },
922
+ ],
923
+ outputs: [{ type: 'address', name: 'signer' }],
924
+ },
925
+ {
926
+ name: 'verify',
927
+ type: 'function',
928
+ stateMutability: 'view',
929
+ inputs: [
930
+ { type: 'address', name: 'signer' },
931
+ { type: 'bytes32', name: 'hash' },
932
+ { type: 'bytes', name: 'signature' },
933
+ ],
934
+ outputs: [{ type: 'bool' }],
935
+ },
936
+ { name: 'InvalidFormat', type: 'error', inputs: [] },
937
+ { name: 'InvalidSignature', type: 'error', inputs: [] },
938
+ ];
561
939
  export const stablecoinDex = [
562
940
  {
563
941
  name: 'createPair',
@@ -871,6 +1249,70 @@ export const stablecoinDex = [
871
1249
  { name: 'InvalidBaseToken', type: 'error', inputs: [] },
872
1250
  { name: 'OrderNotStale', type: 'error', inputs: [] },
873
1251
  ];
1252
+ export const addressRegistry = [
1253
+ {
1254
+ name: 'registerVirtualMaster',
1255
+ type: 'function',
1256
+ stateMutability: 'nonpayable',
1257
+ inputs: [{ type: 'bytes32', name: 'salt' }],
1258
+ outputs: [{ type: 'bytes4', name: 'masterId' }],
1259
+ },
1260
+ {
1261
+ name: 'getMaster',
1262
+ type: 'function',
1263
+ stateMutability: 'view',
1264
+ inputs: [{ type: 'bytes4', name: 'masterId' }],
1265
+ outputs: [{ type: 'address' }],
1266
+ },
1267
+ {
1268
+ name: 'resolveRecipient',
1269
+ type: 'function',
1270
+ stateMutability: 'view',
1271
+ inputs: [{ type: 'address', name: 'to' }],
1272
+ outputs: [{ type: 'address', name: 'effectiveRecipient' }],
1273
+ },
1274
+ {
1275
+ name: 'resolveVirtualAddress',
1276
+ type: 'function',
1277
+ stateMutability: 'view',
1278
+ inputs: [{ type: 'address', name: 'virtualAddr' }],
1279
+ outputs: [{ type: 'address', name: 'master' }],
1280
+ },
1281
+ {
1282
+ name: 'isVirtualAddress',
1283
+ type: 'function',
1284
+ stateMutability: 'pure',
1285
+ inputs: [{ type: 'address', name: 'addr' }],
1286
+ outputs: [{ type: 'bool' }],
1287
+ },
1288
+ {
1289
+ name: 'decodeVirtualAddress',
1290
+ type: 'function',
1291
+ stateMutability: 'pure',
1292
+ inputs: [{ type: 'address', name: 'addr' }],
1293
+ outputs: [
1294
+ { type: 'bool', name: 'isVirtual' },
1295
+ { type: 'bytes4', name: 'masterId' },
1296
+ { type: 'bytes6', name: 'userTag' },
1297
+ ],
1298
+ },
1299
+ {
1300
+ name: 'MasterRegistered',
1301
+ type: 'event',
1302
+ inputs: [
1303
+ { type: 'bytes4', name: 'masterId', indexed: true },
1304
+ { type: 'address', name: 'masterAddress', indexed: true },
1305
+ ],
1306
+ },
1307
+ {
1308
+ name: 'MasterIdCollision',
1309
+ type: 'error',
1310
+ inputs: [{ type: 'address', name: 'master' }],
1311
+ },
1312
+ { name: 'InvalidMasterAddress', type: 'error', inputs: [] },
1313
+ { name: 'ProofOfWorkFailed', type: 'error', inputs: [] },
1314
+ { name: 'VirtualAddressUnregistered', type: 'error', inputs: [] },
1315
+ ];
874
1316
  export const feeManager = [
875
1317
  {
876
1318
  name: 'userTokens',
@@ -1148,6 +1590,49 @@ export const accountKeychain = [
1148
1590
  ],
1149
1591
  outputs: [],
1150
1592
  },
1593
+ {
1594
+ name: 'authorizeKey',
1595
+ type: 'function',
1596
+ stateMutability: 'nonpayable',
1597
+ inputs: [
1598
+ { type: 'address', name: 'keyId' },
1599
+ { type: 'uint8', name: 'signatureType' },
1600
+ {
1601
+ type: 'tuple',
1602
+ name: 'config',
1603
+ components: [
1604
+ { type: 'uint64', name: 'expiry' },
1605
+ { type: 'bool', name: 'enforceLimits' },
1606
+ {
1607
+ type: 'tuple[]',
1608
+ name: 'limits',
1609
+ components: [
1610
+ { type: 'address', name: 'token' },
1611
+ { type: 'uint256', name: 'amount' },
1612
+ { type: 'uint64', name: 'period' },
1613
+ ],
1614
+ },
1615
+ { type: 'bool', name: 'allowAnyCalls' },
1616
+ {
1617
+ type: 'tuple[]',
1618
+ name: 'allowedCalls',
1619
+ components: [
1620
+ { type: 'address', name: 'target' },
1621
+ {
1622
+ type: 'tuple[]',
1623
+ name: 'selectorRules',
1624
+ components: [
1625
+ { type: 'bytes4', name: 'selector' },
1626
+ { type: 'address[]', name: 'recipients' },
1627
+ ],
1628
+ },
1629
+ ],
1630
+ },
1631
+ ],
1632
+ },
1633
+ ],
1634
+ outputs: [],
1635
+ },
1151
1636
  {
1152
1637
  name: 'revokeKey',
1153
1638
  type: 'function',
@@ -1166,6 +1651,40 @@ export const accountKeychain = [
1166
1651
  ],
1167
1652
  outputs: [],
1168
1653
  },
1654
+ {
1655
+ name: 'setAllowedCalls',
1656
+ type: 'function',
1657
+ stateMutability: 'nonpayable',
1658
+ inputs: [
1659
+ { type: 'address', name: 'keyId' },
1660
+ {
1661
+ type: 'tuple[]',
1662
+ name: 'scopes',
1663
+ components: [
1664
+ { type: 'address', name: 'target' },
1665
+ {
1666
+ type: 'tuple[]',
1667
+ name: 'selectorRules',
1668
+ components: [
1669
+ { type: 'bytes4', name: 'selector' },
1670
+ { type: 'address[]', name: 'recipients' },
1671
+ ],
1672
+ },
1673
+ ],
1674
+ },
1675
+ ],
1676
+ outputs: [],
1677
+ },
1678
+ {
1679
+ name: 'removeAllowedCalls',
1680
+ type: 'function',
1681
+ stateMutability: 'nonpayable',
1682
+ inputs: [
1683
+ { type: 'address', name: 'keyId' },
1684
+ { type: 'address', name: 'target' },
1685
+ ],
1686
+ outputs: [],
1687
+ },
1169
1688
  {
1170
1689
  name: 'getKey',
1171
1690
  type: 'function',
@@ -1196,7 +1715,7 @@ export const accountKeychain = [
1196
1715
  { type: 'address', name: 'keyId' },
1197
1716
  { type: 'address', name: 'token' },
1198
1717
  ],
1199
- outputs: [{ type: 'uint256' }],
1718
+ outputs: [{ type: 'uint256', name: 'remaining' }],
1200
1719
  },
1201
1720
  {
1202
1721
  name: 'getRemainingLimitWithPeriod',
@@ -1212,6 +1731,33 @@ export const accountKeychain = [
1212
1731
  { type: 'uint64', name: 'periodEnd' },
1213
1732
  ],
1214
1733
  },
1734
+ {
1735
+ name: 'getAllowedCalls',
1736
+ type: 'function',
1737
+ stateMutability: 'view',
1738
+ inputs: [
1739
+ { type: 'address', name: 'account' },
1740
+ { type: 'address', name: 'keyId' },
1741
+ ],
1742
+ outputs: [
1743
+ { type: 'bool', name: 'isScoped' },
1744
+ {
1745
+ type: 'tuple[]',
1746
+ name: 'scopes',
1747
+ components: [
1748
+ { type: 'address', name: 'target' },
1749
+ {
1750
+ type: 'tuple[]',
1751
+ name: 'selectorRules',
1752
+ components: [
1753
+ { type: 'bytes4', name: 'selector' },
1754
+ { type: 'address[]', name: 'recipients' },
1755
+ ],
1756
+ },
1757
+ ],
1758
+ },
1759
+ ],
1760
+ },
1215
1761
  {
1216
1762
  name: 'getTransactionKey',
1217
1763
  type: 'function',
@@ -1247,15 +1793,42 @@ export const accountKeychain = [
1247
1793
  { type: 'uint256', name: 'newLimit' },
1248
1794
  ],
1249
1795
  },
1796
+ {
1797
+ name: 'AccessKeySpend',
1798
+ type: 'event',
1799
+ inputs: [
1800
+ { type: 'address', name: 'account', indexed: true },
1801
+ { type: 'address', name: 'publicKey', indexed: true },
1802
+ { type: 'address', name: 'token', indexed: true },
1803
+ { type: 'uint256', name: 'amount' },
1804
+ { type: 'uint256', name: 'remainingLimit' },
1805
+ ],
1806
+ },
1250
1807
  { name: 'UnauthorizedCaller', type: 'error', inputs: [] },
1251
1808
  { name: 'KeyAlreadyExists', type: 'error', inputs: [] },
1252
1809
  { name: 'KeyNotFound', type: 'error', inputs: [] },
1253
1810
  { name: 'KeyExpired', type: 'error', inputs: [] },
1254
1811
  { name: 'SpendingLimitExceeded', type: 'error', inputs: [] },
1812
+ { name: 'InvalidSpendingLimit', type: 'error', inputs: [] },
1255
1813
  { name: 'InvalidSignatureType', type: 'error', inputs: [] },
1256
1814
  { name: 'ZeroPublicKey', type: 'error', inputs: [] },
1257
1815
  { name: 'ExpiryInPast', type: 'error', inputs: [] },
1258
1816
  { name: 'KeyAlreadyRevoked', type: 'error', inputs: [] },
1817
+ {
1818
+ name: 'SignatureTypeMismatch',
1819
+ type: 'error',
1820
+ inputs: [
1821
+ { type: 'uint8', name: 'expected' },
1822
+ { type: 'uint8', name: 'actual' },
1823
+ ],
1824
+ },
1825
+ { name: 'CallNotAllowed', type: 'error', inputs: [] },
1826
+ { name: 'InvalidCallScope', type: 'error', inputs: [] },
1827
+ {
1828
+ name: 'LegacyAuthorizeKeySelectorChanged',
1829
+ type: 'error',
1830
+ inputs: [{ type: 'bytes4', name: 'newSelector' }],
1831
+ },
1259
1832
  ];
1260
1833
  export const nonce = [
1261
1834
  {
@@ -1280,6 +1853,9 @@ export const nonce = [
1280
1853
  { name: 'ProtocolNonceNotSupported', type: 'error', inputs: [] },
1281
1854
  { name: 'InvalidNonceKey', type: 'error', inputs: [] },
1282
1855
  { name: 'NonceOverflow', type: 'error', inputs: [] },
1856
+ { name: 'ExpiringNonceReplay', type: 'error', inputs: [] },
1857
+ { name: 'ExpiringNonceSetFull', type: 'error', inputs: [] },
1858
+ { name: 'InvalidExpiringNonceExpiry', type: 'error', inputs: [] },
1283
1859
  ];
1284
1860
  export const tip20Factory = [
1285
1861
  {
@@ -1370,6 +1946,47 @@ export const tip403Registry = [
1370
1946
  ],
1371
1947
  outputs: [{ type: 'bool' }],
1372
1948
  },
1949
+ {
1950
+ name: 'isAuthorizedSender',
1951
+ type: 'function',
1952
+ stateMutability: 'view',
1953
+ inputs: [
1954
+ { type: 'uint64', name: 'policyId' },
1955
+ { type: 'address', name: 'user' },
1956
+ ],
1957
+ outputs: [{ type: 'bool' }],
1958
+ },
1959
+ {
1960
+ name: 'isAuthorizedRecipient',
1961
+ type: 'function',
1962
+ stateMutability: 'view',
1963
+ inputs: [
1964
+ { type: 'uint64', name: 'policyId' },
1965
+ { type: 'address', name: 'user' },
1966
+ ],
1967
+ outputs: [{ type: 'bool' }],
1968
+ },
1969
+ {
1970
+ name: 'isAuthorizedMintRecipient',
1971
+ type: 'function',
1972
+ stateMutability: 'view',
1973
+ inputs: [
1974
+ { type: 'uint64', name: 'policyId' },
1975
+ { type: 'address', name: 'user' },
1976
+ ],
1977
+ outputs: [{ type: 'bool' }],
1978
+ },
1979
+ {
1980
+ name: 'compoundPolicyData',
1981
+ type: 'function',
1982
+ stateMutability: 'view',
1983
+ inputs: [{ type: 'uint64', name: 'policyId' }],
1984
+ outputs: [
1985
+ { type: 'uint64', name: 'senderPolicyId' },
1986
+ { type: 'uint64', name: 'recipientPolicyId' },
1987
+ { type: 'uint64', name: 'mintRecipientPolicyId' },
1988
+ ],
1989
+ },
1373
1990
  {
1374
1991
  name: 'createPolicy',
1375
1992
  type: 'function',
@@ -1423,6 +2040,17 @@ export const tip403Registry = [
1423
2040
  ],
1424
2041
  outputs: [],
1425
2042
  },
2043
+ {
2044
+ name: 'createCompoundPolicy',
2045
+ type: 'function',
2046
+ stateMutability: 'nonpayable',
2047
+ inputs: [
2048
+ { type: 'uint64', name: 'senderPolicyId' },
2049
+ { type: 'uint64', name: 'recipientPolicyId' },
2050
+ { type: 'uint64', name: 'mintRecipientPolicyId' },
2051
+ ],
2052
+ outputs: [{ type: 'uint64' }],
2053
+ },
1426
2054
  {
1427
2055
  name: 'PolicyAdminUpdated',
1428
2056
  type: 'event',
@@ -1461,11 +2089,25 @@ export const tip403Registry = [
1461
2089
  { type: 'bool', name: 'restricted' },
1462
2090
  ],
1463
2091
  },
2092
+ {
2093
+ name: 'CompoundPolicyCreated',
2094
+ type: 'event',
2095
+ inputs: [
2096
+ { type: 'uint64', name: 'policyId', indexed: true },
2097
+ { type: 'address', name: 'creator', indexed: true },
2098
+ { type: 'uint64', name: 'senderPolicyId' },
2099
+ { type: 'uint64', name: 'recipientPolicyId' },
2100
+ { type: 'uint64', name: 'mintRecipientPolicyId' },
2101
+ ],
2102
+ },
1464
2103
  { name: 'Unauthorized', type: 'error', inputs: [] },
1465
- { name: 'IncompatiblePolicyType', type: 'error', inputs: [] },
1466
2104
  { name: 'PolicyNotFound', type: 'error', inputs: [] },
2105
+ { name: 'PolicyNotSimple', type: 'error', inputs: [] },
2106
+ { name: 'InvalidPolicyType', type: 'error', inputs: [] },
2107
+ { name: 'IncompatiblePolicyType', type: 'error', inputs: [] },
2108
+ { name: 'VirtualAddressNotAllowed', type: 'error', inputs: [] },
1467
2109
  ];
1468
- export const validator = [
2110
+ export const validatorConfig = [
1469
2111
  {
1470
2112
  name: 'getValidators',
1471
2113
  type: 'function',
@@ -1521,6 +2163,16 @@ export const validator = [
1521
2163
  ],
1522
2164
  outputs: [],
1523
2165
  },
2166
+ {
2167
+ name: 'changeValidatorStatusByIndex',
2168
+ type: 'function',
2169
+ stateMutability: 'nonpayable',
2170
+ inputs: [
2171
+ { type: 'uint64', name: 'index' },
2172
+ { type: 'bool', name: 'active' },
2173
+ ],
2174
+ outputs: [],
2175
+ },
1524
2176
  {
1525
2177
  name: 'owner',
1526
2178
  type: 'function',