@dedot/chaintypes 0.69.0 → 0.70.0

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.
@@ -458,6 +458,15 @@ export interface ChainConsts<Rv extends RpcVersion> extends GenericChainConsts<R
458
458
  **/
459
459
  [name: string]: any;
460
460
  };
461
+ /**
462
+ * Pallet `RemoteProxyRelayChain`'s constants
463
+ **/
464
+ remoteProxyRelayChain: {
465
+ /**
466
+ * Generic pallet constant
467
+ **/
468
+ [name: string]: any;
469
+ };
461
470
  /**
462
471
  * Pallet `Assets`'s constants
463
472
  **/
@@ -806,6 +815,40 @@ export interface ChainConsts<Rv extends RpcVersion> extends GenericChainConsts<R
806
815
  **/
807
816
  palletId: FrameSupportPalletId;
808
817
 
818
+ /**
819
+ * Generic pallet constant
820
+ **/
821
+ [name: string]: any;
822
+ };
823
+ /**
824
+ * Pallet `StateTrieMigration`'s constants
825
+ **/
826
+ stateTrieMigration: {
827
+ /**
828
+ * Maximal number of bytes that a key can have.
829
+ *
830
+ * FRAME itself does not limit the key length.
831
+ * The concrete value must therefore depend on your storage usage.
832
+ * A [`frame_support::storage::StorageNMap`] for example can have an arbitrary number of
833
+ * keys which are then hashed and concatenated, resulting in arbitrarily long keys.
834
+ *
835
+ * Use the *state migration RPC* to retrieve the length of the longest key in your
836
+ * storage: <https://github.com/paritytech/substrate/issues/11642>
837
+ *
838
+ * The migration will halt with a `Halted` event if this value is too small.
839
+ * Since there is no real penalty from over-estimating, it is advised to use a large
840
+ * value. The default is 512 byte.
841
+ *
842
+ * Some key lengths for reference:
843
+ * - [`frame_support::storage::StorageValue`]: 32 byte
844
+ * - [`frame_support::storage::StorageMap`]: 64 byte
845
+ * - [`frame_support::storage::StorageDoubleMap`]: 96 byte
846
+ *
847
+ * For more info see
848
+ * <https://www.shawntabrizi.com/blog/substrate/querying-substrate-storage-via-rpc/>
849
+ **/
850
+ maxKeyLen: number;
851
+
809
852
  /**
810
853
  * Generic pallet constant
811
854
  **/
@@ -711,6 +711,50 @@ export interface ChainErrors<Rv extends RpcVersion> extends GenericChainErrors<R
711
711
  **/
712
712
  [error: string]: GenericPalletError<Rv>;
713
713
  };
714
+ /**
715
+ * Pallet `RemoteProxyRelayChain`'s errors
716
+ **/
717
+ remoteProxyRelayChain: {
718
+ /**
719
+ * The local account id could not converted to the remote account id.
720
+ **/
721
+ CouldNotConvertLocalToRemoteAccountId: GenericPalletError<Rv>;
722
+
723
+ /**
724
+ * The anchor block of the remote proof is unknown.
725
+ **/
726
+ UnknownProofAnchorBlock: GenericPalletError<Rv>;
727
+
728
+ /**
729
+ * The proxy definition could not be found in the proof.
730
+ **/
731
+ InvalidProof: GenericPalletError<Rv>;
732
+
733
+ /**
734
+ * Failed to decode the remote proxy definition from the proof.
735
+ **/
736
+ ProxyDefinitionDecodingFailed: GenericPalletError<Rv>;
737
+
738
+ /**
739
+ * Announcement, if made at all, was made too recently.
740
+ **/
741
+ Unannounced: GenericPalletError<Rv>;
742
+
743
+ /**
744
+ * Could not find any matching proxy definition in the proof.
745
+ **/
746
+ DidNotFindMatchingProxyDefinition: GenericPalletError<Rv>;
747
+
748
+ /**
749
+ * Proxy proof not registered.
750
+ **/
751
+ ProxyProofNotRegistered: GenericPalletError<Rv>;
752
+
753
+ /**
754
+ * Generic pallet error
755
+ **/
756
+ [error: string]: GenericPalletError<Rv>;
757
+ };
714
758
  /**
715
759
  * Pallet `Assets`'s errors
716
760
  **/
@@ -1546,6 +1590,51 @@ export interface ChainErrors<Rv extends RpcVersion> extends GenericChainErrors<R
1546
1590
  **/
1547
1591
  BelowMinimum: GenericPalletError<Rv>;
1548
1592
 
