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