@galacticcouncil/descriptors 1.6.0 → 1.7.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/build/hub.d.ts ADDED
@@ -0,0 +1,1871 @@
1
+ import { StorageDescriptor, PlainDescriptor, TxDescriptor, RuntimeDescriptor, Enum, ApisFromDef, QueryFromPalletsDef, TxFromPalletsDef, EventsFromPalletsDef, ErrorsFromPalletsDef, ConstFromPalletsDef, ViewFnsFromPalletsDef, SS58String, FixedSizeBinary, Binary, FixedSizeArray } from "polkadot-api";
2
+ import { I5sesotjlssv2d, Iffmde3ekjedi9, I4mddgoa69c0a2, I9f4lcctnk5dj, I95g6i7ilua7lq, Ieniouoqkq4icf, Phase, Ibgl04rn6nbfm6, I4q39t5hn830vp, I3qklfjubrljqh, Iag3f1hum3p4c8, I7svnfko10tq2e, I4s6jkha20aoh0, I2brm5b9jij1st, I78s05f59eoi8b, I4c0s5cioidn76, I7rv8d2nr55kkq, I6lh06el3bdfqq, In7a38730s6qs, If15el53dd76v9, I9s0ave7t0vnrk, I4fo08joqmcqnm, Ia5cotcvi888ln, I21jsa919m88fd, Iegif7m3upfe1k, I9kt8c221c83ln, Ic76kfh5ebqkpl, Icscpmubum33bq, I21d2olof7eb60, Ibgm4rnf22lal1, Ie68np0vpihith, I9bnv6lu0crf1q, Iauhjqifrdklq7, Ie1uso9m8rt5cf, Iftvbctbo05fu4, XcmVersionedXcm, Ic0c3req3mlc1l, XcmVersionedAssetId, I7ocn4njqde3v5, XcmVersionedLocation, Iek7ha36da9mf5, I42ficri7uep20, I9e1s7ld6a9v7g, I850eccr8tu63b, Ibfdogtj5b7n4k, I35p85j063s0il, I5vv5n03oo8gas } from "./common-types";
3
+ type AnonymousEnum<T extends {}> = T & {
4
+ __anonymous: true;
5
+ };
6
+ type MyTuple<T> = [T, ...T[]];
7
+ type SeparateUndefined<T> = undefined extends T ? undefined | Exclude<T, undefined> : T;
8
+ type Anonymize<T> = SeparateUndefined<T extends FixedSizeBinary<infer L> ? number extends L ? Binary : FixedSizeBinary<L> : T extends string | number | bigint | boolean | void | undefined | null | symbol | Uint8Array | Enum<any> ? T : T extends AnonymousEnum<infer V> ? Enum<V> : T extends MyTuple<any> ? {
9
+ [K in keyof T]: T[K];
10
+ } : T extends [] ? [] : T extends FixedSizeArray<infer L, infer T> ? number extends L ? Array<T> : FixedSizeArray<L, T> : {
11
+ [K in keyof T & string]: T[K];
12
+ }>;
13
+ type IStorage = {
14
+ System: {
15
+ /**
16
+ * The full account information for a particular account ID.
17
+ */
18
+ Account: StorageDescriptor<[Key: SS58String], Anonymize<I5sesotjlssv2d>, false, never>;
19
+ /**
20
+ * Total extrinsics count for the current block.
21
+ */
22
+ ExtrinsicCount: StorageDescriptor<[], number, true, never>;
23
+ /**
24
+ * Whether all inherents have been applied.
25
+ */
26
+ InherentsApplied: StorageDescriptor<[], boolean, false, never>;
27
+ /**
28
+ * The current weight for the block.
29
+ */
30
+ BlockWeight: StorageDescriptor<[], Anonymize<Iffmde3ekjedi9>, false, never>;
31
+ /**
32
+ * Total length (in bytes) for all extrinsics put together, for the current block.
33
+ */
34
+ AllExtrinsicsLen: StorageDescriptor<[], number, true, never>;
35
+ /**
36
+ * Map of block numbers to block hashes.
37
+ */
38
+ BlockHash: StorageDescriptor<[Key: number], FixedSizeBinary<32>, false, never>;
39
+ /**
40
+ * Extrinsics data for the current block (maps an extrinsic's index to its data).
41
+ */
42
+ ExtrinsicData: StorageDescriptor<[Key: number], Binary, false, never>;
43
+ /**
44
+ * The current block number being processed. Set by `execute_block`.
45
+ */
46
+ Number: StorageDescriptor<[], number, false, never>;
47
+ /**
48
+ * Hash of the previous block.
49
+ */
50
+ ParentHash: StorageDescriptor<[], FixedSizeBinary<32>, false, never>;
51
+ /**
52
+ * Digest of the current block, also part of the block header.
53
+ */
54
+ Digest: StorageDescriptor<[], Anonymize<I4mddgoa69c0a2>, false, never>;
55
+ /**
56
+ * Events deposited for the current block.
57
+ *
58
+ * NOTE: The item is unbound and should therefore never be read on chain.
59
+ * It could otherwise inflate the PoV size of a block.
60
+ *
61
+ * Events have a large in-memory size. Box the events to not go out-of-memory
62
+ * just in case someone still reads them from within the runtime.
63
+ */
64
+ Events: StorageDescriptor<[], Anonymize<I9f4lcctnk5dj>, false, never>;
65
+ /**
66
+ * The number of events in the `Events<T>` list.
67
+ */
68
+ EventCount: StorageDescriptor<[], number, false, never>;
69
+ /**
70
+ * Mapping between a topic (represented by T::Hash) and a vector of indexes
71
+ * of events in the `<Events<T>>` list.
72
+ *
73
+ * All topic vectors have deterministic storage locations depending on the topic. This
74
+ * allows light-clients to leverage the changes trie storage tracking mechanism and
75
+ * in case of changes fetch the list of events of interest.
76
+ *
77
+ * The value has the type `(BlockNumberFor<T>, EventIndex)` because if we used only just
78
+ * the `EventIndex` then in case if the topic has the same contents on the next block
79
+ * no notification will be triggered thus the event might be lost.
80
+ */
81
+ EventTopics: StorageDescriptor<[Key: FixedSizeBinary<32>], Anonymize<I95g6i7ilua7lq>, false, never>;
82
+ /**
83
+ * Stores the `spec_version` and `spec_name` of when the last runtime upgrade happened.
84
+ */
85
+ LastRuntimeUpgrade: StorageDescriptor<[], Anonymize<Ieniouoqkq4icf>, true, never>;
86
+ /**
87
+ * True if we have upgraded so that `type RefCount` is `u32`. False (default) if not.
88
+ */
89
+ UpgradedToU32RefCount: StorageDescriptor<[], boolean, false, never>;
90
+ /**
91
+ * True if we have upgraded so that AccountInfo contains three types of `RefCount`. False
92
+ * (default) if not.
93
+ */
94
+ UpgradedToTripleRefCount: StorageDescriptor<[], boolean, false, never>;
95
+ /**
96
+ * The execution phase of the block.
97
+ */
98
+ ExecutionPhase: StorageDescriptor<[], Phase, true, never>;
99
+ /**
100
+ * `Some` if a code upgrade has been authorized.
101
+ */
102
+ AuthorizedUpgrade: StorageDescriptor<[], Anonymize<Ibgl04rn6nbfm6>, true, never>;
103
+ /**
104
+ * The weight reclaimed for the extrinsic.
105
+ *
106
+ * This information is available until the end of the extrinsic execution.
107
+ * More precisely this information is removed in `note_applied_extrinsic`.
108
+ *
109
+ * Logic doing some post dispatch weight reduction must update this storage to avoid duplicate
110
+ * reduction.
111
+ */
112
+ ExtrinsicWeightReclaimed: StorageDescriptor<[], Anonymize<I4q39t5hn830vp>, false, never>;
113
+ };
114
+ Assets: {
115
+ /**
116
+ * Details of an asset.
117
+ */
118
+ Asset: StorageDescriptor<[Key: number], Anonymize<I3qklfjubrljqh>, true, never>;
119
+ /**
120
+ * The holdings of a specific account for a specific asset.
121
+ */
122
+ Account: StorageDescriptor<Anonymize<I7svnfko10tq2e>, Anonymize<Iag3f1hum3p4c8>, true, never>;
123
+ /**
124
+ * Approved balance transfers. First balance is the amount approved for transfer. Second
125
+ * is the amount of `T::Currency` reserved for storing this.
126
+ * First key is the asset ID, second key is the owner and third key is the delegate.
127
+ */
128
+ Approvals: StorageDescriptor<Anonymize<I2brm5b9jij1st>, Anonymize<I4s6jkha20aoh0>, true, never>;
129
+ /**
130
+ * Metadata of an asset.
131
+ */
132
+ Metadata: StorageDescriptor<[Key: number], Anonymize<I78s05f59eoi8b>, false, never>;
133
+ /**
134
+ * The asset ID enforced for the next asset creation, if any present. Otherwise, this storage
135
+ * item has no effect.
136
+ *
137
+ * This can be useful for setting up constraints for IDs of the new assets. For example, by
138
+ * providing an initial [`NextAssetId`] and using the [`crate::AutoIncAssetId`] callback, an
139
+ * auto-increment model can be applied to all new asset IDs.
140
+ *
141
+ * The initial next asset ID can be set using the [`GenesisConfig`] or the
142
+ * [SetNextAssetId](`migration::next_asset_id::SetNextAssetId`) migration.
143
+ */
144
+ NextAssetId: StorageDescriptor<[], number, true, never>;
145
+ };
146
+ ForeignAssets: {
147
+ /**
148
+ * Details of an asset.
149
+ */
150
+ Asset: StorageDescriptor<[Key: Anonymize<I4c0s5cioidn76>], Anonymize<I3qklfjubrljqh>, true, never>;
151
+ /**
152
+ * The holdings of a specific account for a specific asset.
153
+ */
154
+ Account: StorageDescriptor<Anonymize<I7rv8d2nr55kkq>, Anonymize<Iag3f1hum3p4c8>, true, never>;
155
+ /**
156
+ * Approved balance transfers. First balance is the amount approved for transfer. Second
157
+ * is the amount of `T::Currency` reserved for storing this.
158
+ * First key is the asset ID, second key is the owner and third key is the delegate.
159
+ */
160
+ Approvals: StorageDescriptor<Anonymize<I6lh06el3bdfqq>, Anonymize<I4s6jkha20aoh0>, true, never>;
161
+ /**
162
+ * Metadata of an asset.
163
+ */
164
+ Metadata: StorageDescriptor<[Key: Anonymize<I4c0s5cioidn76>], Anonymize<I78s05f59eoi8b>, false, never>;
165
+ /**
166
+ * The asset ID enforced for the next asset creation, if any present. Otherwise, this storage
167
+ * item has no effect.
168
+ *
169
+ * This can be useful for setting up constraints for IDs of the new assets. For example, by
170
+ * providing an initial [`NextAssetId`] and using the [`crate::AutoIncAssetId`] callback, an
171
+ * auto-increment model can be applied to all new asset IDs.
172
+ *
173
+ * The initial next asset ID can be set using the [`GenesisConfig`] or the
174
+ * [SetNextAssetId](`migration::next_asset_id::SetNextAssetId`) migration.
175
+ */
176
+ NextAssetId: StorageDescriptor<[], Anonymize<I4c0s5cioidn76>, true, never>;
177
+ };
178
+ };
179
+ type ICalls = {
180
+ PolkadotXcm: {
181
+ /**
182
+
183
+ */
184
+ send: TxDescriptor<Anonymize<Ia5cotcvi888ln>>;
185
+ /**
186
+ * Teleport some assets from the local chain to some destination chain.
187
+ *
188
+ * **This function is deprecated: Use `limited_teleport_assets` instead.**
189
+ *
190
+ * Fee payment on the destination side is made from the asset in the `assets` vector of
191
+ * index `fee_asset_item`. The weight limit for fees is not provided and thus is unlimited,
192
+ * with all fees taken as needed from the asset.
193
+ *
194
+ * - `origin`: Must be capable of withdrawing the `assets` and executing XCM.
195
+ * - `dest`: Destination context for the assets. Will typically be `[Parent,
196
+ * Parachain(..)]` to send from parachain to parachain, or `[Parachain(..)]` to send from
197
+ * relay to parachain.
198
+ * - `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will
199
+ * generally be an `AccountId32` value.
200
+ * - `assets`: The assets to be withdrawn. This should include the assets used to pay the
201
+ * fee on the `dest` chain.
202
+ * - `fee_asset_item`: The index into `assets` of the item which should be used to pay
203
+ * fees.
204
+ */
205
+ teleport_assets: TxDescriptor<Anonymize<I21jsa919m88fd>>;
206
+ /**
207
+ * Transfer some assets from the local chain to the destination chain through their local,
208
+ * destination or remote reserve.
209
+ *
210
+ * `assets` must have same reserve location and may not be teleportable to `dest`.
211
+ * - `assets` have local reserve: transfer assets to sovereign account of destination
212
+ * chain and forward a notification XCM to `dest` to mint and deposit reserve-based
213
+ * assets to `beneficiary`.
214
+ * - `assets` have destination reserve: burn local assets and forward a notification to
215
+ * `dest` chain to withdraw the reserve assets from this chain's sovereign account and
216
+ * deposit them to `beneficiary`.
217
+ * - `assets` have remote reserve: burn local assets, forward XCM to reserve chain to move
218
+ * reserves from this chain's SA to `dest` chain's SA, and forward another XCM to `dest`
219
+ * to mint and deposit reserve-based assets to `beneficiary`.
220
+ *
221
+ * **This function is deprecated: Use `limited_reserve_transfer_assets` instead.**
222
+ *
223
+ * Fee payment on the destination side is made from the asset in the `assets` vector of
224
+ * index `fee_asset_item`. The weight limit for fees is not provided and thus is unlimited,
225
+ * with all fees taken as needed from the asset.
226
+ *
227
+ * - `origin`: Must be capable of withdrawing the `assets` and executing XCM.
228
+ * - `dest`: Destination context for the assets. Will typically be `[Parent,
229
+ * Parachain(..)]` to send from parachain to parachain, or `[Parachain(..)]` to send from
230
+ * relay to parachain.
231
+ * - `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will
232
+ * generally be an `AccountId32` value.
233
+ * - `assets`: The assets to be withdrawn. This should include the assets used to pay the
234
+ * fee on the `dest` (and possibly reserve) chains.
235
+ * - `fee_asset_item`: The index into `assets` of the item which should be used to pay
236
+ * fees.
237
+ */
238
+ reserve_transfer_assets: TxDescriptor<Anonymize<I21jsa919m88fd>>;
239
+ /**
240
+ * Execute an XCM message from a local, signed, origin.
241
+ *
242
+ * An event is deposited indicating whether `msg` could be executed completely or only
243
+ * partially.
244
+ *
245
+ * No more than `max_weight` will be used in its attempted execution. If this is less than
246
+ * the maximum amount of weight that the message could take to be executed, then no
247
+ * execution attempt will be made.
248
+ */
249
+ execute: TxDescriptor<Anonymize<Iegif7m3upfe1k>>;
250
+ /**
251
+ * Extoll that a particular destination can be communicated with through a particular
252
+ * version of XCM.
253
+ *
254
+ * - `origin`: Must be an origin specified by AdminOrigin.
255
+ * - `location`: The destination that is being described.
256
+ * - `xcm_version`: The latest version of XCM that `location` supports.
257
+ */
258
+ force_xcm_version: TxDescriptor<Anonymize<I9kt8c221c83ln>>;
259
+ /**
260
+ * Set a safe XCM version (the version that XCM should be encoded with if the most recent
261
+ * version a destination can accept is unknown).
262
+ *
263
+ * - `origin`: Must be an origin specified by AdminOrigin.
264
+ * - `maybe_xcm_version`: The default XCM encoding version, or `None` to disable.
265
+ */
266
+ force_default_xcm_version: TxDescriptor<Anonymize<Ic76kfh5ebqkpl>>;
267
+ /**
268
+ * Ask a location to notify us regarding their XCM version and any changes to it.
269
+ *
270
+ * - `origin`: Must be an origin specified by AdminOrigin.
271
+ * - `location`: The location to which we should subscribe for XCM version notifications.
272
+ */
273
+ force_subscribe_version_notify: TxDescriptor<Anonymize<Icscpmubum33bq>>;
274
+ /**
275
+ * Require that a particular destination should no longer notify us regarding any XCM
276
+ * version changes.
277
+ *
278
+ * - `origin`: Must be an origin specified by AdminOrigin.
279
+ * - `location`: The location to which we are currently subscribed for XCM version
280
+ * notifications which we no longer desire.
281
+ */
282
+ force_unsubscribe_version_notify: TxDescriptor<Anonymize<Icscpmubum33bq>>;
283
+ /**
284
+ * Transfer some assets from the local chain to the destination chain through their local,
285
+ * destination or remote reserve.
286
+ *
287
+ * `assets` must have same reserve location and may not be teleportable to `dest`.
288
+ * - `assets` have local reserve: transfer assets to sovereign account of destination
289
+ * chain and forward a notification XCM to `dest` to mint and deposit reserve-based
290
+ * assets to `beneficiary`.
291
+ * - `assets` have destination reserve: burn local assets and forward a notification to
292
+ * `dest` chain to withdraw the reserve assets from this chain's sovereign account and
293
+ * deposit them to `beneficiary`.
294
+ * - `assets` have remote reserve: burn local assets, forward XCM to reserve chain to move
295
+ * reserves from this chain's SA to `dest` chain's SA, and forward another XCM to `dest`
296
+ * to mint and deposit reserve-based assets to `beneficiary`.
297
+ *
298
+ * Fee payment on the destination side is made from the asset in the `assets` vector of
299
+ * index `fee_asset_item`, up to enough to pay for `weight_limit` of weight. If more weight
300
+ * is needed than `weight_limit`, then the operation will fail and the sent assets may be
301
+ * at risk.
302
+ *
303
+ * - `origin`: Must be capable of withdrawing the `assets` and executing XCM.
304
+ * - `dest`: Destination context for the assets. Will typically be `[Parent,
305
+ * Parachain(..)]` to send from parachain to parachain, or `[Parachain(..)]` to send from
306
+ * relay to parachain.
307
+ * - `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will
308
+ * generally be an `AccountId32` value.
309
+ * - `assets`: The assets to be withdrawn. This should include the assets used to pay the
310
+ * fee on the `dest` (and possibly reserve) chains.
311
+ * - `fee_asset_item`: The index into `assets` of the item which should be used to pay
312
+ * fees.
313
+ * - `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase.
314
+ */
315
+ limited_reserve_transfer_assets: TxDescriptor<Anonymize<I21d2olof7eb60>>;
316
+ /**
317
+ * Teleport some assets from the local chain to some destination chain.
318
+ *
319
+ * Fee payment on the destination side is made from the asset in the `assets` vector of
320
+ * index `fee_asset_item`, up to enough to pay for `weight_limit` of weight. If more weight
321
+ * is needed than `weight_limit`, then the operation will fail and the sent assets may be
322
+ * at risk.
323
+ *
324
+ * - `origin`: Must be capable of withdrawing the `assets` and executing XCM.
325
+ * - `dest`: Destination context for the assets. Will typically be `[Parent,
326
+ * Parachain(..)]` to send from parachain to parachain, or `[Parachain(..)]` to send from
327
+ * relay to parachain.
328
+ * - `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will
329
+ * generally be an `AccountId32` value.
330
+ * - `assets`: The assets to be withdrawn. This should include the assets used to pay the
331
+ * fee on the `dest` chain.
332
+ * - `fee_asset_item`: The index into `assets` of the item which should be used to pay
333
+ * fees.
334
+ * - `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase.
335
+ */
336
+ limited_teleport_assets: TxDescriptor<Anonymize<I21d2olof7eb60>>;
337
+ /**
338
+ * Set or unset the global suspension state of the XCM executor.
339
+ *
340
+ * - `origin`: Must be an origin specified by AdminOrigin.
341
+ * - `suspended`: `true` to suspend, `false` to resume.
342
+ */
343
+ force_suspension: TxDescriptor<Anonymize<Ibgm4rnf22lal1>>;
344
+ /**
345
+ * Transfer some assets from the local chain to the destination chain through their local,
346
+ * destination or remote reserve, or through teleports.
347
+ *
348
+ * Fee payment on the destination side is made from the asset in the `assets` vector of
349
+ * index `fee_asset_item` (hence referred to as `fees`), up to enough to pay for
350
+ * `weight_limit` of weight. If more weight is needed than `weight_limit`, then the
351
+ * operation will fail and the sent assets may be at risk.
352
+ *
353
+ * `assets` (excluding `fees`) must have same reserve location or otherwise be teleportable
354
+ * to `dest`, no limitations imposed on `fees`.
355
+ * - for local reserve: transfer assets to sovereign account of destination chain and
356
+ * forward a notification XCM to `dest` to mint and deposit reserve-based assets to
357
+ * `beneficiary`.
358
+ * - for destination reserve: burn local assets and forward a notification to `dest` chain
359
+ * to withdraw the reserve assets from this chain's sovereign account and deposit them
360
+ * to `beneficiary`.
361
+ * - for remote reserve: burn local assets, forward XCM to reserve chain to move reserves
362
+ * from this chain's SA to `dest` chain's SA, and forward another XCM to `dest` to mint
363
+ * and deposit reserve-based assets to `beneficiary`.
364
+ * - for teleports: burn local assets and forward XCM to `dest` chain to mint/teleport
365
+ * assets and deposit them to `beneficiary`.
366
+ *
367
+ * - `origin`: Must be capable of withdrawing the `assets` and executing XCM.
368
+ * - `dest`: Destination context for the assets. Will typically be `X2(Parent,
369
+ * Parachain(..))` to send from parachain to parachain, or `X1(Parachain(..))` to send
370
+ * from relay to parachain.
371
+ * - `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will
372
+ * generally be an `AccountId32` value.
373
+ * - `assets`: The assets to be withdrawn. This should include the assets used to pay the
374
+ * fee on the `dest` (and possibly reserve) chains.
375
+ * - `fee_asset_item`: The index into `assets` of the item which should be used to pay
376
+ * fees.
377
+ * - `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase.
378
+ */
379
+ transfer_assets: TxDescriptor<Anonymize<I21d2olof7eb60>>;
380
+ /**
381
+ * Claims assets trapped on this pallet because of leftover assets during XCM execution.
382
+ *
383
+ * - `origin`: Anyone can call this extrinsic.
384
+ * - `assets`: The exact assets that were trapped. Use the version to specify what version
385
+ * was the latest when they were trapped.
386
+ * - `beneficiary`: The location/account where the claimed assets will be deposited.
387
+ */
388
+ claim_assets: TxDescriptor<Anonymize<Ie68np0vpihith>>;
389
+ /**
390
+ * Transfer assets from the local chain to the destination chain using explicit transfer
391
+ * types for assets and fees.
392
+ *
393
+ * `assets` must have same reserve location or may be teleportable to `dest`. Caller must
394
+ * provide the `assets_transfer_type` to be used for `assets`:
395
+ * - `TransferType::LocalReserve`: transfer assets to sovereign account of destination
396
+ * chain and forward a notification XCM to `dest` to mint and deposit reserve-based
397
+ * assets to `beneficiary`.
398
+ * - `TransferType::DestinationReserve`: burn local assets and forward a notification to
399
+ * `dest` chain to withdraw the reserve assets from this chain's sovereign account and
400
+ * deposit them to `beneficiary`.
401
+ * - `TransferType::RemoteReserve(reserve)`: burn local assets, forward XCM to `reserve`
402
+ * chain to move reserves from this chain's SA to `dest` chain's SA, and forward another
403
+ * XCM to `dest` to mint and deposit reserve-based assets to `beneficiary`. Typically
404
+ * the remote `reserve` is Asset Hub.
405
+ * - `TransferType::Teleport`: burn local assets and forward XCM to `dest` chain to
406
+ * mint/teleport assets and deposit them to `beneficiary`.
407
+ *
408
+ * On the destination chain, as well as any intermediary hops, `BuyExecution` is used to
409
+ * buy execution using transferred `assets` identified by `remote_fees_id`.
410
+ * Make sure enough of the specified `remote_fees_id` asset is included in the given list
411
+ * of `assets`. `remote_fees_id` should be enough to pay for `weight_limit`. If more weight
412
+ * is needed than `weight_limit`, then the operation will fail and the sent assets may be
413
+ * at risk.
414
+ *
415
+ * `remote_fees_id` may use different transfer type than rest of `assets` and can be
416
+ * specified through `fees_transfer_type`.
417
+ *
418
+ * The caller needs to specify what should happen to the transferred assets once they reach
419
+ * the `dest` chain. This is done through the `custom_xcm_on_dest` parameter, which
420
+ * contains the instructions to execute on `dest` as a final step.
421
+ * This is usually as simple as:
422
+ * `Xcm(vec![DepositAsset { assets: Wild(AllCounted(assets.len())), beneficiary }])`,
423
+ * but could be something more exotic like sending the `assets` even further.
424
+ *
425
+ * - `origin`: Must be capable of withdrawing the `assets` and executing XCM.
426
+ * - `dest`: Destination context for the assets. Will typically be `[Parent,
427
+ * Parachain(..)]` to send from parachain to parachain, or `[Parachain(..)]` to send from
428
+ * relay to parachain, or `(parents: 2, (GlobalConsensus(..), ..))` to send from
429
+ * parachain across a bridge to another ecosystem destination.
430
+ * - `assets`: The assets to be withdrawn. This should include the assets used to pay the
431
+ * fee on the `dest` (and possibly reserve) chains.
432
+ * - `assets_transfer_type`: The XCM `TransferType` used to transfer the `assets`.
433
+ * - `remote_fees_id`: One of the included `assets` to be used to pay fees.
434
+ * - `fees_transfer_type`: The XCM `TransferType` used to transfer the `fees` assets.
435
+ * - `custom_xcm_on_dest`: The XCM to be executed on `dest` chain as the last step of the
436
+ * transfer, which also determines what happens to the assets on the destination chain.
437
+ * - `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase.
438
+ */
439
+ transfer_assets_using_type_and_then: TxDescriptor<Anonymize<I9bnv6lu0crf1q>>;
440
+ /**
441
+ * Authorize another `aliaser` location to alias into the local `origin` making this call.
442
+ * The `aliaser` is only authorized until the provided `expiry` block number.
443
+ * The call can also be used for a previously authorized alias in order to update its
444
+ * `expiry` block number.
445
+ *
446
+ * Usually useful to allow your local account to be aliased into from a remote location
447
+ * also under your control (like your account on another chain).
448
+ *
449
+ * WARNING: make sure the caller `origin` (you) trusts the `aliaser` location to act in
450
+ * their/your name. Once authorized using this call, the `aliaser` can freely impersonate
451
+ * `origin` in XCM programs executed on the local chain.
452
+ */
453
+ add_authorized_alias: TxDescriptor<Anonymize<Iauhjqifrdklq7>>;
454
+ /**
455
+ * Remove a previously authorized `aliaser` from the list of locations that can alias into
456
+ * the local `origin` making this call.
457
+ */
458
+ remove_authorized_alias: TxDescriptor<Anonymize<Ie1uso9m8rt5cf>>;
459
+ /**
460
+ * Remove all previously authorized `aliaser`s that can alias into the local `origin`
461
+ * making this call.
462
+ */
463
+ remove_all_authorized_aliases: TxDescriptor<undefined>;
464
+ };
465
+ };
466
+ type IEvent = {};
467
+ type IError = {
468
+ System: {
469
+ /**
470
+ * The name of specification does not match between the current runtime
471
+ * and the new runtime.
472
+ */
473
+ InvalidSpecName: PlainDescriptor<undefined>;
474
+ /**
475
+ * The specification version is not allowed to decrease between the current runtime
476
+ * and the new runtime.
477
+ */
478
+ SpecVersionNeedsToIncrease: PlainDescriptor<undefined>;
479
+ /**
480
+ * Failed to extract the runtime version from the new runtime.
481
+ *
482
+ * Either calling `Core_version` or decoding `RuntimeVersion` failed.
483
+ */
484
+ FailedToExtractRuntimeVersion: PlainDescriptor<undefined>;
485
+ /**
486
+ * Suicide called when the account has non-default composite data.
487
+ */
488
+ NonDefaultComposite: PlainDescriptor<undefined>;
489
+ /**
490
+ * There is a non-zero reference count preventing the account from being purged.
491
+ */
492
+ NonZeroRefCount: PlainDescriptor<undefined>;
493
+ /**
494
+ * The origin filter prevent the call to be dispatched.
495
+ */
496
+ CallFiltered: PlainDescriptor<undefined>;
497
+ /**
498
+ * A multi-block migration is ongoing and prevents the current code from being replaced.
499
+ */
500
+ MultiBlockMigrationsOngoing: PlainDescriptor<undefined>;
501
+ /**
502
+ * No upgrade authorized.
503
+ */
504
+ NothingAuthorized: PlainDescriptor<undefined>;
505
+ /**
506
+ * The submitted code is not authorized.
507
+ */
508
+ Unauthorized: PlainDescriptor<undefined>;
509
+ };
510
+ ParachainSystem: {
511
+ /**
512
+ * Attempt to upgrade validation function while existing upgrade pending.
513
+ */
514
+ OverlappingUpgrades: PlainDescriptor<undefined>;
515
+ /**
516
+ * Polkadot currently prohibits this parachain from upgrading its validation function.
517
+ */
518
+ ProhibitedByPolkadot: PlainDescriptor<undefined>;
519
+ /**
520
+ * The supplied validation function has compiled into a blob larger than Polkadot is
521
+ * willing to run.
522
+ */
523
+ TooBig: PlainDescriptor<undefined>;
524
+ /**
525
+ * The inherent which supplies the validation data did not run this block.
526
+ */
527
+ ValidationDataNotAvailable: PlainDescriptor<undefined>;
528
+ /**
529
+ * The inherent which supplies the host configuration did not run this block.
530
+ */
531
+ HostConfigurationNotAvailable: PlainDescriptor<undefined>;
532
+ /**
533
+ * No validation function upgrade is currently scheduled.
534
+ */
535
+ NotScheduled: PlainDescriptor<undefined>;
536
+ };
537
+ Balances: {
538
+ /**
539
+ * Vesting balance too high to send value.
540
+ */
541
+ VestingBalance: PlainDescriptor<undefined>;
542
+ /**
543
+ * Account liquidity restrictions prevent withdrawal.
544
+ */
545
+ LiquidityRestrictions: PlainDescriptor<undefined>;
546
+ /**
547
+ * Balance too low to send value.
548
+ */
549
+ InsufficientBalance: PlainDescriptor<undefined>;
550
+ /**
551
+ * Value too low to create account due to existential deposit.
552
+ */
553
+ ExistentialDeposit: PlainDescriptor<undefined>;
554
+ /**
555
+ * Transfer/payment would kill account.
556
+ */
557
+ Expendability: PlainDescriptor<undefined>;
558
+ /**
559
+ * A vesting schedule already exists for this account.
560
+ */
561
+ ExistingVestingSchedule: PlainDescriptor<undefined>;
562
+ /**
563
+ * Beneficiary account must pre-exist.
564
+ */
565
+ DeadAccount: PlainDescriptor<undefined>;
566
+ /**
567
+ * Number of named reserves exceed `MaxReserves`.
568
+ */
569
+ TooManyReserves: PlainDescriptor<undefined>;
570
+ /**
571
+ * Number of holds exceed `VariantCountOf<T::RuntimeHoldReason>`.
572
+ */
573
+ TooManyHolds: PlainDescriptor<undefined>;
574
+ /**
575
+ * Number of freezes exceed `MaxFreezes`.
576
+ */
577
+ TooManyFreezes: PlainDescriptor<undefined>;
578
+ /**
579
+ * The issuance cannot be modified since it is already deactivated.
580
+ */
581
+ IssuanceDeactivated: PlainDescriptor<undefined>;
582
+ /**
583
+ * The delta cannot be zero.
584
+ */
585
+ DeltaZero: PlainDescriptor<undefined>;
586
+ };
587
+ Vesting: {
588
+ /**
589
+ * The account given is not vesting.
590
+ */
591
+ NotVesting: PlainDescriptor<undefined>;
592
+ /**
593
+ * The account already has `MaxVestingSchedules` count of schedules and thus
594
+ * cannot add another one. Consider merging existing schedules in order to add another.
595
+ */
596
+ AtMaxVestingSchedules: PlainDescriptor<undefined>;
597
+ /**
598
+ * Amount being transferred is too low to create a vesting schedule.
599
+ */
600
+ AmountLow: PlainDescriptor<undefined>;
601
+ /**
602
+ * An index was out of bounds of the vesting schedules.
603
+ */
604
+ ScheduleIndexOutOfBounds: PlainDescriptor<undefined>;
605
+ /**
606
+ * Failed to create a new schedule because some parameter was invalid.
607
+ */
608
+ InvalidScheduleParams: PlainDescriptor<undefined>;
609
+ };
610
+ CollatorSelection: {
611
+ /**
612
+ * The pallet has too many candidates.
613
+ */
614
+ TooManyCandidates: PlainDescriptor<undefined>;
615
+ /**
616
+ * Leaving would result in too few candidates.
617
+ */
618
+ TooFewEligibleCollators: PlainDescriptor<undefined>;
619
+ /**
620
+ * Account is already a candidate.
621
+ */
622
+ AlreadyCandidate: PlainDescriptor<undefined>;
623
+ /**
624
+ * Account is not a candidate.
625
+ */
626
+ NotCandidate: PlainDescriptor<undefined>;
627
+ /**
628
+ * There are too many Invulnerables.
629
+ */
630
+ TooManyInvulnerables: PlainDescriptor<undefined>;
631
+ /**
632
+ * Account is already an Invulnerable.
633
+ */
634
+ AlreadyInvulnerable: PlainDescriptor<undefined>;
635
+ /**
636
+ * Account is not an Invulnerable.
637
+ */
638
+ NotInvulnerable: PlainDescriptor<undefined>;
639
+ /**
640
+ * Account has no associated validator ID.
641
+ */
642
+ NoAssociatedValidatorId: PlainDescriptor<undefined>;
643
+ /**
644
+ * Validator ID is not yet registered.
645
+ */
646
+ ValidatorNotRegistered: PlainDescriptor<undefined>;
647
+ /**
648
+ * Could not insert in the candidate list.
649
+ */
650
+ InsertToCandidateListFailed: PlainDescriptor<undefined>;
651
+ /**
652
+ * Could not remove from the candidate list.
653
+ */
654
+ RemoveFromCandidateListFailed: PlainDescriptor<undefined>;
655
+ /**
656
+ * New deposit amount would be below the minimum candidacy bond.
657
+ */
658
+ DepositTooLow: PlainDescriptor<undefined>;
659
+ /**
660
+ * Could not update the candidate list.
661
+ */
662
+ UpdateCandidateListFailed: PlainDescriptor<undefined>;
663
+ /**
664
+ * Deposit amount is too low to take the target's slot in the candidate list.
665
+ */
666
+ InsufficientBond: PlainDescriptor<undefined>;
667
+ /**
668
+ * The target account to be replaced in the candidate list is not a candidate.
669
+ */
670
+ TargetIsNotCandidate: PlainDescriptor<undefined>;
671
+ /**
672
+ * The updated deposit amount is equal to the amount already reserved.
673
+ */
674
+ IdenticalDeposit: PlainDescriptor<undefined>;
675
+ /**
676
+ * Cannot lower candidacy bond while occupying a future collator slot in the list.
677
+ */
678
+ InvalidUnreserve: PlainDescriptor<undefined>;
679
+ };
680
+ Session: {
681
+ /**
682
+ * Invalid ownership proof.
683
+ */
684
+ InvalidProof: PlainDescriptor<undefined>;
685
+ /**
686
+ * No associated validator ID for account.
687
+ */
688
+ NoAssociatedValidatorId: PlainDescriptor<undefined>;
689
+ /**
690
+ * Registered duplicate key.
691
+ */
692
+ DuplicatedKey: PlainDescriptor<undefined>;
693
+ /**
694
+ * No keys are associated with this account.
695
+ */
696
+ NoKeys: PlainDescriptor<undefined>;
697
+ /**
698
+ * Key setting account is not live, so it's impossible to associate keys.
699
+ */
700
+ NoAccount: PlainDescriptor<undefined>;
701
+ };
702
+ XcmpQueue: {
703
+ /**
704
+ * Setting the queue config failed since one of its values was invalid.
705
+ */
706
+ BadQueueConfig: PlainDescriptor<undefined>;
707
+ /**
708
+ * The execution is already suspended.
709
+ */
710
+ AlreadySuspended: PlainDescriptor<undefined>;
711
+ /**
712
+ * The execution is already resumed.
713
+ */
714
+ AlreadyResumed: PlainDescriptor<undefined>;
715
+ /**
716
+ * There are too many active outbound channels.
717
+ */
718
+ TooManyActiveOutboundChannels: PlainDescriptor<undefined>;
719
+ /**
720
+ * The message is too big.
721
+ */
722
+ TooBig: PlainDescriptor<undefined>;
723
+ };
724
+ PolkadotXcm: {
725
+ /**
726
+ * The desired destination was unreachable, generally because there is a no way of routing
727
+ * to it.
728
+ */
729
+ Unreachable: PlainDescriptor<undefined>;
730
+ /**
731
+ * There was some other issue (i.e. not to do with routing) in sending the message.
732
+ * Perhaps a lack of space for buffering the message.
733
+ */
734
+ SendFailure: PlainDescriptor<undefined>;
735
+ /**
736
+ * The message execution fails the filter.
737
+ */
738
+ Filtered: PlainDescriptor<undefined>;
739
+ /**
740
+ * The message's weight could not be determined.
741
+ */
742
+ UnweighableMessage: PlainDescriptor<undefined>;
743
+ /**
744
+ * The destination `Location` provided cannot be inverted.
745
+ */
746
+ DestinationNotInvertible: PlainDescriptor<undefined>;
747
+ /**
748
+ * The assets to be sent are empty.
749
+ */
750
+ Empty: PlainDescriptor<undefined>;
751
+ /**
752
+ * Could not re-anchor the assets to declare the fees for the destination chain.
753
+ */
754
+ CannotReanchor: PlainDescriptor<undefined>;
755
+ /**
756
+ * Too many assets have been attempted for transfer.
757
+ */
758
+ TooManyAssets: PlainDescriptor<undefined>;
759
+ /**
760
+ * Origin is invalid for sending.
761
+ */
762
+ InvalidOrigin: PlainDescriptor<undefined>;
763
+ /**
764
+ * The version of the `Versioned` value used is not able to be interpreted.
765
+ */
766
+ BadVersion: PlainDescriptor<undefined>;
767
+ /**
768
+ * The given location could not be used (e.g. because it cannot be expressed in the
769
+ * desired version of XCM).
770
+ */
771
+ BadLocation: PlainDescriptor<undefined>;
772
+ /**
773
+ * The referenced subscription could not be found.
774
+ */
775
+ NoSubscription: PlainDescriptor<undefined>;
776
+ /**
777
+ * The location is invalid since it already has a subscription from us.
778
+ */
779
+ AlreadySubscribed: PlainDescriptor<undefined>;
780
+ /**
781
+ * Could not check-out the assets for teleportation to the destination chain.
782
+ */
783
+ CannotCheckOutTeleport: PlainDescriptor<undefined>;
784
+ /**
785
+ * The owner does not own (all) of the asset that they wish to do the operation on.
786
+ */
787
+ LowBalance: PlainDescriptor<undefined>;
788
+ /**
789
+ * The asset owner has too many locks on the asset.
790
+ */
791
+ TooManyLocks: PlainDescriptor<undefined>;
792
+ /**
793
+ * The given account is not an identifiable sovereign account for any location.
794
+ */
795
+ AccountNotSovereign: PlainDescriptor<undefined>;
796
+ /**
797
+ * The operation required fees to be paid which the initiator could not meet.
798
+ */
799
+ FeesNotMet: PlainDescriptor<undefined>;
800
+ /**
801
+ * A remote lock with the corresponding data could not be found.
802
+ */
803
+ LockNotFound: PlainDescriptor<undefined>;
804
+ /**
805
+ * The unlock operation cannot succeed because there are still consumers of the lock.
806
+ */
807
+ InUse: PlainDescriptor<undefined>;
808
+ /**
809
+ * Invalid asset, reserve chain could not be determined for it.
810
+ */
811
+ InvalidAssetUnknownReserve: PlainDescriptor<undefined>;
812
+ /**
813
+ * Invalid asset, do not support remote asset reserves with different fees reserves.
814
+ */
815
+ InvalidAssetUnsupportedReserve: PlainDescriptor<undefined>;
816
+ /**
817
+ * Too many assets with different reserve locations have been attempted for transfer.
818
+ */
819
+ TooManyReserves: PlainDescriptor<undefined>;
820
+ /**
821
+ * Local XCM execution incomplete.
822
+ */
823
+ LocalExecutionIncomplete: PlainDescriptor<undefined>;
824
+ /**
825
+ * Too many locations authorized to alias origin.
826
+ */
827
+ TooManyAuthorizedAliases: PlainDescriptor<undefined>;
828
+ /**
829
+ * Expiry block number is in the past.
830
+ */
831
+ ExpiresInPast: PlainDescriptor<undefined>;
832
+ /**
833
+ * The alias to remove authorization for was not found.
834
+ */
835
+ AliasNotFound: PlainDescriptor<undefined>;
836
+ };
837
+ MessageQueue: {
838
+ /**
839
+ * Page is not reapable because it has items remaining to be processed and is not old
840
+ * enough.
841
+ */
842
+ NotReapable: PlainDescriptor<undefined>;
843
+ /**
844
+ * Page to be reaped does not exist.
845
+ */
846
+ NoPage: PlainDescriptor<undefined>;
847
+ /**
848
+ * The referenced message could not be found.
849
+ */
850
+ NoMessage: PlainDescriptor<undefined>;
851
+ /**
852
+ * The message was already processed and cannot be processed again.
853
+ */
854
+ AlreadyProcessed: PlainDescriptor<undefined>;
855
+ /**
856
+ * The message is queued for future execution.
857
+ */
858
+ Queued: PlainDescriptor<undefined>;
859
+ /**
860
+ * There is temporarily not enough weight to continue servicing messages.
861
+ */
862
+ InsufficientWeight: PlainDescriptor<undefined>;
863
+ /**
864
+ * This message is temporarily unprocessable.
865
+ *
866
+ * Such errors are expected, but not guaranteed, to resolve themselves eventually through
867
+ * retrying.
868
+ */
869
+ TemporarilyUnprocessable: PlainDescriptor<undefined>;
870
+ /**
871
+ * The queue is paused and no message can be executed from it.
872
+ *
873
+ * This can change at any time and may resolve in the future by re-trying.
874
+ */
875
+ QueuePaused: PlainDescriptor<undefined>;
876
+ /**
877
+ * Another call is in progress and needs to finish before this call can happen.
878
+ */
879
+ RecursiveDisallowed: PlainDescriptor<undefined>;
880
+ };
881
+ Utility: {
882
+ /**
883
+ * Too many calls batched.
884
+ */
885
+ TooManyCalls: PlainDescriptor<undefined>;
886
+ };
887
+ Multisig: {
888
+ /**
889
+ * Threshold must be 2 or greater.
890
+ */
891
+ MinimumThreshold: PlainDescriptor<undefined>;
892
+ /**
893
+ * Call is already approved by this signatory.
894
+ */
895
+ AlreadyApproved: PlainDescriptor<undefined>;
896
+ /**
897
+ * Call doesn't need any (more) approvals.
898
+ */
899
+ NoApprovalsNeeded: PlainDescriptor<undefined>;
900
+ /**
901
+ * There are too few signatories in the list.
902
+ */
903
+ TooFewSignatories: PlainDescriptor<undefined>;
904
+ /**
905
+ * There are too many signatories in the list.
906
+ */
907
+ TooManySignatories: PlainDescriptor<undefined>;
908
+ /**
909
+ * The signatories were provided out of order; they should be ordered.
910
+ */
911
+ SignatoriesOutOfOrder: PlainDescriptor<undefined>;
912
+ /**
913
+ * The sender was contained in the other signatories; it shouldn't be.
914
+ */
915
+ SenderInSignatories: PlainDescriptor<undefined>;
916
+ /**
917
+ * Multisig operation not found in storage.
918
+ */
919
+ NotFound: PlainDescriptor<undefined>;
920
+ /**
921
+ * Only the account that originally created the multisig is able to cancel it or update
922
+ * its deposits.
923
+ */
924
+ NotOwner: PlainDescriptor<undefined>;
925
+ /**
926
+ * No timepoint was given, yet the multisig operation is already underway.
927
+ */
928
+ NoTimepoint: PlainDescriptor<undefined>;
929
+ /**
930
+ * A different timepoint was given to the multisig operation that is underway.
931
+ */
932
+ WrongTimepoint: PlainDescriptor<undefined>;
933
+ /**
934
+ * A timepoint was given, yet no multisig operation is underway.
935
+ */
936
+ UnexpectedTimepoint: PlainDescriptor<undefined>;
937
+ /**
938
+ * The maximum weight information provided was too low.
939
+ */
940
+ MaxWeightTooLow: PlainDescriptor<undefined>;
941
+ /**
942
+ * The data to be stored is already stored.
943
+ */
944
+ AlreadyStored: PlainDescriptor<undefined>;
945
+ };
946
+ Proxy: {
947
+ /**
948
+ * There are too many proxies registered or too many announcements pending.
949
+ */
950
+ TooMany: PlainDescriptor<undefined>;
951
+ /**
952
+ * Proxy registration not found.
953
+ */
954
+ NotFound: PlainDescriptor<undefined>;
955
+ /**
956
+ * Sender is not a proxy of the account to be proxied.
957
+ */
958
+ NotProxy: PlainDescriptor<undefined>;
959
+ /**
960
+ * A call which is incompatible with the proxy type's filter was attempted.
961
+ */
962
+ Unproxyable: PlainDescriptor<undefined>;
963
+ /**
964
+ * Account is already a proxy.
965
+ */
966
+ Duplicate: PlainDescriptor<undefined>;
967
+ /**
968
+ * Call may not be made by proxy because it may escalate its privileges.
969
+ */
970
+ NoPermission: PlainDescriptor<undefined>;
971
+ /**
972
+ * Announcement, if made at all, was made too recently.
973
+ */
974
+ Unannounced: PlainDescriptor<undefined>;
975
+ /**
976
+ * Cannot add self as proxy.
977
+ */
978
+ NoSelfProxy: PlainDescriptor<undefined>;
979
+ };
980
+ Assets: {
981
+ /**
982
+ * Account balance must be greater than or equal to the transfer amount.
983
+ */
984
+ BalanceLow: PlainDescriptor<undefined>;
985
+ /**
986
+ * The account to alter does not exist.
987
+ */
988
+ NoAccount: PlainDescriptor<undefined>;
989
+ /**
990
+ * The signing account has no permission to do the operation.
991
+ */
992
+ NoPermission: PlainDescriptor<undefined>;
993
+ /**
994
+ * The given asset ID is unknown.
995
+ */
996
+ Unknown: PlainDescriptor<undefined>;
997
+ /**
998
+ * The origin account is frozen.
999
+ */
1000
+ Frozen: PlainDescriptor<undefined>;
1001
+ /**
1002
+ * The asset ID is already taken.
1003
+ */
1004
+ InUse: PlainDescriptor<undefined>;
1005
+ /**
1006
+ * Invalid witness data given.
1007
+ */
1008
+ BadWitness: PlainDescriptor<undefined>;
1009
+ /**
1010
+ * Minimum balance should be non-zero.
1011
+ */
1012
+ MinBalanceZero: PlainDescriptor<undefined>;
1013
+ /**
1014
+ * Unable to increment the consumer reference counters on the account. Either no provider
1015
+ * reference exists to allow a non-zero balance of a non-self-sufficient asset, or one
1016
+ * fewer then the maximum number of consumers has been reached.
1017
+ */
1018
+ UnavailableConsumer: PlainDescriptor<undefined>;
1019
+ /**
1020
+ * Invalid metadata given.
1021
+ */
1022
+ BadMetadata: PlainDescriptor<undefined>;
1023
+ /**
1024
+ * No approval exists that would allow the transfer.
1025
+ */
1026
+ Unapproved: PlainDescriptor<undefined>;
1027
+ /**
1028
+ * The source account would not survive the transfer and it needs to stay alive.
1029
+ */
1030
+ WouldDie: PlainDescriptor<undefined>;
1031
+ /**
1032
+ * The asset-account already exists.
1033
+ */
1034
+ AlreadyExists: PlainDescriptor<undefined>;
1035
+ /**
1036
+ * The asset-account doesn't have an associated deposit.
1037
+ */
1038
+ NoDeposit: PlainDescriptor<undefined>;
1039
+ /**
1040
+ * The operation would result in funds being burned.
1041
+ */
1042
+ WouldBurn: PlainDescriptor<undefined>;
1043
+ /**
1044
+ * The asset is a live asset and is actively being used. Usually emit for operations such
1045
+ * as `start_destroy` which require the asset to be in a destroying state.
1046
+ */
1047
+ LiveAsset: PlainDescriptor<undefined>;
1048
+ /**
1049
+ * The asset is not live, and likely being destroyed.
1050
+ */
1051
+ AssetNotLive: PlainDescriptor<undefined>;
1052
+ /**
1053
+ * The asset status is not the expected status.
1054
+ */
1055
+ IncorrectStatus: PlainDescriptor<undefined>;
1056
+ /**
1057
+ * The asset should be frozen before the given operation.
1058
+ */
1059
+ NotFrozen: PlainDescriptor<undefined>;
1060
+ /**
1061
+ * Callback action resulted in error
1062
+ */
1063
+ CallbackFailed: PlainDescriptor<undefined>;
1064
+ /**
1065
+ * The asset ID must be equal to the [`NextAssetId`].
1066
+ */
1067
+ BadAssetId: PlainDescriptor<undefined>;
1068
+ /**
1069
+ * The asset cannot be destroyed because some accounts for this asset contain freezes.
1070
+ */
1071
+ ContainsFreezes: PlainDescriptor<undefined>;
1072
+ /**
1073
+ * The asset cannot be destroyed because some accounts for this asset contain holds.
1074
+ */
1075
+ ContainsHolds: PlainDescriptor<undefined>;
1076
+ };
1077
+ Uniques: {
1078
+ /**
1079
+ * The signing account has no permission to do the operation.
1080
+ */
1081
+ NoPermission: PlainDescriptor<undefined>;
1082
+ /**
1083
+ * The given item ID is unknown.
1084
+ */
1085
+ UnknownCollection: PlainDescriptor<undefined>;
1086
+ /**
1087
+ * The item ID has already been used for an item.
1088
+ */
1089
+ AlreadyExists: PlainDescriptor<undefined>;
1090
+ /**
1091
+ * The owner turned out to be different to what was expected.
1092
+ */
1093
+ WrongOwner: PlainDescriptor<undefined>;
1094
+ /**
1095
+ * Invalid witness data given.
1096
+ */
1097
+ BadWitness: PlainDescriptor<undefined>;
1098
+ /**
1099
+ * The item ID is already taken.
1100
+ */
1101
+ InUse: PlainDescriptor<undefined>;
1102
+ /**
1103
+ * The item or collection is frozen.
1104
+ */
1105
+ Frozen: PlainDescriptor<undefined>;
1106
+ /**
1107
+ * The delegate turned out to be different to what was expected.
1108
+ */
1109
+ WrongDelegate: PlainDescriptor<undefined>;
1110
+ /**
1111
+ * There is no delegate approved.
1112
+ */
1113
+ NoDelegate: PlainDescriptor<undefined>;
1114
+ /**
1115
+ * No approval exists that would allow the transfer.
1116
+ */
1117
+ Unapproved: PlainDescriptor<undefined>;
1118
+ /**
1119
+ * The named owner has not signed ownership of the collection is acceptable.
1120
+ */
1121
+ Unaccepted: PlainDescriptor<undefined>;
1122
+ /**
1123
+ * The item is locked.
1124
+ */
1125
+ Locked: PlainDescriptor<undefined>;
1126
+ /**
1127
+ * All items have been minted.
1128
+ */
1129
+ MaxSupplyReached: PlainDescriptor<undefined>;
1130
+ /**
1131
+ * The max supply has already been set.
1132
+ */
1133
+ MaxSupplyAlreadySet: PlainDescriptor<undefined>;
1134
+ /**
1135
+ * The provided max supply is less to the amount of items a collection already has.
1136
+ */
1137
+ MaxSupplyTooSmall: PlainDescriptor<undefined>;
1138
+ /**
1139
+ * The given item ID is unknown.
1140
+ */
1141
+ UnknownItem: PlainDescriptor<undefined>;
1142
+ /**
1143
+ * Item is not for sale.
1144
+ */
1145
+ NotForSale: PlainDescriptor<undefined>;
1146
+ /**
1147
+ * The provided bid is too low.
1148
+ */
1149
+ BidTooLow: PlainDescriptor<undefined>;
1150
+ };
1151
+ Nfts: {
1152
+ /**
1153
+ * The signing account has no permission to do the operation.
1154
+ */
1155
+ NoPermission: PlainDescriptor<undefined>;
1156
+ /**
1157
+ * The given item ID is unknown.
1158
+ */
1159
+ UnknownCollection: PlainDescriptor<undefined>;
1160
+ /**
1161
+ * The item ID has already been used for an item.
1162
+ */
1163
+ AlreadyExists: PlainDescriptor<undefined>;
1164
+ /**
1165
+ * The approval had a deadline that expired, so the approval isn't valid anymore.
1166
+ */
1167
+ ApprovalExpired: PlainDescriptor<undefined>;
1168
+ /**
1169
+ * The owner turned out to be different to what was expected.
1170
+ */
1171
+ WrongOwner: PlainDescriptor<undefined>;
1172
+ /**
1173
+ * The witness data given does not match the current state of the chain.
1174
+ */
1175
+ BadWitness: PlainDescriptor<undefined>;
1176
+ /**
1177
+ * Collection ID is already taken.
1178
+ */
1179
+ CollectionIdInUse: PlainDescriptor<undefined>;
1180
+ /**
1181
+ * Items within that collection are non-transferable.
1182
+ */
1183
+ ItemsNonTransferable: PlainDescriptor<undefined>;
1184
+ /**
1185
+ * The provided account is not a delegate.
1186
+ */
1187
+ NotDelegate: PlainDescriptor<undefined>;
1188
+ /**
1189
+ * The delegate turned out to be different to what was expected.
1190
+ */
1191
+ WrongDelegate: PlainDescriptor<undefined>;
1192
+ /**
1193
+ * No approval exists that would allow the transfer.
1194
+ */
1195
+ Unapproved: PlainDescriptor<undefined>;
1196
+ /**
1197
+ * The named owner has not signed ownership acceptance of the collection.
1198
+ */
1199
+ Unaccepted: PlainDescriptor<undefined>;
1200
+ /**
1201
+ * The item is locked (non-transferable).
1202
+ */
1203
+ ItemLocked: PlainDescriptor<undefined>;
1204
+ /**
1205
+ * Item's attributes are locked.
1206
+ */
1207
+ LockedItemAttributes: PlainDescriptor<undefined>;
1208
+ /**
1209
+ * Collection's attributes are locked.
1210
+ */
1211
+ LockedCollectionAttributes: PlainDescriptor<undefined>;
1212
+ /**
1213
+ * Item's metadata is locked.
1214
+ */
1215
+ LockedItemMetadata: PlainDescriptor<undefined>;
1216
+ /**
1217
+ * Collection's metadata is locked.
1218
+ */
1219
+ LockedCollectionMetadata: PlainDescriptor<undefined>;
1220
+ /**
1221
+ * All items have been minted.
1222
+ */
1223
+ MaxSupplyReached: PlainDescriptor<undefined>;
1224
+ /**
1225
+ * The max supply is locked and can't be changed.
1226
+ */
1227
+ MaxSupplyLocked: PlainDescriptor<undefined>;
1228
+ /**
1229
+ * The provided max supply is less than the number of items a collection already has.
1230
+ */
1231
+ MaxSupplyTooSmall: PlainDescriptor<undefined>;
1232
+ /**
1233
+ * The given item ID is unknown.
1234
+ */
1235
+ UnknownItem: PlainDescriptor<undefined>;
1236
+ /**
1237
+ * Swap doesn't exist.
1238
+ */
1239
+ UnknownSwap: PlainDescriptor<undefined>;
1240
+ /**
1241
+ * The given item has no metadata set.
1242
+ */
1243
+ MetadataNotFound: PlainDescriptor<undefined>;
1244
+ /**
1245
+ * The provided attribute can't be found.
1246
+ */
1247
+ AttributeNotFound: PlainDescriptor<undefined>;
1248
+ /**
1249
+ * Item is not for sale.
1250
+ */
1251
+ NotForSale: PlainDescriptor<undefined>;
1252
+ /**
1253
+ * The provided bid is too low.
1254
+ */
1255
+ BidTooLow: PlainDescriptor<undefined>;
1256
+ /**
1257
+ * The item has reached its approval limit.
1258
+ */
1259
+ ReachedApprovalLimit: PlainDescriptor<undefined>;
1260
+ /**
1261
+ * The deadline has already expired.
1262
+ */
1263
+ DeadlineExpired: PlainDescriptor<undefined>;
1264
+ /**
1265
+ * The duration provided should be less than or equal to `MaxDeadlineDuration`.
1266
+ */
1267
+ WrongDuration: PlainDescriptor<undefined>;
1268
+ /**
1269
+ * The method is disabled by system settings.
1270
+ */
1271
+ MethodDisabled: PlainDescriptor<undefined>;
1272
+ /**
1273
+ * The provided setting can't be set.
1274
+ */
1275
+ WrongSetting: PlainDescriptor<undefined>;
1276
+ /**
1277
+ * Item's config already exists and should be equal to the provided one.
1278
+ */
1279
+ InconsistentItemConfig: PlainDescriptor<undefined>;
1280
+ /**
1281
+ * Config for a collection or an item can't be found.
1282
+ */
1283
+ NoConfig: PlainDescriptor<undefined>;
1284
+ /**
1285
+ * Some roles were not cleared.
1286
+ */
1287
+ RolesNotCleared: PlainDescriptor<undefined>;
1288
+ /**
1289
+ * Mint has not started yet.
1290
+ */
1291
+ MintNotStarted: PlainDescriptor<undefined>;
1292
+ /**
1293
+ * Mint has already ended.
1294
+ */
1295
+ MintEnded: PlainDescriptor<undefined>;
1296
+ /**
1297
+ * The provided Item was already used for claiming.
1298
+ */
1299
+ AlreadyClaimed: PlainDescriptor<undefined>;
1300
+ /**
1301
+ * The provided data is incorrect.
1302
+ */
1303
+ IncorrectData: PlainDescriptor<undefined>;
1304
+ /**
1305
+ * The extrinsic was sent by the wrong origin.
1306
+ */
1307
+ WrongOrigin: PlainDescriptor<undefined>;
1308
+ /**
1309
+ * The provided signature is incorrect.
1310
+ */
1311
+ WrongSignature: PlainDescriptor<undefined>;
1312
+ /**
1313
+ * The provided metadata might be too long.
1314
+ */
1315
+ IncorrectMetadata: PlainDescriptor<undefined>;
1316
+ /**
1317
+ * Can't set more attributes per one call.
1318
+ */
1319
+ MaxAttributesLimitReached: PlainDescriptor<undefined>;
1320
+ /**
1321
+ * The provided namespace isn't supported in this call.
1322
+ */
1323
+ WrongNamespace: PlainDescriptor<undefined>;
1324
+ /**
1325
+ * Can't delete non-empty collections.
1326
+ */
1327
+ CollectionNotEmpty: PlainDescriptor<undefined>;
1328
+ /**
1329
+ * The witness data should be provided.
1330
+ */
1331
+ WitnessRequired: PlainDescriptor<undefined>;
1332
+ };
1333
+ ForeignAssets: {
1334
+ /**
1335
+ * Account balance must be greater than or equal to the transfer amount.
1336
+ */
1337
+ BalanceLow: PlainDescriptor<undefined>;
1338
+ /**
1339
+ * The account to alter does not exist.
1340
+ */
1341
+ NoAccount: PlainDescriptor<undefined>;
1342
+ /**
1343
+ * The signing account has no permission to do the operation.
1344
+ */
1345
+ NoPermission: PlainDescriptor<undefined>;
1346
+ /**
1347
+ * The given asset ID is unknown.
1348
+ */
1349
+ Unknown: PlainDescriptor<undefined>;
1350
+ /**
1351
+ * The origin account is frozen.
1352
+ */
1353
+ Frozen: PlainDescriptor<undefined>;
1354
+ /**
1355
+ * The asset ID is already taken.
1356
+ */
1357
+ InUse: PlainDescriptor<undefined>;
1358
+ /**
1359
+ * Invalid witness data given.
1360
+ */
1361
+ BadWitness: PlainDescriptor<undefined>;
1362
+ /**
1363
+ * Minimum balance should be non-zero.
1364
+ */
1365
+ MinBalanceZero: PlainDescriptor<undefined>;
1366
+ /**
1367
+ * Unable to increment the consumer reference counters on the account. Either no provider
1368
+ * reference exists to allow a non-zero balance of a non-self-sufficient asset, or one
1369
+ * fewer then the maximum number of consumers has been reached.
1370
+ */
1371
+ UnavailableConsumer: PlainDescriptor<undefined>;
1372
+ /**
1373
+ * Invalid metadata given.
1374
+ */
1375
+ BadMetadata: PlainDescriptor<undefined>;
1376
+ /**
1377
+ * No approval exists that would allow the transfer.
1378
+ */
1379
+ Unapproved: PlainDescriptor<undefined>;
1380
+ /**
1381
+ * The source account would not survive the transfer and it needs to stay alive.
1382
+ */
1383
+ WouldDie: PlainDescriptor<undefined>;
1384
+ /**
1385
+ * The asset-account already exists.
1386
+ */
1387
+ AlreadyExists: PlainDescriptor<undefined>;
1388
+ /**
1389
+ * The asset-account doesn't have an associated deposit.
1390
+ */
1391
+ NoDeposit: PlainDescriptor<undefined>;
1392
+ /**
1393
+ * The operation would result in funds being burned.
1394
+ */
1395
+ WouldBurn: PlainDescriptor<undefined>;
1396
+ /**
1397
+ * The asset is a live asset and is actively being used. Usually emit for operations such
1398
+ * as `start_destroy` which require the asset to be in a destroying state.
1399
+ */
1400
+ LiveAsset: PlainDescriptor<undefined>;
1401
+ /**
1402
+ * The asset is not live, and likely being destroyed.
1403
+ */
1404
+ AssetNotLive: PlainDescriptor<undefined>;
1405
+ /**
1406
+ * The asset status is not the expected status.
1407
+ */
1408
+ IncorrectStatus: PlainDescriptor<undefined>;
1409
+ /**
1410
+ * The asset should be frozen before the given operation.
1411
+ */
1412
+ NotFrozen: PlainDescriptor<undefined>;
1413
+ /**
1414
+ * Callback action resulted in error
1415
+ */
1416
+ CallbackFailed: PlainDescriptor<undefined>;
1417
+ /**
1418
+ * The asset ID must be equal to the [`NextAssetId`].
1419
+ */
1420
+ BadAssetId: PlainDescriptor<undefined>;
1421
+ /**
1422
+ * The asset cannot be destroyed because some accounts for this asset contain freezes.
1423
+ */
1424
+ ContainsFreezes: PlainDescriptor<undefined>;
1425
+ /**
1426
+ * The asset cannot be destroyed because some accounts for this asset contain holds.
1427
+ */
1428
+ ContainsHolds: PlainDescriptor<undefined>;
1429
+ };
1430
+ PoolAssets: {
1431
+ /**
1432
+ * Account balance must be greater than or equal to the transfer amount.
1433
+ */
1434
+ BalanceLow: PlainDescriptor<undefined>;
1435
+ /**
1436
+ * The account to alter does not exist.
1437
+ */
1438
+ NoAccount: PlainDescriptor<undefined>;
1439
+ /**
1440
+ * The signing account has no permission to do the operation.
1441
+ */
1442
+ NoPermission: PlainDescriptor<undefined>;
1443
+ /**
1444
+ * The given asset ID is unknown.
1445
+ */
1446
+ Unknown: PlainDescriptor<undefined>;
1447
+ /**
1448
+ * The origin account is frozen.
1449
+ */
1450
+ Frozen: PlainDescriptor<undefined>;
1451
+ /**
1452
+ * The asset ID is already taken.
1453
+ */
1454
+ InUse: PlainDescriptor<undefined>;
1455
+ /**
1456
+ * Invalid witness data given.
1457
+ */
1458
+ BadWitness: PlainDescriptor<undefined>;
1459
+ /**
1460
+ * Minimum balance should be non-zero.
1461
+ */
1462
+ MinBalanceZero: PlainDescriptor<undefined>;
1463
+ /**
1464
+ * Unable to increment the consumer reference counters on the account. Either no provider
1465
+ * reference exists to allow a non-zero balance of a non-self-sufficient asset, or one
1466
+ * fewer then the maximum number of consumers has been reached.
1467
+ */
1468
+ UnavailableConsumer: PlainDescriptor<undefined>;
1469
+ /**
1470
+ * Invalid metadata given.
1471
+ */
1472
+ BadMetadata: PlainDescriptor<undefined>;
1473
+ /**
1474
+ * No approval exists that would allow the transfer.
1475
+ */
1476
+ Unapproved: PlainDescriptor<undefined>;
1477
+ /**
1478
+ * The source account would not survive the transfer and it needs to stay alive.
1479
+ */
1480
+ WouldDie: PlainDescriptor<undefined>;
1481
+ /**
1482
+ * The asset-account already exists.
1483
+ */
1484
+ AlreadyExists: PlainDescriptor<undefined>;
1485
+ /**
1486
+ * The asset-account doesn't have an associated deposit.
1487
+ */
1488
+ NoDeposit: PlainDescriptor<undefined>;
1489
+ /**
1490
+ * The operation would result in funds being burned.
1491
+ */
1492
+ WouldBurn: PlainDescriptor<undefined>;
1493
+ /**
1494
+ * The asset is a live asset and is actively being used. Usually emit for operations such
1495
+ * as `start_destroy` which require the asset to be in a destroying state.
1496
+ */
1497
+ LiveAsset: PlainDescriptor<undefined>;
1498
+ /**
1499
+ * The asset is not live, and likely being destroyed.
1500
+ */
1501
+ AssetNotLive: PlainDescriptor<undefined>;
1502
+ /**
1503
+ * The asset status is not the expected status.
1504
+ */
1505
+ IncorrectStatus: PlainDescriptor<undefined>;
1506
+ /**
1507
+ * The asset should be frozen before the given operation.
1508
+ */
1509
+ NotFrozen: PlainDescriptor<undefined>;
1510
+ /**
1511
+ * Callback action resulted in error
1512
+ */
1513
+ CallbackFailed: PlainDescriptor<undefined>;
1514
+ /**
1515
+ * The asset ID must be equal to the [`NextAssetId`].
1516
+ */
1517
+ BadAssetId: PlainDescriptor<undefined>;
1518
+ /**
1519
+ * The asset cannot be destroyed because some accounts for this asset contain freezes.
1520
+ */
1521
+ ContainsFreezes: PlainDescriptor<undefined>;
1522
+ /**
1523
+ * The asset cannot be destroyed because some accounts for this asset contain holds.
1524
+ */
1525
+ ContainsHolds: PlainDescriptor<undefined>;
1526
+ };
1527
+ AssetConversion: {
1528
+ /**
1529
+ * Provided asset pair is not supported for pool.
1530
+ */
1531
+ InvalidAssetPair: PlainDescriptor<undefined>;
1532
+ /**
1533
+ * Pool already exists.
1534
+ */
1535
+ PoolExists: PlainDescriptor<undefined>;
1536
+ /**
1537
+ * Desired amount can't be zero.
1538
+ */
1539
+ WrongDesiredAmount: PlainDescriptor<undefined>;
1540
+ /**
1541
+ * Provided amount should be greater than or equal to the existential deposit/asset's
1542
+ * minimal amount.
1543
+ */
1544
+ AmountOneLessThanMinimal: PlainDescriptor<undefined>;
1545
+ /**
1546
+ * Provided amount should be greater than or equal to the existential deposit/asset's
1547
+ * minimal amount.
1548
+ */
1549
+ AmountTwoLessThanMinimal: PlainDescriptor<undefined>;
1550
+ /**
1551
+ * Reserve needs to always be greater than or equal to the existential deposit/asset's
1552
+ * minimal amount.
1553
+ */
1554
+ ReserveLeftLessThanMinimal: PlainDescriptor<undefined>;
1555
+ /**
1556
+ * Desired amount can't be equal to the pool reserve.
1557
+ */
1558
+ AmountOutTooHigh: PlainDescriptor<undefined>;
1559
+ /**
1560
+ * The pool doesn't exist.
1561
+ */
1562
+ PoolNotFound: PlainDescriptor<undefined>;
1563
+ /**
1564
+ * An overflow happened.
1565
+ */
1566
+ Overflow: PlainDescriptor<undefined>;
1567
+ /**
1568
+ * The minimal amount requirement for the first token in the pair wasn't met.
1569
+ */
1570
+ AssetOneDepositDidNotMeetMinimum: PlainDescriptor<undefined>;
1571
+ /**
1572
+ * The minimal amount requirement for the second token in the pair wasn't met.
1573
+ */
1574
+ AssetTwoDepositDidNotMeetMinimum: PlainDescriptor<undefined>;
1575
+ /**
1576
+ * The minimal amount requirement for the first token in the pair wasn't met.
1577
+ */
1578
+ AssetOneWithdrawalDidNotMeetMinimum: PlainDescriptor<undefined>;
1579
+ /**
1580
+ * The minimal amount requirement for the second token in the pair wasn't met.
1581
+ */
1582
+ AssetTwoWithdrawalDidNotMeetMinimum: PlainDescriptor<undefined>;
1583
+ /**
1584
+ * Optimal calculated amount is less than desired.
1585
+ */
1586
+ OptimalAmountLessThanDesired: PlainDescriptor<undefined>;
1587
+ /**
1588
+ * Insufficient liquidity minted.
1589
+ */
1590
+ InsufficientLiquidityMinted: PlainDescriptor<undefined>;
1591
+ /**
1592
+ * Requested liquidity can't be zero.
1593
+ */
1594
+ ZeroLiquidity: PlainDescriptor<undefined>;
1595
+ /**
1596
+ * Amount can't be zero.
1597
+ */
1598
+ ZeroAmount: PlainDescriptor<undefined>;
1599
+ /**
1600
+ * Calculated amount out is less than provided minimum amount.
1601
+ */
1602
+ ProvidedMinimumNotSufficientForSwap: PlainDescriptor<undefined>;
1603
+ /**
1604
+ * Provided maximum amount is not sufficient for swap.
1605
+ */
1606
+ ProvidedMaximumNotSufficientForSwap: PlainDescriptor<undefined>;
1607
+ /**
1608
+ * The provided path must consists of 2 assets at least.
1609
+ */
1610
+ InvalidPath: PlainDescriptor<undefined>;
1611
+ /**
1612
+ * The provided path must consists of unique assets.
1613
+ */
1614
+ NonUniquePath: PlainDescriptor<undefined>;
1615
+ /**
1616
+ * It was not possible to get or increment the Id of the pool.
1617
+ */
1618
+ IncorrectPoolAssetId: PlainDescriptor<undefined>;
1619
+ /**
1620
+ * The destination account cannot exist with the swapped funds.
1621
+ */
1622
+ BelowMinimum: PlainDescriptor<undefined>;
1623
+ };
1624
+ StateTrieMigration: {
1625
+ /**
1626
+ * Max signed limits not respected.
1627
+ */
1628
+ MaxSignedLimits: PlainDescriptor<undefined>;
1629
+ /**
1630
+ * A key was longer than the configured maximum.
1631
+ *
1632
+ * This means that the migration halted at the current [`Progress`] and
1633
+ * can be resumed with a larger [`crate::Config::MaxKeyLen`] value.
1634
+ * Retrying with the same [`crate::Config::MaxKeyLen`] value will not work.
1635
+ * The value should only be increased to avoid a storage migration for the currently
1636
+ * stored [`crate::Progress::LastKey`].
1637
+ */
1638
+ KeyTooLong: PlainDescriptor<undefined>;
1639
+ /**
1640
+ * submitter does not have enough funds.
1641
+ */
1642
+ NotEnoughFunds: PlainDescriptor<undefined>;
1643
+ /**
1644
+ * Bad witness data provided.
1645
+ */
1646
+ BadWitness: PlainDescriptor<undefined>;
1647
+ /**
1648
+ * Signed migration is not allowed because the maximum limit is not set yet.
1649
+ */
1650
+ SignedMigrationNotAllowed: PlainDescriptor<undefined>;
1651
+ /**
1652
+ * Bad child root provided.
1653
+ */
1654
+ BadChildRoot: PlainDescriptor<undefined>;
1655
+ };
1656
+ };
1657
+ type IConstants = {
1658
+ System: {
1659
+ /**
1660
+ * Block & extrinsics weights: base values and limits.
1661
+ */
1662
+ BlockWeights: PlainDescriptor<Anonymize<In7a38730s6qs>>;
1663
+ /**
1664
+ * The maximum length of a block (in bytes).
1665
+ */
1666
+ BlockLength: PlainDescriptor<Anonymize<If15el53dd76v9>>;
1667
+ /**
1668
+ * Maximum number of block number to block hash mappings to keep (oldest pruned first).
1669
+ */
1670
+ BlockHashCount: PlainDescriptor<number>;
1671
+ /**
1672
+ * The weight of runtime database operations the runtime can invoke.
1673
+ */
1674
+ DbWeight: PlainDescriptor<Anonymize<I9s0ave7t0vnrk>>;
1675
+ /**
1676
+ * Get the chain's in-code version.
1677
+ */
1678
+ Version: PlainDescriptor<Anonymize<I4fo08joqmcqnm>>;
1679
+ /**
1680
+ * The designated SS58 prefix of this chain.
1681
+ *
1682
+ * This replaces the "ss58Format" property declared in the chain spec. Reason is
1683
+ * that the runtime should know about the prefix in order to make use of it as
1684
+ * an identifier of the chain.
1685
+ */
1686
+ SS58Prefix: PlainDescriptor<number>;
1687
+ };
1688
+ };
1689
+ type IViewFns = {};
1690
+ type IRuntimeCalls = {
1691
+ /**
1692
+ * A trait of XCM payment API.
1693
+ *
1694
+ * API provides functionality for obtaining:
1695
+ *
1696
+ * * the weight required to execute an XCM message,
1697
+ * * a list of acceptable `AssetId`s for message execution payment,
1698
+ * * the cost of the weight in the specified acceptable `AssetId`.
1699
+ * * the fees for an XCM message delivery.
1700
+ *
1701
+ * To determine the execution weight of the calls required for
1702
+ * [`xcm::latest::Instruction::Transact`] instruction, `TransactionPaymentCallApi` can be used.
1703
+ */
1704
+ XcmPaymentApi: {
1705
+ /**
1706
+ * Returns a list of acceptable payment assets.
1707
+ *
1708
+ * # Arguments
1709
+ *
1710
+ * * `xcm_version`: Version.
1711
+ */
1712
+ query_acceptable_payment_assets: RuntimeDescriptor<[xcm_version: number], Anonymize<Iftvbctbo05fu4>>;
1713
+ /**
1714
+ * Returns a weight needed to execute a XCM.
1715
+ *
1716
+ * # Arguments
1717
+ *
1718
+ * * `message`: `VersionedXcm`.
1719
+ */
1720
+ query_xcm_weight: RuntimeDescriptor<[message: XcmVersionedXcm], Anonymize<Ic0c3req3mlc1l>>;
1721
+ /**
1722
+ * Converts a weight into a fee for the specified `AssetId`.
1723
+ *
1724
+ * # Arguments
1725
+ *
1726
+ * * `weight`: convertible `Weight`.
1727
+ * * `asset`: `VersionedAssetId`.
1728
+ */
1729
+ query_weight_to_asset_fee: RuntimeDescriptor<[weight: Anonymize<I4q39t5hn830vp>, asset: XcmVersionedAssetId], Anonymize<I7ocn4njqde3v5>>;
1730
+ /**
1731
+ * Get delivery fees for sending a specific `message` to a `destination`.
1732
+ * These always come in a specific asset, defined by the chain.
1733
+ *
1734
+ * # Arguments
1735
+ * * `message`: The message that'll be sent, necessary because most delivery fees are based on the
1736
+ * size of the message.
1737
+ * * `destination`: The destination to send the message to. Different destinations may use
1738
+ * different senders that charge different fees.
1739
+ */
1740
+ query_delivery_fees: RuntimeDescriptor<[destination: XcmVersionedLocation, message: XcmVersionedXcm], Anonymize<Iek7ha36da9mf5>>;
1741
+ };
1742
+ /**
1743
+ * API for dry-running extrinsics and XCM programs to get the programs that need to be passed to the fees API.
1744
+ *
1745
+ * All calls return a vector of tuples (location, xcm) where each "xcm" is executed in "location".
1746
+ * If there's local execution, the location will be "Here".
1747
+ * This vector can be used to calculate both execution and delivery fees.
1748
+ *
1749
+ * Calls or XCMs might fail when executed, this doesn't mean the result of these calls will be an `Err`.
1750
+ * In those cases, there might still be a valid result, with the execution error inside it.
1751
+ * The only reasons why these calls might return an error are listed in the [`Error`] enum.
1752
+ */
1753
+ DryRunApi: {
1754
+ /**
1755
+ * Dry run call V2.
1756
+ */
1757
+ dry_run_call: RuntimeDescriptor<[origin: Anonymize<I42ficri7uep20>, call: Anonymize<I9e1s7ld6a9v7g>, result_xcms_version: number], Anonymize<I850eccr8tu63b>>;
1758
+ /**
1759
+ * Dry run XCM program
1760
+ */
1761
+ dry_run_xcm: RuntimeDescriptor<[origin_location: XcmVersionedLocation, xcm: XcmVersionedXcm], Anonymize<Ibfdogtj5b7n4k>>;
1762
+ };
1763
+ /**
1764
+ * This runtime api allows people to query the size of the liquidity pools
1765
+ * and quote prices for swaps.
1766
+ */
1767
+ AssetConversionApi: {
1768
+ /**
1769
+ * Provides a quote for [`Pallet::swap_tokens_for_exact_tokens`].
1770
+ *
1771
+ * Note that the price may have changed by the time the transaction is executed.
1772
+ * (Use `amount_in_max` to control slippage.)
1773
+ */
1774
+ quote_price_tokens_for_exact_tokens: RuntimeDescriptor<[asset1: Anonymize<I4c0s5cioidn76>, asset2: Anonymize<I4c0s5cioidn76>, amount: bigint, include_fee: boolean], Anonymize<I35p85j063s0il>>;
1775
+ /**
1776
+ * Provides a quote for [`Pallet::swap_exact_tokens_for_tokens`].
1777
+ *
1778
+ * Note that the price may have changed by the time the transaction is executed.
1779
+ * (Use `amount_out_min` to control slippage.)
1780
+ */
1781
+ quote_price_exact_tokens_for_tokens: RuntimeDescriptor<[asset1: Anonymize<I4c0s5cioidn76>, asset2: Anonymize<I4c0s5cioidn76>, amount: bigint, include_fee: boolean], Anonymize<I35p85j063s0il>>;
1782
+ /**
1783
+ * Returns the size of the liquidity pool for the given asset pair.
1784
+ */
1785
+ get_reserves: RuntimeDescriptor<[asset1: Anonymize<I4c0s5cioidn76>, asset2: Anonymize<I4c0s5cioidn76>], Anonymize<I5vv5n03oo8gas>>;
1786
+ };
1787
+ };
1788
+ export type HubDispatchError = unknown;
1789
+ type IAsset = PlainDescriptor<Anonymize<I4c0s5cioidn76>>;
1790
+ export type HubExtensions = {};
1791
+ type PalletsTypedef = {
1792
+ __storage: IStorage;
1793
+ __tx: ICalls;
1794
+ __event: IEvent;
1795
+ __error: IError;
1796
+ __const: IConstants;
1797
+ __view: IViewFns;
1798
+ };
1799
+ export type Hub = {
1800
+ descriptors: {
1801
+ pallets: PalletsTypedef;
1802
+ apis: IRuntimeCalls;
1803
+ } & Promise<any>;
1804
+ metadataTypes: Promise<Uint8Array>;
1805
+ asset: IAsset;
1806
+ extensions: HubExtensions;
1807
+ getMetadata: () => Promise<Uint8Array>;
1808
+ genesis: string | undefined;
1809
+ };
1810
+ declare const _allDescriptors: Hub;
1811
+ export default _allDescriptors;
1812
+ export type HubApis = ApisFromDef<IRuntimeCalls>;
1813
+ export type HubQueries = QueryFromPalletsDef<PalletsTypedef>;
1814
+ export type HubCalls = TxFromPalletsDef<PalletsTypedef>;
1815
+ export type HubEvents = EventsFromPalletsDef<PalletsTypedef>;
1816
+ export type HubErrors = ErrorsFromPalletsDef<PalletsTypedef>;
1817
+ export type HubConstants = ConstFromPalletsDef<PalletsTypedef>;
1818
+ export type HubViewFns = ViewFnsFromPalletsDef<PalletsTypedef>;
1819
+ export type HubCallData = Anonymize<I9e1s7ld6a9v7g> & {
1820
+ value: {
1821
+ type: string;
1822
+ };
1823
+ };
1824
+ type AllInteractions = {
1825
+ storage: {
1826
+ System: ['Account', 'ExtrinsicCount', 'InherentsApplied', 'BlockWeight', 'AllExtrinsicsLen', 'BlockHash', 'ExtrinsicData', 'Number', 'ParentHash', 'Digest', 'Events', 'EventCount', 'EventTopics', 'LastRuntimeUpgrade', 'UpgradedToU32RefCount', 'UpgradedToTripleRefCount', 'ExecutionPhase', 'AuthorizedUpgrade', 'ExtrinsicWeightReclaimed'];
1827
+ Assets: ['Asset', 'Account', 'Approvals', 'Metadata', 'NextAssetId'];
1828
+ ForeignAssets: ['Asset', 'Account', 'Approvals', 'Metadata', 'NextAssetId'];
1829
+ };
1830
+ tx: {
1831
+ PolkadotXcm: ['send', 'teleport_assets', 'reserve_transfer_assets', 'execute', 'force_xcm_version', 'force_default_xcm_version', 'force_subscribe_version_notify', 'force_unsubscribe_version_notify', 'limited_reserve_transfer_assets', 'limited_teleport_assets', 'force_suspension', 'transfer_assets', 'claim_assets', 'transfer_assets_using_type_and_then', 'add_authorized_alias', 'remove_authorized_alias', 'remove_all_authorized_aliases'];
1832
+ };
1833
+ events: {};
1834
+ errors: {
1835
+ System: ['InvalidSpecName', 'SpecVersionNeedsToIncrease', 'FailedToExtractRuntimeVersion', 'NonDefaultComposite', 'NonZeroRefCount', 'CallFiltered', 'MultiBlockMigrationsOngoing', 'NothingAuthorized', 'Unauthorized'];
1836
+ ParachainSystem: ['OverlappingUpgrades', 'ProhibitedByPolkadot', 'TooBig', 'ValidationDataNotAvailable', 'HostConfigurationNotAvailable', 'NotScheduled'];
1837
+ Balances: ['VestingBalance', 'LiquidityRestrictions', 'InsufficientBalance', 'ExistentialDeposit', 'Expendability', 'ExistingVestingSchedule', 'DeadAccount', 'TooManyReserves', 'TooManyHolds', 'TooManyFreezes', 'IssuanceDeactivated', 'DeltaZero'];
1838
+ Vesting: ['NotVesting', 'AtMaxVestingSchedules', 'AmountLow', 'ScheduleIndexOutOfBounds', 'InvalidScheduleParams'];
1839
+ CollatorSelection: ['TooManyCandidates', 'TooFewEligibleCollators', 'AlreadyCandidate', 'NotCandidate', 'TooManyInvulnerables', 'AlreadyInvulnerable', 'NotInvulnerable', 'NoAssociatedValidatorId', 'ValidatorNotRegistered', 'InsertToCandidateListFailed', 'RemoveFromCandidateListFailed', 'DepositTooLow', 'UpdateCandidateListFailed', 'InsufficientBond', 'TargetIsNotCandidate', 'IdenticalDeposit', 'InvalidUnreserve'];
1840
+ Session: ['InvalidProof', 'NoAssociatedValidatorId', 'DuplicatedKey', 'NoKeys', 'NoAccount'];
1841
+ XcmpQueue: ['BadQueueConfig', 'AlreadySuspended', 'AlreadyResumed', 'TooManyActiveOutboundChannels', 'TooBig'];
1842
+ PolkadotXcm: ['Unreachable', 'SendFailure', 'Filtered', 'UnweighableMessage', 'DestinationNotInvertible', 'Empty', 'CannotReanchor', 'TooManyAssets', 'InvalidOrigin', 'BadVersion', 'BadLocation', 'NoSubscription', 'AlreadySubscribed', 'CannotCheckOutTeleport', 'LowBalance', 'TooManyLocks', 'AccountNotSovereign', 'FeesNotMet', 'LockNotFound', 'InUse', 'InvalidAssetUnknownReserve', 'InvalidAssetUnsupportedReserve', 'TooManyReserves', 'LocalExecutionIncomplete', 'TooManyAuthorizedAliases', 'ExpiresInPast', 'AliasNotFound'];
1843
+ MessageQueue: ['NotReapable', 'NoPage', 'NoMessage', 'AlreadyProcessed', 'Queued', 'InsufficientWeight', 'TemporarilyUnprocessable', 'QueuePaused', 'RecursiveDisallowed'];
1844
+ Utility: ['TooManyCalls'];
1845
+ Multisig: ['MinimumThreshold', 'AlreadyApproved', 'NoApprovalsNeeded', 'TooFewSignatories', 'TooManySignatories', 'SignatoriesOutOfOrder', 'SenderInSignatories', 'NotFound', 'NotOwner', 'NoTimepoint', 'WrongTimepoint', 'UnexpectedTimepoint', 'MaxWeightTooLow', 'AlreadyStored'];
1846
+ Proxy: ['TooMany', 'NotFound', 'NotProxy', 'Unproxyable', 'Duplicate', 'NoPermission', 'Unannounced', 'NoSelfProxy'];
1847
+ Assets: ['BalanceLow', 'NoAccount', 'NoPermission', 'Unknown', 'Frozen', 'InUse', 'BadWitness', 'MinBalanceZero', 'UnavailableConsumer', 'BadMetadata', 'Unapproved', 'WouldDie', 'AlreadyExists', 'NoDeposit', 'WouldBurn', 'LiveAsset', 'AssetNotLive', 'IncorrectStatus', 'NotFrozen', 'CallbackFailed', 'BadAssetId', 'ContainsFreezes', 'ContainsHolds'];
1848
+ Uniques: ['NoPermission', 'UnknownCollection', 'AlreadyExists', 'WrongOwner', 'BadWitness', 'InUse', 'Frozen', 'WrongDelegate', 'NoDelegate', 'Unapproved', 'Unaccepted', 'Locked', 'MaxSupplyReached', 'MaxSupplyAlreadySet', 'MaxSupplyTooSmall', 'UnknownItem', 'NotForSale', 'BidTooLow'];
1849
+ Nfts: ['NoPermission', 'UnknownCollection', 'AlreadyExists', 'ApprovalExpired', 'WrongOwner', 'BadWitness', 'CollectionIdInUse', 'ItemsNonTransferable', 'NotDelegate', 'WrongDelegate', 'Unapproved', 'Unaccepted', 'ItemLocked', 'LockedItemAttributes', 'LockedCollectionAttributes', 'LockedItemMetadata', 'LockedCollectionMetadata', 'MaxSupplyReached', 'MaxSupplyLocked', 'MaxSupplyTooSmall', 'UnknownItem', 'UnknownSwap', 'MetadataNotFound', 'AttributeNotFound', 'NotForSale', 'BidTooLow', 'ReachedApprovalLimit', 'DeadlineExpired', 'WrongDuration', 'MethodDisabled', 'WrongSetting', 'InconsistentItemConfig', 'NoConfig', 'RolesNotCleared', 'MintNotStarted', 'MintEnded', 'AlreadyClaimed', 'IncorrectData', 'WrongOrigin', 'WrongSignature', 'IncorrectMetadata', 'MaxAttributesLimitReached', 'WrongNamespace', 'CollectionNotEmpty', 'WitnessRequired'];
1850
+ ForeignAssets: ['BalanceLow', 'NoAccount', 'NoPermission', 'Unknown', 'Frozen', 'InUse', 'BadWitness', 'MinBalanceZero', 'UnavailableConsumer', 'BadMetadata', 'Unapproved', 'WouldDie', 'AlreadyExists', 'NoDeposit', 'WouldBurn', 'LiveAsset', 'AssetNotLive', 'IncorrectStatus', 'NotFrozen', 'CallbackFailed', 'BadAssetId', 'ContainsFreezes', 'ContainsHolds'];
1851
+ PoolAssets: ['BalanceLow', 'NoAccount', 'NoPermission', 'Unknown', 'Frozen', 'InUse', 'BadWitness', 'MinBalanceZero', 'UnavailableConsumer', 'BadMetadata', 'Unapproved', 'WouldDie', 'AlreadyExists', 'NoDeposit', 'WouldBurn', 'LiveAsset', 'AssetNotLive', 'IncorrectStatus', 'NotFrozen', 'CallbackFailed', 'BadAssetId', 'ContainsFreezes', 'ContainsHolds'];
1852
+ AssetConversion: ['InvalidAssetPair', 'PoolExists', 'WrongDesiredAmount', 'AmountOneLessThanMinimal', 'AmountTwoLessThanMinimal', 'ReserveLeftLessThanMinimal', 'AmountOutTooHigh', 'PoolNotFound', 'Overflow', 'AssetOneDepositDidNotMeetMinimum', 'AssetTwoDepositDidNotMeetMinimum', 'AssetOneWithdrawalDidNotMeetMinimum', 'AssetTwoWithdrawalDidNotMeetMinimum', 'OptimalAmountLessThanDesired', 'InsufficientLiquidityMinted', 'ZeroLiquidity', 'ZeroAmount', 'ProvidedMinimumNotSufficientForSwap', 'ProvidedMaximumNotSufficientForSwap', 'InvalidPath', 'NonUniquePath', 'IncorrectPoolAssetId', 'BelowMinimum'];
1853
+ StateTrieMigration: ['MaxSignedLimits', 'KeyTooLong', 'NotEnoughFunds', 'BadWitness', 'SignedMigrationNotAllowed', 'BadChildRoot'];
1854
+ };
1855
+ constants: {
1856
+ System: ['BlockWeights', 'BlockLength', 'BlockHashCount', 'DbWeight', 'Version', 'SS58Prefix'];
1857
+ };
1858
+ viewFns: {};
1859
+ apis: {
1860
+ XcmPaymentApi: ['query_acceptable_payment_assets', 'query_xcm_weight', 'query_weight_to_asset_fee', 'query_delivery_fees'];
1861
+ DryRunApi: ['dry_run_call', 'dry_run_xcm'];
1862
+ AssetConversionApi: ['quote_price_tokens_for_exact_tokens', 'quote_price_exact_tokens_for_tokens', 'get_reserves'];
1863
+ };
1864
+ };
1865
+ export type HubWhitelistEntry = PalletKey | `query.${NestedKey<AllInteractions['storage']>}` | `tx.${NestedKey<AllInteractions['tx']>}` | `event.${NestedKey<AllInteractions['events']>}` | `error.${NestedKey<AllInteractions['errors']>}` | `const.${NestedKey<AllInteractions['constants']>}` | `view.${NestedKey<AllInteractions['viewFns']>}` | `api.${NestedKey<AllInteractions['apis']>}`;
1866
+ type PalletKey = `*.${({
1867
+ [K in keyof AllInteractions]: K extends 'apis' ? never : keyof AllInteractions[K];
1868
+ })[keyof AllInteractions]}`;
1869
+ type NestedKey<D extends Record<string, string[]>> = "*" | {
1870
+ [P in keyof D & string]: `${P}.*` | `${P}.${D[P][number]}`;
1871
+ }[keyof D & string];