@decentro-dev/polkadot-sufficient-assets 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +60 -0
  3. package/package.json +99 -0
  4. package/packages/client/README.md +333 -0
  5. package/packages/client/dist/chain-specs/ksmcc3/index.d.mts +1 -0
  6. package/packages/client/dist/chain-specs/ksmcc3/index.d.ts +1 -0
  7. package/packages/client/dist/chain-specs/ksmcc3/index.js +2 -0
  8. package/packages/client/dist/chain-specs/ksmcc3/index.mjs +2 -0
  9. package/packages/client/dist/chain-specs/ksmcc3_asset_hub/index.d.mts +1 -0
  10. package/packages/client/dist/chain-specs/ksmcc3_asset_hub/index.d.ts +1 -0
  11. package/packages/client/dist/chain-specs/ksmcc3_asset_hub/index.js +2 -0
  12. package/packages/client/dist/chain-specs/ksmcc3_asset_hub/index.mjs +2 -0
  13. package/packages/client/dist/chain-specs/paseo/index.d.mts +1 -0
  14. package/packages/client/dist/chain-specs/paseo/index.d.ts +1 -0
  15. package/packages/client/dist/chain-specs/paseo/index.js +2 -0
  16. package/packages/client/dist/chain-specs/paseo/index.mjs +2 -0
  17. package/packages/client/dist/chain-specs/paseo_asset_hub/index.d.mts +1 -0
  18. package/packages/client/dist/chain-specs/paseo_asset_hub/index.d.ts +1 -0
  19. package/packages/client/dist/chain-specs/paseo_asset_hub/index.js +2 -0
  20. package/packages/client/dist/chain-specs/paseo_asset_hub/index.mjs +2 -0
  21. package/packages/client/dist/chain-specs/polkadot/index.d.mts +1 -0
  22. package/packages/client/dist/chain-specs/polkadot/index.d.ts +1 -0
  23. package/packages/client/dist/chain-specs/polkadot/index.js +2 -0
  24. package/packages/client/dist/chain-specs/polkadot/index.mjs +2 -0
  25. package/packages/client/dist/chain-specs/polkadot_asset_hub/index.d.mts +1 -0
  26. package/packages/client/dist/chain-specs/polkadot_asset_hub/index.d.ts +1 -0
  27. package/packages/client/dist/chain-specs/polkadot_asset_hub/index.js +2 -0
  28. package/packages/client/dist/chain-specs/polkadot_asset_hub/index.mjs +2 -0
  29. package/packages/client/dist/chain-specs/rococo_v2_2/index.d.mts +1 -0
  30. package/packages/client/dist/chain-specs/rococo_v2_2/index.d.ts +1 -0
  31. package/packages/client/dist/chain-specs/rococo_v2_2/index.js +2 -0
  32. package/packages/client/dist/chain-specs/rococo_v2_2/index.mjs +2 -0
  33. package/packages/client/dist/chain-specs/rococo_v2_2_asset_hub/index.d.mts +1 -0
  34. package/packages/client/dist/chain-specs/rococo_v2_2_asset_hub/index.d.ts +1 -0
  35. package/packages/client/dist/chain-specs/rococo_v2_2_asset_hub/index.js +2 -0
  36. package/packages/client/dist/chain-specs/rococo_v2_2_asset_hub/index.mjs +2 -0
  37. package/packages/client/dist/chain-specs/westend2/index.d.mts +1 -0
  38. package/packages/client/dist/chain-specs/westend2/index.d.ts +1 -0
  39. package/packages/client/dist/chain-specs/westend2/index.js +2 -0
  40. package/packages/client/dist/chain-specs/westend2/index.mjs +2 -0
  41. package/packages/client/dist/chain-specs/westend2_asset_hub/index.d.mts +1 -0
  42. package/packages/client/dist/chain-specs/westend2_asset_hub/index.d.ts +1 -0
  43. package/packages/client/dist/chain-specs/westend2_asset_hub/index.js +2 -0
  44. package/packages/client/dist/chain-specs/westend2_asset_hub/index.mjs +2 -0
  45. package/packages/client/dist/index.d.mts +106 -0
  46. package/packages/client/dist/index.d.ts +106 -0
  47. package/packages/client/dist/index.js +2 -0
  48. package/packages/client/dist/index.mjs +2 -0
  49. package/packages/client/dist/smoldot/from-node-worker/index.d.mts +1 -0
  50. package/packages/client/dist/smoldot/from-node-worker/index.d.ts +1 -0
  51. package/packages/client/dist/smoldot/from-node-worker/index.js +2 -0
  52. package/packages/client/dist/smoldot/from-node-worker/index.mjs +2 -0
  53. package/packages/client/dist/smoldot/from-worker/index.d.mts +1 -0
  54. package/packages/client/dist/smoldot/from-worker/index.d.ts +1 -0
  55. package/packages/client/dist/smoldot/from-worker/index.js +2 -0
  56. package/packages/client/dist/smoldot/from-worker/index.mjs +2 -0
  57. package/packages/client/dist/smoldot/index.d.mts +14 -0
  58. package/packages/client/dist/smoldot/index.d.ts +14 -0
  59. package/packages/client/dist/smoldot/index.js +2 -0
  60. package/packages/client/dist/smoldot/index.mjs +2 -0
  61. package/packages/client/dist/smoldot/worker/index.d.mts +1 -0
  62. package/packages/client/dist/smoldot/worker/index.d.ts +1 -0
  63. package/packages/client/dist/smoldot/worker/index.js +2 -0
  64. package/packages/client/dist/smoldot/worker/index.mjs +2 -0
  65. package/packages/core/.papi/descriptors/dist/common-types.d.ts +21274 -0
  66. package/packages/core/.papi/descriptors/dist/descriptors-EQXQJ7SL.mjs +1 -0
  67. package/packages/core/.papi/descriptors/dist/descriptors.d.ts +11 -0
  68. package/packages/core/.papi/descriptors/dist/hdx.d.ts +366 -0
  69. package/packages/core/.papi/descriptors/dist/hdx_metadata-XH2Y6EGQ.mjs +1 -0
  70. package/packages/core/.papi/descriptors/dist/hdx_metadata.d.ts +2 -0
  71. package/packages/core/.papi/descriptors/dist/index.d.mts +24579 -0
  72. package/packages/core/.papi/descriptors/dist/index.d.ts +23 -0
  73. package/packages/core/.papi/descriptors/dist/index.js +1 -0
  74. package/packages/core/.papi/descriptors/dist/index.mjs +1 -0
  75. package/packages/core/.papi/descriptors/dist/kah.d.ts +434 -0
  76. package/packages/core/.papi/descriptors/dist/kah_metadata-OCBL5LAN.mjs +1 -0
  77. package/packages/core/.papi/descriptors/dist/kah_metadata.d.ts +2 -0
  78. package/packages/core/.papi/descriptors/dist/kusama.d.ts +291 -0
  79. package/packages/core/.papi/descriptors/dist/kusama_metadata-TGJ43LLG.mjs +1 -0
  80. package/packages/core/.papi/descriptors/dist/kusama_metadata.d.ts +2 -0
  81. package/packages/core/.papi/descriptors/dist/metadataTypes-MIM6CGSL.mjs +1 -0
  82. package/packages/core/.papi/descriptors/dist/metadataTypes.d.ts +2 -0
  83. package/packages/core/.papi/descriptors/dist/pah.d.ts +434 -0
  84. package/packages/core/.papi/descriptors/dist/pah_metadata-JG7F7QDO.mjs +1 -0
  85. package/packages/core/.papi/descriptors/dist/pah_metadata.d.ts +2 -0
  86. package/packages/core/.papi/descriptors/dist/paseo.d.ts +291 -0
  87. package/packages/core/.papi/descriptors/dist/paseo_metadata-5VVMOYKO.mjs +1 -0
  88. package/packages/core/.papi/descriptors/dist/paseo_metadata.d.ts +2 -0
  89. package/packages/core/.papi/descriptors/dist/paseoah.d.ts +242 -0
  90. package/packages/core/.papi/descriptors/dist/paseoah_metadata-KVQKFE5R.mjs +1 -0
  91. package/packages/core/.papi/descriptors/dist/paseoah_metadata.d.ts +2 -0
  92. package/packages/core/.papi/descriptors/dist/polkadot.d.ts +291 -0
  93. package/packages/core/.papi/descriptors/dist/polkadot_metadata-ASE5745E.mjs +1 -0
  94. package/packages/core/.papi/descriptors/dist/polkadot_metadata.d.ts +2 -0
  95. package/packages/core/.papi/descriptors/dist/rah.d.ts +434 -0
  96. package/packages/core/.papi/descriptors/dist/rah_metadata-FL7L2MWD.mjs +1 -0
  97. package/packages/core/.papi/descriptors/dist/rah_metadata.d.ts +2 -0
  98. package/packages/core/.papi/descriptors/dist/rococo.d.ts +291 -0
  99. package/packages/core/.papi/descriptors/dist/rococo_metadata-CHYQZIV5.mjs +1 -0
  100. package/packages/core/.papi/descriptors/dist/rococo_metadata.d.ts +2 -0
  101. package/packages/core/.papi/descriptors/dist/wah.d.ts +434 -0
  102. package/packages/core/.papi/descriptors/dist/wah_metadata-M2H6IX7C.mjs +1 -0
  103. package/packages/core/.papi/descriptors/dist/wah_metadata.d.ts +2 -0
  104. package/packages/core/.papi/descriptors/dist/westend.d.ts +291 -0
  105. package/packages/core/.papi/descriptors/dist/westend_metadata-IAM3KHRQ.mjs +1 -0
  106. package/packages/core/.papi/descriptors/dist/westend_metadata.d.ts +2 -0
  107. package/packages/core/.papi/descriptors/package.json +24 -0
  108. package/packages/core/.papi/metadata/hdx.scale +0 -0
  109. package/packages/core/.papi/metadata/kah.scale +0 -0
  110. package/packages/core/.papi/metadata/kusama.scale +0 -0
  111. package/packages/core/.papi/metadata/pah.scale +0 -0
  112. package/packages/core/.papi/metadata/paseo.scale +0 -0
  113. package/packages/core/.papi/metadata/paseoah.scale +0 -0
  114. package/packages/core/.papi/metadata/polkadot.scale +0 -0
  115. package/packages/core/.papi/metadata/rah.scale +0 -0
  116. package/packages/core/.papi/metadata/rococo.scale +0 -0
  117. package/packages/core/.papi/metadata/wah.scale +0 -0
  118. package/packages/core/.papi/metadata/westend.scale +0 -0
  119. package/packages/core/.papi/polkadot-api.json +50 -0
  120. package/packages/core/dist/index.d.mts +676 -0
  121. package/packages/core/dist/index.d.ts +676 -0
  122. package/packages/core/dist/index.js +1 -0
  123. package/packages/core/dist/index.mjs +1 -0
