@dedot/chaintypes 0.7.0 → 0.9.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.
package/astar/tx.d.ts CHANGED
@@ -14,9 +14,9 @@ import type {
14
14
  MultiAddressLike,
15
15
  Extrinsic,
16
16
  BytesLike,
17
+ H256,
17
18
  AccountId32Like,
18
19
  Data,
19
- H256,
20
20
  FixedBytes,
21
21
  FixedU128,
22
22
  H160,
@@ -28,24 +28,25 @@ import type {
28
28
  FrameSystemEventRecord,
29
29
  AstarRuntimeOriginCaller,
30
30
  SpWeightsWeightV2Weight,
31
- PalletIdentitySimpleIdentityInfo,
32
- PalletIdentityBitFlags,
31
+ PalletIdentityLegacyIdentityInfo,
33
32
  PalletIdentityJudgement,
34
33
  PalletMultisigTimepoint,
35
34
  AstarRuntimeProxyType,
36
35
  CumulusPrimitivesParachainInherentParachainInherentData,
36
+ PalletBalancesAdjustmentDirection,
37
37
  PalletVestingVestingInfo,
38
38
  PalletInflationInflationParameters,
39
39
  AstarPrimitivesDappStakingSmartContract,
40
40
  PalletDappStakingV3ForcingType,
41
41
  AstarPrimitivesOracleCurrencyId,
42
42
  AstarRuntimeSessionKeys,
43
- XcmVersionedMultiLocation,
43
+ XcmVersionedLocation,
44
44
  XcmVersionedXcm,
45
- XcmVersionedMultiAssets,
46
- StagingXcmV3MultilocationMultiLocation,
45
+ XcmVersionedAssets,
46
+ StagingXcmV4Location,
47
47
  XcmV3WeightLimit,
48
- XcmVersionedMultiAsset,
48
+ XcmVersionedAsset,
49
+ CumulusPrimitivesCoreAggregateMessageOrigin,
49
50
  EthereumTransactionTransactionV2,
50
51
  PalletContractsWasmDeterminism,
51
52
  } from './types';
@@ -66,7 +67,9 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
66
67
  **/
67
68
  system: {
68
69
  /**
69
- * See [`Pallet::remark`].
70
+ * Make some on-chain remark.
71
+ *
72
+ * Can be executed by every `origin`.
70
73
  *
71
74
  * @param {BytesLike} remark
72
75
  **/
@@ -85,7 +88,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
85
88
  >;
86
89
 
87
90
  /**
88
- * See [`Pallet::set_heap_pages`].
91
+ * Set the number of pages in the WebAssembly environment's heap.
89
92
  *
90
93
  * @param {bigint} pages
91
94
  **/
@@ -104,7 +107,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
104
107
  >;
105
108
 
106
109
  /**
107
- * See [`Pallet::set_code`].
110
+ * Set the new runtime code.
108
111
  *
109
112
  * @param {BytesLike} code
110
113
  **/
@@ -123,7 +126,10 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
123
126
  >;
124
127
 
125
128
  /**
126
- * See [`Pallet::set_code_without_checks`].
129
+ * Set the new runtime code without doing any checks of the given `code`.
130
+ *
131
+ * Note that runtime upgrades will not run if this is called with a not-increasing spec
132
+ * version!
127
133
  *
128
134
  * @param {BytesLike} code
129
135
  **/
@@ -142,7 +148,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
142
148
  >;
143
149
 
144
150
  /**
145
- * See [`Pallet::set_storage`].
151
+ * Set some items of storage.
146
152
  *
147
153
  * @param {Array<[BytesLike, BytesLike]>} items
148
154
  **/
@@ -161,7 +167,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
161
167
  >;
162
168
 
163
169
  /**
164
- * See [`Pallet::kill_storage`].
170
+ * Kill some items from storage.
165
171
  *
166
172
  * @param {Array<BytesLike>} keys
167
173
  **/
@@ -180,7 +186,10 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
180
186
  >;
181
187
 
182
188
  /**
183
- * See [`Pallet::kill_prefix`].
189
+ * Kill all storage items with a key that starts with the given prefix.
190
+ *
191
+ * **NOTE:** We rely on the Root origin to provide us the number of subkeys under
192
+ * the prefix we are removing to accurately calculate the weight of this function.
184
193
  *
185
194
  * @param {BytesLike} prefix
186
195
  * @param {number} subkeys
@@ -203,7 +212,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
203
212
  >;
204
213
 
205
214
  /**
206
- * See [`Pallet::remark_with_event`].
215
+ * Make some on-chain remark and emit event.
207
216
  *
208
217
  * @param {BytesLike} remark
209
218
  **/
@@ -221,6 +230,81 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
221
230
  >
222
231
  >;
223
232
 
233
+ /**
234
+ * Authorize an upgrade to a given `code_hash` for the runtime. The runtime can be supplied
235
+ * later.
236
+ *
237
+ * This call requires Root origin.
238
+ *
239
+ * @param {H256} codeHash
240
+ **/
241
+ authorizeUpgrade: GenericTxCall<
242
+ Rv,
243
+ (codeHash: H256) => ChainSubmittableExtrinsic<
244
+ Rv,
245
+ {
246
+ pallet: 'System';
247
+ palletCall: {
248
+ name: 'AuthorizeUpgrade';
249
+ params: { codeHash: H256 };
250
+ };
251
+ }
252
+ >
253
+ >;
254
+
255
+ /**
256
+ * Authorize an upgrade to a given `code_hash` for the runtime. The runtime can be supplied
257
+ * later.
258
+ *
259
+ * WARNING: This authorizes an upgrade that will take place without any safety checks, for
260
+ * example that the spec name remains the same and that the version number increases. Not
261
+ * recommended for normal use. Use `authorize_upgrade` instead.
262
+ *
263
+ * This call requires Root origin.
264
+ *
265
+ * @param {H256} codeHash
266
+ **/
267
+ authorizeUpgradeWithoutChecks: GenericTxCall<
268
+ Rv,
269
+ (codeHash: H256) => ChainSubmittableExtrinsic<
270
+ Rv,
271
+ {
272
+ pallet: 'System';
273
+ palletCall: {
274
+ name: 'AuthorizeUpgradeWithoutChecks';
275
+ params: { codeHash: H256 };
276
+ };
277
+ }
278
+ >
279
+ >;
280
+
281
+ /**
282
+ * Provide the preimage (runtime binary) `code` for an upgrade that has been authorized.
283
+ *
284
+ * If the authorization required a version check, this call will ensure the spec name
285
+ * remains unchanged and that the spec version has increased.
286
+ *
287
+ * Depending on the runtime's `OnSetCode` configuration, this function may directly apply
288
+ * the new `code` in the same block or attempt to schedule the upgrade.
289
+ *
290
+ * All origins are allowed.
291
+ *
292
+ * @param {BytesLike} code
293
+ **/
294
+ applyAuthorizedUpgrade: GenericTxCall<
295
+ Rv,
296
+ (code: BytesLike) => ChainSubmittableExtrinsic<
297
+ Rv,
298
+ {
299
+ pallet: 'System';
300
+ palletCall: {
301
+ name: 'ApplyAuthorizedUpgrade';
302
+ params: { code: BytesLike };
303
+ };
304
+ }
305
+ >
306
+ >;
307
+
224
308
  /**
225
309
  * Generic pallet tx call
226
310
  **/
@@ -231,7 +315,24 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
231
315
  **/
232
316
  utility: {
233
317
  /**
234
- * See [`Pallet::batch`].
318
+ * Send a batch of dispatch calls.
319
+ *
320
+ * May be called from any origin except `None`.
321
+ *
322
+ * - `calls`: The calls to be dispatched from the same origin. The number of call must not
323
+ * exceed the constant: `batched_calls_limit` (available in constant metadata).
324
+ *
325
+ * If origin is root then the calls are dispatched without checking origin filter. (This
326
+ * includes bypassing `frame_system::Config::BaseCallFilter`).
327
+ *
328
+ * ## Complexity
329
+ * - O(C) where C is the number of calls to be batched.
330
+ *
331
+ * This will return `Ok` in all circumstances. To determine the success of the batch, an
332
+ * event is deposited. If a call failed and the batch was interrupted, then the
333
+ * `BatchInterrupted` event is deposited, along with the number of successful calls made
334
+ * and the error of the failed call. If all were successful, then the `BatchCompleted`
335
+ * event is deposited.
235
336
  *
236
337
  * @param {Array<AstarRuntimeRuntimeCallLike>} calls
237
338
  **/
@@ -250,7 +351,19 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
250
351
  >;
251
352
 
252
353
  /**
253
- * See [`Pallet::as_derivative`].
354
+ * Send a call through an indexed pseudonym of the sender.
355
+ *
356
+ * Filter from origin are passed along. The call will be dispatched with an origin which
357
+ * use the same filter as the origin of this call.
358
+ *
359
+ * NOTE: If you need to ensure that any account-based filtering is not honored (i.e.
360
+ * because you expect `proxy` to have been used prior in the call stack and you do not want
361
+ * the call restrictions to apply to any sub-accounts), then use `as_multi_threshold_1`
362
+ * in the Multisig pallet instead.
363
+ *
364
+ * NOTE: Prior to version *12, this was called `as_limited_sub`.
365
+ *
366
+ * The dispatch origin for this call must be _Signed_.
254
367
  *
255
368
  * @param {number} index
256
369
  * @param {AstarRuntimeRuntimeCallLike} call
@@ -273,7 +386,19 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
273
386
  >;
274
387
 
275
388
  /**
276
- * See [`Pallet::batch_all`].
389
+ * Send a batch of dispatch calls and atomically execute them.
390
+ * The whole transaction will rollback and fail if any of the calls failed.
391
+ *
392
+ * May be called from any origin except `None`.
393
+ *
394
+ * - `calls`: The calls to be dispatched from the same origin. The number of call must not
395
+ * exceed the constant: `batched_calls_limit` (available in constant metadata).
396
+ *
397
+ * If origin is root then the calls are dispatched without checking origin filter. (This
398
+ * includes bypassing `frame_system::Config::BaseCallFilter`).
399
+ *
400
+ * ## Complexity
401
+ * - O(C) where C is the number of calls to be batched.
277
402
  *
278
403
  * @param {Array<AstarRuntimeRuntimeCallLike>} calls
279
404
  **/
@@ -292,7 +417,12 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
292
417
  >;
293
418
 
294
419
  /**
295
- * See [`Pallet::dispatch_as`].
420
+ * Dispatches a function call with a provided origin.
421
+ *
422
+ * The dispatch origin for this call must be _Root_.
423
+ *
424
+ * ## Complexity
425
+ * - O(1).
296
426
  *
297
427
  * @param {AstarRuntimeOriginCaller} asOrigin
298
428
  * @param {AstarRuntimeRuntimeCallLike} call
@@ -315,7 +445,19 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
315
445
  >;
316
446
 
317
447
  /**
318
- * See [`Pallet::force_batch`].
448
+ * Send a batch of dispatch calls.
449
+ * Unlike `batch`, it allows errors and won't interrupt.
450
+ *
451
+ * May be called from any origin except `None`.
452
+ *
453
+ * - `calls`: The calls to be dispatched from the same origin. The number of call must not
454
+ * exceed the constant: `batched_calls_limit` (available in constant metadata).
455
+ *
456
+ * If origin is root then the calls are dispatch without checking origin filter. (This
457
+ * includes bypassing `frame_system::Config::BaseCallFilter`).
458
+ *
459
+ * ## Complexity
460
+ * - O(C) where C is the number of calls to be batched.
319
461
  *
320
462
  * @param {Array<AstarRuntimeRuntimeCallLike>} calls
321
463
  **/
@@ -334,7 +476,12 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
334
476
  >;
335
477
 
336
478
  /**
337
- * See [`Pallet::with_weight`].
479
+ * Dispatch a function call with a specified weight.
480
+ *
481
+ * This function does not check the weight of the call, and instead allows the
482
+ * Root origin to specify the weight of the call.
483
+ *
484
+ * The dispatch origin for this call must be _Root_.
338
485
  *
339
486
  * @param {AstarRuntimeRuntimeCallLike} call
340
487
  * @param {SpWeightsWeightV2Weight} weight
@@ -366,7 +513,13 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
366
513
  **/
367
514
  identity: {
368
515
  /**
369
- * See [`Pallet::add_registrar`].
516
+ * Add a registrar to the system.
517
+ *
518
+ * The dispatch origin for this call must be `T::RegistrarOrigin`.
519
+ *
520
+ * - `account`: the account of the registrar.
521
+ *
522
+ * Emits `RegistrarAdded` if successful.
370
523
  *
371
524
  * @param {MultiAddressLike} account
372
525
  **/
@@ -385,26 +538,43 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
385
538
  >;
386
539
 
387
540
  /**
388
- * See [`Pallet::set_identity`].
541
+ * Set an account's identity information and reserve the appropriate deposit.
389
542
  *
390
- * @param {PalletIdentitySimpleIdentityInfo} info
543
+ * If the account already has identity information, the deposit is taken as part payment
544
+ * for the new deposit.
545
+ *
546
+ * The dispatch origin for this call must be _Signed_.
547
+ *
548
+ * - `info`: The identity information.
549
+ *
550
+ * Emits `IdentitySet` if successful.
551
+ *
552
+ * @param {PalletIdentityLegacyIdentityInfo} info
391
553
  **/
392
554
  setIdentity: GenericTxCall<
393
555
  Rv,
394
- (info: PalletIdentitySimpleIdentityInfo) => ChainSubmittableExtrinsic<
556
+ (info: PalletIdentityLegacyIdentityInfo) => ChainSubmittableExtrinsic<
395
557
  Rv,
396
558
  {
397
559
  pallet: 'Identity';
398
560
  palletCall: {
399
561
  name: 'SetIdentity';
400
- params: { info: PalletIdentitySimpleIdentityInfo };
562
+ params: { info: PalletIdentityLegacyIdentityInfo };
401
563
  };
402
564
  }
403
565
  >
404
566
  >;
405
567
 
406
568
  /**
407
- * See [`Pallet::set_subs`].
569
+ * Set the sub-accounts of the sender.
570
+ *
571
+ * Payment: Any aggregate balance reserved by previous `set_subs` calls will be returned
572
+ * and an amount `SubAccountDeposit` will be reserved for each item in `subs`.
573
+ *
574
+ * The dispatch origin for this call must be _Signed_ and the sender must have a registered
575
+ * identity.
576
+ *
577
+ * - `subs`: The identity's (new) sub-accounts.
408
578
  *
409
579
  * @param {Array<[AccountId32Like, Data]>} subs
410
580
  **/
@@ -423,7 +593,14 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
423
593
  >;
424
594
 
425
595
  /**
426
- * See [`Pallet::clear_identity`].
596
+ * Clear an account's identity info and all sub-accounts and return all deposits.
597
+ *
598
+ * Payment: All reserved balances on the account are returned.
599
+ *
600
+ * The dispatch origin for this call must be _Signed_ and the sender must have a registered
601
+ * identity.
602
+ *
603
+ * Emits `IdentityCleared` if successful.
427
604
  *
428
605
  **/
429
606
  clearIdentity: GenericTxCall<
@@ -440,7 +617,22 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
440
617
  >;
441
618
 
442
619
  /**
443
- * See [`Pallet::request_judgement`].
620
+ * Request a judgement from a registrar.
621
+ *
622
+ * Payment: At most `max_fee` will be reserved for payment to the registrar if judgement
623
+ * given.
624
+ *
625
+ * The dispatch origin for this call must be _Signed_ and the sender must have a
626
+ * registered identity.
627
+ *
628
+ * - `reg_index`: The index of the registrar whose judgement is requested.
629
+ * - `max_fee`: The maximum fee that may be paid. This should just be auto-populated as:
630
+ *
631
+ * ```nocompile
632
+ * Self::registrars().get(reg_index).unwrap().fee
633
+ * ```
634
+ *
635
+ * Emits `JudgementRequested` if successful.
444
636
  *
445
637
  * @param {number} regIndex
446
638
  * @param {bigint} maxFee
@@ -463,7 +655,16 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
463
655
  >;
464
656
 
465
657
  /**
466
- * See [`Pallet::cancel_request`].
658
+ * Cancel a previous request.
659
+ *
660
+ * Payment: A previously reserved deposit is returned on success.
661
+ *
662
+ * The dispatch origin for this call must be _Signed_ and the sender must have a
663
+ * registered identity.
664
+ *
665
+ * - `reg_index`: The index of the registrar whose judgement is no longer requested.
666
+ *
667
+ * Emits `JudgementUnrequested` if successful.
467
668
  *
468
669
  * @param {number} regIndex
469
670
  **/
@@ -482,7 +683,13 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
482
683
  >;
483
684
 
484
685
  /**
485
- * See [`Pallet::set_fee`].
686
+ * Set the fee required for a judgement to be requested from a registrar.
687
+ *
688
+ * The dispatch origin for this call must be _Signed_ and the sender must be the account
689
+ * of the registrar whose index is `index`.
690
+ *
691
+ * - `index`: the index of the registrar whose fee is to be set.
692
+ * - `fee`: the new fee.
486
693
  *
487
694
  * @param {number} index
488
695
  * @param {bigint} fee
@@ -505,7 +712,13 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
505
712
  >;
506
713
 
507
714
  /**
508
- * See [`Pallet::set_account_id`].
715
+ * Change the account associated with a registrar.
716
+ *
717
+ * The dispatch origin for this call must be _Signed_ and the sender must be the account
718
+ * of the registrar whose index is `index`.
719
+ *
720
+ * - `index`: the index of the registrar whose fee is to be set.
721
+ * - `new`: the new account ID.
509
722
  *
510
723
  * @param {number} index
511
724
  * @param {MultiAddressLike} new_
@@ -528,30 +741,50 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
528
741
  >;
529
742
 
530
743
  /**
531
- * See [`Pallet::set_fields`].
744
+ * Set the field information for a registrar.
745
+ *
746
+ * The dispatch origin for this call must be _Signed_ and the sender must be the account
747
+ * of the registrar whose index is `index`.
748
+ *
749
+ * - `index`: the index of the registrar whose fee is to be set.
750
+ * - `fields`: the fields that the registrar concerns themselves with.
532
751
  *
533
752
  * @param {number} index
534
- * @param {PalletIdentityBitFlags} fields
753
+ * @param {bigint} fields
535
754
  **/
536
755
  setFields: GenericTxCall<
537
756
  Rv,
538
757
  (
539
758
  index: number,
540
- fields: PalletIdentityBitFlags,
759
+ fields: bigint,
541
760
  ) => ChainSubmittableExtrinsic<
542
761
  Rv,
543
762
  {
544
763
  pallet: 'Identity';
545
764
  palletCall: {
546
765
  name: 'SetFields';
547
- params: { index: number; fields: PalletIdentityBitFlags };
766
+ params: { index: number; fields: bigint };
548
767
  };
549
768
  }
550
769
  >
551
770
  >;
552
771
 
553
772
  /**
554
- * See [`Pallet::provide_judgement`].
773
+ * Provide a judgement for an account's identity.
774
+ *
775
+ * The dispatch origin for this call must be _Signed_ and the sender must be the account
776
+ * of the registrar whose index is `reg_index`.
777
+ *
778
+ * - `reg_index`: the index of the registrar whose judgement is being made.
779
+ * - `target`: the account whose identity the judgement is upon. This must be an account
780
+ * with a registered identity.
781
+ * - `judgement`: the judgement of the registrar of index `reg_index` about `target`.
782
+ * - `identity`: The hash of the [`IdentityInformationProvider`] for that the judgement is
783
+ * provided.
784
+ *
785
+ * Note: Judgements do not apply to a username.
786
+ *
787
+ * Emits `JudgementGiven` if successful.
555
788
  *
556
789
  * @param {number} regIndex
557
790
  * @param {MultiAddressLike} target
@@ -578,7 +811,18 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
578
811
  >;
579
812
 
580
813
  /**
581
- * See [`Pallet::kill_identity`].
814
+ * Remove an account's identity and sub-account information and slash the deposits.
815
+ *
816
+ * Payment: Reserved balances from `set_subs` and `set_identity` are slashed and handled by
817
+ * `Slash`. Verification request deposits are not returned; they should be cancelled
818
+ * manually using `cancel_request`.
819
+ *
820
+ * The dispatch origin for this call must match `T::ForceOrigin`.
821
+ *
822
+ * - `target`: the account whose identity the judgement is upon. This must be an account
823
+ * with a registered identity.
824
+ *
825
+ * Emits `IdentityKilled` if successful.
582
826
  *
583
827
  * @param {MultiAddressLike} target
584
828
  **/
@@ -597,7 +841,13 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
597
841
  >;
598
842
 
599
843
  /**
600
- * See [`Pallet::add_sub`].
844
+ * Add the given account to the sender's subs.
845
+ *
846
+ * Payment: Balance reserved by a previous `set_subs` call for one sub will be repatriated
847
+ * to the sender.
848
+ *
849
+ * The dispatch origin for this call must be _Signed_ and the sender must have a registered
850
+ * sub identity of `sub`.
601
851
  *
602
852
  * @param {MultiAddressLike} sub
603
853
  * @param {Data} data
@@ -620,7 +870,10 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
620
870
  >;
621
871
 
622
872
  /**
623
- * See [`Pallet::rename_sub`].
873
+ * Alter the associated name of the given sub-account.
874
+ *
875
+ * The dispatch origin for this call must be _Signed_ and the sender must have a registered
876
+ * sub identity of `sub`.
624
877
  *
625
878
  * @param {MultiAddressLike} sub
626
879
  * @param {Data} data
@@ -643,7 +896,13 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
643
896
  >;
644
897
 
645
898
  /**
646
- * See [`Pallet::remove_sub`].
899
+ * Remove the given account from the sender's subs.
900
+ *
901
+ * Payment: Balance reserved by a previous `set_subs` call for one sub will be repatriated
902
+ * to the sender.
903
+ *
904
+ * The dispatch origin for this call must be _Signed_ and the sender must have a registered
905
+ * sub identity of `sub`.
647
906
  *
648
907
  * @param {MultiAddressLike} sub
649
908
  **/
@@ -662,7 +921,16 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
662
921
  >;
663
922
 
664
923
  /**
665
- * See [`Pallet::quit_sub`].
924
+ * Remove the sender as a sub-account.
925
+ *
926
+ * Payment: Balance reserved by a previous `set_subs` call for one sub will be repatriated
927
+ * to the sender (*not* the original depositor).
928
+ *
929
+ * The dispatch origin for this call must be _Signed_ and the sender must have a registered
930
+ * super-identity.
931
+ *
932
+ * NOTE: This should not normally be used, but is provided in the case that the non-
933
+ * controller of an account is maliciously registered as a sub-account.
666
934
  *
667
935
  **/
668
936
  quitSub: GenericTxCall<
@@ -678,6 +946,166 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
678
946
  >
679
947
  >;
680
948
 
949
+ /**
950
+ * Add an `AccountId` with permission to grant usernames with a given `suffix` appended.
951
+ *
952
+ * The authority can grant up to `allocation` usernames. To top up their allocation, they
953
+ * should just issue (or request via governance) a new `add_username_authority` call.
954
+ *
955
+ * @param {MultiAddressLike} authority
956
+ * @param {BytesLike} suffix
957
+ * @param {number} allocation
958
+ **/
959
+ addUsernameAuthority: GenericTxCall<
960
+ Rv,
961
+ (
962
+ authority: MultiAddressLike,
963
+ suffix: BytesLike,
964
+ allocation: number,
965
+ ) => ChainSubmittableExtrinsic<
966
+ Rv,
967
+ {
968
+ pallet: 'Identity';
969
+ palletCall: {
970
+ name: 'AddUsernameAuthority';
971
+ params: { authority: MultiAddressLike; suffix: BytesLike; allocation: number };
972
+ };
973
+ }
974
+ >
975
+ >;
976
+
977
+ /**
978
+ * Remove `authority` from the username authorities.
979
+ *
980
+ * @param {MultiAddressLike} authority
981
+ **/
982
+ removeUsernameAuthority: GenericTxCall<
983
+ Rv,
984
+ (authority: MultiAddressLike) => ChainSubmittableExtrinsic<
985
+ Rv,
986
+ {
987
+ pallet: 'Identity';
988
+ palletCall: {
989
+ name: 'RemoveUsernameAuthority';
990
+ params: { authority: MultiAddressLike };
991
+ };
992
+ }
993
+ >
994
+ >;
995
+
996
+ /**
997
+ * Set the username for `who`. Must be called by a username authority.
998
+ *
999
+ * The authority must have an `allocation`. Users can either pre-sign their usernames or
1000
+ * accept them later.
1001
+ *
1002
+ * Usernames must:
1003
+ * - Only contain lowercase ASCII characters or digits.
1004
+ * - When combined with the suffix of the issuing authority be _less than_ the
1005
+ * `MaxUsernameLength`.
1006
+ *
1007
+ * @param {MultiAddressLike} who
1008
+ * @param {BytesLike} username
1009
+ * @param {SpRuntimeMultiSignature | undefined} signature
1010
+ **/
1011
+ setUsernameFor: GenericTxCall<
1012
+ Rv,
1013
+ (
1014
+ who: MultiAddressLike,
1015
+ username: BytesLike,
1016
+ signature: SpRuntimeMultiSignature | undefined,
1017
+ ) => ChainSubmittableExtrinsic<
1018
+ Rv,
1019
+ {
1020
+ pallet: 'Identity';
1021
+ palletCall: {
1022
+ name: 'SetUsernameFor';
1023
+ params: { who: MultiAddressLike; username: BytesLike; signature: SpRuntimeMultiSignature | undefined };
1024
+ };
1025
+ }
1026
+ >
1027
+ >;
1028
+
1029
+ /**
1030
+ * Accept a given username that an `authority` granted. The call must include the full
1031
+ * username, as in `username.suffix`.
1032
+ *
1033
+ * @param {BytesLike} username
1034
+ **/
1035
+ acceptUsername: GenericTxCall<
1036
+ Rv,
1037
+ (username: BytesLike) => ChainSubmittableExtrinsic<
1038
+ Rv,
1039
+ {
1040
+ pallet: 'Identity';
1041
+ palletCall: {
1042
+ name: 'AcceptUsername';
1043
+ params: { username: BytesLike };
1044
+ };
1045
+ }
1046
+ >
1047
+ >;
1048
+
1049
+ /**
1050
+ * Remove an expired username approval. The username was approved by an authority but never
1051
+ * accepted by the user and must now be beyond its expiration. The call must include the
1052
+ * full username, as in `username.suffix`.
1053
+ *
1054
+ * @param {BytesLike} username
1055
+ **/
1056
+ removeExpiredApproval: GenericTxCall<
1057
+ Rv,
1058
+ (username: BytesLike) => ChainSubmittableExtrinsic<
1059
+ Rv,
1060
+ {
1061
+ pallet: 'Identity';
1062
+ palletCall: {
1063
+ name: 'RemoveExpiredApproval';
1064
+ params: { username: BytesLike };
1065
+ };
1066
+ }
1067
+ >
1068
+ >;
1069
+
1070
+ /**
1071
+ * Set a given username as the primary. The username should include the suffix.
1072
+ *
1073
+ * @param {BytesLike} username
1074
+ **/
1075
+ setPrimaryUsername: GenericTxCall<
1076
+ Rv,
1077
+ (username: BytesLike) => ChainSubmittableExtrinsic<
1078
+ Rv,
1079
+ {
1080
+ pallet: 'Identity';
1081
+ palletCall: {
1082
+ name: 'SetPrimaryUsername';
1083
+ params: { username: BytesLike };
1084
+ };
1085
+ }
1086
+ >
1087
+ >;
1088
+
1089
+ /**
1090
+ * Remove a username that corresponds to an account with no identity. Exists when a user
1091
+ * gets a username but then calls `clear_identity`.
1092
+ *
1093
+ * @param {BytesLike} username
1094
+ **/
1095
+ removeDanglingUsername: GenericTxCall<
1096
+ Rv,
1097
+ (username: BytesLike) => ChainSubmittableExtrinsic<
1098
+ Rv,
1099
+ {
1100
+ pallet: 'Identity';
1101
+ palletCall: {
1102
+ name: 'RemoveDanglingUsername';
1103
+ params: { username: BytesLike };
1104
+ };
1105
+ }
1106
+ >
1107
+ >;
1108
+
681
1109
  /**
682
1110
  * Generic pallet tx call
683
1111
  **/
@@ -688,7 +1116,25 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
688
1116
  **/
689
1117
  timestamp: {
690
1118
  /**
691
- * See [`Pallet::set`].
1119
+ * Set the current time.
1120
+ *
1121
+ * This call should be invoked exactly once per block. It will panic at the finalization
1122
+ * phase, if this call hasn't been invoked by that time.
1123
+ *
1124
+ * The timestamp should be greater than the previous one by the amount specified by
1125
+ * [`Config::MinimumPeriod`].
1126
+ *
1127
+ * The dispatch origin for this call must be _None_.
1128
+ *
1129
+ * This dispatch class is _Mandatory_ to ensure it gets executed in the block. Be aware
1130
+ * that changing the complexity of this call could result exhausting the resources in a
1131
+ * block to execute any other calls.
1132
+ *
1133
+ * ## Complexity
1134
+ * - `O(1)` (Note that implementations of `OnTimestampSet` must also be `O(1)`)
1135
+ * - 1 storage read and 1 storage mutation (codec `O(1)` because of `DidUpdate::take` in
1136
+ * `on_finalize`)
1137
+ * - 1 event handler `on_timestamp_set`. Must be `O(1)`.
692
1138
  *
693
1139
  * @param {bigint} now
694
1140
  **/
@@ -716,7 +1162,18 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
716
1162
  **/
717
1163
  multisig: {
718
1164
  /**
719
- * See [`Pallet::as_multi_threshold_1`].
1165
+ * Immediately dispatch a multi-signature call using a single approval from the caller.
1166
+ *
1167
+ * The dispatch origin for this call must be _Signed_.
1168
+ *
1169
+ * - `other_signatories`: The accounts (other than the sender) who are part of the
1170
+ * multi-signature, but do not participate in the approval process.
1171
+ * - `call`: The call to be executed.
1172
+ *
1173
+ * Result is equivalent to the dispatched result.
1174
+ *
1175
+ * ## Complexity
1176
+ * O(Z + C) where Z is the length of the call and C its execution weight.
720
1177
  *
721
1178
  * @param {Array<AccountId32Like>} otherSignatories
722
1179
  * @param {AstarRuntimeRuntimeCallLike} call
@@ -739,7 +1196,45 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
739
1196
  >;
740
1197
 
741
1198
  /**
742
- * See [`Pallet::as_multi`].
1199
+ * Register approval for a dispatch to be made from a deterministic composite account if
1200
+ * approved by a total of `threshold - 1` of `other_signatories`.
1201
+ *
1202
+ * If there are enough, then dispatch the call.
1203
+ *
1204
+ * Payment: `DepositBase` will be reserved if this is the first approval, plus
1205
+ * `threshold` times `DepositFactor`. It is returned once this dispatch happens or
1206
+ * is cancelled.
1207
+ *
1208
+ * The dispatch origin for this call must be _Signed_.
1209
+ *
1210
+ * - `threshold`: The total number of approvals for this dispatch before it is executed.
1211
+ * - `other_signatories`: The accounts (other than the sender) who can approve this
1212
+ * dispatch. May not be empty.
1213
+ * - `maybe_timepoint`: If this is the first approval, then this must be `None`. If it is
1214
+ * not the first approval, then it must be `Some`, with the timepoint (block number and
1215
+ * transaction index) of the first approval transaction.
1216
+ * - `call`: The call to be executed.
1217
+ *
1218
+ * NOTE: Unless this is the final approval, you will generally want to use
1219
+ * `approve_as_multi` instead, since it only requires a hash of the call.
1220
+ *
1221
+ * Result is equivalent to the dispatched result if `threshold` is exactly `1`. Otherwise
1222
+ * on success, result is `Ok` and the result from the interior call, if it was executed,
1223
+ * may be found in the deposited `MultisigExecuted` event.
1224
+ *
1225
+ * ## Complexity
1226
+ * - `O(S + Z + Call)`.
1227
+ * - Up to one balance-reserve or unreserve operation.
1228
+ * - One passthrough operation, one insert, both `O(S)` where `S` is the number of
1229
+ * signatories. `S` is capped by `MaxSignatories`, with weight being proportional.
1230
+ * - One call encode & hash, both of complexity `O(Z)` where `Z` is tx-len.
1231
+ * - One encode & hash, both of complexity `O(S)`.
1232
+ * - Up to one binary search and insert (`O(logS + S)`).
1233
+ * - I/O: 1 read `O(S)`, up to 1 mutate `O(S)`. Up to one remove.
1234
+ * - One event.
1235
+ * - The weight of the `call`.
1236
+ * - Storage: inserts one item, value size bounded by `MaxSignatories`, with a deposit
1237
+ * taken for its lifetime of `DepositBase + threshold * DepositFactor`.
743
1238
  *
744
1239
  * @param {number} threshold
745
1240
  * @param {Array<AccountId32Like>} otherSignatories
@@ -774,7 +1269,36 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
774
1269
  >;
775
1270
 
776
1271
  /**
777
- * See [`Pallet::approve_as_multi`].
1272
+ * Register approval for a dispatch to be made from a deterministic composite account if
1273
+ * approved by a total of `threshold - 1` of `other_signatories`.
1274
+ *
1275
+ * Payment: `DepositBase` will be reserved if this is the first approval, plus
1276
+ * `threshold` times `DepositFactor`. It is returned once this dispatch happens or
1277
+ * is cancelled.
1278
+ *
1279
+ * The dispatch origin for this call must be _Signed_.
1280
+ *
1281
+ * - `threshold`: The total number of approvals for this dispatch before it is executed.
1282
+ * - `other_signatories`: The accounts (other than the sender) who can approve this
1283
+ * dispatch. May not be empty.
1284
+ * - `maybe_timepoint`: If this is the first approval, then this must be `None`. If it is
1285
+ * not the first approval, then it must be `Some`, with the timepoint (block number and
1286
+ * transaction index) of the first approval transaction.
1287
+ * - `call_hash`: The hash of the call to be executed.
1288
+ *
1289
+ * NOTE: If this is the final approval, you will want to use `as_multi` instead.
1290
+ *
1291
+ * ## Complexity
1292
+ * - `O(S)`.
1293
+ * - Up to one balance-reserve or unreserve operation.
1294
+ * - One passthrough operation, one insert, both `O(S)` where `S` is the number of
1295
+ * signatories. `S` is capped by `MaxSignatories`, with weight being proportional.
1296
+ * - One encode & hash, both of complexity `O(S)`.
1297
+ * - Up to one binary search and insert (`O(logS + S)`).
1298
+ * - I/O: 1 read `O(S)`, up to 1 mutate `O(S)`. Up to one remove.
1299
+ * - One event.
1300
+ * - Storage: inserts one item, value size bounded by `MaxSignatories`, with a deposit
1301
+ * taken for its lifetime of `DepositBase + threshold * DepositFactor`.
778
1302
  *
779
1303
  * @param {number} threshold
780
1304
  * @param {Array<AccountId32Like>} otherSignatories
@@ -809,7 +1333,27 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
809
1333
  >;
810
1334
 
811
1335
  /**
812
- * See [`Pallet::cancel_as_multi`].
1336
+ * Cancel a pre-existing, on-going multisig transaction. Any deposit reserved previously
1337
+ * for this operation will be unreserved on success.
1338
+ *
1339
+ * The dispatch origin for this call must be _Signed_.
1340
+ *
1341
+ * - `threshold`: The total number of approvals for this dispatch before it is executed.
1342
+ * - `other_signatories`: The accounts (other than the sender) who can approve this
1343
+ * dispatch. May not be empty.
1344
+ * - `timepoint`: The timepoint (block number and transaction index) of the first approval
1345
+ * transaction for this dispatch.
1346
+ * - `call_hash`: The hash of the call to be executed.
1347
+ *
1348
+ * ## Complexity
1349
+ * - `O(S)`.
1350
+ * - Up to one balance-reserve or unreserve operation.
1351
+ * - One passthrough operation, one insert, both `O(S)` where `S` is the number of
1352
+ * signatories. `S` is capped by `MaxSignatories`, with weight being proportional.
1353
+ * - One encode & hash, both of complexity `O(S)`.
1354
+ * - One event.
1355
+ * - I/O: 1 read `O(S)`, one remove.
1356
+ * - Storage: removes one item.
813
1357
  *
814
1358
  * @param {number} threshold
815
1359
  * @param {Array<AccountId32Like>} otherSignatories
@@ -850,7 +1394,15 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
850
1394
  **/
851
1395
  proxy: {
852
1396
  /**
853
- * See [`Pallet::proxy`].
1397
+ * Dispatch the given `call` from an account that the sender is authorised for through
1398
+ * `add_proxy`.
1399
+ *
1400
+ * The dispatch origin for this call must be _Signed_.
1401
+ *
1402
+ * Parameters:
1403
+ * - `real`: The account that the proxy will make a call on behalf of.
1404
+ * - `force_proxy_type`: Specify the exact proxy type to be used and checked for this call.
1405
+ * - `call`: The call to be made by the `real` account.
854
1406
  *
855
1407
  * @param {MultiAddressLike} real
856
1408
  * @param {AstarRuntimeProxyType | undefined} forceProxyType
@@ -879,7 +1431,15 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
879
1431
  >;
880
1432
 
881
1433
  /**
882
- * See [`Pallet::add_proxy`].
1434
+ * Register a proxy account for the sender that is able to make calls on its behalf.
1435
+ *
1436
+ * The dispatch origin for this call must be _Signed_.
1437
+ *
1438
+ * Parameters:
1439
+ * - `proxy`: The account that the `caller` would like to make a proxy.
1440
+ * - `proxy_type`: The permissions allowed for this proxy account.
1441
+ * - `delay`: The announcement period required of the initial proxy. Will generally be
1442
+ * zero.
883
1443
  *
884
1444
  * @param {MultiAddressLike} delegate
885
1445
  * @param {AstarRuntimeProxyType} proxyType
@@ -904,7 +1464,13 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
904
1464
  >;
905
1465
 
906
1466
  /**
907
- * See [`Pallet::remove_proxy`].
1467
+ * Unregister a proxy account for the sender.
1468
+ *
1469
+ * The dispatch origin for this call must be _Signed_.
1470
+ *
1471
+ * Parameters:
1472
+ * - `proxy`: The account that the `caller` would like to remove as a proxy.
1473
+ * - `proxy_type`: The permissions currently enabled for the removed proxy account.
908
1474
  *
909
1475
  * @param {MultiAddressLike} delegate
910
1476
  * @param {AstarRuntimeProxyType} proxyType
@@ -929,7 +1495,12 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
929
1495
  >;
930
1496
 
931
1497
  /**
932
- * See [`Pallet::remove_proxies`].
1498
+ * Unregister all proxy accounts for the sender.
1499
+ *
1500
+ * The dispatch origin for this call must be _Signed_.
1501
+ *
1502
+ * WARNING: This may be called on accounts created by `pure`, however if done, then
1503
+ * the unreserved fees will be inaccessible. **All access to this account will be lost.**
933
1504
  *
934
1505
  **/
935
1506
  removeProxies: GenericTxCall<
@@ -946,7 +1517,24 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
946
1517
  >;
947
1518
 
948
1519
  /**
949
- * See [`Pallet::create_pure`].
1520
+ * Spawn a fresh new account that is guaranteed to be otherwise inaccessible, and
1521
+ * initialize it with a proxy of `proxy_type` for `origin` sender.
1522
+ *
1523
+ * Requires a `Signed` origin.
1524
+ *
1525
+ * - `proxy_type`: The type of the proxy that the sender will be registered as over the
1526
+ * new account. This will almost always be the most permissive `ProxyType` possible to
1527
+ * allow for maximum flexibility.
1528
+ * - `index`: A disambiguation index, in case this is called multiple times in the same
1529
+ * transaction (e.g. with `utility::batch`). Unless you're using `batch` you probably just
1530
+ * want to use `0`.
1531
+ * - `delay`: The announcement period required of the initial proxy. Will generally be
1532
+ * zero.
1533
+ *
1534
+ * Fails with `Duplicate` if this has already been called in this transaction, from the
1535
+ * same sender, with the same parameters.
1536
+ *
1537
+ * Fails if there are insufficient funds to pay for deposit.
950
1538
  *
951
1539
  * @param {AstarRuntimeProxyType} proxyType
952
1540
  * @param {number} delay
@@ -971,7 +1559,22 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
971
1559
  >;
972
1560
 
973
1561
  /**
974
- * See [`Pallet::kill_pure`].
1562
+ * Removes a previously spawned pure proxy.
1563
+ *
1564
+ * WARNING: **All access to this account will be lost.** Any funds held in it will be
1565
+ * inaccessible.
1566
+ *
1567
+ * Requires a `Signed` origin, and the sender account must have been created by a call to
1568
+ * `pure` with corresponding parameters.
1569
+ *
1570
+ * - `spawner`: The account that originally called `pure` to create this account.
1571
+ * - `index`: The disambiguation index originally passed to `pure`. Probably `0`.
1572
+ * - `proxy_type`: The proxy type originally passed to `pure`.
1573
+ * - `height`: The height of the chain when the call to `pure` was processed.
1574
+ * - `ext_index`: The extrinsic index in which the call to `pure` was processed.
1575
+ *
1576
+ * Fails with `NoPermission` in case the caller is not a previously created pure
1577
+ * account whose `pure` call has corresponding parameters.
975
1578
  *
976
1579
  * @param {MultiAddressLike} spawner
977
1580
  * @param {AstarRuntimeProxyType} proxyType
@@ -1006,7 +1609,21 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1006
1609
  >;
1007
1610
 
1008
1611
  /**
1009
- * See [`Pallet::announce`].
1612
+ * Publish the hash of a proxy-call that will be made in the future.
1613
+ *
1614
+ * This must be called some number of blocks before the corresponding `proxy` is attempted
1615
+ * if the delay associated with the proxy relationship is greater than zero.
1616
+ *
1617
+ * No more than `MaxPending` announcements may be made at any one time.
1618
+ *
1619
+ * This will take a deposit of `AnnouncementDepositFactor` as well as
1620
+ * `AnnouncementDepositBase` if there are no other pending announcements.
1621
+ *
1622
+ * The dispatch origin for this call must be _Signed_ and a proxy of `real`.
1623
+ *
1624
+ * Parameters:
1625
+ * - `real`: The account that the proxy will make a call on behalf of.
1626
+ * - `call_hash`: The hash of the call to be made by the `real` account.
1010
1627
  *
1011
1628
  * @param {MultiAddressLike} real
1012
1629
  * @param {H256} callHash
@@ -1029,7 +1646,16 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1029
1646
  >;
1030
1647
 
1031
1648
  /**
1032
- * See [`Pallet::remove_announcement`].
1649
+ * Remove a given announcement.
1650
+ *
1651
+ * May be called by a proxy account to remove a call they previously announced and return
1652
+ * the deposit.
1653
+ *
1654
+ * The dispatch origin for this call must be _Signed_.
1655
+ *
1656
+ * Parameters:
1657
+ * - `real`: The account that the proxy will make a call on behalf of.
1658
+ * - `call_hash`: The hash of the call to be made by the `real` account.
1033
1659
  *
1034
1660
  * @param {MultiAddressLike} real
1035
1661
  * @param {H256} callHash
@@ -1052,7 +1678,16 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1052
1678
  >;
1053
1679
 
1054
1680
  /**
1055
- * See [`Pallet::reject_announcement`].
1681
+ * Remove the given announcement of a delegate.
1682
+ *
1683
+ * May be called by a target (proxied) account to remove a call that one of their delegates
1684
+ * (`delegate`) has announced they want to execute. The deposit is returned.
1685
+ *
1686
+ * The dispatch origin for this call must be _Signed_.
1687
+ *
1688
+ * Parameters:
1689
+ * - `delegate`: The account that previously announced the call.
1690
+ * - `call_hash`: The hash of the call to be made.
1056
1691
  *
1057
1692
  * @param {MultiAddressLike} delegate
1058
1693
  * @param {H256} callHash
@@ -1075,7 +1710,17 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1075
1710
  >;
1076
1711
 
1077
1712
  /**
1078
- * See [`Pallet::proxy_announced`].
1713
+ * Dispatch the given `call` from an account that the sender is authorized for through
1714
+ * `add_proxy`.
1715
+ *
1716
+ * Removes any corresponding announcement(s).
1717
+ *
1718
+ * The dispatch origin for this call must be _Signed_.
1719
+ *
1720
+ * Parameters:
1721
+ * - `real`: The account that the proxy will make a call on behalf of.
1722
+ * - `force_proxy_type`: Specify the exact proxy type to be used and checked for this call.
1723
+ * - `call`: The call to be made by the `real` account.
1079
1724
  *
1080
1725
  * @param {MultiAddressLike} delegate
1081
1726
  * @param {MultiAddressLike} real
@@ -1116,7 +1761,15 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1116
1761
  **/
1117
1762
  parachainSystem: {
1118
1763
  /**
1119
- * See [`Pallet::set_validation_data`].
1764
+ * Set the current validation data.
1765
+ *
1766
+ * This should be invoked exactly once per block. It will panic at the finalization
1767
+ * phase if the call was not invoked.
1768
+ *
1769
+ * The dispatch origin for this call must be `Inherent`
1770
+ *
1771
+ * As a side effect, this function upgrades the current validation function
1772
+ * if the appropriate time has come.
1120
1773
  *
1121
1774
  * @param {CumulusPrimitivesParachainInherentParachainInherentData} data
1122
1775
  **/
@@ -1135,7 +1788,6 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1135
1788
  >;
1136
1789
 
1137
1790
  /**
1138
- * See [`Pallet::sudo_send_upward_message`].
1139
1791
  *
1140
1792
  * @param {BytesLike} message
1141
1793
  **/
@@ -1154,7 +1806,14 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1154
1806
  >;
1155
1807
 
1156
1808
  /**
1157
- * See [`Pallet::authorize_upgrade`].
1809
+ * Authorize an upgrade to a given `code_hash` for the runtime. The runtime can be supplied
1810
+ * later.
1811
+ *
1812
+ * The `check_version` parameter sets a boolean flag for whether or not the runtime's spec
1813
+ * version and name should be verified on upgrade. Since the authorization only has a hash,
1814
+ * it cannot actually perform the verification.
1815
+ *
1816
+ * This call requires Root origin.
1158
1817
  *
1159
1818
  * @param {H256} codeHash
1160
1819
  * @param {boolean} checkVersion
@@ -1177,7 +1836,15 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1177
1836
  >;
1178
1837
 
1179
1838
  /**
1180
- * See [`Pallet::enact_authorized_upgrade`].
1839
+ * Provide the preimage (runtime binary) `code` for an upgrade that has been authorized.
1840
+ *
1841
+ * If the authorization required a version check, this call will ensure the spec name
1842
+ * remains unchanged and that the spec version has increased.
1843
+ *
1844
+ * Note that this function will not apply the new `code`, but only attempt to schedule the
1845
+ * upgrade with the Relay Chain.
1846
+ *
1847
+ * All origins are allowed.
1181
1848
  *
1182
1849
  * @param {BytesLike} code
1183
1850
  **/
@@ -1214,7 +1881,13 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1214
1881
  **/
1215
1882
  balances: {
1216
1883
  /**
1217
- * See [`Pallet::transfer_allow_death`].
1884
+ * Transfer some liquid free balance to another account.
1885
+ *
1886
+ * `transfer_allow_death` will set the `FreeBalance` of the sender and receiver.
1887
+ * If the sender's account is below the existential deposit as a result
1888
+ * of the transfer, the account will be reaped.
1889
+ *
1890
+ * The dispatch origin for this call must be `Signed` by the transactor.
1218
1891
  *
1219
1892
  * @param {MultiAddressLike} dest
1220
1893
  * @param {bigint} value
@@ -1237,7 +1910,8 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1237
1910
  >;
1238
1911
 
1239
1912
  /**
1240
- * See [`Pallet::force_transfer`].
1913
+ * Exactly as `transfer_allow_death`, except the origin must be root and the source account
1914
+ * may be specified.
1241
1915
  *
1242
1916
  * @param {MultiAddressLike} source
1243
1917
  * @param {MultiAddressLike} dest
@@ -1262,7 +1936,12 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1262
1936
  >;
1263
1937
 
1264
1938
  /**
1265
- * See [`Pallet::transfer_keep_alive`].
1939
+ * Same as the [`transfer_allow_death`] call, but with a check that the transfer will not
1940
+ * kill the origin account.
1941
+ *
1942
+ * 99% of the time you want [`transfer_allow_death`] instead.
1943
+ *
1944
+ * [`transfer_allow_death`]: struct.Pallet.html#method.transfer
1266
1945
  *
1267
1946
  * @param {MultiAddressLike} dest
1268
1947
  * @param {bigint} value
@@ -1285,7 +1964,21 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1285
1964
  >;
1286
1965
 
1287
1966
  /**
1288
- * See [`Pallet::transfer_all`].
1967
+ * Transfer the entire transferable balance from the caller account.
1968
+ *
1969
+ * NOTE: This function only attempts to transfer _transferable_ balances. This means that
1970
+ * any locked, reserved, or existential deposits (when `keep_alive` is `true`), will not be
1971
+ * transferred by this function. To ensure that this function results in a killed account,
1972
+ * you might need to prepare the account by removing any reference counters, storage
1973
+ * deposits, etc...
1974
+ *
1975
+ * The dispatch origin of this call must be Signed.
1976
+ *
1977
+ * - `dest`: The recipient of the transfer.
1978
+ * - `keep_alive`: A boolean to determine if the `transfer_all` operation should send all
1979
+ * of the funds the account has, causing the sender account to be killed (false), or
1980
+ * transfer everything except at least the existential deposit, which will guarantee to
1981
+ * keep the sender account alive (true).
1289
1982
  *
1290
1983
  * @param {MultiAddressLike} dest
1291
1984
  * @param {boolean} keepAlive
@@ -1308,7 +2001,9 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1308
2001
  >;
1309
2002
 
1310
2003
  /**
1311
- * See [`Pallet::force_unreserve`].
2004
+ * Unreserve some balance from a user by force.
2005
+ *
2006
+ * Can only be called by ROOT.
1312
2007
  *
1313
2008
  * @param {MultiAddressLike} who
1314
2009
  * @param {bigint} amount
@@ -1331,7 +2026,14 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1331
2026
  >;
1332
2027
 
1333
2028
  /**
1334
- * See [`Pallet::upgrade_accounts`].
2029
+ * Upgrade a specified account.
2030
+ *
2031
+ * - `origin`: Must be `Signed`.
2032
+ * - `who`: The account to be upgraded.
2033
+ *
2034
+ * This will waive the transaction fee if at least all but 10% of the accounts needed to
2035
+ * be upgraded. (We let some not have to be upgraded just in order to allow for the
2036
+ * possibililty of churn).
1335
2037
  *
1336
2038
  * @param {Array<AccountId32Like>} who
1337
2039
  **/
@@ -1350,7 +2052,9 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1350
2052
  >;
1351
2053
 
1352
2054
  /**
1353
- * See [`Pallet::force_set_balance`].
2055
+ * Set the regular balance of a given account.
2056
+ *
2057
+ * The dispatch origin for this call is `root`.
1354
2058
  *
1355
2059
  * @param {MultiAddressLike} who
1356
2060
  * @param {bigint} newFree
@@ -1373,7 +2077,33 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1373
2077
  >;
1374
2078
 
1375
2079
  /**
1376
- * See [`Pallet::burn`].
2080
+ * Adjust the total issuance in a saturating way.
2081
+ *
2082
+ * Can only be called by root and always needs a positive `delta`.
2083
+ *
2084
+ * # Example
2085
+ *
2086
+ * @param {PalletBalancesAdjustmentDirection} direction
2087
+ * @param {bigint} delta
2088
+ **/
2089
+ forceAdjustTotalIssuance: GenericTxCall<
2090
+ Rv,
2091
+ (
2092
+ direction: PalletBalancesAdjustmentDirection,
2093
+ delta: bigint,
2094
+ ) => ChainSubmittableExtrinsic<
2095
+ Rv,
2096
+ {
2097
+ pallet: 'Balances';
2098
+ palletCall: {
2099
+ name: 'ForceAdjustTotalIssuance';
2100
+ params: { direction: PalletBalancesAdjustmentDirection; delta: bigint };
2101
+ };
2102
+ }
2103
+ >
2104
+ >;
2105
+
2106
+ /**
1377
2107
  *
1378
2108
  * @param {bigint} value
1379
2109
  * @param {boolean} ignorable
@@ -1405,7 +2135,15 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1405
2135
  **/
1406
2136
  vesting: {
1407
2137
  /**
1408
- * See [`Pallet::vest`].
2138
+ * Unlock any vested funds of the sender account.
2139
+ *
2140
+ * The dispatch origin for this call must be _Signed_ and the sender must have funds still
2141
+ * locked under this pallet.
2142
+ *
2143
+ * Emits either `VestingCompleted` or `VestingUpdated`.
2144
+ *
2145
+ * ## Complexity
2146
+ * - `O(1)`.
1409
2147
  *
1410
2148
  **/
1411
2149
  vest: GenericTxCall<
@@ -1422,7 +2160,17 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1422
2160
  >;
1423
2161
 
1424
2162
  /**
1425
- * See [`Pallet::vest_other`].
2163
+ * Unlock any vested funds of a `target` account.
2164
+ *
2165
+ * The dispatch origin for this call must be _Signed_.
2166
+ *
2167
+ * - `target`: The account whose vested funds should be unlocked. Must have funds still
2168
+ * locked under this pallet.
2169
+ *
2170
+ * Emits either `VestingCompleted` or `VestingUpdated`.
2171
+ *
2172
+ * ## Complexity
2173
+ * - `O(1)`.
1426
2174
  *
1427
2175
  * @param {MultiAddressLike} target
1428
2176
  **/
@@ -1441,7 +2189,19 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1441
2189
  >;
1442
2190
 
1443
2191
  /**
1444
- * See [`Pallet::vested_transfer`].
2192
+ * Create a vested transfer.
2193
+ *
2194
+ * The dispatch origin for this call must be _Signed_.
2195
+ *
2196
+ * - `target`: The account receiving the vested funds.
2197
+ * - `schedule`: The vesting schedule attached to the transfer.
2198
+ *
2199
+ * Emits `VestingCreated`.
2200
+ *
2201
+ * NOTE: This will unlock all schedules through the current block.
2202
+ *
2203
+ * ## Complexity
2204
+ * - `O(1)`.
1445
2205
  *
1446
2206
  * @param {MultiAddressLike} target
1447
2207
  * @param {PalletVestingVestingInfo} schedule
@@ -1464,7 +2224,20 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1464
2224
  >;
1465
2225
 
1466
2226
  /**
1467
- * See [`Pallet::force_vested_transfer`].
2227
+ * Force a vested transfer.
2228
+ *
2229
+ * The dispatch origin for this call must be _Root_.
2230
+ *
2231
+ * - `source`: The account whose funds should be transferred.
2232
+ * - `target`: The account that should be transferred the vested funds.
2233
+ * - `schedule`: The vesting schedule attached to the transfer.
2234
+ *
2235
+ * Emits `VestingCreated`.
2236
+ *
2237
+ * NOTE: This will unlock all schedules through the current block.
2238
+ *
2239
+ * ## Complexity
2240
+ * - `O(1)`.
1468
2241
  *
1469
2242
  * @param {MultiAddressLike} source
1470
2243
  * @param {MultiAddressLike} target
@@ -1489,7 +2262,27 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1489
2262
  >;
1490
2263
 
1491
2264
  /**
1492
- * See [`Pallet::merge_schedules`].
2265
+ * Merge two vesting schedules together, creating a new vesting schedule that unlocks over
2266
+ * the highest possible start and end blocks. If both schedules have already started the
2267
+ * current block will be used as the schedule start; with the caveat that if one schedule
2268
+ * is finished by the current block, the other will be treated as the new merged schedule,
2269
+ * unmodified.
2270
+ *
2271
+ * NOTE: If `schedule1_index == schedule2_index` this is a no-op.
2272
+ * NOTE: This will unlock all schedules through the current block prior to merging.
2273
+ * NOTE: If both schedules have ended by the current block, no new schedule will be created
2274
+ * and both will be removed.
2275
+ *
2276
+ * Merged schedule attributes:
2277
+ * - `starting_block`: `MAX(schedule1.starting_block, scheduled2.starting_block,
2278
+ * current_block)`.
2279
+ * - `ending_block`: `MAX(schedule1.ending_block, schedule2.ending_block)`.
2280
+ * - `locked`: `schedule1.locked_at(current_block) + schedule2.locked_at(current_block)`.
2281
+ *
2282
+ * The dispatch origin for this call must be _Signed_.
2283
+ *
2284
+ * - `schedule1_index`: index of the first schedule to merge.
2285
+ * - `schedule2_index`: index of the second schedule to merge.
1493
2286
  *
1494
2287
  * @param {number} schedule1Index
1495
2288
  * @param {number} schedule2Index
@@ -1511,6 +2304,34 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1511
2304
  >
1512
2305
  >;
1513
2306
 
2307
+ /**
2308
+ * Force remove a vesting schedule
2309
+ *
2310
+ * The dispatch origin for this call must be _Root_.
2311
+ *
2312
+ * - `target`: An account that has a vesting schedule
2313
+ * - `schedule_index`: The vesting schedule index that should be removed
2314
+ *
2315
+ * @param {MultiAddressLike} target
2316
+ * @param {number} scheduleIndex
2317
+ **/
2318
+ forceRemoveVestingSchedule: GenericTxCall<
2319
+ Rv,
2320
+ (
2321
+ target: MultiAddressLike,
2322
+ scheduleIndex: number,
2323
+ ) => ChainSubmittableExtrinsic<
2324
+ Rv,
2325
+ {
2326
+ pallet: 'Vesting';
2327
+ palletCall: {
2328
+ name: 'ForceRemoveVestingSchedule';
2329
+ params: { target: MultiAddressLike; scheduleIndex: number };
2330
+ };
2331
+ }
2332
+ >
2333
+ >;
2334
+
1514
2335
  /**
1515
2336
  * Generic pallet tx call
1516
2337
  **/
@@ -1521,7 +2342,12 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1521
2342
  **/
1522
2343
  inflation: {
1523
2344
  /**
1524
- * See [`Pallet::force_set_inflation_params`].
2345
+ * Used to force-set the inflation parameters.
2346
+ * The parameters must be valid, all parts summing up to one whole (100%), otherwise the call will fail.
2347
+ *
2348
+ * Must be called by `root` origin.
2349
+ *
2350
+ * Purpose of the call is testing & handling unforeseen circumstances.
1525
2351
  *
1526
2352
  * @param {PalletInflationInflationParameters} params
1527
2353
  **/
@@ -1540,7 +2366,12 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1540
2366
  >;
1541
2367
 
1542
2368
  /**
1543
- * See [`Pallet::force_inflation_recalculation`].
2369
+ * Used to force inflation recalculation.
2370
+ * This is done in the same way as it would be done in an appropriate block, but this call forces it.
2371
+ *
2372
+ * Must be called by `root` origin.
2373
+ *
2374
+ * Purpose of the call is testing & handling unforeseen circumstances.
1544
2375
  *
1545
2376
  * @param {number} nextEra
1546
2377
  **/
@@ -1568,7 +2399,9 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1568
2399
  **/
1569
2400
  dappStaking: {
1570
2401
  /**
1571
- * See [`Pallet::unbond_and_unstake`].
2402
+ * Wrapper around _legacy-like_ `unbond_and_unstake`.
2403
+ *
2404
+ * Used to support legacy Ledger users so they can start the unlocking process for their funds.
1572
2405
  *
1573
2406
  * @param {AstarPrimitivesDappStakingSmartContract} contractId
1574
2407
  * @param {bigint} value
@@ -1591,7 +2424,10 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1591
2424
  >;
1592
2425
 
1593
2426
  /**
1594
- * See [`Pallet::withdraw_unbonded`].
2427
+ * Wrapper around _legacy-like_ `withdraw_unbonded`.
2428
+ *
2429
+ * Used to support legacy Ledger users so they can reclaim unlocked chunks back into
2430
+ * their _transferable_ free balance.
1595
2431
  *
1596
2432
  **/
1597
2433
  withdrawUnbonded: GenericTxCall<
@@ -1608,7 +2444,8 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1608
2444
  >;
1609
2445
 
1610
2446
  /**
1611
- * See [`Pallet::maintenance_mode`].
2447
+ * Used to enable or disable maintenance mode.
2448
+ * Can only be called by manager origin.
1612
2449
  *
1613
2450
  * @param {boolean} enabled
1614
2451
  **/
@@ -1627,7 +2464,10 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1627
2464
  >;
1628
2465
 
1629
2466
  /**
1630
- * See [`Pallet::register`].
2467
+ * Used to register a new contract for dApp staking.
2468
+ *
2469
+ * If successful, smart contract will be assigned a simple, unique numerical identifier.
2470
+ * Owner is set to be initial beneficiary & manager of the dApp.
1631
2471
  *
1632
2472
  * @param {AccountId32Like} owner
1633
2473
  * @param {AstarPrimitivesDappStakingSmartContract} smartContract
@@ -1650,7 +2490,11 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1650
2490
  >;
1651
2491
 
1652
2492
  /**
1653
- * See [`Pallet::set_dapp_reward_beneficiary`].
2493
+ * Used to modify the reward beneficiary account for a dApp.
2494
+ *
2495
+ * Caller has to be dApp owner.
2496
+ * If set to `None`, rewards will be deposited to the dApp owner.
2497
+ * After this call, all existing & future rewards will be paid out to the beneficiary.
1654
2498
  *
1655
2499
  * @param {AstarPrimitivesDappStakingSmartContract} smartContract
1656
2500
  * @param {AccountId32Like | undefined} beneficiary
@@ -1676,7 +2520,12 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1676
2520
  >;
1677
2521
 
1678
2522
  /**
1679
- * See [`Pallet::set_dapp_owner`].
2523
+ * Used to change dApp owner.
2524
+ *
2525
+ * Can be called by dApp owner or dApp staking manager origin.
2526
+ * This is useful in two cases:
2527
+ * 1. when the dApp owner account is compromised, manager can change the owner to a new account
2528
+ * 2. if project wants to transfer ownership to a new account (DAO, multisig, etc.).
1680
2529
  *
1681
2530
  * @param {AstarPrimitivesDappStakingSmartContract} smartContract
1682
2531
  * @param {AccountId32Like} newOwner
@@ -1699,7 +2548,10 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1699
2548
  >;
1700
2549
 
1701
2550
  /**
1702
- * See [`Pallet::unregister`].
2551
+ * Unregister dApp from dApp staking protocol, making it ineligible for future rewards.
2552
+ * This doesn't remove the dApp completely from the system just yet, but it can no longer be used for staking.
2553
+ *
2554
+ * Can be called by dApp staking manager origin.
1703
2555
  *
1704
2556
  * @param {AstarPrimitivesDappStakingSmartContract} smartContract
1705
2557
  **/
@@ -1718,7 +2570,12 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1718
2570
  >;
1719
2571
 
1720
2572
  /**
1721
- * See [`Pallet::lock`].
2573
+ * Locks additional funds into dApp staking.
2574
+ *
2575
+ * In case caller account doesn't have sufficient balance to cover the specified amount, everything is locked.
2576
+ * After adjustment, lock amount must be greater than zero and in total must be equal or greater than the minimum locked amount.
2577
+ *
2578
+ * Locked amount can immediately be used for staking.
1722
2579
  *
1723
2580
  * @param {bigint} amount
1724
2581
  **/
@@ -1737,7 +2594,11 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1737
2594
  >;
1738
2595
 
1739
2596
  /**
1740
- * See [`Pallet::unlock`].
2597
+ * Attempts to start the unlocking process for the specified amount.
2598
+ *
2599
+ * Only the amount that isn't actively used for staking can be unlocked.
2600
+ * If the amount is greater than the available amount for unlocking, everything is unlocked.
2601
+ * If the remaining locked amount would take the account below the minimum locked amount, everything is unlocked.
1741
2602
  *
1742
2603
  * @param {bigint} amount
1743
2604
  **/
@@ -1756,7 +2617,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1756
2617
  >;
1757
2618
 
1758
2619
  /**
1759
- * See [`Pallet::claim_unlocked`].
2620
+ * Claims all of fully unlocked chunks, removing the lock from them.
1760
2621
  *
1761
2622
  **/
1762
2623
  claimUnlocked: GenericTxCall<
@@ -1773,7 +2634,6 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1773
2634
  >;
1774
2635
 
1775
2636
  /**
1776
- * See [`Pallet::relock_unlocking`].
1777
2637
  *
1778
2638
  **/
1779
2639
  relockUnlocking: GenericTxCall<
@@ -1790,7 +2650,14 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1790
2650
  >;
1791
2651
 
1792
2652
  /**
1793
- * See [`Pallet::stake`].
2653
+ * Stake the specified amount on a smart contract.
2654
+ * The precise `amount` specified **must** be available for staking.
2655
+ * The total amount staked on a dApp must be greater than the minimum required value.
2656
+ *
2657
+ * Depending on the period type, appropriate stake amount will be updated. During `Voting` subperiod, `voting` stake amount is updated,
2658
+ * and same for `Build&Earn` subperiod.
2659
+ *
2660
+ * Staked amount is only eligible for rewards from the next era onwards.
1794
2661
  *
1795
2662
  * @param {AstarPrimitivesDappStakingSmartContract} smartContract
1796
2663
  * @param {bigint} amount
@@ -1813,7 +2680,15 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1813
2680
  >;
1814
2681
 
1815
2682
  /**
1816
- * See [`Pallet::unstake`].
2683
+ * Unstake the specified amount from a smart contract.
2684
+ * The `amount` specified **must** not exceed what's staked, otherwise the call will fail.
2685
+ *
2686
+ * If unstaking the specified `amount` would take staker below the minimum stake threshold, everything is unstaked.
2687
+ *
2688
+ * Depending on the period type, appropriate stake amount will be updated.
2689
+ * In case amount is unstaked during `Voting` subperiod, the `voting` amount is reduced.
2690
+ * In case amount is unstaked during `Build&Earn` subperiod, first the `build_and_earn` is reduced,
2691
+ * and any spillover is subtracted from the `voting` amount.
1817
2692
  *
1818
2693
  * @param {AstarPrimitivesDappStakingSmartContract} smartContract
1819
2694
  * @param {bigint} amount
@@ -1836,7 +2711,8 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1836
2711
  >;
1837
2712
 
1838
2713
  /**
1839
- * See [`Pallet::claim_staker_rewards`].
2714
+ * Claims some staker rewards, if user has any.
2715
+ * In the case of a successful call, at least one era will be claimed, with the possibility of multiple claims happening.
1840
2716
  *
1841
2717
  **/
1842
2718
  claimStakerRewards: GenericTxCall<
@@ -1853,7 +2729,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1853
2729
  >;
1854
2730
 
1855
2731
  /**
1856
- * See [`Pallet::claim_bonus_reward`].
2732
+ * Used to claim bonus reward for a smart contract, if eligible.
1857
2733
  *
1858
2734
  * @param {AstarPrimitivesDappStakingSmartContract} smartContract
1859
2735
  **/
@@ -1872,7 +2748,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1872
2748
  >;
1873
2749
 
1874
2750
  /**
1875
- * See [`Pallet::claim_dapp_reward`].
2751
+ * Used to claim dApp reward for the specified era.
1876
2752
  *
1877
2753
  * @param {AstarPrimitivesDappStakingSmartContract} smartContract
1878
2754
  * @param {number} era
@@ -1895,7 +2771,8 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1895
2771
  >;
1896
2772
 
1897
2773
  /**
1898
- * See [`Pallet::unstake_from_unregistered`].
2774
+ * Used to unstake funds from a contract that was unregistered after an account staked on it.
2775
+ * This is required if staker wants to re-stake these funds on another active contract during the ongoing period.
1899
2776
  *
1900
2777
  * @param {AstarPrimitivesDappStakingSmartContract} smartContract
1901
2778
  **/
@@ -1914,7 +2791,11 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1914
2791
  >;
1915
2792
 
1916
2793
  /**
1917
- * See [`Pallet::cleanup_expired_entries`].
2794
+ * Cleanup expired stake entries for the contract.
2795
+ *
2796
+ * Entry is considered to be expired if:
2797
+ * 1. It's from a past period & the account wasn't a loyal staker, meaning there's no claimable bonus reward.
2798
+ * 2. It's from a period older than the oldest claimable period, regardless whether the account was loyal or not.
1918
2799
  *
1919
2800
  **/
1920
2801
  cleanupExpiredEntries: GenericTxCall<
@@ -1931,7 +2812,13 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1931
2812
  >;
1932
2813
 
1933
2814
  /**
1934
- * See [`Pallet::force`].
2815
+ * Used to force a change of era or subperiod.
2816
+ * The effect isn't immediate but will happen on the next block.
2817
+ *
2818
+ * Used for testing purposes, when we want to force an era change, or a subperiod change.
2819
+ * Not intended to be used in production, except in case of unforeseen circumstances.
2820
+ *
2821
+ * Can only be called by the root origin.
1935
2822
  *
1936
2823
  * @param {PalletDappStakingV3ForcingType} forcingType
1937
2824
  **/
@@ -1950,7 +2837,59 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1950
2837
  >;
1951
2838
 
1952
2839
  /**
1953
- * See [`Pallet::fix_account`].
2840
+ * Claims some staker rewards for the specified account, if they have any.
2841
+ * In the case of a successful call, at least one era will be claimed, with the possibility of multiple claims happening.
2842
+ *
2843
+ * @param {AccountId32Like} account
2844
+ **/
2845
+ claimStakerRewardsFor: GenericTxCall<
2846
+ Rv,
2847
+ (account: AccountId32Like) => ChainSubmittableExtrinsic<
2848
+ Rv,
2849
+ {
2850
+ pallet: 'DappStaking';
2851
+ palletCall: {
2852
+ name: 'ClaimStakerRewardsFor';
2853
+ params: { account: AccountId32Like };
2854
+ };
2855
+ }
2856
+ >
2857
+ >;
2858
+
2859
+ /**
2860
+ * Used to claim bonus reward for a smart contract on behalf of the specified account, if eligible.
2861
+ *
2862
+ * @param {AccountId32Like} account
2863
+ * @param {AstarPrimitivesDappStakingSmartContract} smartContract
2864
+ **/
2865
+ claimBonusRewardFor: GenericTxCall<
2866
+ Rv,
2867
+ (
2868
+ account: AccountId32Like,
2869
+ smartContract: AstarPrimitivesDappStakingSmartContract,
2870
+ ) => ChainSubmittableExtrinsic<
2871
+ Rv,
2872
+ {
2873
+ pallet: 'DappStaking';
2874
+ palletCall: {
2875
+ name: 'ClaimBonusRewardFor';
2876
+ params: { account: AccountId32Like; smartContract: AstarPrimitivesDappStakingSmartContract };
2877
+ };
2878
+ }
2879
+ >
2880
+ >;
2881
+
2882
+ /**
2883
+ * A call used to fix accounts with inconsistent state, where frozen balance is actually higher than what's available.
2884
+ *
2885
+ * The approach is as simple as possible:
2886
+ * 1. Caller provides an account to fix.
2887
+ * 2. If account is eligible for the fix, all unlocking chunks are modified to be claimable immediately.
2888
+ * 3. The `claim_unlocked` call is executed using the provided account as the origin.
2889
+ * 4. All states are updated accordingly, and the account is no longer in an inconsistent state.
2890
+ *
2891
+ * The benchmarked weight of the `claim_unlocked` call is used as a base, and additional overestimated weight is added.
2892
+ * Call doesn't touch any storage items that aren't already touched by the `claim_unlocked` call, hence the simplified approach.
1954
2893
  *
1955
2894
  * @param {AccountId32Like} account
1956
2895
  **/
@@ -1978,7 +2917,25 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
1978
2917
  **/
1979
2918
  assets: {
1980
2919
  /**
1981
- * See [`Pallet::create`].
2920
+ * Issue a new class of fungible assets from a public origin.
2921
+ *
2922
+ * This new asset class has no assets initially and its owner is the origin.
2923
+ *
2924
+ * The origin must conform to the configured `CreateOrigin` and have sufficient funds free.
2925
+ *
2926
+ * Funds of sender are reserved by `AssetDeposit`.
2927
+ *
2928
+ * Parameters:
2929
+ * - `id`: The identifier of the new asset. This must not be currently in use to identify
2930
+ * an existing asset.
2931
+ * - `admin`: The admin of this class of assets. The admin is the initial address of each
2932
+ * member of the asset class's admin team.
2933
+ * - `min_balance`: The minimum balance of this new asset that any single account must
2934
+ * have. If an account's balance is reduced below this, then it collapses to zero.
2935
+ *
2936
+ * Emits `Created` event when successful.
2937
+ *
2938
+ * Weight: `O(1)`
1982
2939
  *
1983
2940
  * @param {bigint} id
1984
2941
  * @param {MultiAddressLike} admin
@@ -2003,7 +2960,25 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2003
2960
  >;
2004
2961
 
2005
2962
  /**
2006
- * See [`Pallet::force_create`].
2963
+ * Issue a new class of fungible assets from a privileged origin.
2964
+ *
2965
+ * This new asset class has no assets initially.
2966
+ *
2967
+ * The origin must conform to `ForceOrigin`.
2968
+ *
2969
+ * Unlike `create`, no funds are reserved.
2970
+ *
2971
+ * - `id`: The identifier of the new asset. This must not be currently in use to identify
2972
+ * an existing asset.
2973
+ * - `owner`: The owner of this class of assets. The owner has full superuser permissions
2974
+ * over this asset, but may later change and configure the permissions using
2975
+ * `transfer_ownership` and `set_team`.
2976
+ * - `min_balance`: The minimum balance of this new asset that any single account must
2977
+ * have. If an account's balance is reduced below this, then it collapses to zero.
2978
+ *
2979
+ * Emits `ForceCreated` event when successful.
2980
+ *
2981
+ * Weight: `O(1)`
2007
2982
  *
2008
2983
  * @param {bigint} id
2009
2984
  * @param {MultiAddressLike} owner
@@ -2030,7 +3005,17 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2030
3005
  >;
2031
3006
 
2032
3007
  /**
2033
- * See [`Pallet::start_destroy`].
3008
+ * Start the process of destroying a fungible asset class.
3009
+ *
3010
+ * `start_destroy` is the first in a series of extrinsics that should be called, to allow
3011
+ * destruction of an asset class.
3012
+ *
3013
+ * The origin must conform to `ForceOrigin` or must be `Signed` by the asset's `owner`.
3014
+ *
3015
+ * - `id`: The identifier of the asset to be destroyed. This must identify an existing
3016
+ * asset.
3017
+ *
3018
+ * The asset class must be frozen before calling `start_destroy`.
2034
3019
  *
2035
3020
  * @param {bigint} id
2036
3021
  **/
@@ -2049,7 +3034,18 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2049
3034
  >;
2050
3035
 
2051
3036
  /**
2052
- * See [`Pallet::destroy_accounts`].
3037
+ * Destroy all accounts associated with a given asset.
3038
+ *
3039
+ * `destroy_accounts` should only be called after `start_destroy` has been called, and the
3040
+ * asset is in a `Destroying` state.
3041
+ *
3042
+ * Due to weight restrictions, this function may need to be called multiple times to fully
3043
+ * destroy all accounts. It will destroy `RemoveItemsLimit` accounts at a time.
3044
+ *
3045
+ * - `id`: The identifier of the asset to be destroyed. This must identify an existing
3046
+ * asset.
3047
+ *
3048
+ * Each call emits the `Event::DestroyedAccounts` event.
2053
3049
  *
2054
3050
  * @param {bigint} id
2055
3051
  **/
@@ -2068,7 +3064,18 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2068
3064
  >;
2069
3065
 
2070
3066
  /**
2071
- * See [`Pallet::destroy_approvals`].
3067
+ * Destroy all approvals associated with a given asset up to the max (T::RemoveItemsLimit).
3068
+ *
3069
+ * `destroy_approvals` should only be called after `start_destroy` has been called, and the
3070
+ * asset is in a `Destroying` state.
3071
+ *
3072
+ * Due to weight restrictions, this function may need to be called multiple times to fully
3073
+ * destroy all approvals. It will destroy `RemoveItemsLimit` approvals at a time.
3074
+ *
3075
+ * - `id`: The identifier of the asset to be destroyed. This must identify an existing
3076
+ * asset.
3077
+ *
3078
+ * Each call emits the `Event::DestroyedApprovals` event.
2072
3079
  *
2073
3080
  * @param {bigint} id
2074
3081
  **/
@@ -2087,7 +3094,16 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2087
3094
  >;
2088
3095
 
2089
3096
  /**
2090
- * See [`Pallet::finish_destroy`].
3097
+ * Complete destroying asset and unreserve currency.
3098
+ *
3099
+ * `finish_destroy` should only be called after `start_destroy` has been called, and the
3100
+ * asset is in a `Destroying` state. All accounts or approvals should be destroyed before
3101
+ * hand.
3102
+ *
3103
+ * - `id`: The identifier of the asset to be destroyed. This must identify an existing
3104
+ * asset.
3105
+ *
3106
+ * Each successful call emits the `Event::Destroyed` event.
2091
3107
  *
2092
3108
  * @param {bigint} id
2093
3109
  **/
@@ -2106,7 +3122,18 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2106
3122
  >;
2107
3123
 
2108
3124
  /**
2109
- * See [`Pallet::mint`].
3125
+ * Mint assets of a particular class.
3126
+ *
3127
+ * The origin must be Signed and the sender must be the Issuer of the asset `id`.
3128
+ *
3129
+ * - `id`: The identifier of the asset to have some amount minted.
3130
+ * - `beneficiary`: The account to be credited with the minted assets.
3131
+ * - `amount`: The amount of the asset to be minted.
3132
+ *
3133
+ * Emits `Issued` event when successful.
3134
+ *
3135
+ * Weight: `O(1)`
3136
+ * Modes: Pre-existing balance of `beneficiary`; Account pre-existence of `beneficiary`.
2110
3137
  *
2111
3138
  * @param {bigint} id
2112
3139
  * @param {MultiAddressLike} beneficiary
@@ -2131,7 +3158,21 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2131
3158
  >;
2132
3159
 
2133
3160
  /**
2134
- * See [`Pallet::burn`].
3161
+ * Reduce the balance of `who` by as much as possible up to `amount` assets of `id`.
3162
+ *
3163
+ * Origin must be Signed and the sender should be the Manager of the asset `id`.
3164
+ *
3165
+ * Bails with `NoAccount` if the `who` is already dead.
3166
+ *
3167
+ * - `id`: The identifier of the asset to have some amount burned.
3168
+ * - `who`: The account to be debited from.
3169
+ * - `amount`: The maximum amount by which `who`'s balance should be reduced.
3170
+ *
3171
+ * Emits `Burned` with the actual amount burned. If this takes the balance to below the
3172
+ * minimum for the asset, then the amount burned is increased to take it to zero.
3173
+ *
3174
+ * Weight: `O(1)`
3175
+ * Modes: Post-existence of `who`; Pre & post Zombie-status of `who`.
2135
3176
  *
2136
3177
  * @param {bigint} id
2137
3178
  * @param {MultiAddressLike} who
@@ -2156,7 +3197,24 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2156
3197
  >;
2157
3198
 
2158
3199
  /**
2159
- * See [`Pallet::transfer`].
3200
+ * Move some assets from the sender account to another.
3201
+ *
3202
+ * Origin must be Signed.
3203
+ *
3204
+ * - `id`: The identifier of the asset to have some amount transferred.
3205
+ * - `target`: The account to be credited.
3206
+ * - `amount`: The amount by which the sender's balance of assets should be reduced and
3207
+ * `target`'s balance increased. The amount actually transferred may be slightly greater in
3208
+ * the case that the transfer would otherwise take the sender balance above zero but below
3209
+ * the minimum balance. Must be greater than zero.
3210
+ *
3211
+ * Emits `Transferred` with the actual amount transferred. If this takes the source balance
3212
+ * to below the minimum for the asset, then the amount transferred is increased to take it
3213
+ * to zero.
3214
+ *
3215
+ * Weight: `O(1)`
3216
+ * Modes: Pre-existence of `target`; Post-existence of sender; Account pre-existence of
3217
+ * `target`.
2160
3218
  *
2161
3219
  * @param {bigint} id
2162
3220
  * @param {MultiAddressLike} target
@@ -2181,7 +3239,24 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2181
3239
  >;
2182
3240
 
2183
3241
  /**
2184
- * See [`Pallet::transfer_keep_alive`].
3242
+ * Move some assets from the sender account to another, keeping the sender account alive.
3243
+ *
3244
+ * Origin must be Signed.
3245
+ *
3246
+ * - `id`: The identifier of the asset to have some amount transferred.
3247
+ * - `target`: The account to be credited.
3248
+ * - `amount`: The amount by which the sender's balance of assets should be reduced and
3249
+ * `target`'s balance increased. The amount actually transferred may be slightly greater in
3250
+ * the case that the transfer would otherwise take the sender balance above zero but below
3251
+ * the minimum balance. Must be greater than zero.
3252
+ *
3253
+ * Emits `Transferred` with the actual amount transferred. If this takes the source balance
3254
+ * to below the minimum for the asset, then the amount transferred is increased to take it
3255
+ * to zero.
3256
+ *
3257
+ * Weight: `O(1)`
3258
+ * Modes: Pre-existence of `target`; Post-existence of sender; Account pre-existence of
3259
+ * `target`.
2185
3260
  *
2186
3261
  * @param {bigint} id
2187
3262
  * @param {MultiAddressLike} target
@@ -2206,7 +3281,25 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2206
3281
  >;
2207
3282
 
2208
3283
  /**
2209
- * See [`Pallet::force_transfer`].
3284
+ * Move some assets from one account to another.
3285
+ *
3286
+ * Origin must be Signed and the sender should be the Admin of the asset `id`.
3287
+ *
3288
+ * - `id`: The identifier of the asset to have some amount transferred.
3289
+ * - `source`: The account to be debited.
3290
+ * - `dest`: The account to be credited.
3291
+ * - `amount`: The amount by which the `source`'s balance of assets should be reduced and
3292
+ * `dest`'s balance increased. The amount actually transferred may be slightly greater in
3293
+ * the case that the transfer would otherwise take the `source` balance above zero but
3294
+ * below the minimum balance. Must be greater than zero.
3295
+ *
3296
+ * Emits `Transferred` with the actual amount transferred. If this takes the source balance
3297
+ * to below the minimum for the asset, then the amount transferred is increased to take it
3298
+ * to zero.
3299
+ *
3300
+ * Weight: `O(1)`
3301
+ * Modes: Pre-existence of `dest`; Post-existence of `source`; Account pre-existence of
3302
+ * `dest`.
2210
3303
  *
2211
3304
  * @param {bigint} id
2212
3305
  * @param {MultiAddressLike} source
@@ -2233,7 +3326,18 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2233
3326
  >;
2234
3327
 
2235
3328
  /**
2236
- * See [`Pallet::freeze`].
3329
+ * Disallow further unprivileged transfers of an asset `id` from an account `who`. `who`
3330
+ * must already exist as an entry in `Account`s of the asset. If you want to freeze an
3331
+ * account that does not have an entry, use `touch_other` first.
3332
+ *
3333
+ * Origin must be Signed and the sender should be the Freezer of the asset `id`.
3334
+ *
3335
+ * - `id`: The identifier of the asset to be frozen.
3336
+ * - `who`: The account to be frozen.
3337
+ *
3338
+ * Emits `Frozen`.
3339
+ *
3340
+ * Weight: `O(1)`
2237
3341
  *
2238
3342
  * @param {bigint} id
2239
3343
  * @param {MultiAddressLike} who
@@ -2256,7 +3360,16 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2256
3360
  >;
2257
3361
 
2258
3362
  /**
2259
- * See [`Pallet::thaw`].
3363
+ * Allow unprivileged transfers to and from an account again.
3364
+ *
3365
+ * Origin must be Signed and the sender should be the Admin of the asset `id`.
3366
+ *
3367
+ * - `id`: The identifier of the asset to be frozen.
3368
+ * - `who`: The account to be unfrozen.
3369
+ *
3370
+ * Emits `Thawed`.
3371
+ *
3372
+ * Weight: `O(1)`
2260
3373
  *
2261
3374
  * @param {bigint} id
2262
3375
  * @param {MultiAddressLike} who
@@ -2279,7 +3392,15 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2279
3392
  >;
2280
3393
 
2281
3394
  /**
2282
- * See [`Pallet::freeze_asset`].
3395
+ * Disallow further unprivileged transfers for the asset class.
3396
+ *
3397
+ * Origin must be Signed and the sender should be the Freezer of the asset `id`.
3398
+ *
3399
+ * - `id`: The identifier of the asset to be frozen.
3400
+ *
3401
+ * Emits `Frozen`.
3402
+ *
3403
+ * Weight: `O(1)`
2283
3404
  *
2284
3405
  * @param {bigint} id
2285
3406
  **/
@@ -2298,7 +3419,15 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2298
3419
  >;
2299
3420
 
2300
3421
  /**
2301
- * See [`Pallet::thaw_asset`].
3422
+ * Allow unprivileged transfers for the asset again.
3423
+ *
3424
+ * Origin must be Signed and the sender should be the Admin of the asset `id`.
3425
+ *
3426
+ * - `id`: The identifier of the asset to be thawed.
3427
+ *
3428
+ * Emits `Thawed`.
3429
+ *
3430
+ * Weight: `O(1)`
2302
3431
  *
2303
3432
  * @param {bigint} id
2304
3433
  **/
@@ -2317,7 +3446,16 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2317
3446
  >;
2318
3447
 
2319
3448
  /**
2320
- * See [`Pallet::transfer_ownership`].
3449
+ * Change the Owner of an asset.
3450
+ *
3451
+ * Origin must be Signed and the sender should be the Owner of the asset `id`.
3452
+ *
3453
+ * - `id`: The identifier of the asset.
3454
+ * - `owner`: The new Owner of this asset.
3455
+ *
3456
+ * Emits `OwnerChanged`.
3457
+ *
3458
+ * Weight: `O(1)`
2321
3459
  *
2322
3460
  * @param {bigint} id
2323
3461
  * @param {MultiAddressLike} owner
@@ -2340,7 +3478,18 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2340
3478
  >;
2341
3479
 
2342
3480
  /**
2343
- * See [`Pallet::set_team`].
3481
+ * Change the Issuer, Admin and Freezer of an asset.
3482
+ *
3483
+ * Origin must be Signed and the sender should be the Owner of the asset `id`.
3484
+ *
3485
+ * - `id`: The identifier of the asset to be frozen.
3486
+ * - `issuer`: The new Issuer of this asset.
3487
+ * - `admin`: The new Admin of this asset.
3488
+ * - `freezer`: The new Freezer of this asset.
3489
+ *
3490
+ * Emits `TeamChanged`.
3491
+ *
3492
+ * Weight: `O(1)`
2344
3493
  *
2345
3494
  * @param {bigint} id
2346
3495
  * @param {MultiAddressLike} issuer
@@ -2367,7 +3516,22 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2367
3516
  >;
2368
3517
 
2369
3518
  /**
2370
- * See [`Pallet::set_metadata`].
3519
+ * Set the metadata for an asset.
3520
+ *
3521
+ * Origin must be Signed and the sender should be the Owner of the asset `id`.
3522
+ *
3523
+ * Funds of sender are reserved according to the formula:
3524
+ * `MetadataDepositBase + MetadataDepositPerByte * (name.len + symbol.len)` taking into
3525
+ * account any already reserved funds.
3526
+ *
3527
+ * - `id`: The identifier of the asset to update.
3528
+ * - `name`: The user friendly name of this asset. Limited in length by `StringLimit`.
3529
+ * - `symbol`: The exchange symbol for this asset. Limited in length by `StringLimit`.
3530
+ * - `decimals`: The number of decimals this asset uses to represent one unit.
3531
+ *
3532
+ * Emits `MetadataSet`.
3533
+ *
3534
+ * Weight: `O(1)`
2371
3535
  *
2372
3536
  * @param {bigint} id
2373
3537
  * @param {BytesLike} name
@@ -2394,7 +3558,17 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2394
3558
  >;
2395
3559
 
2396
3560
  /**
2397
- * See [`Pallet::clear_metadata`].
3561
+ * Clear the metadata for an asset.
3562
+ *
3563
+ * Origin must be Signed and the sender should be the Owner of the asset `id`.
3564
+ *
3565
+ * Any deposit is freed for the asset owner.
3566
+ *
3567
+ * - `id`: The identifier of the asset to clear.
3568
+ *
3569
+ * Emits `MetadataCleared`.
3570
+ *
3571
+ * Weight: `O(1)`
2398
3572
  *
2399
3573
  * @param {bigint} id
2400
3574
  **/
@@ -2413,7 +3587,20 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2413
3587
  >;
2414
3588
 
2415
3589
  /**
2416
- * See [`Pallet::force_set_metadata`].
3590
+ * Force the metadata for an asset to some value.
3591
+ *
3592
+ * Origin must be ForceOrigin.
3593
+ *
3594
+ * Any deposit is left alone.
3595
+ *
3596
+ * - `id`: The identifier of the asset to update.
3597
+ * - `name`: The user friendly name of this asset. Limited in length by `StringLimit`.
3598
+ * - `symbol`: The exchange symbol for this asset. Limited in length by `StringLimit`.
3599
+ * - `decimals`: The number of decimals this asset uses to represent one unit.
3600
+ *
3601
+ * Emits `MetadataSet`.
3602
+ *
3603
+ * Weight: `O(N + S)` where N and S are the length of the name and symbol respectively.
2417
3604
  *
2418
3605
  * @param {bigint} id
2419
3606
  * @param {BytesLike} name
@@ -2442,7 +3629,17 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2442
3629
  >;
2443
3630
 
2444
3631
  /**
2445
- * See [`Pallet::force_clear_metadata`].
3632
+ * Clear the metadata for an asset.
3633
+ *
3634
+ * Origin must be ForceOrigin.
3635
+ *
3636
+ * Any deposit is returned.
3637
+ *
3638
+ * - `id`: The identifier of the asset to clear.
3639
+ *
3640
+ * Emits `MetadataCleared`.
3641
+ *
3642
+ * Weight: `O(1)`
2446
3643
  *
2447
3644
  * @param {bigint} id
2448
3645
  **/
@@ -2461,7 +3658,28 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2461
3658
  >;
2462
3659
 
2463
3660
  /**
2464
- * See [`Pallet::force_asset_status`].
3661
+ * Alter the attributes of a given asset.
3662
+ *
3663
+ * Origin must be `ForceOrigin`.
3664
+ *
3665
+ * - `id`: The identifier of the asset.
3666
+ * - `owner`: The new Owner of this asset.
3667
+ * - `issuer`: The new Issuer of this asset.
3668
+ * - `admin`: The new Admin of this asset.
3669
+ * - `freezer`: The new Freezer of this asset.
3670
+ * - `min_balance`: The minimum balance of this new asset that any single account must
3671
+ * have. If an account's balance is reduced below this, then it collapses to zero.
3672
+ * - `is_sufficient`: Whether a non-zero balance of this asset is deposit of sufficient
3673
+ * value to account for the state bloat associated with its balance storage. If set to
3674
+ * `true`, then non-zero balances may be stored without a `consumer` reference (and thus
3675
+ * an ED in the Balances pallet or whatever else is used to control user-account state
3676
+ * growth).
3677
+ * - `is_frozen`: Whether this asset class is frozen except for permissioned/admin
3678
+ * instructions.
3679
+ *
3680
+ * Emits `AssetStatusChanged` with the identity of the asset.
3681
+ *
3682
+ * Weight: `O(1)`
2465
3683
  *
2466
3684
  * @param {bigint} id
2467
3685
  * @param {MultiAddressLike} owner
@@ -2505,7 +3723,26 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2505
3723
  >;
2506
3724
 
2507
3725
  /**
2508
- * See [`Pallet::approve_transfer`].
3726
+ * Approve an amount of asset for transfer by a delegated third-party account.
3727
+ *
3728
+ * Origin must be Signed.
3729
+ *
3730
+ * Ensures that `ApprovalDeposit` worth of `Currency` is reserved from signing account
3731
+ * for the purpose of holding the approval. If some non-zero amount of assets is already
3732
+ * approved from signing account to `delegate`, then it is topped up or unreserved to
3733
+ * meet the right value.
3734
+ *
3735
+ * NOTE: The signing account does not need to own `amount` of assets at the point of
3736
+ * making this call.
3737
+ *
3738
+ * - `id`: The identifier of the asset.
3739
+ * - `delegate`: The account to delegate permission to transfer asset.
3740
+ * - `amount`: The amount of asset that may be transferred by `delegate`. If there is
3741
+ * already an approval in place, then this acts additively.
3742
+ *
3743
+ * Emits `ApprovedTransfer` on success.
3744
+ *
3745
+ * Weight: `O(1)`
2509
3746
  *
2510
3747
  * @param {bigint} id
2511
3748
  * @param {MultiAddressLike} delegate
@@ -2530,7 +3767,19 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2530
3767
  >;
2531
3768
 
2532
3769
  /**
2533
- * See [`Pallet::cancel_approval`].
3770
+ * Cancel all of some asset approved for delegated transfer by a third-party account.
3771
+ *
3772
+ * Origin must be Signed and there must be an approval in place between signer and
3773
+ * `delegate`.
3774
+ *
3775
+ * Unreserves any deposit previously reserved by `approve_transfer` for the approval.
3776
+ *
3777
+ * - `id`: The identifier of the asset.
3778
+ * - `delegate`: The account delegated permission to transfer asset.
3779
+ *
3780
+ * Emits `ApprovalCancelled` on success.
3781
+ *
3782
+ * Weight: `O(1)`
2534
3783
  *
2535
3784
  * @param {bigint} id
2536
3785
  * @param {MultiAddressLike} delegate
@@ -2553,7 +3802,19 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2553
3802
  >;
2554
3803
 
2555
3804
  /**
2556
- * See [`Pallet::force_cancel_approval`].
3805
+ * Cancel all of some asset approved for delegated transfer by a third-party account.
3806
+ *
3807
+ * Origin must be either ForceOrigin or Signed origin with the signer being the Admin
3808
+ * account of the asset `id`.
3809
+ *
3810
+ * Unreserves any deposit previously reserved by `approve_transfer` for the approval.
3811
+ *
3812
+ * - `id`: The identifier of the asset.
3813
+ * - `delegate`: The account delegated permission to transfer asset.
3814
+ *
3815
+ * Emits `ApprovalCancelled` on success.
3816
+ *
3817
+ * Weight: `O(1)`
2557
3818
  *
2558
3819
  * @param {bigint} id
2559
3820
  * @param {MultiAddressLike} owner
@@ -2578,7 +3839,24 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2578
3839
  >;
2579
3840
 
2580
3841
  /**
2581
- * See [`Pallet::transfer_approved`].
3842
+ * Transfer some asset balance from a previously delegated account to some third-party
3843
+ * account.
3844
+ *
3845
+ * Origin must be Signed and there must be an approval in place by the `owner` to the
3846
+ * signer.
3847
+ *
3848
+ * If the entire amount approved for transfer is transferred, then any deposit previously
3849
+ * reserved by `approve_transfer` is unreserved.
3850
+ *
3851
+ * - `id`: The identifier of the asset.
3852
+ * - `owner`: The account which previously approved for a transfer of at least `amount` and
3853
+ * from which the asset balance will be withdrawn.
3854
+ * - `destination`: The account to which the asset balance of `amount` will be transferred.
3855
+ * - `amount`: The amount of assets to transfer.
3856
+ *
3857
+ * Emits `TransferredApproved` on success.
3858
+ *
3859
+ * Weight: `O(1)`
2582
3860
  *
2583
3861
  * @param {bigint} id
2584
3862
  * @param {MultiAddressLike} owner
@@ -2605,7 +3883,15 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2605
3883
  >;
2606
3884
 
2607
3885
  /**
2608
- * See [`Pallet::touch`].
3886
+ * Create an asset account for non-provider assets.
3887
+ *
3888
+ * A deposit will be taken from the signer account.
3889
+ *
3890
+ * - `origin`: Must be Signed; the signer account must have sufficient funds for a deposit
3891
+ * to be taken.
3892
+ * - `id`: The identifier of the asset for the account to be created.
3893
+ *
3894
+ * Emits `Touched` event when successful.
2609
3895
  *
2610
3896
  * @param {bigint} id
2611
3897
  **/
@@ -2624,7 +3910,16 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2624
3910
  >;
2625
3911
 
2626
3912
  /**
2627
- * See [`Pallet::refund`].
3913
+ * Return the deposit (if any) of an asset account or a consumer reference (if any) of an
3914
+ * account.
3915
+ *
3916
+ * The origin must be Signed.
3917
+ *
3918
+ * - `id`: The identifier of the asset for which the caller would like the deposit
3919
+ * refunded.
3920
+ * - `allow_burn`: If `true` then assets may be destroyed in order to complete the refund.
3921
+ *
3922
+ * Emits `Refunded` event when successful.
2628
3923
  *
2629
3924
  * @param {bigint} id
2630
3925
  * @param {boolean} allowBurn
@@ -2647,7 +3942,18 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2647
3942
  >;
2648
3943
 
2649
3944
  /**
2650
- * See [`Pallet::set_min_balance`].
3945
+ * Sets the minimum balance of an asset.
3946
+ *
3947
+ * Only works if there aren't any accounts that are holding the asset or if
3948
+ * the new value of `min_balance` is less than the old one.
3949
+ *
3950
+ * Origin must be Signed and the sender has to be the Owner of the
3951
+ * asset `id`.
3952
+ *
3953
+ * - `id`: The identifier of the asset.
3954
+ * - `min_balance`: The new value of `min_balance`.
3955
+ *
3956
+ * Emits `AssetMinBalanceChanged` event when successful.
2651
3957
  *
2652
3958
  * @param {bigint} id
2653
3959
  * @param {bigint} minBalance
@@ -2670,7 +3976,16 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2670
3976
  >;
2671
3977
 
2672
3978
  /**
2673
- * See [`Pallet::touch_other`].
3979
+ * Create an asset account for `who`.
3980
+ *
3981
+ * A deposit will be taken from the signer account.
3982
+ *
3983
+ * - `origin`: Must be Signed by `Freezer` or `Admin` of the asset `id`; the signer account
3984
+ * must have sufficient funds for a deposit to be taken.
3985
+ * - `id`: The identifier of the asset for the account to be created.
3986
+ * - `who`: The account to be created.
3987
+ *
3988
+ * Emits `Touched` event when successful.
2674
3989
  *
2675
3990
  * @param {bigint} id
2676
3991
  * @param {MultiAddressLike} who
@@ -2693,7 +4008,16 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2693
4008
  >;
2694
4009
 
2695
4010
  /**
2696
- * See [`Pallet::refund_other`].
4011
+ * Return the deposit (if any) of a target asset account. Useful if you are the depositor.
4012
+ *
4013
+ * The origin must be Signed and either the account owner, depositor, or asset `Admin`. In
4014
+ * order to burn a non-zero balance of the asset, the caller must be the account and should
4015
+ * use `refund`.
4016
+ *
4017
+ * - `id`: The identifier of the asset for the account holding a deposit.
4018
+ * - `who`: The account to refund.
4019
+ *
4020
+ * Emits `Refunded` event when successful.
2697
4021
  *
2698
4022
  * @param {bigint} id
2699
4023
  * @param {MultiAddressLike} who
@@ -2716,7 +4040,16 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2716
4040
  >;
2717
4041
 
2718
4042
  /**
2719
- * See [`Pallet::block`].
4043
+ * Disallow further unprivileged transfers of an asset `id` to and from an account `who`.
4044
+ *
4045
+ * Origin must be Signed and the sender should be the Freezer of the asset `id`.
4046
+ *
4047
+ * - `id`: The identifier of the account's asset.
4048
+ * - `who`: The account to be unblocked.
4049
+ *
4050
+ * Emits `Blocked`.
4051
+ *
4052
+ * Weight: `O(1)`
2720
4053
  *
2721
4054
  * @param {bigint} id
2722
4055
  * @param {MultiAddressLike} who
@@ -2748,7 +4081,9 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2748
4081
  **/
2749
4082
  oracle: {
2750
4083
  /**
2751
- * See [`Pallet::feed_values`].
4084
+ * Feed the external value.
4085
+ *
4086
+ * Require authorized operator.
2752
4087
  *
2753
4088
  * @param {Array<[AstarPrimitivesOracleCurrencyId, FixedU128]>} values
2754
4089
  **/
@@ -2776,7 +4111,9 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2776
4111
  **/
2777
4112
  oracleMembership: {
2778
4113
  /**
2779
- * See [`Pallet::add_member`].
4114
+ * Add a member `who` to the set.
4115
+ *
4116
+ * May only be called from `T::AddOrigin`.
2780
4117
  *
2781
4118
  * @param {MultiAddressLike} who
2782
4119
  **/
@@ -2795,7 +4132,9 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2795
4132
  >;
2796
4133
 
2797
4134
  /**
2798
- * See [`Pallet::remove_member`].
4135
+ * Remove a member `who` from the set.
4136
+ *
4137
+ * May only be called from `T::RemoveOrigin`.
2799
4138
  *
2800
4139
  * @param {MultiAddressLike} who
2801
4140
  **/
@@ -2814,7 +4153,11 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2814
4153
  >;
2815
4154
 
2816
4155
  /**
2817
- * See [`Pallet::swap_member`].
4156
+ * Swap out one member `remove` for another `add`.
4157
+ *
4158
+ * May only be called from `T::SwapOrigin`.
4159
+ *
4160
+ * Prime membership is *not* passed from `remove` to `add`, if extant.
2818
4161
  *
2819
4162
  * @param {MultiAddressLike} remove
2820
4163
  * @param {MultiAddressLike} add
@@ -2837,7 +4180,10 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2837
4180
  >;
2838
4181
 
2839
4182
  /**
2840
- * See [`Pallet::reset_members`].
4183
+ * Change the membership to a new set, disregarding the existing membership. Be nice and
4184
+ * pass `members` pre-sorted.
4185
+ *
4186
+ * May only be called from `T::ResetOrigin`.
2841
4187
  *
2842
4188
  * @param {Array<AccountId32Like>} members
2843
4189
  **/
@@ -2856,7 +4202,11 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2856
4202
  >;
2857
4203
 
2858
4204
  /**
2859
- * See [`Pallet::change_key`].
4205
+ * Swap out the sending member for some other key `new`.
4206
+ *
4207
+ * May only be called from `Signed` origin of a current member.
4208
+ *
4209
+ * Prime membership is passed from the origin account to `new`, if extant.
2860
4210
  *
2861
4211
  * @param {MultiAddressLike} new_
2862
4212
  **/
@@ -2875,7 +4225,9 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2875
4225
  >;
2876
4226
 
2877
4227
  /**
2878
- * See [`Pallet::set_prime`].
4228
+ * Set the prime member. Must be a current member.
4229
+ *
4230
+ * May only be called from `T::PrimeOrigin`.
2879
4231
  *
2880
4232
  * @param {MultiAddressLike} who
2881
4233
  **/
@@ -2894,7 +4246,9 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2894
4246
  >;
2895
4247
 
2896
4248
  /**
2897
- * See [`Pallet::clear_prime`].
4249
+ * Remove the prime member if it exists.
4250
+ *
4251
+ * May only be called from `T::PrimeOrigin`.
2898
4252
  *
2899
4253
  **/
2900
4254
  clearPrime: GenericTxCall<
@@ -2920,7 +4274,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2920
4274
  **/
2921
4275
  collatorSelection: {
2922
4276
  /**
2923
- * See [`Pallet::set_invulnerables`].
4277
+ * Set the list of invulnerable (fixed) collators.
2924
4278
  *
2925
4279
  * @param {Array<AccountId32Like>} new_
2926
4280
  **/
@@ -2939,7 +4293,9 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2939
4293
  >;
2940
4294
 
2941
4295
  /**
2942
- * See [`Pallet::set_desired_candidates`].
4296
+ * Set the ideal number of collators (not including the invulnerables).
4297
+ * If lowering this number, then the number of running collators could be higher than this figure.
4298
+ * Aside from that edge case, there should be no other way to have more collators than the desired number.
2943
4299
  *
2944
4300
  * @param {number} max
2945
4301
  **/
@@ -2958,7 +4314,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2958
4314
  >;
2959
4315
 
2960
4316
  /**
2961
- * See [`Pallet::set_candidacy_bond`].
4317
+ * Set the candidacy bond amount.
2962
4318
  *
2963
4319
  * @param {bigint} bond
2964
4320
  **/
@@ -2977,34 +4333,60 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
2977
4333
  >;
2978
4334
 
2979
4335
  /**
2980
- * See [`Pallet::register_as_candidate`].
4336
+ * Register this account as a collator candidate. The account must (a) already have
4337
+ * registered session keys and (b) be able to reserve the `CandidacyBond`.
4338
+ *
4339
+ * This call is not available to `Invulnerable` collators.
4340
+ *
4341
+ **/
4342
+ registerAsCandidate: GenericTxCall<
4343
+ Rv,
4344
+ () => ChainSubmittableExtrinsic<
4345
+ Rv,
4346
+ {
4347
+ pallet: 'CollatorSelection';
4348
+ palletCall: {
4349
+ name: 'RegisterAsCandidate';
4350
+ };
4351
+ }
4352
+ >
4353
+ >;
4354
+
4355
+ /**
4356
+ * Deregister `origin` as a collator candidate. Note that the collator can only leave on
4357
+ * session change. The `CandidacyBond` will start un-bonding process.
4358
+ *
4359
+ * This call will fail if the total number of candidates would drop below `MinCandidates`.
4360
+ *
4361
+ * This call is not available to `Invulnerable` collators.
2981
4362
  *
2982
4363
  **/
2983
- registerAsCandidate: GenericTxCall<
4364
+ leaveIntent: GenericTxCall<
2984
4365
  Rv,
2985
4366
  () => ChainSubmittableExtrinsic<
2986
4367
  Rv,
2987
4368
  {
2988
4369
  pallet: 'CollatorSelection';
2989
4370
  palletCall: {
2990
- name: 'RegisterAsCandidate';
4371
+ name: 'LeaveIntent';
2991
4372
  };
2992
4373
  }
2993
4374
  >
2994
4375
  >;
2995
4376
 
2996
4377
  /**
2997
- * See [`Pallet::leave_intent`].
4378
+ * Withdraw `CandidacyBond` after un-bonding period has finished.
4379
+ * This call will fail called during un-bonding or if there's no `CandidacyBound` reserved.
2998
4380
  *
2999
4381
  **/
3000
- leaveIntent: GenericTxCall<
4382
+ withdrawBond: GenericTxCall<
3001
4383
  Rv,
3002
4384
  () => ChainSubmittableExtrinsic<
3003
4385
  Rv,
3004
4386
  {
3005
4387
  pallet: 'CollatorSelection';
3006
4388
  palletCall: {
3007
- name: 'LeaveIntent';
4389
+ name: 'WithdrawBond';
3008
4390
  };
3009
4391
  }
3010
4392
  >
@@ -3020,7 +4402,15 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3020
4402
  **/
3021
4403
  session: {
3022
4404
  /**
3023
- * See [`Pallet::set_keys`].
4405
+ * Sets the session key(s) of the function caller to `keys`.
4406
+ * Allows an account to set its session key prior to becoming a validator.
4407
+ * This doesn't take effect until the next session.
4408
+ *
4409
+ * The dispatch origin of this function must be signed.
4410
+ *
4411
+ * ## Complexity
4412
+ * - `O(1)`. Actual cost depends on the number of length of `T::Keys::key_ids()` which is
4413
+ * fixed.
3024
4414
  *
3025
4415
  * @param {AstarRuntimeSessionKeys} keys
3026
4416
  * @param {BytesLike} proof
@@ -3043,7 +4433,18 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3043
4433
  >;
3044
4434
 
3045
4435
  /**
3046
- * See [`Pallet::purge_keys`].
4436
+ * Removes any session key(s) of the function caller.
4437
+ *
4438
+ * This doesn't take effect until the next session.
4439
+ *
4440
+ * The dispatch origin of this function must be Signed and the account must be either be
4441
+ * convertible to a validator ID using the chain's typical addressing system (this usually
4442
+ * means being a controller account) or directly convertible into a validator ID (which
4443
+ * usually means being a stash account).
4444
+ *
4445
+ * ## Complexity
4446
+ * - `O(1)` in number of key types. Actual cost depends on the number of length of
4447
+ * `T::Keys::key_ids()` which is fixed.
3047
4448
  *
3048
4449
  **/
3049
4450
  purgeKeys: GenericTxCall<
@@ -3069,30 +4470,9 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3069
4470
  **/
3070
4471
  xcmpQueue: {
3071
4472
  /**
3072
- * See [`Pallet::service_overweight`].
4473
+ * Suspends all XCM executions for the XCMP queue, regardless of the sender's origin.
3073
4474
  *
3074
- * @param {bigint} index
3075
- * @param {SpWeightsWeightV2Weight} weightLimit
3076
- **/
3077
- serviceOverweight: GenericTxCall<
3078
- Rv,
3079
- (
3080
- index: bigint,
3081
- weightLimit: SpWeightsWeightV2Weight,
3082
- ) => ChainSubmittableExtrinsic<
3083
- Rv,
3084
- {
3085
- pallet: 'XcmpQueue';
3086
- palletCall: {
3087
- name: 'ServiceOverweight';
3088
- params: { index: bigint; weightLimit: SpWeightsWeightV2Weight };
3089
- };
3090
- }
3091
- >
3092
- >;
3093
-
3094
- /**
3095
- * See [`Pallet::suspend_xcm_execution`].
4475
+ * - `origin`: Must pass `ControllerOrigin`.
3096
4476
  *
3097
4477
  **/
3098
4478
  suspendXcmExecution: GenericTxCall<
@@ -3109,7 +4489,11 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3109
4489
  >;
3110
4490
 
3111
4491
  /**
3112
- * See [`Pallet::resume_xcm_execution`].
4492
+ * Resumes all XCM executions for the XCMP queue.
4493
+ *
4494
+ * Note that this function doesn't change the status of the in/out bound channels.
4495
+ *
4496
+ * - `origin`: Must pass `ControllerOrigin`.
3113
4497
  *
3114
4498
  **/
3115
4499
  resumeXcmExecution: GenericTxCall<
@@ -3126,7 +4510,11 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3126
4510
  >;
3127
4511
 
3128
4512
  /**
3129
- * See [`Pallet::update_suspend_threshold`].
4513
+ * Overwrites the number of pages which must be in the queue for the other side to be
4514
+ * told to suspend their sending.
4515
+ *
4516
+ * - `origin`: Must pass `Root`.
4517
+ * - `new`: Desired value for `QueueConfigData.suspend_value`
3130
4518
  *
3131
4519
  * @param {number} new_
3132
4520
  **/
@@ -3145,7 +4533,11 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3145
4533
  >;
3146
4534
 
3147
4535
  /**
3148
- * See [`Pallet::update_drop_threshold`].
4536
+ * Overwrites the number of pages which must be in the queue after which we drop any
4537
+ * further messages from the channel.
4538
+ *
4539
+ * - `origin`: Must pass `Root`.
4540
+ * - `new`: Desired value for `QueueConfigData.drop_threshold`
3149
4541
  *
3150
4542
  * @param {number} new_
3151
4543
  **/
@@ -3164,7 +4556,11 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3164
4556
  >;
3165
4557
 
3166
4558
  /**
3167
- * See [`Pallet::update_resume_threshold`].
4559
+ * Overwrites the number of pages which the queue must be reduced to before it signals
4560
+ * that message sending may recommence after it has been suspended.
4561
+ *
4562
+ * - `origin`: Must pass `Root`.
4563
+ * - `new`: Desired value for `QueueConfigData.resume_threshold`
3168
4564
  *
3169
4565
  * @param {number} new_
3170
4566
  **/
@@ -3182,63 +4578,6 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3182
4578
  >
3183
4579
  >;
3184
4580
 
3185
- /**
3186
- * See [`Pallet::update_threshold_weight`].
3187
- *
3188
- * @param {SpWeightsWeightV2Weight} new_
3189
- **/
3190
- updateThresholdWeight: GenericTxCall<
3191
- Rv,
3192
- (new_: SpWeightsWeightV2Weight) => ChainSubmittableExtrinsic<
3193
- Rv,
3194
- {
3195
- pallet: 'XcmpQueue';
3196
- palletCall: {
3197
- name: 'UpdateThresholdWeight';
3198
- params: { new: SpWeightsWeightV2Weight };
3199
- };
3200
- }
3201
- >
3202
- >;
3203
-
3204
- /**
3205
- * See [`Pallet::update_weight_restrict_decay`].
3206
- *
3207
- * @param {SpWeightsWeightV2Weight} new_
3208
- **/
3209
- updateWeightRestrictDecay: GenericTxCall<
3210
- Rv,
3211
- (new_: SpWeightsWeightV2Weight) => ChainSubmittableExtrinsic<
3212
- Rv,
3213
- {
3214
- pallet: 'XcmpQueue';
3215
- palletCall: {
3216
- name: 'UpdateWeightRestrictDecay';
3217
- params: { new: SpWeightsWeightV2Weight };
3218
- };
3219
- }
3220
- >
3221
- >;
3222
-
3223
- /**
3224
- * See [`Pallet::update_xcmp_max_individual_weight`].
3225
- *
3226
- * @param {SpWeightsWeightV2Weight} new_
3227
- **/
3228
- updateXcmpMaxIndividualWeight: GenericTxCall<
3229
- Rv,
3230
- (new_: SpWeightsWeightV2Weight) => ChainSubmittableExtrinsic<
3231
- Rv,
3232
- {
3233
- pallet: 'XcmpQueue';
3234
- palletCall: {
3235
- name: 'UpdateXcmpMaxIndividualWeight';
3236
- params: { new: SpWeightsWeightV2Weight };
3237
- };
3238
- }
3239
- >
3240
- >;
3241
-
3242
4581
  /**
3243
4582
  * Generic pallet tx call
3244
4583
  **/
@@ -3249,15 +4588,14 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3249
4588
  **/
3250
4589
  polkadotXcm: {
3251
4590
  /**
3252
- * See [`Pallet::send`].
3253
4591
  *
3254
- * @param {XcmVersionedMultiLocation} dest
4592
+ * @param {XcmVersionedLocation} dest
3255
4593
  * @param {XcmVersionedXcm} message
3256
4594
  **/
3257
4595
  send: GenericTxCall<
3258
4596
  Rv,
3259
4597
  (
3260
- dest: XcmVersionedMultiLocation,
4598
+ dest: XcmVersionedLocation,
3261
4599
  message: XcmVersionedXcm,
3262
4600
  ) => ChainSubmittableExtrinsic<
3263
4601
  Rv,
@@ -3265,26 +4603,43 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3265
4603
  pallet: 'PolkadotXcm';
3266
4604
  palletCall: {
3267
4605
  name: 'Send';
3268
- params: { dest: XcmVersionedMultiLocation; message: XcmVersionedXcm };
4606
+ params: { dest: XcmVersionedLocation; message: XcmVersionedXcm };
3269
4607
  };
3270
4608
  }
3271
4609
  >
3272
4610
  >;
3273
4611
 
3274
4612
  /**
3275
- * See [`Pallet::teleport_assets`].
4613
+ * Teleport some assets from the local chain to some destination chain.
4614
+ *
4615
+ * **This function is deprecated: Use `limited_teleport_assets` instead.**
3276
4616
  *
3277
- * @param {XcmVersionedMultiLocation} dest
3278
- * @param {XcmVersionedMultiLocation} beneficiary
3279
- * @param {XcmVersionedMultiAssets} assets
4617
+ * Fee payment on the destination side is made from the asset in the `assets` vector of
4618
+ * index `fee_asset_item`. The weight limit for fees is not provided and thus is unlimited,
4619
+ * with all fees taken as needed from the asset.
4620
+ *
4621
+ * - `origin`: Must be capable of withdrawing the `assets` and executing XCM.
4622
+ * - `dest`: Destination context for the assets. Will typically be `[Parent,
4623
+ * Parachain(..)]` to send from parachain to parachain, or `[Parachain(..)]` to send from
4624
+ * relay to parachain.
4625
+ * - `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will
4626
+ * generally be an `AccountId32` value.
4627
+ * - `assets`: The assets to be withdrawn. This should include the assets used to pay the
4628
+ * fee on the `dest` chain.
4629
+ * - `fee_asset_item`: The index into `assets` of the item which should be used to pay
4630
+ * fees.
4631
+ *
4632
+ * @param {XcmVersionedLocation} dest
4633
+ * @param {XcmVersionedLocation} beneficiary
4634
+ * @param {XcmVersionedAssets} assets
3280
4635
  * @param {number} feeAssetItem
3281
4636
  **/
3282
4637
  teleportAssets: GenericTxCall<
3283
4638
  Rv,
3284
4639
  (
3285
- dest: XcmVersionedMultiLocation,
3286
- beneficiary: XcmVersionedMultiLocation,
3287
- assets: XcmVersionedMultiAssets,
4640
+ dest: XcmVersionedLocation,
4641
+ beneficiary: XcmVersionedLocation,
4642
+ assets: XcmVersionedAssets,
3288
4643
  feeAssetItem: number,
3289
4644
  ) => ChainSubmittableExtrinsic<
3290
4645
  Rv,
@@ -3293,9 +4648,9 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3293
4648
  palletCall: {
3294
4649
  name: 'TeleportAssets';
3295
4650
  params: {
3296
- dest: XcmVersionedMultiLocation;
3297
- beneficiary: XcmVersionedMultiLocation;
3298
- assets: XcmVersionedMultiAssets;
4651
+ dest: XcmVersionedLocation;
4652
+ beneficiary: XcmVersionedLocation;
4653
+ assets: XcmVersionedAssets;
3299
4654
  feeAssetItem: number;
3300
4655
  };
3301
4656
  };
@@ -3304,19 +4659,48 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3304
4659
  >;
3305
4660
 
3306
4661
  /**
3307
- * See [`Pallet::reserve_transfer_assets`].
4662
+ * Transfer some assets from the local chain to the destination chain through their local,
4663
+ * destination or remote reserve.
4664
+ *
4665
+ * `assets` must have same reserve location and may not be teleportable to `dest`.
4666
+ * - `assets` have local reserve: transfer assets to sovereign account of destination
4667
+ * chain and forward a notification XCM to `dest` to mint and deposit reserve-based
4668
+ * assets to `beneficiary`.
4669
+ * - `assets` have destination reserve: burn local assets and forward a notification to
4670
+ * `dest` chain to withdraw the reserve assets from this chain's sovereign account and
4671
+ * deposit them to `beneficiary`.
4672
+ * - `assets` have remote reserve: burn local assets, forward XCM to reserve chain to move
4673
+ * reserves from this chain's SA to `dest` chain's SA, and forward another XCM to `dest`
4674
+ * to mint and deposit reserve-based assets to `beneficiary`.
4675
+ *
4676
+ * **This function is deprecated: Use `limited_reserve_transfer_assets` instead.**
3308
4677
  *
3309
- * @param {XcmVersionedMultiLocation} dest
3310
- * @param {XcmVersionedMultiLocation} beneficiary
3311
- * @param {XcmVersionedMultiAssets} assets
4678
+ * Fee payment on the destination side is made from the asset in the `assets` vector of
4679
+ * index `fee_asset_item`. The weight limit for fees is not provided and thus is unlimited,
4680
+ * with all fees taken as needed from the asset.
4681
+ *
4682
+ * - `origin`: Must be capable of withdrawing the `assets` and executing XCM.
4683
+ * - `dest`: Destination context for the assets. Will typically be `[Parent,
4684
+ * Parachain(..)]` to send from parachain to parachain, or `[Parachain(..)]` to send from
4685
+ * relay to parachain.
4686
+ * - `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will
4687
+ * generally be an `AccountId32` value.
4688
+ * - `assets`: The assets to be withdrawn. This should include the assets used to pay the
4689
+ * fee on the `dest` (and possibly reserve) chains.
4690
+ * - `fee_asset_item`: The index into `assets` of the item which should be used to pay
4691
+ * fees.
4692
+ *
4693
+ * @param {XcmVersionedLocation} dest
4694
+ * @param {XcmVersionedLocation} beneficiary
4695
+ * @param {XcmVersionedAssets} assets
3312
4696
  * @param {number} feeAssetItem
3313
4697
  **/
3314
4698
  reserveTransferAssets: GenericTxCall<
3315
4699
  Rv,
3316
4700
  (
3317
- dest: XcmVersionedMultiLocation,
3318
- beneficiary: XcmVersionedMultiLocation,
3319
- assets: XcmVersionedMultiAssets,
4701
+ dest: XcmVersionedLocation,
4702
+ beneficiary: XcmVersionedLocation,
4703
+ assets: XcmVersionedAssets,
3320
4704
  feeAssetItem: number,
3321
4705
  ) => ChainSubmittableExtrinsic<
3322
4706
  Rv,
@@ -3325,9 +4709,9 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3325
4709
  palletCall: {
3326
4710
  name: 'ReserveTransferAssets';
3327
4711
  params: {
3328
- dest: XcmVersionedMultiLocation;
3329
- beneficiary: XcmVersionedMultiLocation;
3330
- assets: XcmVersionedMultiAssets;
4712
+ dest: XcmVersionedLocation;
4713
+ beneficiary: XcmVersionedLocation;
4714
+ assets: XcmVersionedAssets;
3331
4715
  feeAssetItem: number;
3332
4716
  };
3333
4717
  };
@@ -3336,7 +4720,14 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3336
4720
  >;
3337
4721
 
3338
4722
  /**
3339
- * See [`Pallet::execute`].
4723
+ * Execute an XCM message from a local, signed, origin.
4724
+ *
4725
+ * An event is deposited indicating whether `msg` could be executed completely or only
4726
+ * partially.
4727
+ *
4728
+ * No more than `max_weight` will be used in its attempted execution. If this is less than
4729
+ * the maximum amount of weight that the message could take to be executed, then no
4730
+ * execution attempt will be made.
3340
4731
  *
3341
4732
  * @param {XcmVersionedXcm} message
3342
4733
  * @param {SpWeightsWeightV2Weight} maxWeight
@@ -3359,15 +4750,20 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3359
4750
  >;
3360
4751
 
3361
4752
  /**
3362
- * See [`Pallet::force_xcm_version`].
4753
+ * Extoll that a particular destination can be communicated with through a particular
4754
+ * version of XCM.
3363
4755
  *
3364
- * @param {StagingXcmV3MultilocationMultiLocation} location
4756
+ * - `origin`: Must be an origin specified by AdminOrigin.
4757
+ * - `location`: The destination that is being described.
4758
+ * - `xcm_version`: The latest version of XCM that `location` supports.
4759
+ *
4760
+ * @param {StagingXcmV4Location} location
3365
4761
  * @param {number} version
3366
4762
  **/
3367
4763
  forceXcmVersion: GenericTxCall<
3368
4764
  Rv,
3369
4765
  (
3370
- location: StagingXcmV3MultilocationMultiLocation,
4766
+ location: StagingXcmV4Location,
3371
4767
  version: number,
3372
4768
  ) => ChainSubmittableExtrinsic<
3373
4769
  Rv,
@@ -3375,14 +4771,18 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3375
4771
  pallet: 'PolkadotXcm';
3376
4772
  palletCall: {
3377
4773
  name: 'ForceXcmVersion';
3378
- params: { location: StagingXcmV3MultilocationMultiLocation; version: number };
4774
+ params: { location: StagingXcmV4Location; version: number };
3379
4775
  };
3380
4776
  }
3381
4777
  >
3382
4778
  >;
3383
4779
 
3384
4780
  /**
3385
- * See [`Pallet::force_default_xcm_version`].
4781
+ * Set a safe XCM version (the version that XCM should be encoded with if the most recent
4782
+ * version a destination can accept is unknown).
4783
+ *
4784
+ * - `origin`: Must be an origin specified by AdminOrigin.
4785
+ * - `maybe_xcm_version`: The default XCM encoding version, or `None` to disable.
3386
4786
  *
3387
4787
  * @param {number | undefined} maybeXcmVersion
3388
4788
  **/
@@ -3401,58 +4801,95 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3401
4801
  >;
3402
4802
 
3403
4803
  /**
3404
- * See [`Pallet::force_subscribe_version_notify`].
4804
+ * Ask a location to notify us regarding their XCM version and any changes to it.
3405
4805
  *
3406
- * @param {XcmVersionedMultiLocation} location
4806
+ * - `origin`: Must be an origin specified by AdminOrigin.
4807
+ * - `location`: The location to which we should subscribe for XCM version notifications.
4808
+ *
4809
+ * @param {XcmVersionedLocation} location
3407
4810
  **/
3408
4811
  forceSubscribeVersionNotify: GenericTxCall<
3409
4812
  Rv,
3410
- (location: XcmVersionedMultiLocation) => ChainSubmittableExtrinsic<
4813
+ (location: XcmVersionedLocation) => ChainSubmittableExtrinsic<
3411
4814
  Rv,
3412
4815
  {
3413
4816
  pallet: 'PolkadotXcm';
3414
4817
  palletCall: {
3415
4818
  name: 'ForceSubscribeVersionNotify';
3416
- params: { location: XcmVersionedMultiLocation };
4819
+ params: { location: XcmVersionedLocation };
3417
4820
  };
3418
4821
  }
3419
4822
  >
3420
4823
  >;
3421
4824
 
3422
4825
  /**
3423
- * See [`Pallet::force_unsubscribe_version_notify`].
4826
+ * Require that a particular destination should no longer notify us regarding any XCM
4827
+ * version changes.
4828
+ *
4829
+ * - `origin`: Must be an origin specified by AdminOrigin.
4830
+ * - `location`: The location to which we are currently subscribed for XCM version
4831
+ * notifications which we no longer desire.
3424
4832
  *
3425
- * @param {XcmVersionedMultiLocation} location
4833
+ * @param {XcmVersionedLocation} location
3426
4834
  **/
3427
4835
  forceUnsubscribeVersionNotify: GenericTxCall<
3428
4836
  Rv,
3429
- (location: XcmVersionedMultiLocation) => ChainSubmittableExtrinsic<
4837
+ (location: XcmVersionedLocation) => ChainSubmittableExtrinsic<
3430
4838
  Rv,
3431
4839
  {
3432
4840
  pallet: 'PolkadotXcm';
3433
4841
  palletCall: {
3434
4842
  name: 'ForceUnsubscribeVersionNotify';
3435
- params: { location: XcmVersionedMultiLocation };
4843
+ params: { location: XcmVersionedLocation };
3436
4844
  };
3437
4845
  }
3438
4846
  >
3439
4847
  >;
3440
4848
 
3441
4849
  /**
3442
- * See [`Pallet::limited_reserve_transfer_assets`].
4850
+ * Transfer some assets from the local chain to the destination chain through their local,
4851
+ * destination or remote reserve.
3443
4852
  *
3444
- * @param {XcmVersionedMultiLocation} dest
3445
- * @param {XcmVersionedMultiLocation} beneficiary
3446
- * @param {XcmVersionedMultiAssets} assets
4853
+ * `assets` must have same reserve location and may not be teleportable to `dest`.
4854
+ * - `assets` have local reserve: transfer assets to sovereign account of destination
4855
+ * chain and forward a notification XCM to `dest` to mint and deposit reserve-based
4856
+ * assets to `beneficiary`.
4857
+ * - `assets` have destination reserve: burn local assets and forward a notification to
4858
+ * `dest` chain to withdraw the reserve assets from this chain's sovereign account and
4859
+ * deposit them to `beneficiary`.
4860
+ * - `assets` have remote reserve: burn local assets, forward XCM to reserve chain to move
4861
+ * reserves from this chain's SA to `dest` chain's SA, and forward another XCM to `dest`
4862
+ * to mint and deposit reserve-based assets to `beneficiary`.
4863
+ *
4864
+ * Fee payment on the destination side is made from the asset in the `assets` vector of
4865
+ * index `fee_asset_item`, up to enough to pay for `weight_limit` of weight. If more weight
4866
+ * is needed than `weight_limit`, then the operation will fail and the assets send may be
4867
+ * at risk.
4868
+ *
4869
+ * - `origin`: Must be capable of withdrawing the `assets` and executing XCM.
4870
+ * - `dest`: Destination context for the assets. Will typically be `[Parent,
4871
+ * Parachain(..)]` to send from parachain to parachain, or `[Parachain(..)]` to send from
4872
+ * relay to parachain.
4873
+ * - `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will
4874
+ * generally be an `AccountId32` value.
4875
+ * - `assets`: The assets to be withdrawn. This should include the assets used to pay the
4876
+ * fee on the `dest` (and possibly reserve) chains.
4877
+ * - `fee_asset_item`: The index into `assets` of the item which should be used to pay
4878
+ * fees.
4879
+ * - `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase.
4880
+ *
4881
+ * @param {XcmVersionedLocation} dest
4882
+ * @param {XcmVersionedLocation} beneficiary
4883
+ * @param {XcmVersionedAssets} assets
3447
4884
  * @param {number} feeAssetItem
3448
4885
  * @param {XcmV3WeightLimit} weightLimit
3449
4886
  **/
3450
4887
  limitedReserveTransferAssets: GenericTxCall<
3451
4888
  Rv,
3452
4889
  (
3453
- dest: XcmVersionedMultiLocation,
3454
- beneficiary: XcmVersionedMultiLocation,
3455
- assets: XcmVersionedMultiAssets,
4890
+ dest: XcmVersionedLocation,
4891
+ beneficiary: XcmVersionedLocation,
4892
+ assets: XcmVersionedAssets,
3456
4893
  feeAssetItem: number,
3457
4894
  weightLimit: XcmV3WeightLimit,
3458
4895
  ) => ChainSubmittableExtrinsic<
@@ -3462,9 +4899,9 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3462
4899
  palletCall: {
3463
4900
  name: 'LimitedReserveTransferAssets';
3464
4901
  params: {
3465
- dest: XcmVersionedMultiLocation;
3466
- beneficiary: XcmVersionedMultiLocation;
3467
- assets: XcmVersionedMultiAssets;
4902
+ dest: XcmVersionedLocation;
4903
+ beneficiary: XcmVersionedLocation;
4904
+ assets: XcmVersionedAssets;
3468
4905
  feeAssetItem: number;
3469
4906
  weightLimit: XcmV3WeightLimit;
3470
4907
  };
@@ -3474,20 +4911,37 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3474
4911
  >;
3475
4912
 
3476
4913
  /**
3477
- * See [`Pallet::limited_teleport_assets`].
4914
+ * Teleport some assets from the local chain to some destination chain.
4915
+ *
4916
+ * Fee payment on the destination side is made from the asset in the `assets` vector of
4917
+ * index `fee_asset_item`, up to enough to pay for `weight_limit` of weight. If more weight
4918
+ * is needed than `weight_limit`, then the operation will fail and the assets send may be
4919
+ * at risk.
3478
4920
  *
3479
- * @param {XcmVersionedMultiLocation} dest
3480
- * @param {XcmVersionedMultiLocation} beneficiary
3481
- * @param {XcmVersionedMultiAssets} assets
4921
+ * - `origin`: Must be capable of withdrawing the `assets` and executing XCM.
4922
+ * - `dest`: Destination context for the assets. Will typically be `[Parent,
4923
+ * Parachain(..)]` to send from parachain to parachain, or `[Parachain(..)]` to send from
4924
+ * relay to parachain.
4925
+ * - `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will
4926
+ * generally be an `AccountId32` value.
4927
+ * - `assets`: The assets to be withdrawn. This should include the assets used to pay the
4928
+ * fee on the `dest` chain.
4929
+ * - `fee_asset_item`: The index into `assets` of the item which should be used to pay
4930
+ * fees.
4931
+ * - `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase.
4932
+ *
4933
+ * @param {XcmVersionedLocation} dest
4934
+ * @param {XcmVersionedLocation} beneficiary
4935
+ * @param {XcmVersionedAssets} assets
3482
4936
  * @param {number} feeAssetItem
3483
4937
  * @param {XcmV3WeightLimit} weightLimit
3484
4938
  **/
3485
4939
  limitedTeleportAssets: GenericTxCall<
3486
4940
  Rv,
3487
4941
  (
3488
- dest: XcmVersionedMultiLocation,
3489
- beneficiary: XcmVersionedMultiLocation,
3490
- assets: XcmVersionedMultiAssets,
4942
+ dest: XcmVersionedLocation,
4943
+ beneficiary: XcmVersionedLocation,
4944
+ assets: XcmVersionedAssets,
3491
4945
  feeAssetItem: number,
3492
4946
  weightLimit: XcmV3WeightLimit,
3493
4947
  ) => ChainSubmittableExtrinsic<
@@ -3497,9 +4951,9 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3497
4951
  palletCall: {
3498
4952
  name: 'LimitedTeleportAssets';
3499
4953
  params: {
3500
- dest: XcmVersionedMultiLocation;
3501
- beneficiary: XcmVersionedMultiLocation;
3502
- assets: XcmVersionedMultiAssets;
4954
+ dest: XcmVersionedLocation;
4955
+ beneficiary: XcmVersionedLocation;
4956
+ assets: XcmVersionedAssets;
3503
4957
  feeAssetItem: number;
3504
4958
  weightLimit: XcmV3WeightLimit;
3505
4959
  };
@@ -3509,7 +4963,10 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3509
4963
  >;
3510
4964
 
3511
4965
  /**
3512
- * See [`Pallet::force_suspension`].
4966
+ * Set or unset the global suspension state of the XCM executor.
4967
+ *
4968
+ * - `origin`: Must be an origin specified by AdminOrigin.
4969
+ * - `suspended`: `true` to suspend, `false` to resume.
3513
4970
  *
3514
4971
  * @param {boolean} suspended
3515
4972
  **/
@@ -3527,6 +4984,101 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3527
4984
  >
3528
4985
  >;
3529
4986
 
4987
+ /**
4988
+ * Transfer some assets from the local chain to the destination chain through their local,
4989
+ * destination or remote reserve, or through teleports.
4990
+ *
4991
+ * Fee payment on the destination side is made from the asset in the `assets` vector of
4992
+ * index `fee_asset_item` (hence referred to as `fees`), up to enough to pay for
4993
+ * `weight_limit` of weight. If more weight is needed than `weight_limit`, then the
4994
+ * operation will fail and the assets sent may be at risk.
4995
+ *
4996
+ * `assets` (excluding `fees`) must have same reserve location or otherwise be teleportable
4997
+ * to `dest`, no limitations imposed on `fees`.
4998
+ * - for local reserve: transfer assets to sovereign account of destination chain and
4999
+ * forward a notification XCM to `dest` to mint and deposit reserve-based assets to
5000
+ * `beneficiary`.
5001
+ * - for destination reserve: burn local assets and forward a notification to `dest` chain
5002
+ * to withdraw the reserve assets from this chain's sovereign account and deposit them
5003
+ * to `beneficiary`.
5004
+ * - for remote reserve: burn local assets, forward XCM to reserve chain to move reserves
5005
+ * from this chain's SA to `dest` chain's SA, and forward another XCM to `dest` to mint
5006
+ * and deposit reserve-based assets to `beneficiary`.
5007
+ * - for teleports: burn local assets and forward XCM to `dest` chain to mint/teleport
5008
+ * assets and deposit them to `beneficiary`.
5009
+ *
5010
+ * - `origin`: Must be capable of withdrawing the `assets` and executing XCM.
5011
+ * - `dest`: Destination context for the assets. Will typically be `X2(Parent,
5012
+ * Parachain(..))` to send from parachain to parachain, or `X1(Parachain(..))` to send
5013
+ * from relay to parachain.
5014
+ * - `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will
5015
+ * generally be an `AccountId32` value.
5016
+ * - `assets`: The assets to be withdrawn. This should include the assets used to pay the
5017
+ * fee on the `dest` (and possibly reserve) chains.
5018
+ * - `fee_asset_item`: The index into `assets` of the item which should be used to pay
5019
+ * fees.
5020
+ * - `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase.
5021
+ *
5022
+ * @param {XcmVersionedLocation} dest
5023
+ * @param {XcmVersionedLocation} beneficiary
5024
+ * @param {XcmVersionedAssets} assets
5025
+ * @param {number} feeAssetItem
5026
+ * @param {XcmV3WeightLimit} weightLimit
5027
+ **/
5028
+ transferAssets: GenericTxCall<
5029
+ Rv,
5030
+ (
5031
+ dest: XcmVersionedLocation,
5032
+ beneficiary: XcmVersionedLocation,
5033
+ assets: XcmVersionedAssets,
5034
+ feeAssetItem: number,
5035
+ weightLimit: XcmV3WeightLimit,
5036
+ ) => ChainSubmittableExtrinsic<
5037
+ Rv,
5038
+ {
5039
+ pallet: 'PolkadotXcm';
5040
+ palletCall: {
5041
+ name: 'TransferAssets';
5042
+ params: {
5043
+ dest: XcmVersionedLocation;
5044
+ beneficiary: XcmVersionedLocation;
5045
+ assets: XcmVersionedAssets;
5046
+ feeAssetItem: number;
5047
+ weightLimit: XcmV3WeightLimit;
5048
+ };
5049
+ };
5050
+ }
5051
+ >
5052
+ >;
5053
+
5054
+ /**
5055
+ * Claims assets trapped on this pallet because of leftover assets during XCM execution.
5056
+ *
5057
+ * - `origin`: Anyone can call this extrinsic.
5058
+ * - `assets`: The exact assets that were trapped. Use the version to specify what version
5059
+ * was the latest when they were trapped.
5060
+ * - `beneficiary`: The location/account where the claimed assets will be deposited.
5061
+ *
5062
+ * @param {XcmVersionedAssets} assets
5063
+ * @param {XcmVersionedLocation} beneficiary
5064
+ **/
5065
+ claimAssets: GenericTxCall<
5066
+ Rv,
5067
+ (
5068
+ assets: XcmVersionedAssets,
5069
+ beneficiary: XcmVersionedLocation,
5070
+ ) => ChainSubmittableExtrinsic<
5071
+ Rv,
5072
+ {
5073
+ pallet: 'PolkadotXcm';
5074
+ palletCall: {
5075
+ name: 'ClaimAssets';
5076
+ params: { assets: XcmVersionedAssets; beneficiary: XcmVersionedLocation };
5077
+ };
5078
+ }
5079
+ >
5080
+ >;
5081
+
3530
5082
  /**
3531
5083
  * Generic pallet tx call
3532
5084
  **/
@@ -3545,29 +5097,6 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3545
5097
  * Pallet `DmpQueue`'s transaction calls
3546
5098
  **/
3547
5099
  dmpQueue: {
3548
- /**
3549
- * See [`Pallet::service_overweight`].
3550
- *
3551
- * @param {bigint} index
3552
- * @param {SpWeightsWeightV2Weight} weightLimit
3553
- **/
3554
- serviceOverweight: GenericTxCall<
3555
- Rv,
3556
- (
3557
- index: bigint,
3558
- weightLimit: SpWeightsWeightV2Weight,
3559
- ) => ChainSubmittableExtrinsic<
3560
- Rv,
3561
- {
3562
- pallet: 'DmpQueue';
3563
- palletCall: {
3564
- name: 'ServiceOverweight';
3565
- params: { index: bigint; weightLimit: SpWeightsWeightV2Weight };
3566
- };
3567
- }
3568
- >
3569
- >;
3570
-
3571
5100
  /**
3572
5101
  * Generic pallet tx call
3573
5102
  **/
@@ -3578,15 +5107,17 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3578
5107
  **/
3579
5108
  xcAssetConfig: {
3580
5109
  /**
3581
- * See [`Pallet::register_asset_location`].
5110
+ * Register new asset location to asset Id mapping.
3582
5111
  *
3583
- * @param {XcmVersionedMultiLocation} assetLocation
5112
+ * This makes the asset eligible for XCM interaction.
5113
+ *
5114
+ * @param {XcmVersionedLocation} assetLocation
3584
5115
  * @param {bigint} assetId
3585
5116
  **/
3586
5117
  registerAssetLocation: GenericTxCall<
3587
5118
  Rv,
3588
5119
  (
3589
- assetLocation: XcmVersionedMultiLocation,
5120
+ assetLocation: XcmVersionedLocation,
3590
5121
  assetId: bigint,
3591
5122
  ) => ChainSubmittableExtrinsic<
3592
5123
  Rv,
@@ -3594,22 +5125,23 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3594
5125
  pallet: 'XcAssetConfig';
3595
5126
  palletCall: {
3596
5127
  name: 'RegisterAssetLocation';
3597
- params: { assetLocation: XcmVersionedMultiLocation; assetId: bigint };
5128
+ params: { assetLocation: XcmVersionedLocation; assetId: bigint };
3598
5129
  };
3599
5130
  }
3600
5131
  >
3601
5132
  >;
3602
5133
 
3603
5134
  /**
3604
- * See [`Pallet::set_asset_units_per_second`].
5135
+ * Change the amount of units we are charging per execution second
5136
+ * for a given AssetLocation.
3605
5137
  *
3606
- * @param {XcmVersionedMultiLocation} assetLocation
5138
+ * @param {XcmVersionedLocation} assetLocation
3607
5139
  * @param {bigint} unitsPerSecond
3608
5140
  **/
3609
5141
  setAssetUnitsPerSecond: GenericTxCall<
3610
5142
  Rv,
3611
5143
  (
3612
- assetLocation: XcmVersionedMultiLocation,
5144
+ assetLocation: XcmVersionedLocation,
3613
5145
  unitsPerSecond: bigint,
3614
5146
  ) => ChainSubmittableExtrinsic<
3615
5147
  Rv,
@@ -3617,22 +5149,23 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3617
5149
  pallet: 'XcAssetConfig';
3618
5150
  palletCall: {
3619
5151
  name: 'SetAssetUnitsPerSecond';
3620
- params: { assetLocation: XcmVersionedMultiLocation; unitsPerSecond: bigint };
5152
+ params: { assetLocation: XcmVersionedLocation; unitsPerSecond: bigint };
3621
5153
  };
3622
5154
  }
3623
5155
  >
3624
5156
  >;
3625
5157
 
3626
5158
  /**
3627
- * See [`Pallet::change_existing_asset_location`].
5159
+ * Change the xcm type mapping for a given asset Id.
5160
+ * The new asset type will inherit old `units per second` value.
3628
5161
  *
3629
- * @param {XcmVersionedMultiLocation} newAssetLocation
5162
+ * @param {XcmVersionedLocation} newAssetLocation
3630
5163
  * @param {bigint} assetId
3631
5164
  **/
3632
5165
  changeExistingAssetLocation: GenericTxCall<
3633
5166
  Rv,
3634
5167
  (
3635
- newAssetLocation: XcmVersionedMultiLocation,
5168
+ newAssetLocation: XcmVersionedLocation,
3636
5169
  assetId: bigint,
3637
5170
  ) => ChainSubmittableExtrinsic<
3638
5171
  Rv,
@@ -3640,33 +5173,35 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3640
5173
  pallet: 'XcAssetConfig';
3641
5174
  palletCall: {
3642
5175
  name: 'ChangeExistingAssetLocation';
3643
- params: { newAssetLocation: XcmVersionedMultiLocation; assetId: bigint };
5176
+ params: { newAssetLocation: XcmVersionedLocation; assetId: bigint };
3644
5177
  };
3645
5178
  }
3646
5179
  >
3647
5180
  >;
3648
5181
 
3649
5182
  /**
3650
- * See [`Pallet::remove_payment_asset`].
5183
+ * Removes asset from the set of supported payment assets.
5184
+ *
5185
+ * The asset can still be interacted with via XCM but it cannot be used to pay for execution time.
3651
5186
  *
3652
- * @param {XcmVersionedMultiLocation} assetLocation
5187
+ * @param {XcmVersionedLocation} assetLocation
3653
5188
  **/
3654
5189
  removePaymentAsset: GenericTxCall<
3655
5190
  Rv,
3656
- (assetLocation: XcmVersionedMultiLocation) => ChainSubmittableExtrinsic<
5191
+ (assetLocation: XcmVersionedLocation) => ChainSubmittableExtrinsic<
3657
5192
  Rv,
3658
5193
  {
3659
5194
  pallet: 'XcAssetConfig';
3660
5195
  palletCall: {
3661
5196
  name: 'RemovePaymentAsset';
3662
- params: { assetLocation: XcmVersionedMultiLocation };
5197
+ params: { assetLocation: XcmVersionedLocation };
3663
5198
  };
3664
5199
  }
3665
5200
  >
3666
5201
  >;
3667
5202
 
3668
5203
  /**
3669
- * See [`Pallet::remove_asset`].
5204
+ * Removes all information related to asset, removing it from XCM support.
3670
5205
  *
3671
5206
  * @param {bigint} assetId
3672
5207
  **/
@@ -3694,11 +5229,22 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3694
5229
  **/
3695
5230
  xTokens: {
3696
5231
  /**
3697
- * See [`Pallet::transfer`].
5232
+ * Transfer native currencies.
5233
+ *
5234
+ * `dest_weight_limit` is the weight for XCM execution on the dest
5235
+ * chain, and it would be charged from the transferred assets. If set
5236
+ * below requirements, the execution may fail and assets wouldn't be
5237
+ * received.
5238
+ *
5239
+ * It's a no-op if any error on local XCM execution or message sending.
5240
+ * Note sending assets out per se doesn't guarantee they would be
5241
+ * received. Receiving depends on if the XCM message could be delivered
5242
+ * by the network, and if the receiving chain would handle
5243
+ * messages correctly.
3698
5244
  *
3699
5245
  * @param {bigint} currencyId
3700
5246
  * @param {bigint} amount
3701
- * @param {XcmVersionedMultiLocation} dest
5247
+ * @param {XcmVersionedLocation} dest
3702
5248
  * @param {XcmV3WeightLimit} destWeightLimit
3703
5249
  **/
3704
5250
  transfer: GenericTxCall<
@@ -3706,7 +5252,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3706
5252
  (
3707
5253
  currencyId: bigint,
3708
5254
  amount: bigint,
3709
- dest: XcmVersionedMultiLocation,
5255
+ dest: XcmVersionedLocation,
3710
5256
  destWeightLimit: XcmV3WeightLimit,
3711
5257
  ) => ChainSubmittableExtrinsic<
3712
5258
  Rv,
@@ -3717,7 +5263,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3717
5263
  params: {
3718
5264
  currencyId: bigint;
3719
5265
  amount: bigint;
3720
- dest: XcmVersionedMultiLocation;
5266
+ dest: XcmVersionedLocation;
3721
5267
  destWeightLimit: XcmV3WeightLimit;
3722
5268
  };
3723
5269
  };
@@ -3726,17 +5272,28 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3726
5272
  >;
3727
5273
 
3728
5274
  /**
3729
- * See [`Pallet::transfer_multiasset`].
5275
+ * Transfer `Asset`.
3730
5276
  *
3731
- * @param {XcmVersionedMultiAsset} asset
3732
- * @param {XcmVersionedMultiLocation} dest
5277
+ * `dest_weight_limit` is the weight for XCM execution on the dest
5278
+ * chain, and it would be charged from the transferred assets. If set
5279
+ * below requirements, the execution may fail and assets wouldn't be
5280
+ * received.
5281
+ *
5282
+ * It's a no-op if any error on local XCM execution or message sending.
5283
+ * Note sending assets out per se doesn't guarantee they would be
5284
+ * received. Receiving depends on if the XCM message could be delivered
5285
+ * by the network, and if the receiving chain would handle
5286
+ * messages correctly.
5287
+ *
5288
+ * @param {XcmVersionedAsset} asset
5289
+ * @param {XcmVersionedLocation} dest
3733
5290
  * @param {XcmV3WeightLimit} destWeightLimit
3734
5291
  **/
3735
5292
  transferMultiasset: GenericTxCall<
3736
5293
  Rv,
3737
5294
  (
3738
- asset: XcmVersionedMultiAsset,
3739
- dest: XcmVersionedMultiLocation,
5295
+ asset: XcmVersionedAsset,
5296
+ dest: XcmVersionedLocation,
3740
5297
  destWeightLimit: XcmV3WeightLimit,
3741
5298
  ) => ChainSubmittableExtrinsic<
3742
5299
  Rv,
@@ -3744,23 +5301,39 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3744
5301
  pallet: 'XTokens';
3745
5302
  palletCall: {
3746
5303
  name: 'TransferMultiasset';
3747
- params: {
3748
- asset: XcmVersionedMultiAsset;
3749
- dest: XcmVersionedMultiLocation;
3750
- destWeightLimit: XcmV3WeightLimit;
3751
- };
5304
+ params: { asset: XcmVersionedAsset; dest: XcmVersionedLocation; destWeightLimit: XcmV3WeightLimit };
3752
5305
  };
3753
5306
  }
3754
5307
  >
3755
5308
  >;
3756
5309
 
3757
5310
  /**
3758
- * See [`Pallet::transfer_with_fee`].
5311
+ * Transfer native currencies specifying the fee and amount as
5312
+ * separate.
5313
+ *
5314
+ * `dest_weight_limit` is the weight for XCM execution on the dest
5315
+ * chain, and it would be charged from the transferred assets. If set
5316
+ * below requirements, the execution may fail and assets wouldn't be
5317
+ * received.
5318
+ *
5319
+ * `fee` is the amount to be spent to pay for execution in destination
5320
+ * chain. Both fee and amount will be subtracted form the callers
5321
+ * balance.
5322
+ *
5323
+ * If `fee` is not high enough to cover for the execution costs in the
5324
+ * destination chain, then the assets will be trapped in the
5325
+ * destination chain
5326
+ *
5327
+ * It's a no-op if any error on local XCM execution or message sending.
5328
+ * Note sending assets out per se doesn't guarantee they would be
5329
+ * received. Receiving depends on if the XCM message could be delivered
5330
+ * by the network, and if the receiving chain would handle
5331
+ * messages correctly.
3759
5332
  *
3760
5333
  * @param {bigint} currencyId
3761
5334
  * @param {bigint} amount
3762
5335
  * @param {bigint} fee
3763
- * @param {XcmVersionedMultiLocation} dest
5336
+ * @param {XcmVersionedLocation} dest
3764
5337
  * @param {XcmV3WeightLimit} destWeightLimit
3765
5338
  **/
3766
5339
  transferWithFee: GenericTxCall<
@@ -3769,7 +5342,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3769
5342
  currencyId: bigint,
3770
5343
  amount: bigint,
3771
5344
  fee: bigint,
3772
- dest: XcmVersionedMultiLocation,
5345
+ dest: XcmVersionedLocation,
3773
5346
  destWeightLimit: XcmV3WeightLimit,
3774
5347
  ) => ChainSubmittableExtrinsic<
3775
5348
  Rv,
@@ -3781,7 +5354,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3781
5354
  currencyId: bigint;
3782
5355
  amount: bigint;
3783
5356
  fee: bigint;
3784
- dest: XcmVersionedMultiLocation;
5357
+ dest: XcmVersionedLocation;
3785
5358
  destWeightLimit: XcmV3WeightLimit;
3786
5359
  };
3787
5360
  };
@@ -3790,19 +5363,39 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3790
5363
  >;
3791
5364
 
3792
5365
  /**
3793
- * See [`Pallet::transfer_multiasset_with_fee`].
5366
+ * Transfer `Asset` specifying the fee and amount as separate.
5367
+ *
5368
+ * `dest_weight_limit` is the weight for XCM execution on the dest
5369
+ * chain, and it would be charged from the transferred assets. If set
5370
+ * below requirements, the execution may fail and assets wouldn't be
5371
+ * received.
5372
+ *
5373
+ * `fee` is the Asset to be spent to pay for execution in
5374
+ * destination chain. Both fee and amount will be subtracted form the
5375
+ * callers balance For now we only accept fee and asset having the same
5376
+ * `Location` id.
5377
+ *
5378
+ * If `fee` is not high enough to cover for the execution costs in the
5379
+ * destination chain, then the assets will be trapped in the
5380
+ * destination chain
3794
5381
  *
3795
- * @param {XcmVersionedMultiAsset} asset
3796
- * @param {XcmVersionedMultiAsset} fee
3797
- * @param {XcmVersionedMultiLocation} dest
5382
+ * It's a no-op if any error on local XCM execution or message sending.
5383
+ * Note sending assets out per se doesn't guarantee they would be
5384
+ * received. Receiving depends on if the XCM message could be delivered
5385
+ * by the network, and if the receiving chain would handle
5386
+ * messages correctly.
5387
+ *
5388
+ * @param {XcmVersionedAsset} asset
5389
+ * @param {XcmVersionedAsset} fee
5390
+ * @param {XcmVersionedLocation} dest
3798
5391
  * @param {XcmV3WeightLimit} destWeightLimit
3799
5392
  **/
3800
5393
  transferMultiassetWithFee: GenericTxCall<
3801
5394
  Rv,
3802
5395
  (
3803
- asset: XcmVersionedMultiAsset,
3804
- fee: XcmVersionedMultiAsset,
3805
- dest: XcmVersionedMultiLocation,
5396
+ asset: XcmVersionedAsset,
5397
+ fee: XcmVersionedAsset,
5398
+ dest: XcmVersionedLocation,
3806
5399
  destWeightLimit: XcmV3WeightLimit,
3807
5400
  ) => ChainSubmittableExtrinsic<
3808
5401
  Rv,
@@ -3811,9 +5404,9 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3811
5404
  palletCall: {
3812
5405
  name: 'TransferMultiassetWithFee';
3813
5406
  params: {
3814
- asset: XcmVersionedMultiAsset;
3815
- fee: XcmVersionedMultiAsset;
3816
- dest: XcmVersionedMultiLocation;
5407
+ asset: XcmVersionedAsset;
5408
+ fee: XcmVersionedAsset;
5409
+ dest: XcmVersionedLocation;
3817
5410
  destWeightLimit: XcmV3WeightLimit;
3818
5411
  };
3819
5412
  };
@@ -3822,11 +5415,25 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3822
5415
  >;
3823
5416
 
3824
5417
  /**
3825
- * See [`Pallet::transfer_multicurrencies`].
5418
+ * Transfer several currencies specifying the item to be used as fee
5419
+ *
5420
+ * `dest_weight_limit` is the weight for XCM execution on the dest
5421
+ * chain, and it would be charged from the transferred assets. If set
5422
+ * below requirements, the execution may fail and assets wouldn't be
5423
+ * received.
5424
+ *
5425
+ * `fee_item` is index of the currencies tuple that we want to use for
5426
+ * payment
5427
+ *
5428
+ * It's a no-op if any error on local XCM execution or message sending.
5429
+ * Note sending assets out per se doesn't guarantee they would be
5430
+ * received. Receiving depends on if the XCM message could be delivered
5431
+ * by the network, and if the receiving chain would handle
5432
+ * messages correctly.
3826
5433
  *
3827
5434
  * @param {Array<[bigint, bigint]>} currencies
3828
5435
  * @param {number} feeItem
3829
- * @param {XcmVersionedMultiLocation} dest
5436
+ * @param {XcmVersionedLocation} dest
3830
5437
  * @param {XcmV3WeightLimit} destWeightLimit
3831
5438
  **/
3832
5439
  transferMulticurrencies: GenericTxCall<
@@ -3834,7 +5441,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3834
5441
  (
3835
5442
  currencies: Array<[bigint, bigint]>,
3836
5443
  feeItem: number,
3837
- dest: XcmVersionedMultiLocation,
5444
+ dest: XcmVersionedLocation,
3838
5445
  destWeightLimit: XcmV3WeightLimit,
3839
5446
  ) => ChainSubmittableExtrinsic<
3840
5447
  Rv,
@@ -3845,7 +5452,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3845
5452
  params: {
3846
5453
  currencies: Array<[bigint, bigint]>;
3847
5454
  feeItem: number;
3848
- dest: XcmVersionedMultiLocation;
5455
+ dest: XcmVersionedLocation;
3849
5456
  destWeightLimit: XcmV3WeightLimit;
3850
5457
  };
3851
5458
  };
@@ -3854,19 +5461,33 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3854
5461
  >;
3855
5462
 
3856
5463
  /**
3857
- * See [`Pallet::transfer_multiassets`].
5464
+ * Transfer several `Asset` specifying the item to be used as fee
3858
5465
  *
3859
- * @param {XcmVersionedMultiAssets} assets
5466
+ * `dest_weight_limit` is the weight for XCM execution on the dest
5467
+ * chain, and it would be charged from the transferred assets. If set
5468
+ * below requirements, the execution may fail and assets wouldn't be
5469
+ * received.
5470
+ *
5471
+ * `fee_item` is index of the Assets that we want to use for
5472
+ * payment
5473
+ *
5474
+ * It's a no-op if any error on local XCM execution or message sending.
5475
+ * Note sending assets out per se doesn't guarantee they would be
5476
+ * received. Receiving depends on if the XCM message could be delivered
5477
+ * by the network, and if the receiving chain would handle
5478
+ * messages correctly.
5479
+ *
5480
+ * @param {XcmVersionedAssets} assets
3860
5481
  * @param {number} feeItem
3861
- * @param {XcmVersionedMultiLocation} dest
5482
+ * @param {XcmVersionedLocation} dest
3862
5483
  * @param {XcmV3WeightLimit} destWeightLimit
3863
5484
  **/
3864
5485
  transferMultiassets: GenericTxCall<
3865
5486
  Rv,
3866
5487
  (
3867
- assets: XcmVersionedMultiAssets,
5488
+ assets: XcmVersionedAssets,
3868
5489
  feeItem: number,
3869
- dest: XcmVersionedMultiLocation,
5490
+ dest: XcmVersionedLocation,
3870
5491
  destWeightLimit: XcmV3WeightLimit,
3871
5492
  ) => ChainSubmittableExtrinsic<
3872
5493
  Rv,
@@ -3875,9 +5496,9 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3875
5496
  palletCall: {
3876
5497
  name: 'TransferMultiassets';
3877
5498
  params: {
3878
- assets: XcmVersionedMultiAssets;
5499
+ assets: XcmVersionedAssets;
3879
5500
  feeItem: number;
3880
- dest: XcmVersionedMultiLocation;
5501
+ dest: XcmVersionedLocation;
3881
5502
  destWeightLimit: XcmV3WeightLimit;
3882
5503
  };
3883
5504
  };
@@ -3890,12 +5511,88 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3890
5511
  **/
3891
5512
  [callName: string]: GenericTxCall<Rv, TxCall<Rv>>;
3892
5513
  };
5514
+ /**
5515
+ * Pallet `MessageQueue`'s transaction calls
5516
+ **/
5517
+ messageQueue: {
5518
+ /**
5519
+ * Remove a page which has no more messages remaining to be processed or is stale.
5520
+ *
5521
+ * @param {CumulusPrimitivesCoreAggregateMessageOrigin} messageOrigin
5522
+ * @param {number} pageIndex
5523
+ **/
5524
+ reapPage: GenericTxCall<
5525
+ Rv,
5526
+ (
5527
+ messageOrigin: CumulusPrimitivesCoreAggregateMessageOrigin,
5528
+ pageIndex: number,
5529
+ ) => ChainSubmittableExtrinsic<
5530
+ Rv,
5531
+ {
5532
+ pallet: 'MessageQueue';
5533
+ palletCall: {
5534
+ name: 'ReapPage';
5535
+ params: { messageOrigin: CumulusPrimitivesCoreAggregateMessageOrigin; pageIndex: number };
5536
+ };
5537
+ }
5538
+ >
5539
+ >;
5540
+
5541
+ /**
5542
+ * Execute an overweight message.
5543
+ *
5544
+ * Temporary processing errors will be propagated whereas permanent errors are treated
5545
+ * as success condition.
5546
+ *
5547
+ * - `origin`: Must be `Signed`.
5548
+ * - `message_origin`: The origin from which the message to be executed arrived.
5549
+ * - `page`: The page in the queue in which the message to be executed is sitting.
5550
+ * - `index`: The index into the queue of the message to be executed.
5551
+ * - `weight_limit`: The maximum amount of weight allowed to be consumed in the execution
5552
+ * of the message.
5553
+ *
5554
+ * Benchmark complexity considerations: O(index + weight_limit).
5555
+ *
5556
+ * @param {CumulusPrimitivesCoreAggregateMessageOrigin} messageOrigin
5557
+ * @param {number} page
5558
+ * @param {number} index
5559
+ * @param {SpWeightsWeightV2Weight} weightLimit
5560
+ **/
5561
+ executeOverweight: GenericTxCall<
5562
+ Rv,
5563
+ (
5564
+ messageOrigin: CumulusPrimitivesCoreAggregateMessageOrigin,
5565
+ page: number,
5566
+ index: number,
5567
+ weightLimit: SpWeightsWeightV2Weight,
5568
+ ) => ChainSubmittableExtrinsic<
5569
+ Rv,
5570
+ {
5571
+ pallet: 'MessageQueue';
5572
+ palletCall: {
5573
+ name: 'ExecuteOverweight';
5574
+ params: {
5575
+ messageOrigin: CumulusPrimitivesCoreAggregateMessageOrigin;
5576
+ page: number;
5577
+ index: number;
5578
+ weightLimit: SpWeightsWeightV2Weight;
5579
+ };
5580
+ };
5581
+ }
5582
+ >
5583
+ >;
5584
+
5585
+ /**
5586
+ * Generic pallet tx call
5587
+ **/
5588
+ [callName: string]: GenericTxCall<Rv, TxCall<Rv>>;
5589
+ };
3893
5590
  /**
3894
5591
  * Pallet `EVM`'s transaction calls
3895
5592
  **/
3896
5593
  evm: {
3897
5594
  /**
3898
- * See [`Pallet::withdraw`].
5595
+ * Withdraw balance from EVM into currency/balances pallet.
3899
5596
  *
3900
5597
  * @param {H160} address
3901
5598
  * @param {bigint} value
@@ -3918,7 +5615,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3918
5615
  >;
3919
5616
 
3920
5617
  /**
3921
- * See [`Pallet::call`].
5618
+ * Issue an EVM call operation. This is similar to a message call transaction in Ethereum.
3922
5619
  *
3923
5620
  * @param {H160} source
3924
5621
  * @param {H160} target
@@ -3965,7 +5662,8 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
3965
5662
  >;
3966
5663
 
3967
5664
  /**
3968
- * See [`Pallet::create`].
5665
+ * Issue an EVM create operation. This is similar to a contract creation transaction in
5666
+ * Ethereum.
3969
5667
  *
3970
5668
  * @param {H160} source
3971
5669
  * @param {BytesLike} init
@@ -4009,7 +5707,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
4009
5707
  >;
4010
5708
 
4011
5709
  /**
4012
- * See [`Pallet::create2`].
5710
+ * Issue an EVM create2 operation.
4013
5711
  *
4014
5712
  * @param {H160} source
4015
5713
  * @param {BytesLike} init
@@ -4065,7 +5763,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
4065
5763
  **/
4066
5764
  ethereum: {
4067
5765
  /**
4068
- * See [`Pallet::transact`].
5766
+ * Transact an Ethereum transaction.
4069
5767
  *
4070
5768
  * @param {EthereumTransactionTransactionV2} transaction
4071
5769
  **/
@@ -4093,7 +5791,8 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
4093
5791
  **/
4094
5792
  dynamicEvmBaseFee: {
4095
5793
  /**
4096
- * See [`Pallet::set_base_fee_per_gas`].
5794
+ * `root-only` extrinsic to set the `base_fee_per_gas` value manually.
5795
+ * The specified value has to respect min & max limits configured in the runtime.
4097
5796
  *
4098
5797
  * @param {U256} fee
4099
5798
  **/
@@ -4121,7 +5820,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
4121
5820
  **/
4122
5821
  contracts: {
4123
5822
  /**
4124
- * See [`Pallet::call_old_weight`].
5823
+ * Deprecated version if [`Self::call`] for use in an in-storage `Call`.
4125
5824
  *
4126
5825
  * @param {MultiAddressLike} dest
4127
5826
  * @param {bigint} value
@@ -4156,7 +5855,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
4156
5855
  >;
4157
5856
 
4158
5857
  /**
4159
- * See [`Pallet::instantiate_with_code_old_weight`].
5858
+ * Deprecated version if [`Self::instantiate_with_code`] for use in an in-storage `Call`.
4160
5859
  *
4161
5860
  * @param {bigint} value
4162
5861
  * @param {bigint} gasLimit
@@ -4194,7 +5893,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
4194
5893
  >;
4195
5894
 
4196
5895
  /**
4197
- * See [`Pallet::instantiate_old_weight`].
5896
+ * Deprecated version if [`Self::instantiate`] for use in an in-storage `Call`.
4198
5897
  *
4199
5898
  * @param {bigint} value
4200
5899
  * @param {bigint} gasLimit
@@ -4232,7 +5931,30 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
4232
5931
  >;
4233
5932
 
4234
5933
  /**
4235
- * See [`Pallet::upload_code`].
5934
+ * Upload new `code` without instantiating a contract from it.
5935
+ *
5936
+ * If the code does not already exist a deposit is reserved from the caller
5937
+ * and unreserved only when [`Self::remove_code`] is called. The size of the reserve
5938
+ * depends on the size of the supplied `code`.
5939
+ *
5940
+ * If the code already exists in storage it will still return `Ok` and upgrades
5941
+ * the in storage version to the current
5942
+ * [`InstructionWeights::version`](InstructionWeights).
5943
+ *
5944
+ * - `determinism`: If this is set to any other value but [`Determinism::Enforced`] then
5945
+ * the only way to use this code is to delegate call into it from an offchain execution.
5946
+ * Set to [`Determinism::Enforced`] if in doubt.
5947
+ *
5948
+ * # Note
5949
+ *
5950
+ * Anyone can instantiate a contract from any uploaded code and thus prevent its removal.
5951
+ * To avoid this situation a constructor could employ access control so that it can
5952
+ * only be instantiated by permissioned entities. The same is true when uploading
5953
+ * through [`Self::instantiate_with_code`].
5954
+ *
5955
+ * Use [`Determinism::Relaxed`] exclusively for non-deterministic code. If the uploaded
5956
+ * code is deterministic, specifying [`Determinism::Relaxed`] will be disregarded and
5957
+ * result in higher gas costs.
4236
5958
  *
4237
5959
  * @param {BytesLike} code
4238
5960
  * @param {bigint | undefined} storageDepositLimit
@@ -4261,7 +5983,10 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
4261
5983
  >;
4262
5984
 
4263
5985
  /**
4264
- * See [`Pallet::remove_code`].
5986
+ * Remove the code stored under `code_hash` and refund the deposit to its owner.
5987
+ *
5988
+ * A code can only be removed by its original uploader (its owner) and only if it is
5989
+ * not used by any contract.
4265
5990
  *
4266
5991
  * @param {H256} codeHash
4267
5992
  **/
@@ -4280,7 +6005,16 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
4280
6005
  >;
4281
6006
 
4282
6007
  /**
4283
- * See [`Pallet::set_code`].
6008
+ * Privileged function that changes the code of an existing contract.
6009
+ *
6010
+ * This takes care of updating refcounts and all other necessary operations. Returns
6011
+ * an error if either the `code_hash` or `dest` do not exist.
6012
+ *
6013
+ * # Note
6014
+ *
6015
+ * This does **not** change the address of the contract in question. This means
6016
+ * that the contract address is no longer derived from its code hash after calling
6017
+ * this dispatchable.
4284
6018
  *
4285
6019
  * @param {MultiAddressLike} dest
4286
6020
  * @param {H256} codeHash
@@ -4303,7 +6037,22 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
4303
6037
  >;
4304
6038
 
4305
6039
  /**
4306
- * See [`Pallet::call`].
6040
+ * Makes a call to an account, optionally transferring some balance.
6041
+ *
6042
+ * # Parameters
6043
+ *
6044
+ * * `dest`: Address of the contract to call.
6045
+ * * `value`: The balance to transfer from the `origin` to `dest`.
6046
+ * * `gas_limit`: The gas limit enforced when executing the constructor.
6047
+ * * `storage_deposit_limit`: The maximum amount of balance that can be charged from the
6048
+ * caller to pay for the storage consumed.
6049
+ * * `data`: The input data to pass to the contract.
6050
+ *
6051
+ * * If the account is a smart-contract account, the associated code will be
6052
+ * executed and any value will be transferred.
6053
+ * * If the account is a regular account, any value will be transferred.
6054
+ * * If no account exists and the call value is not less than `existential_deposit`,
6055
+ * a regular account will be created and any value will be transferred.
4307
6056
  *
4308
6057
  * @param {MultiAddressLike} dest
4309
6058
  * @param {bigint} value
@@ -4338,7 +6087,31 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
4338
6087
  >;
4339
6088
 
4340
6089
  /**
4341
- * See [`Pallet::instantiate_with_code`].
6090
+ * Instantiates a new contract from the supplied `code` optionally transferring
6091
+ * some balance.
6092
+ *
6093
+ * This dispatchable has the same effect as calling [`Self::upload_code`] +
6094
+ * [`Self::instantiate`]. Bundling them together provides efficiency gains. Please
6095
+ * also check the documentation of [`Self::upload_code`].
6096
+ *
6097
+ * # Parameters
6098
+ *
6099
+ * * `value`: The balance to transfer from the `origin` to the newly created contract.
6100
+ * * `gas_limit`: The gas limit enforced when executing the constructor.
6101
+ * * `storage_deposit_limit`: The maximum amount of balance that can be charged/reserved
6102
+ * from the caller to pay for the storage consumed.
6103
+ * * `code`: The contract code to deploy in raw bytes.
6104
+ * * `data`: The input data to pass to the contract constructor.
6105
+ * * `salt`: Used for the address derivation. See [`Pallet::contract_address`].
6106
+ *
6107
+ * Instantiation is executed as follows:
6108
+ *
6109
+ * - The supplied `code` is deployed, and a `code_hash` is created for that code.
6110
+ * - If the `code_hash` already exists on the chain the underlying `code` will be shared.
6111
+ * - The destination address is computed based on the sender, code_hash and the salt.
6112
+ * - The smart-contract account is created at the computed address.
6113
+ * - The `value` is transferred to the new account.
6114
+ * - The `deploy` function is executed in the context of the newly-created account.
4342
6115
  *
4343
6116
  * @param {bigint} value
4344
6117
  * @param {SpWeightsWeightV2Weight} gasLimit
@@ -4376,7 +6149,11 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
4376
6149
  >;
4377
6150
 
4378
6151
  /**
4379
- * See [`Pallet::instantiate`].
6152
+ * Instantiates a contract from a previously deployed wasm binary.
6153
+ *
6154
+ * This function is identical to [`Self::instantiate_with_code`] but without the
6155
+ * code deployment step. Instead, the `code_hash` of an on-chain deployed wasm binary
6156
+ * must be supplied.
4380
6157
  *
4381
6158
  * @param {bigint} value
4382
6159
  * @param {SpWeightsWeightV2Weight} gasLimit
@@ -4414,7 +6191,10 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
4414
6191
  >;
4415
6192
 
4416
6193
  /**
4417
- * See [`Pallet::migrate`].
6194
+ * When a migration is in progress, this dispatchable can be used to run migration steps.
6195
+ * Calls that contribute to advancing the migration have their fees waived, as it's helpful
6196
+ * for the chain. Note that while the migration is in progress, the pallet will also
6197
+ * leverage the `on_idle` hooks to run migration steps.
4418
6198
  *
4419
6199
  * @param {SpWeightsWeightV2Weight} weightLimit
4420
6200
  **/
@@ -4442,7 +6222,7 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
4442
6222
  **/
4443
6223
  sudo: {
4444
6224
  /**
4445
- * See [`Pallet::sudo`].
6225
+ * Authenticates the sudo key and dispatches a function call with `Root` origin.
4446
6226
  *
4447
6227
  * @param {AstarRuntimeRuntimeCallLike} call
4448
6228
  **/
@@ -4461,7 +6241,11 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
4461
6241
  >;
4462
6242
 
4463
6243
  /**
4464
- * See [`Pallet::sudo_unchecked_weight`].
6244
+ * Authenticates the sudo key and dispatches a function call with `Root` origin.
6245
+ * This function does not check the weight of the call, and instead allows the
6246
+ * Sudo user to specify the weight of the call.
6247
+ *
6248
+ * The dispatch origin for this call must be _Signed_.
4465
6249
  *
4466
6250
  * @param {AstarRuntimeRuntimeCallLike} call
4467
6251
  * @param {SpWeightsWeightV2Weight} weight
@@ -4484,7 +6268,8 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
4484
6268
  >;
4485
6269
 
4486
6270
  /**
4487
- * See [`Pallet::set_key`].
6271
+ * Authenticates the current sudo key and sets the given AccountId (`new`) as the new sudo
6272
+ * key.
4488
6273
  *
4489
6274
  * @param {MultiAddressLike} new_
4490
6275
  **/
@@ -4503,7 +6288,10 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
4503
6288
  >;
4504
6289
 
4505
6290
  /**
4506
- * See [`Pallet::sudo_as`].
6291
+ * Authenticates the sudo key and dispatches a function call with `Signed` origin from
6292
+ * a given account.
6293
+ *
6294
+ * The dispatch origin for this call must be _Signed_.
4507
6295
  *
4508
6296
  * @param {MultiAddressLike} who
4509
6297
  * @param {AstarRuntimeRuntimeCallLike} call
@@ -4525,6 +6313,25 @@ export interface ChainTx<Rv extends RpcVersion> extends GenericChainTx<Rv, TxCal
4525
6313
  >
4526
6314
  >;
4527
6315
 
6316
+ /**
6317
+ * Permanently removes the sudo key.
6318
+ *
6319
+ * **This cannot be un-done.**
6320
+ *
6321
+ **/
6322
+ removeKey: GenericTxCall<
6323
+ Rv,
6324
+ () => ChainSubmittableExtrinsic<
6325
+ Rv,
6326
+ {
6327
+ pallet: 'Sudo';
6328
+ palletCall: {
6329
+ name: 'RemoveKey';
6330
+ };
6331
+ }
6332
+ >
6333
+ >;
6334
+
4528
6335
  /**
4529
6336
  * Generic pallet tx call
4530
6337
  **/