1593
+ /**
1594
+ * Generic pallet error
1595
+ **/
1596
+ [error: string]: GenericPalletError<Rv>;
1597
+ };
1598
+ /**
1599
+ * Pallet `StateTrieMigration`'s errors
1600
+ **/
1601
+ stateTrieMigration: {
1602
+ /**
1603
+ * Max signed limits not respected.
1604
+ **/
1605
+ MaxSignedLimits: GenericPalletError<Rv>;
1606
+
1607
+ /**
1608
+ * A key was longer than the configured maximum.
1609
+ *
1610
+ * This means that the migration halted at the current [`Progress`] and
1611
+ * can be resumed with a larger [`crate::Config::MaxKeyLen`] value.
1612
+ * Retrying with the same [`crate::Config::MaxKeyLen`] value will not work.
1613
+ * The value should only be increased to avoid a storage migration for the currently
1614
+ * stored [`crate::Progress::LastKey`].
1615
+ **/
1616
+ KeyTooLong: GenericPalletError<Rv>;
1617
+
1618
+ /**
1619
+ * submitter does not have enough funds.
1620
+ **/
1621
+ NotEnoughFunds: GenericPalletError<Rv>;
1622
+
1623
+ /**
1624
+ * Bad witness data provided.
1625
+ **/
1626
+ BadWitness: GenericPalletError<Rv>;
1627
+
1628
+ /**
1629
+ * Signed migration is not allowed because the maximum limit is not set yet.
1630
+ **/
1631
+ SignedMigrationNotAllowed: GenericPalletError<Rv>;
1632
+
1633
+ /**
1634
+ * Bad child root provided.
1635
+ **/
1636
+ BadChildRoot: GenericPalletError<Rv>;
1637
+
1549
1638
  /**
1550
1639
  * Generic pallet error
1551
1640
  **/
@@ -30,6 +30,8 @@ import type {
30
30
  PalletNftsAttributeNamespace,
31
31
  PalletNftsPriceWithDirection,
32
32
  PalletNftsPalletAttributes,
33
+ PalletStateTrieMigrationMigrationCompute,
34
+ PalletStateTrieMigrationError,
33
35
  } from './types';
34
36
 
35
37
  export interface ChainEvents<Rv extends RpcVersion> extends GenericChainEvents<Rv> {
@@ -2502,6 +2504,41 @@ export interface ChainEvents<Rv extends RpcVersion> extends GenericChainEvents<R
2502
2504
  }
2503
2505
  >;
2504
2506
 
2507
+ /**
2508
+ * Generic pallet event
2509
+ **/
2510
+ [prop: string]: GenericPalletEvent<Rv>;
2511
+ };
2512
+ /**
2513
+ * Pallet `StateTrieMigration`'s events
2514
+ **/
2515
+ stateTrieMigration: {
2516
+ /**
2517
+ * Given number of `(top, child)` keys were migrated respectively, with the given
2518
+ * `compute`.
2519
+ **/
2520
+ Migrated: GenericPalletEvent<
2521
+ Rv,
2522
+ 'StateTrieMigration',
2523
+ 'Migrated',
2524
+ { top: number; child: number; compute: PalletStateTrieMigrationMigrationCompute }
2525
+ >;
2526
+
2527
+ /**
2528
+ * Some account got slashed by the given amount.
2529
+ **/
2530
+ Slashed: GenericPalletEvent<Rv, 'StateTrieMigration', 'Slashed', { who: AccountId32; amount: bigint }>;
2531
+
2532
+ /**
2533
+ * The auto migration task finished.
2534
+ **/
2535
+ AutoMigrationFinished: GenericPalletEvent<Rv, 'StateTrieMigration', 'AutoMigrationFinished', null>;
2536
+
2537
+ /**
2538
+ * Migration got halted due to an error or miss-configuration.
2539
+ **/
2540
+ Halted: GenericPalletEvent<Rv, 'StateTrieMigration', 'Halted', { error: PalletStateTrieMigrationError }>;
2541
+
2505
2542
  /**
2506
2543
  * Generic pallet event
2507
2544
  **/
@@ -23,7 +23,7 @@ export interface VersionedKusamaAssetHubApi<Rv extends RpcVersion> extends Gener
23
23
 
24
24
  /**
25
25
  * @name: KusamaAssetHubApi
26
- * @specVersion: 1004000
26
+ * @specVersion: 1004002
27
27
  **/
28
28
  export interface KusamaAssetHubApi {
29
29
  legacy: VersionedKusamaAssetHubApi<RpcLegacy>;
@@ -79,6 +79,8 @@ import type {
79
79
  StagingXcmV4Location,
80
80
  PalletNftFractionalizationDetails,
81
81
  PalletAssetConversionPoolInfo,
82
+ PalletStateTrieMigrationMigrationTask,
83
+ PalletStateTrieMigrationMigrationLimits,
82
84
  } from './types';
83
85
 
84
86
  export interface ChainStorage<Rv extends RpcVersion> extends GenericChainStorage<Rv> {
@@ -1222,6 +1224,23 @@ export interface ChainStorage<Rv extends RpcVersion> extends GenericChainStorage
1222
1224
  **/
1223
1225
  [storage: string]: GenericStorageQuery<Rv>;
1224
1226
  };
1227
+ /**
1228
+ * Pallet `RemoteProxyRelayChain`'s storage queries
1229
+ **/
1230
+ remoteProxyRelayChain: {
1231
+ /**
1232
+ * Stores the last [`Config::MaxStorageRootsToKeep`] block to storage root mappings of the
1233
+ * target chain.
1234
+ *
1235
+ * @param {Callback<Array<[number, H256]>> =} callback
1236
+ **/
1237
+ blockToRoot: GenericStorageQuery<Rv, () => Array<[number, H256]>>;
1238
+
1239
+ /**
1240
+ * Generic pallet storage query
1241
+ **/
1242
+ [storage: string]: GenericStorageQuery<Rv>;
1243
+ };
1225
1244
  /**
1226
1245
  * Pallet `Assets`'s storage queries
1227
1246
  **/
@@ -1743,6 +1762,43 @@ export interface ChainStorage<Rv extends RpcVersion> extends GenericChainStorage
1743
1762
  **/
1744
1763
  nextPoolAssetId: GenericStorageQuery<Rv, () => number | undefined>;
1745
1764
 
1765
+ /**
1766
+ * Generic pallet storage query
1767
+ **/
1768
+ [storage: string]: GenericStorageQuery<Rv>;
1769
+ };
1770
+ /**
1771
+ * Pallet `StateTrieMigration`'s storage queries
1772
+ **/
1773
+ stateTrieMigration: {
1774
+ /**
1775
+ * Migration progress.
1776
+ *
1777
+ * This stores the snapshot of the last migrated keys. It can be set into motion and move
1778
+ * forward by any of the means provided by this pallet.
1779
+ *
1780
+ * @param {Callback<PalletStateTrieMigrationMigrationTask> =} callback
1781
+ **/
1782
+ migrationProcess: GenericStorageQuery<Rv, () => PalletStateTrieMigrationMigrationTask>;
1783
+
1784
+ /**
1785
+ * The limits that are imposed on automatic migrations.
1786
+ *
1787
+ * If set to None, then no automatic migration happens.
1788
+ *
1789
+ * @param {Callback<PalletStateTrieMigrationMigrationLimits | undefined> =} callback
1790
+ **/
1791
+ autoLimits: GenericStorageQuery<Rv, () => PalletStateTrieMigrationMigrationLimits | undefined>;
1792
+
1793
+ /**
1794
+ * The maximum limits that the signed migration could use.
1795
+ *
1796
+ * If not set, no signed submission is allowed.
1797
+ *
1798
+ * @param {Callback<PalletStateTrieMigrationMigrationLimits | undefined> =} callback
1799
+ **/
1800
+ signedMigrationMaxLimits: GenericStorageQuery<Rv, () => PalletStateTrieMigrationMigrationLimits | undefined>;
1801
+
1746
1802
  /**
1747
1803
  * Generic pallet storage query
1748
1804
  **/
@@ -31,6 +31,7 @@ import type {
31
31
  AssetHubKusamaRuntimeOriginCaller,
32
32
  PalletMultisigTimepoint,
33
33
  AssetHubKusamaRuntimeProxyType,
34
+ PalletRemoteProxyRemoteProxyProof,
34
35
  PalletUniquesDestroyWitness,
35
36
  PalletNftsCollectionConfig,
36
37
  PalletNftsDestroyWitness,
@@ -44,6 +45,9 @@ import type {
44
45
  PalletNftsPriceWithDirection,
45
46
  PalletNftsPreSignedMint,
46
47
  PalletNftsPreSignedAttributes,
48
+ PalletStateTrieMigrationMigrationLimits,
49
+ PalletStateTrieMigrationMigrationTask,
50
+ PalletStateTrieMigrationProgress,
47
51
  } from './types';
48
52
 
49
53
  export type ChainSubmittableExtrinsic<
@@ -2798,6 +2802,143 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2798
2802
  **/
2799
2803
  [callName: string]: GenericTxCall<Rv, TxCall<Rv>>;
2800
2804
  };
2805
+ /**
2806
+ * Pallet `RemoteProxyRelayChain`'s transaction calls
2807
+ **/
2808
+ remoteProxyRelayChain: {
2809
+ /**
2810
+ * Dispatch the given `call` from an account that the sender is authorised on a remote
2811
+ * chain.
2812
+ *
2813
+ * The dispatch origin for this call must be _Signed_.
2814
+ *
2815
+ * Parameters:
2816
+ * - `real`: The account that the proxy will make a call on behalf of.
2817
+ * - `force_proxy_type`: Specify the exact proxy type to be used and checked for this call.
2818
+ * - `call`: The call to be made by the `real` account.
2819
+ * - `proof`: The proof from the remote chain about the existence of the proxy.
2820
+ *
2821
+ * @param {MultiAddressLike} real
2822
+ * @param {AssetHubKusamaRuntimeProxyType | undefined} forceProxyType
2823
+ * @param {AssetHubKusamaRuntimeRuntimeCallLike} call
2824
+ * @param {PalletRemoteProxyRemoteProxyProof} proof
2825
+ **/
2826
+ remoteProxy: GenericTxCall<
2827
+ Rv,
2828
+ (
2829
+ real: MultiAddressLike,
2830
+ forceProxyType: AssetHubKusamaRuntimeProxyType | undefined,
2831
+ call: AssetHubKusamaRuntimeRuntimeCallLike,
2832
+ proof: PalletRemoteProxyRemoteProxyProof,
2833
+ ) => ChainSubmittableExtrinsic<
2834
+ Rv,
2835
+ {
2836
+ pallet: 'RemoteProxyRelayChain';
2837
+ palletCall: {
2838
+ name: 'RemoteProxy';
2839
+ params: {
2840
+ real: MultiAddressLike;
2841
+ forceProxyType: AssetHubKusamaRuntimeProxyType | undefined;
2842
+ call: AssetHubKusamaRuntimeRuntimeCallLike;
2843
+ proof: PalletRemoteProxyRemoteProxyProof;
2844
+ };
2845
+ };
2846
+ }
2847
+ >
2848
+ >;
2849
+
2850
+ /**
2851
+ * Register a given remote proxy proof in the current [`dispatch_context`].
2852
+ *
2853
+ * The registered remote proof can then be used later in the same context to execute a
2854
+ * remote proxy call. This is for example useful when having a multisig operation. The
2855
+ * multisig call can use [`Self::remote_proxy_with_registered_proof`] to get an approval by
2856
+ * the members of the multisig. The final execution of the multisig call should be at least
2857
+ * a batch of `register_remote_proxy_proof` and the multisig call that uses
2858
+ * `remote_proxy_with_registered_proof`. This way the final approver can use a recent proof
2859
+ * to prove the existence of the remote proxy. Otherwise it would require the multisig
2860
+ * members to approve the call in [`Config::MaxStorageRootsToKeep`] amount of time.
2861
+ *
2862
+ * It is supported to register multiple proofs, but the proofs need to be consumed in the
2863
+ * reverse order as they were registered. Basically this means last in, first out.
2864
+ *
2865
+ * The [`dispatch_context`] spans the entire lifetime of a transaction and every call in
2866
+ * the transaction gets access to the same context.
2867
+ *
2868
+ * # Example
2869
+ *
2870
+ * ```ignore
2871
+ * batch([
2872
+ * register_remote_proxy_proof,
2873
+ * as_multisig(remote_proxy_with_registered_proof(transfer))
2874
+ * ])
2875
+ * ```
2876
+ *
2877
+ * As `proofs` can not be verified indefinitely (the time the storage roots are stored is
2878
+ * limited) this function provides the possibility to provide a "fresh proof" at time of
2879
+ * dispatch. As in the example above, this could be useful for multisig operation that
2880
+ * depend on multiple members to approve a certain action, which can take multiple days.
2881
+ *
2882
+ * @param {PalletRemoteProxyRemoteProxyProof} proof
2883
+ **/
2884
+ registerRemoteProxyProof: GenericTxCall<
2885
+ Rv,
2886
+ (proof: PalletRemoteProxyRemoteProxyProof) => ChainSubmittableExtrinsic<
2887
+ Rv,
2888
+ {
2889
+ pallet: 'RemoteProxyRelayChain';
2890
+ palletCall: {
2891
+ name: 'RegisterRemoteProxyProof';
2892
+ params: { proof: PalletRemoteProxyRemoteProxyProof };
2893
+ };
2894
+ }
2895
+ >
2896
+ >;
2897
+
2898
+ /**
2899
+ * Dispatch the given `call` from an account that the sender is authorised on a remote
2900
+ * chain.
2901
+ *
2902
+ * The dispatch origin for this call must be _Signed_. The difference to
2903
+ * [`Self::remote_proxy`] is that the proof nees to registered before using
2904
+ * [`Self::register_remote_proxy_proof`] (see for more information).
2905
+ *
2906
+ * Parameters:
2907
+ * - `real`: The account that the proxy will make a call on behalf of.
2908
+ * - `force_proxy_type`: Specify the exact proxy type to be used and checked for this call.
2909
+ * - `call`: The call to be made by the `real` account.
2910
+ *
2911
+ * @param {MultiAddressLike} real
2912
+ * @param {AssetHubKusamaRuntimeProxyType | undefined} forceProxyType
2913
+ * @param {AssetHubKusamaRuntimeRuntimeCallLike} call
2914
+ **/
2915
+ remoteProxyWithRegisteredProof: GenericTxCall<
2916
+ Rv,
2917
+ (
2918
+ real: MultiAddressLike,
2919
+ forceProxyType: AssetHubKusamaRuntimeProxyType | undefined,
2920
+ call: AssetHubKusamaRuntimeRuntimeCallLike,
2921
+ ) => ChainSubmittableExtrinsic<
2922
+ Rv,
2923
+ {
2924
+ pallet: 'RemoteProxyRelayChain';
2925
+ palletCall: {
2926
+ name: 'RemoteProxyWithRegisteredProof';
2927
+ params: {
2928
+ real: MultiAddressLike;
2929
+ forceProxyType: AssetHubKusamaRuntimeProxyType | undefined;
2930
+ call: AssetHubKusamaRuntimeRuntimeCallLike;
2931
+ };
2932
+ };
2933
+ }
2934
+ >
2935
+ >;
2936
+
2937
+ /**
2938
+ * Generic pallet tx call
2939
+ **/
2940
+ [callName: string]: GenericTxCall<Rv, TxCall<Rv>>;
2941
+ };
2801
2942
  /**
2802
2943
  * Pallet `Assets`'s transaction calls
2803
2944
  **/
@@ -9217,6 +9358,191 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
9217
9358
  >
9218
9359
  >;
9219
9360
 
9361
+ /**
9362
+ * Generic pallet tx call
9363
+ **/
9364
+ [callName: string]: GenericTxCall<Rv, TxCall<Rv>>;
9365
+ };
9366
+ /**
9367
+ * Pallet `StateTrieMigration`'s transaction calls
9368
+ **/
9369
+ stateTrieMigration: {
9370
+ /**
9371
+ * Control the automatic migration.
9372
+ *
9373
+ * The dispatch origin of this call must be [`Config::ControlOrigin`].
9374
+ *
9375
+ * @param {PalletStateTrieMigrationMigrationLimits | undefined} maybeConfig
9376
+ **/
9377
+ controlAutoMigration: GenericTxCall<
9378
+ Rv,
9379
+ (maybeConfig: PalletStateTrieMigrationMigrationLimits | undefined) => ChainSubmittableExtrinsic<
9380
+ Rv,
9381
+ {
9382
+ pallet: 'StateTrieMigration';
9383
+ palletCall: {
9384
+ name: 'ControlAutoMigration';
9385
+ params: { maybeConfig: PalletStateTrieMigrationMigrationLimits | undefined };
9386
+ };
9387
+ }
9388
+ >
9389
+ >;
9390
+
9391
+ /**
9392
+ * Continue the migration for the given `limits`.
9393
+ *
9394
+ * The dispatch origin of this call can be any signed account.
9395
+ *
9396
+ * This transaction has NO MONETARY INCENTIVES. calling it will not reward anyone. Albeit,
9397
+ * Upon successful execution, the transaction fee is returned.
9398
+ *
9399
+ * The (potentially over-estimated) of the byte length of all the data read must be
9400
+ * provided for up-front fee-payment and weighing. In essence, the caller is guaranteeing
9401
+ * that executing the current `MigrationTask` with the given `limits` will not exceed
9402
+ * `real_size_upper` bytes of read data.
9403
+ *
9404
+ * The `witness_task` is merely a helper to prevent the caller from being slashed or
9405
+ * generally trigger a migration that they do not intend. This parameter is just a message
9406
+ * from caller, saying that they believed `witness_task` was the last state of the
9407
+ * migration, and they only wish for their transaction to do anything, if this assumption
9408
+ * holds. In case `witness_task` does not match, the transaction fails.
9409
+ *
9410
+ * Based on the documentation of [`MigrationTask::migrate_until_exhaustion`], the
9411
+ * recommended way of doing this is to pass a `limit` that only bounds `count`, as the
9412
+ * `size` limit can always be overwritten.
9413
+ *
9414
+ * @param {PalletStateTrieMigrationMigrationLimits} limits
9415
+ * @param {number} realSizeUpper
9416
+ * @param {PalletStateTrieMigrationMigrationTask} witnessTask
9417
+ **/
9418
+ continueMigrate: GenericTxCall<
9419
+ Rv,
9420
+ (
9421
+ limits: PalletStateTrieMigrationMigrationLimits,
9422
+ realSizeUpper: number,
9423
+ witnessTask: PalletStateTrieMigrationMigrationTask,
9424
+ ) => ChainSubmittableExtrinsic<
9425
+ Rv,
9426
+ {
9427
+ pallet: 'StateTrieMigration';
9428
+ palletCall: {
9429
+ name: 'ContinueMigrate';
9430
+ params: {
9431
+ limits: PalletStateTrieMigrationMigrationLimits;
9432
+ realSizeUpper: number;
9433
+ witnessTask: PalletStateTrieMigrationMigrationTask;
9434
+ };
9435
+ };
9436
+ }
9437
+ >
9438
+ >;
9439
+
9440
+ /**
9441
+ * Migrate the list of top keys by iterating each of them one by one.
9442
+ *
9443
+ * This does not affect the global migration process tracker ([`MigrationProcess`]), and
9444
+ * should only be used in case any keys are leftover due to a bug.
9445
+ *
9446
+ * @param {Array<BytesLike>} keys
9447
+ * @param {number} witnessSize
9448
+ **/
9449
+ migrateCustomTop: GenericTxCall<
9450
+ Rv,
9451
+ (
9452
+ keys: Array<BytesLike>,
9453
+ witnessSize: number,
9454
+ ) => ChainSubmittableExtrinsic<
9455
+ Rv,
9456
+ {
9457
+ pallet: 'StateTrieMigration';
9458
+ palletCall: {
9459
+ name: 'MigrateCustomTop';
9460
+ params: { keys: Array<BytesLike>; witnessSize: number };
9461
+ };
9462
+ }
9463
+ >
9464
+ >;
9465
+
9466
+ /**
9467
+ * Migrate the list of child keys by iterating each of them one by one.
9468
+ *
9469
+ * All of the given child keys must be present under one `child_root`.
9470
+ *
9471
+ * This does not affect the global migration process tracker ([`MigrationProcess`]), and
9472
+ * should only be used in case any keys are leftover due to a bug.
9473
+ *
9474
+ * @param {BytesLike} root
9475
+ * @param {Array<BytesLike>} childKeys
9476
+ * @param {number} totalSize
9477
+ **/
9478
+ migrateCustomChild: GenericTxCall<
9479
+ Rv,
9480
+ (
9481
+ root: BytesLike,
9482
+ childKeys: Array<BytesLike>,
9483
+ totalSize: number,
9484
+ ) => ChainSubmittableExtrinsic<
9485
+ Rv,
9486
+ {
9487
+ pallet: 'StateTrieMigration';
9488
+ palletCall: {
9489
+ name: 'MigrateCustomChild';
9490
+ params: { root: BytesLike; childKeys: Array<BytesLike>; totalSize: number };
9491
+ };
9492
+ }
9493
+ >
9494
+ >;
9495
+
9496
+ /**
9497
+ * Set the maximum limit of the signed migration.
9498
+ *
9499
+ * @param {PalletStateTrieMigrationMigrationLimits} limits
9500
+ **/
9501
+ setSignedMaxLimits: GenericTxCall<
9502
+ Rv,
9503
+ (limits: PalletStateTrieMigrationMigrationLimits) => ChainSubmittableExtrinsic<
9504
+ Rv,
9505
+ {
9506
+ pallet: 'StateTrieMigration';
9507
+ palletCall: {
9508
+ name: 'SetSignedMaxLimits';
9509
+ params: { limits: PalletStateTrieMigrationMigrationLimits };
9510
+ };
9511
+ }
9512
+ >
9513
+ >;
9514
+
9515
+ /**
9516
+ * Forcefully set the progress the running migration.
9517
+ *
9518
+ * This is only useful in one case: the next key to migrate is too big to be migrated with
9519
+ * a signed account, in a parachain context, and we simply want to skip it. A reasonable
9520
+ * example of this would be `:code:`, which is both very expensive to migrate, and commonly
9521
+ * used, so probably it is already migrated.
9522
+ *
9523
+ * In case you mess things up, you can also, in principle, use this to reset the migration
9524
+ * process.
9525
+ *
9526
+ * @param {PalletStateTrieMigrationProgress} progressTop
9527
+ * @param {PalletStateTrieMigrationProgress} progressChild
9528
+ **/
9529
+ forceSetProgress: GenericTxCall<
9530
+ Rv,
9531
+ (
9532
+ progressTop: PalletStateTrieMigrationProgress,
9533
+ progressChild: PalletStateTrieMigrationProgress,
9534
+ ) => ChainSubmittableExtrinsic<
9535
+ Rv,
9536
+ {
9537
+ pallet: 'StateTrieMigration';
9538
+ palletCall: {
9539
+ name: 'ForceSetProgress';
9540
+ params: { progressTop: PalletStateTrieMigrationProgress; progressChild: PalletStateTrieMigrationProgress };
9541
+ };
9542
+ }
9543
+ >
9544
+ >;
9545
+
9220
9546
  /**
9221
9547
  * Generic pallet tx call
9222
9548
  **/
@@ -71,7 +71,8 @@ export type AssetHubKusamaRuntimeRuntimeEvent =
71
71
  | { pallet: 'ForeignAssets'; palletEvent: PalletAssetsEvent002 }
72
72
  | { pallet: 'NftFractionalization'; palletEvent: PalletNftFractionalizationEvent }
73
73
  | { pallet: 'PoolAssets'; palletEvent: PalletAssetsEvent }
74
- | { pallet: 'AssetConversion'; palletEvent: PalletAssetConversionEvent };
74
+ | { pallet: 'AssetConversion'; palletEvent: PalletAssetConversionEvent }
75
+ | { pallet: 'StateTrieMigration'; palletEvent: PalletStateTrieMigrationEvent };
75
76
 
76
77
  /**
77
78
  * Event for the System pallet.
@@ -2096,6 +2097,65 @@ export type PalletAssetConversionEvent =
2096
2097
  };
2097
2098
  };
2098
2099
 
2100
+ /**
2101
+ * Inner events of this pallet.
2102
+ **/
2103
+ export type PalletStateTrieMigrationEvent =
2104
+ /**
2105
+ * Given number of `(top, child)` keys were migrated respectively, with the given
2106
+ * `compute`.
2107
+ **/
2108
+ | { name: 'Migrated'; data: { top: number; child: number; compute: PalletStateTrieMigrationMigrationCompute } }
2109
+ /**
2110
+ * Some account got slashed by the given amount.
2111
+ **/
2112
+ | { name: 'Slashed'; data: { who: AccountId32; amount: bigint } }
2113
+ /**
2114
+ * The auto migration task finished.
2115
+ **/
2116
+ | { name: 'AutoMigrationFinished' }
2117
+ /**
2118
+ * Migration got halted due to an error or miss-configuration.
2119
+ **/
2120
+ | { name: 'Halted'; data: { error: PalletStateTrieMigrationError } };
2121
+
2122
+ export type PalletStateTrieMigrationMigrationCompute = 'Signed' | 'Auto';
2123
+
2124
+ /**
2125
+ * The `Error` enum of this pallet.
2126
+ **/
2127
+ export type PalletStateTrieMigrationError =
2128
+ /**
2129
+ * Max signed limits not respected.
2130
+ **/
2131
+ | 'MaxSignedLimits'
2132
+ /**
2133
+ * A key was longer than the configured maximum.
2134
+ *
2135
+ * This means that the migration halted at the current [`Progress`] and
2136
+ * can be resumed with a larger [`crate::Config::MaxKeyLen`] value.
2137
+ * Retrying with the same [`crate::Config::MaxKeyLen`] value will not work.
2138
+ * The value should only be increased to avoid a storage migration for the currently
2139
+ * stored [`crate::Progress::LastKey`].
2140
+ **/
2141
+ | 'KeyTooLong'
2142
+ /**
2143
+ * submitter does not have enough funds.
2144
+ **/
2145
+ | 'NotEnoughFunds'
2146
+ /**
2147
+ * Bad witness data provided.
2148
+ **/
2149
+ | 'BadWitness'
2150
+ /**
2151
+ * Signed migration is not allowed because the maximum limit is not set yet.
2152
+ **/
2153
+ | 'SignedMigrationNotAllowed'
2154
+ /**
2155
+ * Bad child root provided.
2156
+ **/
2157
+ | 'BadChildRoot';
2158
+
2099
2159
  export type FrameSystemLastRuntimeUpgradeInfo = { specVersion: number; specName: string };
2100
2160
 
2101
2161
  export type FrameSystemCodeUpgradeAuthorization = { codeHash: H256; checkVersion: boolean };
@@ -4875,13 +4935,15 @@ export type AssetHubKusamaRuntimeRuntimeCall =
4875
4935
  | { pallet: 'Utility'; palletCall: PalletUtilityCall }
4876
4936
  | { pallet: 'Multisig'; palletCall: PalletMultisigCall }
4877
4937
  | { pallet: 'Proxy'; palletCall: PalletProxyCall }
4938
+ | { pallet: 'RemoteProxyRelayChain'; palletCall: PalletRemoteProxyCall }
4878
4939
  | { pallet: 'Assets'; palletCall: PalletAssetsCall }
4879
4940
  | { pallet: 'Uniques'; palletCall: PalletUniquesCall }
4880
4941
  | { pallet: 'Nfts'; palletCall: PalletNftsCall }
4881
4942
  | { pallet: 'ForeignAssets'; palletCall: PalletAssetsCall002 }
4882
4943
  | { pallet: 'NftFractionalization'; palletCall: PalletNftFractionalizationCall }
4883
4944
  | { pallet: 'PoolAssets'; palletCall: PalletAssetsCall003 }
4884
- | { pallet: 'AssetConversion'; palletCall: PalletAssetConversionCall };
4945
+ | { pallet: 'AssetConversion'; palletCall: PalletAssetConversionCall }
4946
+ | { pallet: 'StateTrieMigration'; palletCall: PalletStateTrieMigrationCall };
4885
4947
 
4886
4948
  export type AssetHubKusamaRuntimeRuntimeCallLike =
4887
4949
  | { pallet: 'System'; palletCall: FrameSystemCallLike }
@@ -4900,13 +4962,15 @@ export type AssetHubKusamaRuntimeRuntimeCallLike =
4900
4962
  | { pallet: 'Utility'; palletCall: PalletUtilityCallLike }
4901
4963
  | { pallet: 'Multisig'; palletCall: PalletMultisigCallLike }
4902
4964
  | { pallet: 'Proxy'; palletCall: PalletProxyCallLike }
4965
+ | { pallet: 'RemoteProxyRelayChain'; palletCall: PalletRemoteProxyCallLike }
4903
4966
  | { pallet: 'Assets'; palletCall: PalletAssetsCallLike }
4904
4967
  | { pallet: 'Uniques'; palletCall: PalletUniquesCallLike }
4905
4968
  | { pallet: 'Nfts'; palletCall: PalletNftsCallLike }
4906
4969
  | { pallet: 'ForeignAssets'; palletCall: PalletAssetsCallLike002 }
4907
4970
  | { pallet: 'NftFractionalization'; palletCall: PalletNftFractionalizationCallLike }
4908
4971
  | { pallet: 'PoolAssets'; palletCall: PalletAssetsCallLike003 }
4909
- | { pallet: 'AssetConversion'; palletCall: PalletAssetConversionCallLike };
4972
+ | { pallet: 'AssetConversion'; palletCall: PalletAssetConversionCallLike }
4973
+ | { pallet: 'StateTrieMigration'; palletCall: PalletStateTrieMigrationCallLike };
4910
4974
 
4911
4975
  /**
4912
4976
  * Contains a variant per dispatchable extrinsic that this pallet has.
@@ -5547,6 +5611,165 @@ export type PalletProxyCallLike =
5547
5611
  };
5548
5612
  };
5549
5613
 
5614
+ /**
5615
+ * Contains a variant per dispatchable extrinsic that this pallet has.
5616
+ **/
5617
+ export type PalletRemoteProxyCall =
5618
+ /**
5619
+ * Dispatch the given `call` from an account that the sender is authorised on a remote
5620
+ * chain.
5621
+ *
5622
+ * The dispatch origin for this call must be _Signed_.
5623
+ *
5624
+ * Parameters:
5625
+ * - `real`: The account that the proxy will make a call on behalf of.
5626
+ * - `force_proxy_type`: Specify the exact proxy type to be used and checked for this call.
5627
+ * - `call`: The call to be made by the `real` account.
5628
+ * - `proof`: The proof from the remote chain about the existence of the proxy.
5629
+ **/
5630
+ | {
5631
+ name: 'RemoteProxy';
5632
+ params: {
5633
+ real: MultiAddress;
5634
+ forceProxyType?: AssetHubKusamaRuntimeProxyType | undefined;
5635
+ call: AssetHubKusamaRuntimeRuntimeCall;
5636
+ proof: PalletRemoteProxyRemoteProxyProof;
5637
+ };
5638
+ }
5639
+ /**
5640
+ * Register a given remote proxy proof in the current [`dispatch_context`].
5641
+ *
5642
+ * The registered remote proof can then be used later in the same context to execute a
5643
+ * remote proxy call. This is for example useful when having a multisig operation. The
5644
+ * multisig call can use [`Self::remote_proxy_with_registered_proof`] to get an approval by
5645
+ * the members of the multisig. The final execution of the multisig call should be at least
5646
+ * a batch of `register_remote_proxy_proof` and the multisig call that uses
5647
+ * `remote_proxy_with_registered_proof`. This way the final approver can use a recent proof
5648
+ * to prove the existence of the remote proxy. Otherwise it would require the multisig
5649
+ * members to approve the call in [`Config::MaxStorageRootsToKeep`] amount of time.
5650
+ *
5651
+ * It is supported to register multiple proofs, but the proofs need to be consumed in the
5652
+ * reverse order as they were registered. Basically this means last in, first out.
5653
+ *
5654
+ * The [`dispatch_context`] spans the entire lifetime of a transaction and every call in
5655
+ * the transaction gets access to the same context.
5656
+ *
5657
+ * # Example
5658
+ *
5659
+ * ```ignore
5660
+ * batch([
5661
+ * register_remote_proxy_proof,
5662
+ * as_multisig(remote_proxy_with_registered_proof(transfer))
5663
+ * ])
5664
+ * ```
5665
+ *
5666
+ * As `proofs` can not be verified indefinitely (the time the storage roots are stored is
5667
+ * limited) this function provides the possibility to provide a "fresh proof" at time of
5668
+ * dispatch. As in the example above, this could be useful for multisig operation that
5669
+ * depend on multiple members to approve a certain action, which can take multiple days.
5670
+ **/
5671
+ | { name: 'RegisterRemoteProxyProof'; params: { proof: PalletRemoteProxyRemoteProxyProof } }
5672
+ /**
5673
+ * Dispatch the given `call` from an account that the sender is authorised on a remote
5674
+ * chain.
5675
+ *
5676
+ * The dispatch origin for this call must be _Signed_. The difference to
5677
+ * [`Self::remote_proxy`] is that the proof nees to registered before using
5678
+ * [`Self::register_remote_proxy_proof`] (see for more information).
5679
+ *
5680
+ * Parameters:
5681
+ * - `real`: The account that the proxy will make a call on behalf of.
5682
+ * - `force_proxy_type`: Specify the exact proxy type to be used and checked for this call.
5683
+ * - `call`: The call to be made by the `real` account.
5684
+ **/
5685
+ | {
5686
+ name: 'RemoteProxyWithRegisteredProof';
5687
+ params: {
5688
+ real: MultiAddress;
5689
+ forceProxyType?: AssetHubKusamaRuntimeProxyType | undefined;
5690
+ call: AssetHubKusamaRuntimeRuntimeCall;
5691
+ };
5692
+ };
5693
+
5694
+ export type PalletRemoteProxyCallLike =
5695
+ /**
5696
+ * Dispatch the given `call` from an account that the sender is authorised on a remote
5697
+ * chain.
5698
+ *
5699
+ * The dispatch origin for this call must be _Signed_.
5700
+ *
5701
+ * Parameters:
5702
+ * - `real`: The account that the proxy will make a call on behalf of.
5703
+ * - `force_proxy_type`: Specify the exact proxy type to be used and checked for this call.
5704
+ * - `call`: The call to be made by the `real` account.
5705
+ * - `proof`: The proof from the remote chain about the existence of the proxy.
5706
+ **/
5707
+ | {
5708
+ name: 'RemoteProxy';
5709
+ params: {
5710
+ real: MultiAddressLike;
5711
+ forceProxyType?: AssetHubKusamaRuntimeProxyType | undefined;
5712
+ call: AssetHubKusamaRuntimeRuntimeCallLike;
5713
+ proof: PalletRemoteProxyRemoteProxyProof;
5714
+ };
5715
+ }
5716
+ /**
5717
+ * Register a given remote proxy proof in the current [`dispatch_context`].
5718
+ *
5719
+ * The registered remote proof can then be used later in the same context to execute a
5720
+ * remote proxy call. This is for example useful when having a multisig operation. The
5721
+ * multisig call can use [`Self::remote_proxy_with_registered_proof`] to get an approval by
5722
+ * the members of the multisig. The final execution of the multisig call should be at least
5723
+ * a batch of `register_remote_proxy_proof` and the multisig call that uses
5724
+ * `remote_proxy_with_registered_proof`. This way the final approver can use a recent proof
5725
+ * to prove the existence of the remote proxy. Otherwise it would require the multisig
5726
+ * members to approve the call in [`Config::MaxStorageRootsToKeep`] amount of time.
5727
+ *
5728
+ * It is supported to register multiple proofs, but the proofs need to be consumed in the
5729
+ * reverse order as they were registered. Basically this means last in, first out.
5730
+ *
5731
+ * The [`dispatch_context`] spans the entire lifetime of a transaction and every call in
5732
+ * the transaction gets access to the same context.
5733
+ *
5734
+ * # Example
5735
+ *
5736
+ * ```ignore
5737
+ * batch([
5738
+ * register_remote_proxy_proof,
5739
+ * as_multisig(remote_proxy_with_registered_proof(transfer))
5740
+ * ])
5741
+ * ```
5742
+ *
5743
+ * As `proofs` can not be verified indefinitely (the time the storage roots are stored is
5744
+ * limited) this function provides the possibility to provide a "fresh proof" at time of
5745
+ * dispatch. As in the example above, this could be useful for multisig operation that
5746
+ * depend on multiple members to approve a certain action, which can take multiple days.
5747
+ **/
5748
+ | { name: 'RegisterRemoteProxyProof'; params: { proof: PalletRemoteProxyRemoteProxyProof } }
5749
+ /**
5750
+ * Dispatch the given `call` from an account that the sender is authorised on a remote
5751
+ * chain.
5752
+ *
5753
+ * The dispatch origin for this call must be _Signed_. The difference to
5754
+ * [`Self::remote_proxy`] is that the proof nees to registered before using
5755
+ * [`Self::register_remote_proxy_proof`] (see for more information).
5756
+ *
5757
+ * Parameters:
5758
+ * - `real`: The account that the proxy will make a call on behalf of.
5759
+ * - `force_proxy_type`: Specify the exact proxy type to be used and checked for this call.
5760
+ * - `call`: The call to be made by the `real` account.
5761
+ **/
5762
+ | {
5763
+ name: 'RemoteProxyWithRegisteredProof';
5764
+ params: {
5765
+ real: MultiAddressLike;
5766
+ forceProxyType?: AssetHubKusamaRuntimeProxyType | undefined;
5767
+ call: AssetHubKusamaRuntimeRuntimeCallLike;
5768
+ };
5769
+ };
5770
+
5771
+ export type PalletRemoteProxyRemoteProxyProof = { type: 'RelayChain'; value: { proof: Array<Bytes>; block: number } };
5772
+
5550
5773
  /**
5551
5774
  * Contains a variant per dispatchable extrinsic that this pallet has.
5552
5775
  **/
@@ -11646,6 +11869,172 @@ export type PalletAssetConversionCallLike =
11646
11869
  **/
11647
11870
  | { name: 'Touch'; params: { asset1: StagingXcmV4Location; asset2: StagingXcmV4Location } };
11648
11871
 
11872
+ /**
11873
+ * Contains a variant per dispatchable extrinsic that this pallet has.
11874
+ **/
11875
+ export type PalletStateTrieMigrationCall =
11876
+ /**
11877
+ * Control the automatic migration.
11878
+ *
11879
+ * The dispatch origin of this call must be [`Config::ControlOrigin`].
11880
+ **/
11881
+ | { name: 'ControlAutoMigration'; params: { maybeConfig?: PalletStateTrieMigrationMigrationLimits | undefined } }
11882
+ /**
11883
+ * Continue the migration for the given `limits`.
11884
+ *
11885
+ * The dispatch origin of this call can be any signed account.
11886
+ *
11887
+ * This transaction has NO MONETARY INCENTIVES. calling it will not reward anyone. Albeit,
11888
+ * Upon successful execution, the transaction fee is returned.
11889
+ *
11890
+ * The (potentially over-estimated) of the byte length of all the data read must be
11891
+ * provided for up-front fee-payment and weighing. In essence, the caller is guaranteeing
11892
+ * that executing the current `MigrationTask` with the given `limits` will not exceed
11893
+ * `real_size_upper` bytes of read data.
11894
+ *
11895
+ * The `witness_task` is merely a helper to prevent the caller from being slashed or
11896
+ * generally trigger a migration that they do not intend. This parameter is just a message
11897
+ * from caller, saying that they believed `witness_task` was the last state of the
11898
+ * migration, and they only wish for their transaction to do anything, if this assumption
11899
+ * holds. In case `witness_task` does not match, the transaction fails.
11900
+ *
11901
+ * Based on the documentation of [`MigrationTask::migrate_until_exhaustion`], the
11902
+ * recommended way of doing this is to pass a `limit` that only bounds `count`, as the
11903
+ * `size` limit can always be overwritten.
11904
+ **/
11905
+ | {
11906
+ name: 'ContinueMigrate';
11907
+ params: {
11908
+ limits: PalletStateTrieMigrationMigrationLimits;
11909
+ realSizeUpper: number;
11910
+ witnessTask: PalletStateTrieMigrationMigrationTask;
11911
+ };
11912
+ }
11913
+ /**
11914
+ * Migrate the list of top keys by iterating each of them one by one.
11915
+ *
11916
+ * This does not affect the global migration process tracker ([`MigrationProcess`]), and
11917
+ * should only be used in case any keys are leftover due to a bug.
11918
+ **/
11919
+ | { name: 'MigrateCustomTop'; params: { keys: Array<Bytes>; witnessSize: number } }
11920
+ /**
11921
+ * Migrate the list of child keys by iterating each of them one by one.
11922
+ *
11923
+ * All of the given child keys must be present under one `child_root`.
11924
+ *
11925
+ * This does not affect the global migration process tracker ([`MigrationProcess`]), and
11926
+ * should only be used in case any keys are leftover due to a bug.
11927
+ **/
11928
+ | { name: 'MigrateCustomChild'; params: { root: Bytes; childKeys: Array<Bytes>; totalSize: number } }
11929
+ /**
11930
+ * Set the maximum limit of the signed migration.
11931
+ **/
11932
+ | { name: 'SetSignedMaxLimits'; params: { limits: PalletStateTrieMigrationMigrationLimits } }
11933
+ /**
11934
+ * Forcefully set the progress the running migration.
11935
+ *
11936
+ * This is only useful in one case: the next key to migrate is too big to be migrated with
11937
+ * a signed account, in a parachain context, and we simply want to skip it. A reasonable
11938
+ * example of this would be `:code:`, which is both very expensive to migrate, and commonly
11939
+ * used, so probably it is already migrated.
11940
+ *
11941
+ * In case you mess things up, you can also, in principle, use this to reset the migration
11942
+ * process.
11943
+ **/
11944
+ | {
11945
+ name: 'ForceSetProgress';
11946
+ params: { progressTop: PalletStateTrieMigrationProgress; progressChild: PalletStateTrieMigrationProgress };
11947
+ };
11948
+
11949
+ export type PalletStateTrieMigrationCallLike =
11950
+ /**
11951
+ * Control the automatic migration.
11952
+ *
11953
+ * The dispatch origin of this call must be [`Config::ControlOrigin`].
11954
+ **/
11955
+ | { name: 'ControlAutoMigration'; params: { maybeConfig?: PalletStateTrieMigrationMigrationLimits | undefined } }
11956
+ /**
11957
+ * Continue the migration for the given `limits`.
11958
+ *
11959
+ * The dispatch origin of this call can be any signed account.
11960
+ *
11961
+ * This transaction has NO MONETARY INCENTIVES. calling it will not reward anyone. Albeit,
11962
+ * Upon successful execution, the transaction fee is returned.
11963
+ *
11964
+ * The (potentially over-estimated) of the byte length of all the data read must be
11965
+ * provided for up-front fee-payment and weighing. In essence, the caller is guaranteeing
11966
+ * that executing the current `MigrationTask` with the given `limits` will not exceed
11967
+ * `real_size_upper` bytes of read data.
11968
+ *
11969
+ * The `witness_task` is merely a helper to prevent the caller from being slashed or
11970
+ * generally trigger a migration that they do not intend. This parameter is just a message
11971
+ * from caller, saying that they believed `witness_task` was the last state of the
11972
+ * migration, and they only wish for their transaction to do anything, if this assumption
11973
+ * holds. In case `witness_task` does not match, the transaction fails.
11974
+ *
11975
+ * Based on the documentation of [`MigrationTask::migrate_until_exhaustion`], the
11976
+ * recommended way of doing this is to pass a `limit` that only bounds `count`, as the
11977
+ * `size` limit can always be overwritten.
11978
+ **/
11979
+ | {
11980
+ name: 'ContinueMigrate';
11981
+ params: {
11982
+ limits: PalletStateTrieMigrationMigrationLimits;
11983
+ realSizeUpper: number;
11984
+ witnessTask: PalletStateTrieMigrationMigrationTask;
11985
+ };
11986
+ }
11987
+ /**
11988
+ * Migrate the list of top keys by iterating each of them one by one.
11989
+ *
11990
+ * This does not affect the global migration process tracker ([`MigrationProcess`]), and
11991
+ * should only be used in case any keys are leftover due to a bug.
11992
+ **/
11993
+ | { name: 'MigrateCustomTop'; params: { keys: Array<BytesLike>; witnessSize: number } }
11994
+ /**
11995
+ * Migrate the list of child keys by iterating each of them one by one.
11996
+ *
11997
+ * All of the given child keys must be present under one `child_root`.
11998
+ *
11999
+ * This does not affect the global migration process tracker ([`MigrationProcess`]), and
12000
+ * should only be used in case any keys are leftover due to a bug.
12001
+ **/
12002
+ | { name: 'MigrateCustomChild'; params: { root: BytesLike; childKeys: Array<BytesLike>; totalSize: number } }
12003
+ /**
12004
+ * Set the maximum limit of the signed migration.
12005
+ **/
12006
+ | { name: 'SetSignedMaxLimits'; params: { limits: PalletStateTrieMigrationMigrationLimits } }
12007
+ /**
12008
+ * Forcefully set the progress the running migration.
12009
+ *
12010
+ * This is only useful in one case: the next key to migrate is too big to be migrated with
12011
+ * a signed account, in a parachain context, and we simply want to skip it. A reasonable
12012
+ * example of this would be `:code:`, which is both very expensive to migrate, and commonly
12013
+ * used, so probably it is already migrated.
12014
+ *
12015
+ * In case you mess things up, you can also, in principle, use this to reset the migration
12016
+ * process.
12017
+ **/
12018
+ | {
12019
+ name: 'ForceSetProgress';
12020
+ params: { progressTop: PalletStateTrieMigrationProgress; progressChild: PalletStateTrieMigrationProgress };
12021
+ };
12022
+
12023
+ export type PalletStateTrieMigrationMigrationLimits = { size: number; item: number };
12024
+
12025
+ export type PalletStateTrieMigrationMigrationTask = {
12026
+ progressTop: PalletStateTrieMigrationProgress;
12027
+ progressChild: PalletStateTrieMigrationProgress;
12028
+ size: number;
12029
+ topItems: number;
12030
+ childItems: number;
12031
+ };
12032
+
12033
+ export type PalletStateTrieMigrationProgress =
12034
+ | { type: 'ToStart' }
12035
+ | { type: 'LastKey'; value: Bytes }
12036
+ | { type: 'Complete' };
12037
+
11649
12038
  export type AssetHubKusamaRuntimeOriginCaller =
11650
12039
  | { type: 'System'; value: FrameSupportDispatchRawOrigin }
11651
12040
  | { type: 'PolkadotXcm'; value: PalletXcmOrigin }
@@ -11789,6 +12178,39 @@ export type PalletProxyError =
11789
12178
  **/
11790
12179
  | 'NoSelfProxy';
11791
12180
 
12181
+ /**
12182
+ * The `Error` enum of this pallet.
12183
+ **/
12184
+ export type PalletRemoteProxyError =
12185
+ /**
12186
+ * The local account id could not converted to the remote account id.
12187
+ **/
12188
+ | 'CouldNotConvertLocalToRemoteAccountId'
12189
+ /**
12190
+ * The anchor block of the remote proof is unknown.
12191
+ **/
12192
+ | 'UnknownProofAnchorBlock'
12193
+ /**
12194
+ * The proxy definition could not be found in the proof.
12195
+ **/
12196
+ | 'InvalidProof'
12197
+ /**
12198
+ * Failed to decode the remote proxy definition from the proof.
12199
+ **/
12200
+ | 'ProxyDefinitionDecodingFailed'
12201
+ /**
12202
+ * Announcement, if made at all, was made too recently.
12203
+ **/
12204
+ | 'Unannounced'
12205
+ /**
12206
+ * Could not find any matching proxy definition in the proof.
12207
+ **/
12208
+ | 'DidNotFindMatchingProxyDefinition'
12209
+ /**
12210
+ * Proxy proof not registered.
12211
+ **/
12212
+ | 'ProxyProofNotRegistered';
12213
+
11792
12214
  export type PalletAssetsAssetDetails = {
11793
12215
  owner: AccountId32;
11794
12216
  issuer: AccountId32;
@@ -12525,10 +12947,12 @@ export type AssetHubKusamaRuntimeRuntimeError =
12525
12947
  | { pallet: 'Utility'; palletError: PalletUtilityError }
12526
12948
  | { pallet: 'Multisig'; palletError: PalletMultisigError }
12527
12949
  | { pallet: 'Proxy'; palletError: PalletProxyError }
12950
+ | { pallet: 'RemoteProxyRelayChain'; palletError: PalletRemoteProxyError }
12528
12951
  | { pallet: 'Assets'; palletError: PalletAssetsError }
12529
12952
  | { pallet: 'Uniques'; palletError: PalletUniquesError }
12530
12953
  | { pallet: 'Nfts'; palletError: PalletNftsError }
12531
12954
  | { pallet: 'ForeignAssets'; palletError: PalletAssetsError }
12532
12955
  | { pallet: 'NftFractionalization'; palletError: PalletNftFractionalizationError }
12533
12956
  | { pallet: 'PoolAssets'; palletError: PalletAssetsError }
12534
- | { pallet: 'AssetConversion'; palletError: PalletAssetConversionError };
12957
+ | { pallet: 'AssetConversion'; palletError: PalletAssetConversionError }
12958
+ | { pallet: 'StateTrieMigration'; palletError: PalletStateTrieMigrationError };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dedot/chaintypes",
3
- "version": "0.69.0",
3
+ "version": "0.70.0",
4
4
  "description": "Types for substrate-based chains",
5
5
  "author": "Thang X. Vu <thang@coongcrafts.io>",
6
6
  "main": "",
@@ -19,7 +19,7 @@
19
19
  "directory": "dist"
20
20
  },
21
21
  "license": "Apache-2.0",
22
- "gitHead": "825e0f549216783fa7989387cbb7023e1247e5f9",
22
+ "gitHead": "1fe9aea0f268277d06948e19152baf6b86b3e43e",
23
23
  "module": "./index.js",
24
24
  "types": "./index.d.ts"
25
25
  }
@@ -1828,6 +1828,11 @@ export interface ChainErrors<Rv extends RpcVersion> extends GenericChainErrors<R
1828
1828
  **/
1829
1829
  UnsupportedPrecompileAddress: GenericPalletError<Rv>;
1830
1830
 
1831
+ /**
1832
+ * Precompile Error
1833
+ **/
1834
+ PrecompileFailure: GenericPalletError<Rv>;
1835
+
1831
1836
  /**
1832
1837
  * Generic pallet error
1833
1838
  **/
@@ -23,7 +23,7 @@ export interface VersionedWestendAssetHubApi<Rv extends RpcVersion> extends Gene
23
23
 
24
24
  /**
25
25
  * @name: WestendAssetHubApi
26
- * @specVersion: 1018000
26
+ * @specVersion: 1018001
27
27
  **/
28
28
  export interface WestendAssetHubApi {
29
29
  legacy: VersionedWestendAssetHubApi<RpcLegacy>;
@@ -13796,7 +13796,11 @@ export type PalletReviveError =
13796
13796
  /**
13797
13797
  * Unsupported precompile address
13798
13798
  **/
13799
- | 'UnsupportedPrecompileAddress';
13799
+ | 'UnsupportedPrecompileAddress'
13800
+ /**
13801
+ * Precompile Error
13802
+ **/
13803
+ | 'PrecompileFailure';
13800
13804
 
13801
13805
  export type PalletAssetRewardsPoolStakerInfo = { amount: bigint; rewards: bigint; rewardPerTokenPaid: bigint };
13802
13806
 
@@ -14072,7 +14076,7 @@ export type PalletReviveEvmApiRpcTypesGenGenericTransaction = {
14072
14076
  from?: H160 | undefined;
14073
14077
  gas?: U256 | undefined;
14074
14078
  gasPrice?: U256 | undefined;
14075
- input?: PalletReviveEvmApiByteBytes | undefined;
14079
+ input: PalletReviveEvmApiRpcTypesGenInputOrData;
14076
14080
  maxFeePerBlobGas?: U256 | undefined;
14077
14081
  maxFeePerGas?: U256 | undefined;
14078
14082
  maxPriorityFeePerGas?: U256 | undefined;
@@ -14086,6 +14090,11 @@ export type PalletReviveEvmApiRpcTypesGenAccessListEntry = { address: H160; stor
14086
14090
 
14087
14091
  export type PalletReviveEvmApiByteBytes = Bytes;
14088
14092
 
14093
+ export type PalletReviveEvmApiRpcTypesGenInputOrData = {
14094
+ input?: PalletReviveEvmApiByteBytes | undefined;
14095
+ data?: PalletReviveEvmApiByteBytes | undefined;
14096
+ };
14097
+
14089
14098
  export type PalletReviveEvmApiByte = number;
14090
14099
 
14091
14100
  export type PalletRevivePrimitivesEthTransactInfo = {