@@ -0,0 +1,2 @@
1
+ declare const binMeta: string;
2
+ export default binMeta;
@@ -0,0 +1,434 @@
1
+ import { StorageDescriptor, PlainDescriptor, TxDescriptor, RuntimeDescriptor, Enum, QueryFromPalletsDef, TxFromPalletsDef, EventsFromPalletsDef, ErrorsFromPalletsDef, ConstFromPalletsDef, SS58String, Binary, FixedSizeBinary, FixedSizeArray } from "polkadot-api";
2
+ import { I5sesotjlssv2d, I1q8tnt1cluu5j, I3qklfjubrljqh, Iag3f1hum3p4c8, I7svnfko10tq2e, I78s05f59eoi8b, I4c0s5cioidn76, I7rv8d2nr55kkq, Id0as9l3s817qs, I4ktuaksf5i1gk, Iakevv83i18n4r, I5gi8h3e5lkbeq, I6mahckc73q3cs, I72tqocvdoqfff, Ikm68gg7akl51, I35p85j063s0il, I5vv5n03oo8gas, I8g3e3pmb9v816 } 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
+ Balances: {
21
+ /**
22
+ * The total units issued in the system.
23
+ */
24
+ TotalIssuance: StorageDescriptor<[], bigint, false, never>;
25
+ /**
26
+ * The Balances pallet example of storing the balance of an account.
27
+ *
28
+ * # Example
29
+ *
30
+ * ```nocompile
31
+ * impl pallet_balances::Config for Runtime {
32
+ * type AccountStore = StorageMapShim<Self::Account<Runtime>, frame_system::Provider<Runtime>, AccountId, Self::AccountData<Balance>>
33
+ * }
34
+ * ```
35
+ *
36
+ * You can also store the balance of an account in the `System` pallet.
37
+ *
38
+ * # Example
39
+ *
40
+ * ```nocompile
41
+ * impl pallet_balances::Config for Runtime {
42
+ * type AccountStore = System
43
+ * }
44
+ * ```
45
+ *
46
+ * But this comes with tradeoffs, storing account balances in the system pallet stores
47
+ * `frame_system` data alongside the account data contrary to storing account balances in the
48
+ * `Balances` pallet, which uses a `StorageMap` to store balances data only.
49
+ * NOTE: This is only used in the case that this pallet is used to store balances.
50
+ */
51
+ Account: StorageDescriptor<[Key: SS58String], Anonymize<I1q8tnt1cluu5j>, false, never>;
52
+ };
53
+ Assets: {
54
+ /**
55
+ * Details of an asset.
56
+ */
57
+ Asset: StorageDescriptor<[Key: number], Anonymize<I3qklfjubrljqh>, true, never>;
58
+ /**
59
+ * The holdings of a specific account for a specific asset.
60
+ */
61
+ Account: StorageDescriptor<Anonymize<I7svnfko10tq2e>, Anonymize<Iag3f1hum3p4c8>, true, never>;
62
+ /**
63
+ * Metadata of an asset.
64
+ */
65
+ Metadata: StorageDescriptor<[Key: number], Anonymize<I78s05f59eoi8b>, false, never>;
66
+ };
67
+ ForeignAssets: {
68
+ /**
69
+ * Details of an asset.
70
+ */
71
+ Asset: StorageDescriptor<[Key: Anonymize<I4c0s5cioidn76>], Anonymize<I3qklfjubrljqh>, true, never>;
72
+ /**
73
+ * The holdings of a specific account for a specific asset.
74
+ */
75
+ Account: StorageDescriptor<Anonymize<I7rv8d2nr55kkq>, Anonymize<Iag3f1hum3p4c8>, true, never>;
76
+ /**
77
+ * Metadata of an asset.
78
+ */
79
+ Metadata: StorageDescriptor<[Key: Anonymize<I4c0s5cioidn76>], Anonymize<I78s05f59eoi8b>, false, never>;
80
+ };
81
+ PoolAssets: {
82
+ /**
83
+ * Details of an asset.
84
+ */
85
+ Asset: StorageDescriptor<[Key: number], Anonymize<I3qklfjubrljqh>, true, never>;
86
+ /**
87
+ * The holdings of a specific account for a specific asset.
88
+ */
89
+ Account: StorageDescriptor<Anonymize<I7svnfko10tq2e>, Anonymize<Iag3f1hum3p4c8>, true, never>;
90
+ };
91
+ AssetConversion: {
92
+ /**
93
+ * Map from `PoolAssetId` to `PoolInfo`. This establishes whether a pool has been officially
94
+ * created rather than people sending tokens directly to a pool's public account.
95
+ */
96
+ Pools: StorageDescriptor<[Key: Anonymize<Id0as9l3s817qs>], number, true, never>;
97
+ };
98
+ };
99
+ type ICalls = {
100
+ Balances: {
101
+ /**
102
+ *Same as the [`transfer_allow_death`] call, but with a check that the transfer will not
103
+ *kill the origin account.
104
+ *
105
+ *99% of the time you want [`transfer_allow_death`] instead.
106
+ *
107
+ *[`transfer_allow_death`]: struct.Pallet.html#method.transfer
108
+ */
109
+ transfer_keep_alive: TxDescriptor<Anonymize<I4ktuaksf5i1gk>>;
110
+ };
111
+ PolkadotXcm: {
112
+ /**
113
+ *Teleport some assets from the local chain to some destination chain.
114
+ *
115
+ ***This function is deprecated: Use `limited_teleport_assets` instead.**
116
+ *
117
+ *Fee payment on the destination side is made from the asset in the `assets` vector of
118
+ *index `fee_asset_item`. The weight limit for fees is not provided and thus is unlimited,
119
+ *with all fees taken as needed from the asset.
120
+ *
121
+ *- `origin`: Must be capable of withdrawing the `assets` and executing XCM.
122
+ *- `dest`: Destination context for the assets. Will typically be `[Parent,
123
+ * Parachain(..)]` to send from parachain to parachain, or `[Parachain(..)]` to send from
124
+ * relay to parachain.
125
+ *- `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will
126
+ * generally be an `AccountId32` value.
127
+ *- `assets`: The assets to be withdrawn. This should include the assets used to pay the
128
+ * fee on the `dest` chain.
129
+ *- `fee_asset_item`: The index into `assets` of the item which should be used to pay
130
+ * fees.
131
+ */
132
+ teleport_assets: TxDescriptor<Anonymize<Iakevv83i18n4r>>;
133
+ /**
134
+ *Transfer some assets from the local chain to the destination chain through their local,
135
+ *destination or remote reserve.
136
+ *
137
+ *`assets` must have same reserve location and may not be teleportable to `dest`.
138
+ * - `assets` have local reserve: transfer assets to sovereign account of destination
139
+ * chain and forward a notification XCM to `dest` to mint and deposit reserve-based
140
+ * assets to `beneficiary`.
141
+ * - `assets` have destination reserve: burn local assets and forward a notification to
142
+ * `dest` chain to withdraw the reserve assets from this chain's sovereign account and
143
+ * deposit them to `beneficiary`.
144
+ * - `assets` have remote reserve: burn local assets, forward XCM to reserve chain to move
145
+ * reserves from this chain's SA to `dest` chain's SA, and forward another XCM to `dest`
146
+ * to mint and deposit reserve-based assets to `beneficiary`.
147
+ *
148
+ ***This function is deprecated: Use `limited_reserve_transfer_assets` instead.**
149
+ *
150
+ *Fee payment on the destination side is made from the asset in the `assets` vector of
151
+ *index `fee_asset_item`. The weight limit for fees is not provided and thus is unlimited,
152
+ *with all fees taken as needed from the asset.
153
+ *
154
+ *- `origin`: Must be capable of withdrawing the `assets` and executing XCM.
155
+ *- `dest`: Destination context for the assets. Will typically be `[Parent,
156
+ * Parachain(..)]` to send from parachain to parachain, or `[Parachain(..)]` to send from
157
+ * relay to parachain.
158
+ *- `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will
159
+ * generally be an `AccountId32` value.
160
+ *- `assets`: The assets to be withdrawn. This should include the assets used to pay the
161
+ * fee on the `dest` (and possibly reserve) chains.
162
+ *- `fee_asset_item`: The index into `assets` of the item which should be used to pay
163
+ * fees.
164
+ */
165
+ reserve_transfer_assets: TxDescriptor<Anonymize<Iakevv83i18n4r>>;
166
+ /**
167
+ *Transfer some assets from the local chain to the destination chain through their local,
168
+ *destination or remote reserve.
169
+ *
170
+ *`assets` must have same reserve location and may not be teleportable to `dest`.
171
+ * - `assets` have local reserve: transfer assets to sovereign account of destination
172
+ * chain and forward a notification XCM to `dest` to mint and deposit reserve-based
173
+ * assets to `beneficiary`.
174
+ * - `assets` have destination reserve: burn local assets and forward a notification to
175
+ * `dest` chain to withdraw the reserve assets from this chain's sovereign account and
176
+ * deposit them to `beneficiary`.
177
+ * - `assets` have remote reserve: burn local assets, forward XCM to reserve chain to move
178
+ * reserves from this chain's SA to `dest` chain's SA, and forward another XCM to `dest`
179
+ * to mint and deposit reserve-based assets to `beneficiary`.
180
+ *
181
+ *Fee payment on the destination side is made from the asset in the `assets` vector of
182
+ *index `fee_asset_item`, up to enough to pay for `weight_limit` of weight. If more weight
183
+ *is needed than `weight_limit`, then the operation will fail and the sent assets may be
184
+ *at risk.
185
+ *
186
+ *- `origin`: Must be capable of withdrawing the `assets` and executing XCM.
187
+ *- `dest`: Destination context for the assets. Will typically be `[Parent,
188
+ * Parachain(..)]` to send from parachain to parachain, or `[Parachain(..)]` to send from
189
+ * relay to parachain.
190
+ *- `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will
191
+ * generally be an `AccountId32` value.
192
+ *- `assets`: The assets to be withdrawn. This should include the assets used to pay the
193
+ * fee on the `dest` (and possibly reserve) chains.
194
+ *- `fee_asset_item`: The index into `assets` of the item which should be used to pay
195
+ * fees.
196
+ *- `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase.
197
+ */
198
+ limited_reserve_transfer_assets: TxDescriptor<Anonymize<I5gi8h3e5lkbeq>>;
199
+ /**
200
+ *Teleport some assets from the local chain to some destination chain.
201
+ *
202
+ *Fee payment on the destination side is made from the asset in the `assets` vector of
203
+ *index `fee_asset_item`, up to enough to pay for `weight_limit` of weight. If more weight
204
+ *is needed than `weight_limit`, then the operation will fail and the sent assets may be
205
+ *at risk.
206
+ *
207
+ *- `origin`: Must be capable of withdrawing the `assets` and executing XCM.
208
+ *- `dest`: Destination context for the assets. Will typically be `[Parent,
209
+ * Parachain(..)]` to send from parachain to parachain, or `[Parachain(..)]` to send from
210
+ * relay to parachain.
211
+ *- `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will
212
+ * generally be an `AccountId32` value.
213
+ *- `assets`: The assets to be withdrawn. This should include the assets used to pay the
214
+ * fee on the `dest` chain.
215
+ *- `fee_asset_item`: The index into `assets` of the item which should be used to pay
216
+ * fees.
217
+ *- `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase.
218
+ */
219
+ limited_teleport_assets: TxDescriptor<Anonymize<I5gi8h3e5lkbeq>>;
220
+ /**
221
+ *Transfer some assets from the local chain to the destination chain through their local,
222
+ *destination or remote reserve, or through teleports.
223
+ *
224
+ *Fee payment on the destination side is made from the asset in the `assets` vector of
225
+ *index `fee_asset_item` (hence referred to as `fees`), up to enough to pay for
226
+ *`weight_limit` of weight. If more weight is needed than `weight_limit`, then the
227
+ *operation will fail and the sent assets may be at risk.
228
+ *
229
+ *`assets` (excluding `fees`) must have same reserve location or otherwise be teleportable
230
+ *to `dest`, no limitations imposed on `fees`.
231
+ * - for local reserve: transfer assets to sovereign account of destination chain and
232
+ * forward a notification XCM to `dest` to mint and deposit reserve-based assets to
233
+ * `beneficiary`.
234
+ * - for destination reserve: burn local assets and forward a notification to `dest` chain
235
+ * to withdraw the reserve assets from this chain's sovereign account and deposit them
236
+ * to `beneficiary`.
237
+ * - for remote reserve: burn local assets, forward XCM to reserve chain to move reserves
238
+ * from this chain's SA to `dest` chain's SA, and forward another XCM to `dest` to mint
239
+ * and deposit reserve-based assets to `beneficiary`.
240
+ * - for teleports: burn local assets and forward XCM to `dest` chain to mint/teleport
241
+ * assets and deposit them to `beneficiary`.
242
+ *
243
+ *- `origin`: Must be capable of withdrawing the `assets` and executing XCM.
244
+ *- `dest`: Destination context for the assets. Will typically be `X2(Parent,
245
+ * Parachain(..))` to send from parachain to parachain, or `X1(Parachain(..))` to send
246
+ * from relay to parachain.
247
+ *- `beneficiary`: A beneficiary location for the assets in the context of `dest`. Will
248
+ * generally be an `AccountId32` value.
249
+ *- `assets`: The assets to be withdrawn. This should include the assets used to pay the
250
+ * fee on the `dest` (and possibly reserve) chains.
251
+ *- `fee_asset_item`: The index into `assets` of the item which should be used to pay
252
+ * fees.
253
+ *- `weight_limit`: The remote-side weight limit, if any, for the XCM fee purchase.
254
+ */
255
+ transfer_assets: TxDescriptor<Anonymize<I5gi8h3e5lkbeq>>;
256
+ };
257
+ Utility: {
258
+ /**
259
+ *Send a batch of dispatch calls and atomically execute them.
260
+ *The whole transaction will rollback and fail if any of the calls failed.
261
+ *
262
+ *May be called from any origin except `None`.
263
+ *
264
+ *- `calls`: The calls to be dispatched from the same origin. The number of call must not
265
+ * exceed the constant: `batched_calls_limit` (available in constant metadata).
266
+ *
267
+ *If origin is root then the calls are dispatched without checking origin filter. (This
268
+ *includes bypassing `frame_system::Config::BaseCallFilter`).
269
+ *
270
+ *## Complexity
271
+ *- O(C) where C is the number of calls to be batched.
272
+ */
273
+ batch_all: TxDescriptor<Anonymize<I6mahckc73q3cs>>;
274
+ };
275
+ Assets: {
276
+ /**
277
+ *Move some assets from the sender account to another.
278
+ *
279
+ *Origin must be Signed.
280
+ *
281
+ *- `id`: The identifier of the asset to have some amount transferred.
282
+ *- `target`: The account to be credited.
283
+ *- `amount`: The amount by which the sender's balance of assets should be reduced and
284
+ *`target`'s balance increased. The amount actually transferred may be slightly greater in
285
+ *the case that the transfer would otherwise take the sender balance above zero but below
286
+ *the minimum balance. Must be greater than zero.
287
+ *
288
+ *Emits `Transferred` with the actual amount transferred. If this takes the source balance
289
+ *to below the minimum for the asset, then the amount transferred is increased to take it
290
+ *to zero.
291
+ *
292
+ *Weight: `O(1)`
293
+ *Modes: Pre-existence of `target`; Post-existence of sender; Account pre-existence of
294
+ *`target`.
295
+ */
296
+ transfer: TxDescriptor<Anonymize<I72tqocvdoqfff>>;
297
+ /**
298
+ *Move some assets from the sender account to another, keeping the sender account alive.
299
+ *
300
+ *Origin must be Signed.
301
+ *
302
+ *- `id`: The identifier of the asset to have some amount transferred.
303
+ *- `target`: The account to be credited.
304
+ *- `amount`: The amount by which the sender's balance of assets should be reduced and
305
+ *`target`'s balance increased. The amount actually transferred may be slightly greater in
306
+ *the case that the transfer would otherwise take the sender balance above zero but below
307
+ *the minimum balance. Must be greater than zero.
308
+ *
309
+ *Emits `Transferred` with the actual amount transferred. If this takes the source balance
310
+ *to below the minimum for the asset, then the amount transferred is increased to take it
311
+ *to zero.
312
+ *
313
+ *Weight: `O(1)`
314
+ *Modes: Pre-existence of `target`; Post-existence of sender; Account pre-existence of
315
+ *`target`.
316
+ */
317
+ transfer_keep_alive: TxDescriptor<Anonymize<I72tqocvdoqfff>>;
318
+ };
319
+ ForeignAssets: {
320
+ /**
321
+ *Move some assets from the sender account to another.
322
+ *
323
+ *Origin must be Signed.
324
+ *
325
+ *- `id`: The identifier of the asset to have some amount transferred.
326
+ *- `target`: The account to be credited.
327
+ *- `amount`: The amount by which the sender's balance of assets should be reduced and
328
+ *`target`'s balance increased. The amount actually transferred may be slightly greater in
329
+ *the case that the transfer would otherwise take the sender balance above zero but below
330
+ *the minimum balance. Must be greater than zero.
331
+ *
332
+ *Emits `Transferred` with the actual amount transferred. If this takes the source balance
333
+ *to below the minimum for the asset, then the amount transferred is increased to take it
334
+ *to zero.
335
+ *
336
+ *Weight: `O(1)`
337
+ *Modes: Pre-existence of `target`; Post-existence of sender; Account pre-existence of
338
+ *`target`.
339
+ */
340
+ transfer: TxDescriptor<Anonymize<Ikm68gg7akl51>>;
341
+ };
342
+ };
343
+ type IEvent = {};
344
+ type IError = {};
345
+ type IConstants = {
346
+ Balances: {
347
+ /**
348
+ * The minimum amount required to keep an account open. MUST BE GREATER THAN ZERO!
349
+ *
350
+ * If you *really* need it to be zero, you can enable the feature `insecure_zero_ed` for
351
+ * this pallet. However, you do so at your own risk: this will open up a major DoS vector.
352
+ * In case you have multiple sources of provider references, you may also get unexpected
353
+ * behaviour if you set this to zero.
354
+ *
355
+ * Bottom line: Do yourself a favour and make it at least one!
356
+ */
357
+ ExistentialDeposit: PlainDescriptor<bigint>;
358
+ };
359
+ AssetConversion: {
360
+ /**
361
+ * A % the liquidity providers will take of every swap. Represents 10ths of a percent.
362
+ */
363
+ LPFee: PlainDescriptor<number>;
364
+ };
365
+ };
366
+ type IRuntimeCalls = {
367
+ /**
368
+ * This runtime api allows people to query the size of the liquidity pools
369
+ * and quote prices for swaps.
370
+ */
371
+ AssetConversionApi: {
372
+ /**
373
+ * Provides a quote for [`Pallet::swap_tokens_for_exact_tokens`].
374
+ *
375
+ * Note that the price may have changed by the time the transaction is executed.
376
+ * (Use `amount_in_max` to control slippage.)
377
+ */
378
+ quote_price_tokens_for_exact_tokens: RuntimeDescriptor<[asset1: Anonymize<I4c0s5cioidn76>, asset2: Anonymize<I4c0s5cioidn76>, amount: bigint, include_fee: boolean], Anonymize<I35p85j063s0il>>;
379
+ /**
380
+ * Provides a quote for [`Pallet::swap_exact_tokens_for_tokens`].
381
+ *
382
+ * Note that the price may have changed by the time the transaction is executed.
383
+ * (Use `amount_out_min` to control slippage.)
384
+ */
385
+ quote_price_exact_tokens_for_tokens: RuntimeDescriptor<[asset1: Anonymize<I4c0s5cioidn76>, asset2: Anonymize<I4c0s5cioidn76>, amount: bigint, include_fee: boolean], Anonymize<I35p85j063s0il>>;
386
+ /**
387
+ * Returns the size of the liquidity pool for the given asset pair.
388
+ */
389
+ get_reserves: RuntimeDescriptor<[asset1: Anonymize<I4c0s5cioidn76>, asset2: Anonymize<I4c0s5cioidn76>], Anonymize<I5vv5n03oo8gas>>;
390
+ };
391
+ };
392
+ type IAsset = PlainDescriptor<Anonymize<I4c0s5cioidn76>>;
393
+ export type RahDispatchError = unknown;
394
+ type PalletsTypedef = {
395
+ __storage: IStorage;
396
+ __tx: ICalls;
397
+ __event: IEvent;
398
+ __error: IError;
399
+ __const: IConstants;
400
+ };
401
+ type IDescriptors = {
402
+ descriptors: {
403
+ pallets: PalletsTypedef;
404
+ apis: IRuntimeCalls;
405
+ } & Promise<any>;
406
+ metadataTypes: Promise<Uint8Array>;
407
+ asset: IAsset;
408
+ getMetadata: () => Promise<Uint8Array>;
409
+ genesis: string | undefined;
410
+ };
411
+ declare const _allDescriptors: IDescriptors;
412
+ export default _allDescriptors;
413
+ export type RahQueries = QueryFromPalletsDef<PalletsTypedef>;
414
+ export type RahCalls = TxFromPalletsDef<PalletsTypedef>;
415
+ export type RahEvents = EventsFromPalletsDef<PalletsTypedef>;
416
+ export type RahErrors = ErrorsFromPalletsDef<PalletsTypedef>;
417
+ export type RahConstants = ConstFromPalletsDef<PalletsTypedef>;
418
+ export type RahCallData = Anonymize<I8g3e3pmb9v816> & {
419
+ value: {
420
+ type: string;
421
+ };
422
+ };
423
+ export type RahWhitelistEntry = PalletKey | ApiKey<IRuntimeCalls> | `query.${NestedKey<PalletsTypedef['__storage']>}` | `tx.${NestedKey<PalletsTypedef['__tx']>}` | `event.${NestedKey<PalletsTypedef['__event']>}` | `error.${NestedKey<PalletsTypedef['__error']>}` | `const.${NestedKey<PalletsTypedef['__const']>}`;
424
+ type PalletKey = `*.${keyof (IStorage & ICalls & IEvent & IError & IConstants & IRuntimeCalls)}`;
425
+ type NestedKey<D extends Record<string, Record<string, any>>> = "*" | {
426
+ [P in keyof D & string]: `${P}.*` | {
427
+ [N in keyof D[P] & string]: `${P}.${N}`;
428
+ }[keyof D[P] & string];
429
+ }[keyof D & string];
430
+ type ApiKey<D extends Record<string, Record<string, any>>> = "api.*" | {
431
+ [P in keyof D & string]: `api.${P}.*` | {
432
+ [N in keyof D[P] & string]: `api.${P}.${N}`;
433
+ }[keyof D[P] & string];
434
+ }[keyof D & string];