@paraspell/sdk-core 10.11.9 → 11.0.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.
Files changed (4) hide show
  1. package/dist/index.cjs +1391 -1334
  2. package/dist/index.d.ts +358 -352
  3. package/dist/index.mjs +1374 -1319
  4. package/package.json +5 -5
package/dist/index.d.ts CHANGED
@@ -1,8 +1,8 @@
1
1
  import * as _paraspell_sdk_common from '@paraspell/sdk-common';
2
- import { TMultiLocation, TNodeDotKsmWithRelayChains, TNodeWithRelayChains, Version, TRelayChain, TNodePolkadotKusama, TNode, TJunction, TEcosystemType, TJunctions } from '@paraspell/sdk-common';
2
+ import { TLocation, TSubstrateChain, TChain, Version, TRelaychain, TParachain, TExternalChain, TJunction, TJunctions } from '@paraspell/sdk-common';
3
3
  export * from '@paraspell/sdk-common';
4
4
  import * as _paraspell_assets from '@paraspell/assets';
5
- import { TCurrencyInputWithAmount, TCurrencyInput, WithAmount, TAsset, TMultiAsset, TMultiAssetWithFee, TAmount, TCurrencyCore, WithComplexAmount, TAssetWithLocation, TForeignAssetWithId, TForeignAsset } from '@paraspell/assets';
5
+ import { TCurrencyInputWithAmount, TCurrencyInput, WithAmount, TAssetInfo, TAsset, TAssetWithFee, WithComplexAmount, TCurrencyCore, TAmount, TAssetWithLocation, TForeignAssetWithId, TForeignAssetInfo } from '@paraspell/assets';
6
6
  export * from '@paraspell/assets';
7
7
  import { TPallet } from '@paraspell/pallets';
8
8
  export * from '@paraspell/pallets';
@@ -15,15 +15,15 @@ type TApiOrUrl<TApi> = TApi | string | string[];
15
15
 
16
16
  type TPolkadotXCMTransferOptions<TApi, TRes> = {
17
17
  api: IPolkadotApi<TApi, TRes>;
18
- destLocation: TMultiLocation;
19
- beneficiaryLocation: TMultiLocation;
18
+ destLocation: TLocation;
19
+ beneficiaryLocation: TLocation;
20
20
  address: TAddress;
21
- multiAsset: TMultiAsset;
22
- overriddenAsset?: TMultiLocation | TMultiAssetWithFee[];
21
+ asset: TAsset;
22
+ overriddenAsset?: TLocation | TAssetWithFee[];
23
23
  scenario: TScenario;
24
- asset: WithAmount<TAsset>;
24
+ assetInfo: WithAmount<TAssetInfo>;
25
25
  currency: TCurrencyInputWithAmount;
26
- feeAsset?: TAsset;
26
+ feeAssetInfo?: TAssetInfo;
27
27
  feeCurrency?: TCurrencyInput;
28
28
  destination: TDestination;
29
29
  paraIdTo?: number;
@@ -35,26 +35,26 @@ type TPolkadotXCMTransferOptions<TApi, TRes> = {
35
35
  };
36
36
  type TXTokensTransferOptions<TApi, TRes> = {
37
37
  api: IPolkadotApi<TApi, TRes>;
38
- asset: WithAmount<TAsset>;
38
+ asset: WithAmount<TAssetInfo>;
39
39
  address: TAddress;
40
40
  scenario: TScenario;
41
- origin: TNodePolkadotKusama;
41
+ origin: TParachain;
42
42
  destination: TDestination;
43
43
  paraIdTo?: number;
44
44
  version: Version;
45
- overriddenAsset?: TMultiLocation | TMultiAssetWithFee[];
45
+ overriddenAsset?: TLocation | TAssetWithFee[];
46
46
  pallet?: string;
47
47
  method?: string;
48
48
  useMultiAssetTransfer?: boolean;
49
49
  };
50
50
  type TXTransferTransferOptions<TApi, TRes> = {
51
51
  api: IPolkadotApi<TApi, TRes>;
52
- asset: WithAmount<TAsset>;
52
+ asset: WithAmount<TAssetInfo>;
53
53
  recipientAddress: TAddress;
54
- origin: TNodePolkadotKusama;
54
+ origin: TParachain;
55
55
  paraIdTo?: number;
56
56
  destination: TDestination;
57
- overriddenAsset?: TMultiLocation | TMultiAsset[];
57
+ overriddenAsset?: TLocation | TAsset[];
58
58
  pallet?: string;
59
59
  method?: string;
60
60
  };
@@ -68,14 +68,14 @@ interface IXTransferTransfer {
68
68
  transferXTransfer: <TApi, TRes>(input: TXTransferTransferOptions<TApi, TRes>) => TRes;
69
69
  }
70
70
  type TScenario = 'ParaToRelay' | 'ParaToPara' | 'RelayToPara';
71
- type TAddress = string | TMultiLocation;
72
- type TDestination = TNodeWithRelayChains | TMultiLocation;
73
- type TRelayToParaDestination = TNodePolkadotKusama | TMultiLocation;
71
+ type TAddress = string | TLocation;
72
+ type TDestination = TChain | TLocation;
73
+ type TRelayToParaDestination = TParachain | TLocation;
74
74
  type TSendBaseOptions = {
75
75
  /**
76
- * The origin node
76
+ * The origin chain
77
77
  */
78
- from: TNodeDotKsmWithRelayChains;
78
+ from: TSubstrateChain;
79
79
  /**
80
80
  * The destination address. A SS58 or H160 format.
81
81
  */
@@ -89,15 +89,15 @@ type TSendBaseOptions = {
89
89
  */
90
90
  ahAddress?: string;
91
91
  /**
92
- * The destination node or multi-location
92
+ * The destination chain or XCM location
93
93
  */
94
94
  to: TDestination;
95
95
  /**
96
- * The currency to transfer. Either ID, symbol, multi-location, or multi-asset
96
+ * The currency to transfer. Either ID, symbol, location, or multi-asset
97
97
  */
98
98
  currency: TCurrencyInputWithAmount;
99
99
  /**
100
- * The optional fee asset. Either ID, symbol, or multi-location
100
+ * The optional fee asset. Either ID, symbol, or location
101
101
  */
102
102
  feeAsset?: TCurrencyInput;
103
103
  /**
@@ -130,19 +130,19 @@ type WithRequiredSenderAddress<TBase> = Omit<TBase, 'senderAddress'> & {
130
130
  type TSendBaseOptionsWithSenderAddress = WithRequiredSenderAddress<TSendBaseOptions>;
131
131
  type TSendInternalOptions<TApi, TRes> = Omit<TSendBaseOptions, 'from' | 'feeAsset' | 'version'> & {
132
132
  api: IPolkadotApi<TApi, TRes>;
133
- asset: WithAmount<TAsset>;
134
- feeAsset?: TAsset;
133
+ assetInfo: WithAmount<TAssetInfo>;
134
+ feeAsset?: TAssetInfo;
135
135
  feeCurrency?: TCurrencyInput;
136
- overriddenAsset?: TMultiLocation | TMultiAssetWithFee[];
136
+ overriddenAsset?: TLocation | TAssetWithFee[];
137
137
  version: Version;
138
138
  };
139
139
  type TRelayToParaBaseOptions = {
140
140
  /**
141
- * The origin node
141
+ * The origin chain
142
142
  */
143
- origin: TRelayChain;
143
+ origin: TRelaychain;
144
144
  /**
145
- * The destination node or multi-location
145
+ * The destination chain or XCM location
146
146
  */
147
147
  destination: TRelayToParaDestination;
148
148
  /**
@@ -160,7 +160,7 @@ type TRelayToParaBaseOptions = {
160
160
  /**
161
161
  * The DOT or KSM asset to transfer
162
162
  */
163
- asset: WithAmount<TAsset>;
163
+ assetInfo: WithAmount<TAssetInfo>;
164
164
  /**
165
165
  * The optional pallet override
166
166
  */
@@ -202,7 +202,7 @@ type TCreateBeneficiaryOptions<TApi, TRes> = {
202
202
  };
203
203
  type TCreateBeneficiaryXTokensOptions<TApi, TRes> = {
204
204
  api: IPolkadotApi<TApi, TRes>;
205
- origin: TNodeDotKsmWithRelayChains;
205
+ origin: TSubstrateChain;
206
206
  destination: TDestination;
207
207
  address: TAddress;
208
208
  version: Version;
@@ -217,10 +217,10 @@ type TTransferFeeEstimates = {
217
217
  reserveFee: bigint;
218
218
  };
219
219
  type TCreateBaseTransferXcmOptions = {
220
- chain: TNodeDotKsmWithRelayChains;
221
- destChain: TNodeWithRelayChains;
222
- asset: WithAmount<TAsset>;
223
- feeAsset?: TAsset;
220
+ chain: TSubstrateChain;
221
+ destChain: TChain;
222
+ assetInfo: WithAmount<TAssetInfo>;
223
+ feeAssetInfo?: TAssetInfo;
224
224
  fees: TTransferFeeEstimates;
225
225
  recipientAddress: string;
226
226
  version: Version;
@@ -228,15 +228,15 @@ type TCreateBaseTransferXcmOptions = {
228
228
  };
229
229
  type TCreateTransferXcmOptions<TApi, TRes> = WithApi<TCreateBaseTransferXcmOptions, TApi, TRes>;
230
230
  type TCreateBaseSwapXcmOptions = {
231
- chain?: TNodeDotKsmWithRelayChains;
232
- exchangeChain: TNodePolkadotKusama;
233
- destChain?: TNodeWithRelayChains;
234
- assetFrom: WithAmount<TAsset>;
235
- assetTo: WithAmount<TAsset>;
231
+ chain?: TSubstrateChain;
232
+ exchangeChain: TParachain;
233
+ destChain?: TChain;
234
+ assetInfoFrom: WithAmount<TAssetInfo>;
235
+ assetInfoTo: WithAmount<TAssetInfo>;
236
236
  currencyTo: TCurrencyInput;
237
237
  senderAddress: string;
238
238
  recipientAddress: string;
239
- calculateMinAmountOut: (amountIn: bigint, assetTo?: TAsset) => Promise<bigint>;
239
+ calculateMinAmountOut: (amountIn: bigint, assetTo?: TAssetInfo) => Promise<bigint>;
240
240
  };
241
241
  type TCreateSwapXcmOptions<TApi, TRes> = WithApi<TCreateBaseSwapXcmOptions, TApi, TRes>;
242
242
  type TSwapFeeEstimates = {
@@ -251,12 +251,16 @@ type TCreateSwapXcmInternalOptions<TApi, TRes> = WithApi<TCreateBaseSwapXcmOptio
251
251
  };
252
252
 
253
253
  type TAssetClaimOptionsBase = {
254
- node: TNodeWithRelayChains;
255
- multiAssets: TMultiAsset[];
254
+ chain: TSubstrateChain;
255
+ currency: WithComplexAmount<TCurrencyCore> | TAsset<TAmount>[] | WithComplexAmount<TCurrencyCore>[];
256
256
  address: TAddress;
257
257
  version?: Version;
258
258
  };
259
259
  type TAssetClaimOptions<TApi, TRes> = WithApi<TAssetClaimOptionsBase, TApi, TRes>;
260
+ type TAssetClaimInternalOptions<TApi, TRes> = TAssetClaimOptions<TApi, TRes> & {
261
+ version: Version;
262
+ assets: TAsset<bigint>[];
263
+ };
260
264
 
261
265
  /**
262
266
  * Builder class for constructing asset claim transactions.
@@ -268,11 +272,11 @@ declare class AssetClaimBuilder<TApi, TRes, T extends Partial<TAssetClaimOptions
268
272
  /**
269
273
  * Specifies the assets to be claimed.
270
274
  *
271
- * @param multiAssets - An array of assets to claim in a multi-asset format.
275
+ * @param assets - An array of assets to claim in a multi-asset format.
272
276
  * @returns An instance of Builder
273
277
  */
274
- fungible(multiAssets: TMultiAsset<TAmount>[]): AssetClaimBuilder<TApi, TRes, T & {
275
- multiAssets: TMultiAsset[];
278
+ currency(currency: TAssetClaimOptionsBase['currency']): AssetClaimBuilder<TApi, TRes, T & {
279
+ currency: TAssetClaimOptionsBase['currency'];
276
280
  }>;
277
281
  /**
278
282
  * Specifies the account address on which the assets will be claimed.
@@ -280,7 +284,7 @@ declare class AssetClaimBuilder<TApi, TRes, T extends Partial<TAssetClaimOptions
280
284
  * @param address - The destination account address.
281
285
  * @returns An instance of Builder
282
286
  */
283
- account(address: TAddress): AssetClaimBuilder<TApi, TRes, T & {
287
+ address(address: TAddress): AssetClaimBuilder<TApi, TRes, T & {
284
288
  address: TAddress;
285
289
  }>;
286
290
  /**
@@ -316,7 +320,7 @@ declare class BatchTransactionManager<TApi, TRes> {
316
320
  transactionOptions: TSendOptions<TApi, TRes>[];
317
321
  addTransaction(options: TSendOptions<TApi, TRes>): void;
318
322
  isEmpty(): boolean;
319
- buildBatch(api: IPolkadotApi<TApi, TRes>, from: TNodeDotKsmWithRelayChains, options?: TBatchOptions): Promise<TRes>;
323
+ buildBatch(api: IPolkadotApi<TApi, TRes>, from: TSubstrateChain, options?: TBatchOptions): Promise<TRes>;
320
324
  }
321
325
 
322
326
  /**
@@ -328,35 +332,35 @@ declare class GeneralBuilder<TApi, TRes, T extends Partial<TSendBaseOptions> = o
328
332
  readonly _options: T;
329
333
  constructor(api: IPolkadotApi<TApi, TRes>, batchManager: BatchTransactionManager<TApi, TRes>, options?: T);
330
334
  /**
331
- * Specifies the origin node for the transaction.
335
+ * Specifies the origin chain for the transaction.
332
336
  *
333
- * @param node - The node from which the transaction originates.
337
+ * @param chain - The chain from which the transaction originates.
334
338
  * @returns An instance of Builder
335
339
  */
336
- from(node: TNodeDotKsmWithRelayChains): GeneralBuilder<TApi, TRes, T & {
337
- from: TNodeDotKsmWithRelayChains;
340
+ from(chain: TSubstrateChain): GeneralBuilder<TApi, TRes, T & {
341
+ from: TSubstrateChain;
338
342
  }>;
339
343
  /**
340
- * Specifies the destination node for the transaction.
344
+ * Specifies the destination chain for the transaction.
341
345
  *
342
- * @param node - The node to which the transaction is sent.
343
- * @param paraIdTo - (Optional) The parachain ID of the destination node.
346
+ * @param chain - The chain to which the transaction is sent.
347
+ * @param paraIdTo - (Optional) The parachain ID of the destination chain.
344
348
  * @returns An instance of Builder
345
349
  */
346
- to(node: TDestination, paraIdTo?: number): GeneralBuilder<TApi, TRes, T & {
350
+ to(chain: TDestination, paraIdTo?: number): GeneralBuilder<TApi, TRes, T & {
347
351
  to: TDestination;
348
352
  }>;
349
353
  /**
350
- * Initiates the process to claim assets from a specified node.
354
+ * Initiates the process to claim assets from a specified chain.
351
355
  *
352
- * @param node - The node from which to claim assets.
356
+ * @param chain - The chain from which to claim assets.
353
357
  * @returns An instance of Builder
354
358
  */
355
- claimFrom(node: TNodeWithRelayChains): AssetClaimBuilder<TApi, TRes, {
356
- node: TNodeWithRelayChains;
359
+ claimFrom(chain: TSubstrateChain): AssetClaimBuilder<TApi, TRes, {
360
+ chain: TSubstrateChain;
357
361
  }>;
358
362
  /**
359
- * Specifies the currency to be used in the transaction. Symbol, ID, multi-location or multi-asset.
363
+ * Specifies the currency to be used in the transaction. Symbol, ID, location or multi-asset.
360
364
  *
361
365
  * @param currency - The currency to be transferred.
362
366
  * @returns An instance of Builder
@@ -425,7 +429,7 @@ declare class GeneralBuilder<TApi, TRes, T extends Partial<TSendBaseOptions> = o
425
429
  * @returns An instance of Builder
426
430
  */
427
431
  addToBatch(this: GeneralBuilder<TApi, TRes, TSendBaseOptions>): GeneralBuilder<TApi, TRes, T & {
428
- from: TNodeDotKsmWithRelayChains;
432
+ from: TSubstrateChain;
429
433
  }>;
430
434
  /**
431
435
  * Builds and returns the batched transaction based on the configured parameters.
@@ -514,7 +518,7 @@ type TBalanceResponse = {
514
518
  balance?: string;
515
519
  };
516
520
  /**
517
- * Retrieves the native asset balance for a given account on a specified node.
521
+ * Retrieves the native asset balance for a given account on a specified chain.
518
522
  */
519
523
  type TGetBalanceNativeOptionsBase = {
520
524
  /**
@@ -522,9 +526,9 @@ type TGetBalanceNativeOptionsBase = {
522
526
  */
523
527
  address: string;
524
528
  /**
525
- * The node on which to query the balance.
529
+ * The chain on which to query the balance.
526
530
  */
527
- node: TNodeWithRelayChains;
531
+ chain: TChain;
528
532
  /**
529
533
  * The native currency to query.
530
534
  */
@@ -534,14 +538,14 @@ type TGetBalanceNativeOptionsBase = {
534
538
  };
535
539
  type TGetBalanceNativeOptions<TApi, TRes> = WithApi<TGetBalanceNativeOptionsBase, TApi, TRes>;
536
540
  /**
537
- * Retrieves the balance of a foreign asset for a given account on a specified node.
541
+ * Retrieves the balance of a foreign asset for a given account on a specified chain.
538
542
  */
539
543
  type TGetBalanceForeignOptionsBase = {
540
544
  address: string;
541
545
  /**
542
- * The node on which to query the balance.
546
+ * The chain on which to query the balance.
543
547
  */
544
- node: TNode;
548
+ chain: TChain;
545
549
  /**
546
550
  * The currency to query.
547
551
  */
@@ -549,7 +553,7 @@ type TGetBalanceForeignOptionsBase = {
549
553
  };
550
554
  type TGetBalanceForeignOptions<TApi, TRes> = WithApi<TGetBalanceForeignOptionsBase, TApi, TRes>;
551
555
  /**
552
- * Retrieves the asset balance for a given account on a specified node.
556
+ * Retrieves the asset balance for a given account on a specified chain.
553
557
  */
554
558
  type TGetAssetBalanceOptionsBase = {
555
559
  /**
@@ -557,9 +561,9 @@ type TGetAssetBalanceOptionsBase = {
557
561
  */
558
562
  address: string;
559
563
  /**
560
- * The node on which to query the balance.
564
+ * The chain on which to query the balance.
561
565
  */
562
- node: TNodeWithRelayChains;
566
+ chain: TChain;
563
567
  /**
564
568
  * The currency to query.
565
569
  */
@@ -568,13 +572,13 @@ type TGetAssetBalanceOptionsBase = {
568
572
  type TGetAssetBalanceOptions<TApi, TRes> = WithApi<TGetAssetBalanceOptionsBase, TApi, TRes>;
569
573
  type TGetOriginFeeDetailsOptionsBase = {
570
574
  /**
571
- * The origin node.
575
+ * The origin chain.
572
576
  */
573
- origin: TNodeDotKsmWithRelayChains;
577
+ origin: TSubstrateChain;
574
578
  /**
575
- * The destination node.
579
+ * The destination chain.
576
580
  */
577
- destination: TNodeWithRelayChains;
581
+ destination: TChain;
578
582
  /**
579
583
  * The currency to transfer.
580
584
  */
@@ -603,9 +607,9 @@ type TGetMaxNativeTransferableAmountOptionsBase = {
603
607
  */
604
608
  address: string;
605
609
  /**
606
- * The node on which to query the balance.
610
+ * The chain on which to query the balance.
607
611
  */
608
- node: TNodeDotKsmWithRelayChains;
612
+ chain: TSubstrateChain;
609
613
  /**
610
614
  * The currency to query.
611
615
  */
@@ -620,9 +624,9 @@ type TGetMaxForeignTransferableAmountOptionsBase = {
620
624
  */
621
625
  address: string;
622
626
  /**
623
- * The node on which to query the balance.
627
+ * The chain on which to query the balance.
624
628
  */
625
- node: TNodePolkadotKusama;
629
+ chain: TParachain;
626
630
  /**
627
631
  * The currency to query.
628
632
  */
@@ -635,13 +639,13 @@ type TGetTransferableAmountOptionsBase<TApi, TRes> = {
635
639
  */
636
640
  senderAddress: string;
637
641
  /**
638
- * The node on which to query the balance.
642
+ * The chain on which to query the balance.
639
643
  */
640
- origin: TNodeDotKsmWithRelayChains;
644
+ origin: TSubstrateChain;
641
645
  /**
642
- * The destination node.
646
+ * The destination chain.
643
647
  */
644
- destination: TNodeWithRelayChains;
648
+ destination: TChain;
645
649
  /**
646
650
  * The currency to query.
647
651
  */
@@ -655,13 +659,13 @@ type TGetTransferableAmountOptionsBase<TApi, TRes> = {
655
659
  type TGetTransferableAmountOptions<TApi, TRes> = WithApi<TGetTransferableAmountOptionsBase<TApi, TRes>, TApi, TRes>;
656
660
  type TVerifyEdOnDestinationOptionsBase<TRes> = {
657
661
  /**
658
- * The origin node.
662
+ * The origin chain.
659
663
  */
660
- origin: TNodeDotKsmWithRelayChains;
664
+ origin: TSubstrateChain;
661
665
  /**
662
- * The destination node.
666
+ * The destination chain.
663
667
  */
664
- destination: TNodeWithRelayChains;
668
+ destination: TChain;
665
669
  /**
666
670
  * The address of the account.
667
671
  */
@@ -682,19 +686,19 @@ type TVerifyEdOnDestinationOptionsBase<TRes> = {
682
686
  };
683
687
  type TVerifyEdOnDestinationOptions<TApi, TRes> = WithApi<TVerifyEdOnDestinationOptionsBase<TRes>, TApi, TRes>;
684
688
 
685
- type TEvmNodeFrom = Extract<TNode, 'Ethereum' | 'Moonbeam' | 'Moonriver' | 'Darwinia'>;
689
+ type TEvmChainFrom = Extract<TChain, 'Ethereum' | 'Moonbeam' | 'Moonriver' | 'Darwinia'>;
686
690
  /**
687
691
  * The options for the Ethereum to Polkadot transfer builder.
688
692
  */
689
693
  type TEvmBuilderOptionsBase = {
690
694
  /**
691
- * The source node. Can be either 'Ethereum', 'Moonbeam', 'Moonriver', or 'Darwinia'.
695
+ * The source chain. Can be either 'Ethereum', 'Moonbeam', 'Moonriver', or 'Darwinia'.
692
696
  */
693
- from: TEvmNodeFrom;
697
+ from: TEvmChainFrom;
694
698
  /**
695
- * The destination node on Polkadot network.
699
+ * The destination chain on Polkadot network.
696
700
  */
697
- to: TNodeWithRelayChains;
701
+ to: TChain;
698
702
  /**
699
703
  * The currency to transfer. Symbol or ID.
700
704
  */
@@ -749,21 +753,22 @@ type TBatchOptions = {
749
753
  };
750
754
  type TBuilderOptions<TApi> = TApi | TBuilderConfig<TApi>;
751
755
  type TBuilderConfig<TApi> = {
752
- apiOverrides?: Partial<Record<TNodeWithRelayChains, TApi>>;
756
+ apiOverrides?: Partial<Record<TChain, TApi>>;
753
757
  development?: boolean;
758
+ abstractDecimals?: boolean;
754
759
  };
755
760
 
756
761
  type TProviderEntry = {
757
762
  name: string;
758
763
  endpoint: string;
759
764
  };
760
- type TNodeConfig = {
765
+ type TChainConfig = {
761
766
  name: string;
762
767
  info: string;
763
768
  paraId: number;
764
769
  providers: TProviderEntry[];
765
770
  };
766
- type TNodeConfigMap = Record<TNodeDotKsmWithRelayChains, TNodeConfig>;
771
+ type TChainConfigMap = Record<TSubstrateChain, TChainConfig>;
767
772
 
768
773
  type OneKey<K extends string, V = unknown> = {
769
774
  [P in K]: Record<P, V> & Partial<Record<Exclude<K, P>, never>> extends infer O ? {
@@ -810,19 +815,19 @@ type TBifrostToken = {
810
815
  } | {
811
816
  Token2: number;
812
817
  };
813
- type TXTokensCurrencySelection = TXcmVersioned<TMultiLocation | TMultiAsset | TMultiAsset[]> | TXcmForeignAsset | TForeignAssetId | TForeignOrTokenAsset | TXcmAsset | TMantaAsset | TOtherReserveAsset | TBifrostToken | string | bigint | number | undefined;
818
+ type TXTokensCurrencySelection = TXcmVersioned<TLocation | TAsset | TAsset[]> | TXcmForeignAsset | TForeignAssetId | TForeignOrTokenAsset | TXcmAsset | TMantaAsset | TOtherReserveAsset | TBifrostToken | string | bigint | number | undefined;
814
819
 
815
820
  type TDryRunBaseOptions<TRes> = {
816
821
  tx: TRes;
817
- origin: TNodeDotKsmWithRelayChains;
818
- destination: TNodeWithRelayChains;
822
+ origin: TSubstrateChain;
823
+ destination: TChain;
819
824
  senderAddress: string;
820
825
  address: string;
821
826
  currency: TCurrencyInputWithAmount;
822
827
  feeAsset?: TCurrencyInput;
823
828
  swapConfig?: {
824
829
  currencyTo: TCurrencyCore;
825
- exchangeChain: TNodePolkadotKusama;
830
+ exchangeChain: TParachain;
826
831
  };
827
832
  };
828
833
  type TDryRunOptions<TApi, TRes> = WithApi<TDryRunBaseOptions<TRes>, TApi, TRes>;
@@ -832,14 +837,14 @@ type TDryRunCallBaseOptions<TRes> = {
832
837
  */
833
838
  tx: TRes;
834
839
  /**
835
- * The node to dry-run on
840
+ * The chain to dry-run on
836
841
  */
837
- node: TNodeDotKsmWithRelayChains;
842
+ chain: TSubstrateChain;
838
843
  /**
839
844
  * The address to dry-run with
840
845
  */
841
846
  address: string;
842
- feeAsset?: TAsset;
847
+ feeAsset?: TAssetInfo;
843
848
  };
844
849
  type TDryRunCallOptions<TApi, TRes> = WithApi<TDryRunCallBaseOptions<TRes>, TApi, TRes>;
845
850
  type TDryRunXcmBaseOptions = {
@@ -849,55 +854,55 @@ type TDryRunXcmBaseOptions = {
849
854
  */
850
855
  xcm: any;
851
856
  /**
852
- * The node to dry-run on
857
+ * The chain to dry-run on
853
858
  */
854
- node: TNodeDotKsmWithRelayChains;
859
+ chain: TSubstrateChain;
855
860
  /**
856
- * The origin node
861
+ * The origin chain
857
862
  */
858
- origin: TNodeDotKsmWithRelayChains;
859
- asset: TAsset | null;
860
- feeAsset?: TAsset;
863
+ origin: TSubstrateChain;
864
+ asset: TAssetInfo | null;
865
+ feeAsset?: TAssetInfo;
861
866
  amount: bigint;
862
867
  originFee: bigint;
863
868
  };
864
869
  type TDryRunXcmOptions<TApi, TRes> = WithApi<TDryRunXcmBaseOptions, TApi, TRes>;
865
- type TDryRunNodeSuccess = {
870
+ type TDryRunChainSuccess = {
866
871
  success: true;
867
872
  fee: bigint;
868
873
  weight?: TWeight;
869
874
  forwardedXcms: any;
870
875
  destParaId?: number;
871
876
  };
872
- type TDryRunNodeFailure = {
877
+ type TDryRunChainFailure = {
873
878
  success: false;
874
879
  failureReason: string;
875
880
  };
876
- type TDryRunNodeResultInternal = TDryRunNodeSuccess | TDryRunNodeFailure;
877
- type TDryRunNodeResult = (TDryRunNodeSuccess & {
881
+ type TDryRunChainResultInternal = TDryRunChainSuccess | TDryRunChainFailure;
882
+ type TDryRunChainResult = (TDryRunChainSuccess & {
878
883
  currency: string;
879
- }) | TDryRunNodeFailure;
884
+ }) | TDryRunChainFailure;
880
885
  type THopInfo = {
881
- chain: TNodeWithRelayChains;
882
- result: TDryRunNodeResultInternal & {
886
+ chain: TChain;
887
+ result: TDryRunChainResultInternal & {
883
888
  currency?: string;
884
889
  };
885
890
  };
886
- type TDryRunChain = 'origin' | 'destination' | 'assetHub' | 'bridgeHub' | TNodeWithRelayChains;
891
+ type TDryRunChain = 'origin' | 'destination' | 'assetHub' | 'bridgeHub' | TChain;
887
892
  type TDryRunResult = {
888
893
  failureReason?: string;
889
894
  failureChain?: TDryRunChain;
890
- origin: TDryRunNodeResult;
891
- destination?: TDryRunNodeResult;
892
- assetHub?: TDryRunNodeResult;
893
- bridgeHub?: TDryRunNodeResult;
895
+ origin: TDryRunChainResult;
896
+ destination?: TDryRunChainResult;
897
+ assetHub?: TDryRunChainResult;
898
+ bridgeHub?: TDryRunChainResult;
894
899
  hops: THopInfo[];
895
900
  };
896
901
  type HopProcessParams<TApi, TRes> = {
897
902
  api: IPolkadotApi<TApi, TRes>;
898
- currentChain: TNodeDotKsmWithRelayChains;
899
- currentOrigin: TNodeDotKsmWithRelayChains;
900
- currentAsset: TAsset;
903
+ currentChain: TSubstrateChain;
904
+ currentOrigin: TSubstrateChain;
905
+ currentAsset: TAssetInfo;
901
906
  forwardedXcms: any;
902
907
  hasPassedExchange: boolean;
903
908
  isDestination: boolean;
@@ -906,13 +911,13 @@ type HopProcessParams<TApi, TRes> = {
906
911
  };
907
912
  type HopTraversalConfig<TApi, TRes, THopResult> = {
908
913
  api: IPolkadotApi<TApi, TRes>;
909
- origin: TNodeDotKsmWithRelayChains;
910
- destination: TNodeWithRelayChains;
914
+ origin: TSubstrateChain;
915
+ destination: TChain;
911
916
  currency: TCurrencyCore;
912
917
  initialForwardedXcms: any;
913
918
  initialDestParaId: number | undefined;
914
919
  swapConfig?: {
915
- exchangeChain: TNodeDotKsmWithRelayChains;
920
+ exchangeChain: TParachain;
916
921
  currencyTo: TCurrencyCore;
917
922
  };
918
923
  processHop: (params: HopProcessParams<TApi, TRes>) => Promise<THopResult>;
@@ -924,13 +929,13 @@ type HopTraversalConfig<TApi, TRes, THopResult> = {
924
929
  };
925
930
  type HopTraversalResult<THopResult> = {
926
931
  hops: Array<{
927
- chain: TNodeDotKsmWithRelayChains;
932
+ chain: TSubstrateChain;
928
933
  result: THopResult;
929
934
  }>;
930
935
  assetHub?: THopResult;
931
936
  bridgeHub?: THopResult;
932
937
  destination?: THopResult;
933
- lastProcessedChain?: TNodeDotKsmWithRelayChains;
938
+ lastProcessedChain?: TSubstrateChain;
934
939
  };
935
940
  declare enum XTokensError {
936
941
  AssetHasNoReserve = "AssetHasNoReserve",
@@ -986,8 +991,6 @@ type TModuleError = {
986
991
  error: string;
987
992
  };
988
993
 
989
- type TEdJsonMap = Record<TNodeDotKsmWithRelayChains, string | null>;
990
-
991
994
  /**
992
995
  * Error thrown when the Ethereum bridge is halted.
993
996
  */
@@ -1000,6 +1003,18 @@ declare class BridgeHaltedError extends Error {
1000
1003
  constructor();
1001
1004
  }
1002
1005
 
1006
+ /**
1007
+ * Used to inform user, that Parachain they wish to use is not supported yet
1008
+ */
1009
+ declare class ChainNotSupportedError extends Error {
1010
+ /**
1011
+ * Constructs a new ChainNotSupportedError.
1012
+ *
1013
+ * @param message - Optional custom error message.
1014
+ */
1015
+ constructor(message?: string);
1016
+ }
1017
+
1003
1018
  /**
1004
1019
  * Error thrown when the Dry Run fails.
1005
1020
  */
@@ -1016,11 +1031,11 @@ declare class DryRunFailedError extends Error {
1016
1031
  }
1017
1032
 
1018
1033
  /**
1019
- * Error thrown when nodes from different relay chains are incompatible.
1034
+ * Error thrown when chains from different relay chains are incompatible.
1020
1035
  */
1021
- declare class IncompatibleNodesError extends Error {
1036
+ declare class IncompatibleChainsError extends Error {
1022
1037
  /**
1023
- * Constructs a new IncompatibleNodesError.
1038
+ * Constructs a new IncompatibleChainsError.
1024
1039
  *
1025
1040
  * @param message - Optional custom error message.
1026
1041
  */
@@ -1058,21 +1073,9 @@ declare class MissingChainApiError extends Error {
1058
1073
  /**
1059
1074
  * Constructs a new MissingChainApiError.
1060
1075
  *
1061
- * @param chain - The node for which the API is missing.
1062
- */
1063
- constructor(chain: TNodeWithRelayChains);
1064
- }
1065
-
1066
- /**
1067
- * Used to inform user, that Parachain they wish to use is not supported yet
1068
- */
1069
- declare class NodeNotSupportedError extends Error {
1070
- /**
1071
- * Constructs a new NodeNotSupportedError.
1072
- *
1073
- * @param message - Optional custom error message.
1076
+ * @param chain - The chain for which the API is missing.
1074
1077
  */
1075
- constructor(message?: string);
1078
+ constructor(chain: TChain);
1076
1079
  }
1077
1080
 
1078
1081
  /**
@@ -1082,9 +1085,9 @@ declare class NoXCMSupportImplementedError extends Error {
1082
1085
  /**
1083
1086
  * Constructs a new NoXCMSupportImplementedError.
1084
1087
  *
1085
- * @param node - The node for which XCM support is not implemented.
1088
+ * @param chain - The chain for which XCM support is not implemented.
1086
1089
  */
1087
- constructor(node: TNode);
1090
+ constructor(chain: TChain);
1088
1091
  }
1089
1092
 
1090
1093
  /**
@@ -1094,11 +1097,11 @@ declare class ScenarioNotSupportedError extends Error {
1094
1097
  /**
1095
1098
  * Constructs a new ScenarioNotSupportedError.
1096
1099
  *
1097
- * @param node - The node where the scenario is not supported.
1100
+ * @param chain - The chain where the scenario is not supported.
1098
1101
  * @param scenario - The scenario that is not supported.
1099
1102
  * @param message - Optional custom error message.
1100
1103
  */
1101
- constructor(node: TNode, scenario: TScenario, message?: string);
1104
+ constructor(chain: TChain, scenario: TScenario, message?: string);
1102
1105
  }
1103
1106
 
1104
1107
  declare class TransferToAhNotSupported extends Error {
@@ -1118,7 +1121,7 @@ declare class UnableToComputeError extends Error {
1118
1121
  }
1119
1122
 
1120
1123
  type THopTransferInfo = {
1121
- chain: TNodeWithRelayChains;
1124
+ chain: TChain;
1122
1125
  result: {
1123
1126
  xcmFee: TXcmFeeBase;
1124
1127
  balance?: bigint;
@@ -1133,8 +1136,8 @@ type TXcmFeeBase = {
1133
1136
  };
1134
1137
  type TTransferInfo = {
1135
1138
  chain: {
1136
- origin: TNodeWithRelayChains;
1137
- destination: TNodeWithRelayChains;
1139
+ origin: TChain;
1140
+ destination: TChain;
1138
1141
  ecosystem: string;
1139
1142
  };
1140
1143
  origin: {
@@ -1181,8 +1184,8 @@ type TOriginFeeDetails = {
1181
1184
  };
1182
1185
  type TGetTransferInfoOptionsBase<TRes> = {
1183
1186
  tx: TRes;
1184
- origin: TNodeDotKsmWithRelayChains;
1185
- destination: TNodeWithRelayChains;
1187
+ origin: TSubstrateChain;
1188
+ destination: TChain;
1186
1189
  senderAddress: string;
1187
1190
  ahAddress?: string;
1188
1191
  address: string;
@@ -1191,15 +1194,15 @@ type TGetTransferInfoOptionsBase<TRes> = {
1191
1194
  };
1192
1195
  type TGetTransferInfoOptions<TApi, TRes> = WithApi<TGetTransferInfoOptionsBase<TRes>, TApi, TRes>;
1193
1196
 
1194
- type TChainWithApi<TApi, TRes, T = TNodeDotKsmWithRelayChains> = {
1197
+ type TChainWithApi<TApi, TRes, T = TSubstrateChain> = {
1195
1198
  api: IPolkadotApi<TApi, TRes>;
1196
1199
  chain: T;
1197
1200
  };
1198
1201
  type TTypeAndThenCallContext<TApi, TRes> = {
1199
1202
  origin: TChainWithApi<TApi, TRes>;
1200
1203
  dest: TChainWithApi<TApi, TRes>;
1201
- reserve: TChainWithApi<TApi, TRes, TNodeDotKsmWithRelayChains>;
1202
- asset: WithAmount<TAssetWithLocation>;
1204
+ reserve: TChainWithApi<TApi, TRes, TSubstrateChain>;
1205
+ assetInfo: WithAmount<TAssetWithLocation>;
1203
1206
  options: TPolkadotXCMTransferOptions<TApi, TRes>;
1204
1207
  };
1205
1208
  type TTypeAndThenFees = {
@@ -1214,13 +1217,13 @@ type TGetXcmFeeBaseOptions<TRes, TDisableFallback extends boolean = boolean> = {
1214
1217
  */
1215
1218
  tx: TRes;
1216
1219
  /**
1217
- * The origin node
1220
+ * The origin chain
1218
1221
  */
1219
- origin: TNodeDotKsmWithRelayChains;
1222
+ origin: TSubstrateChain;
1220
1223
  /**
1221
- * The destination node
1224
+ * The destination chain
1222
1225
  */
1223
- destination: TNodeWithRelayChains;
1226
+ destination: TChain;
1224
1227
  /**
1225
1228
  * The sender address
1226
1229
  */
@@ -1231,7 +1234,7 @@ type TGetXcmFeeBaseOptions<TRes, TDisableFallback extends boolean = boolean> = {
1231
1234
  disableFallback: TDisableFallback;
1232
1235
  swapConfig?: {
1233
1236
  currencyTo: TCurrencyCore;
1234
- exchangeChain: TNodePolkadotKusama;
1237
+ exchangeChain: TParachain;
1235
1238
  };
1236
1239
  };
1237
1240
  type TGetXcmFeeOptions<TApi, TRes, TDisableFallback extends boolean = boolean> = WithApi<TGetXcmFeeBaseOptions<TRes, TDisableFallback>, TApi, TRes>;
@@ -1242,8 +1245,8 @@ type TGetXcmFeeBuilderOptions = {
1242
1245
  };
1243
1246
  type TGetOriginXcmFeeBaseOptions<TRes> = {
1244
1247
  tx: TRes;
1245
- origin: TNodeDotKsmWithRelayChains;
1246
- destination: TNodeWithRelayChains;
1248
+ origin: TSubstrateChain;
1249
+ destination: TChain;
1247
1250
  senderAddress: string;
1248
1251
  currency: WithComplexAmount<TCurrencyCore>;
1249
1252
  feeAsset?: TCurrencyInput;
@@ -1253,22 +1256,22 @@ type TGetOriginXcmFeeOptions<TApi, TRes> = WithApi<TGetOriginXcmFeeBaseOptions<T
1253
1256
  type TAttemptDryRunFeeOptions<TApi, TRes> = Omit<TGetOriginXcmFeeOptions<TApi, TRes>, 'tx'> & {
1254
1257
  builder: GeneralBuilder<TApi, TRes, TSendBaseOptions>;
1255
1258
  };
1256
- type TGetFeeForDestNodeBaseOptions = {
1257
- prevNode: TNodeDotKsmWithRelayChains;
1258
- origin: TNodeDotKsmWithRelayChains;
1259
- destination: TNodeWithRelayChains;
1259
+ type TGetFeeForDestChainBaseOptions = {
1260
+ prevChain: TSubstrateChain;
1261
+ origin: TSubstrateChain;
1262
+ destination: TChain;
1260
1263
  senderAddress: string;
1261
1264
  address: string;
1262
1265
  currency: WithAmount<TCurrencyCore>;
1263
1266
  forwardedXcms: any;
1264
- asset: TAsset;
1267
+ asset: TAssetInfo;
1265
1268
  originFee: bigint;
1266
1269
  feeAsset?: TCurrencyInput;
1267
1270
  disableFallback: boolean;
1268
1271
  };
1269
- type TGetFeeForDestNodeOptions<TApi, TRes> = WithApi<TGetFeeForDestNodeBaseOptions, TApi, TRes>;
1270
- type TGetReverseTxFeeOptions<TApi, TRes> = Omit<TGetFeeForDestNodeOptions<TApi, TRes>, 'destination' | 'disableFallback' | 'forwardedXcms' | 'asset' | 'originFee' | 'prevNode'> & {
1271
- destination: TNodeDotKsmWithRelayChains;
1272
+ type TGetFeeForDestChainOptions<TApi, TRes> = WithApi<TGetFeeForDestChainBaseOptions, TApi, TRes>;
1273
+ type TGetReverseTxFeeOptions<TApi, TRes> = Omit<TGetFeeForDestChainOptions<TApi, TRes>, 'destination' | 'disableFallback' | 'forwardedXcms' | 'asset' | 'originFee' | 'prevChain'> & {
1274
+ destination: TSubstrateChain;
1272
1275
  };
1273
1276
  type THubKey = 'assetHub' | 'bridgeHub';
1274
1277
  type TFeeType = 'dryRun' | 'paymentInfo' | 'noFeeRequired';
@@ -1301,12 +1304,12 @@ type TDestXcmFeeDetail<TDisableFallback extends boolean> = Omit<TConditionalXcmF
1301
1304
  destParaId?: number;
1302
1305
  };
1303
1306
  type TConditionalXcmFeeHopInfo<TDisableFallback extends boolean> = {
1304
- chain: TNodeWithRelayChains;
1307
+ chain: TChain;
1305
1308
  result: TConditionalXcmFeeDetail<TDisableFallback>;
1306
1309
  };
1307
- type TXcmFeeChain = 'origin' | 'destination' | 'assetHub' | 'bridgeHub' | TNodeWithRelayChains;
1310
+ type TXcmFeeChain = 'origin' | 'destination' | 'assetHub' | 'bridgeHub' | TChain;
1308
1311
  type TXcmFeeHopInfo = {
1309
- chain: TNodeWithRelayChains;
1312
+ chain: TChain;
1310
1313
  result: TXcmFeeDetail;
1311
1314
  };
1312
1315
  type TGetXcmFeeResult<TDisableFallback extends boolean = boolean> = {
@@ -1331,7 +1334,7 @@ type TGetXcmFeeEstimateResult = {
1331
1334
  interface IPolkadotApi<TApi, TRes> {
1332
1335
  getConfig(): TBuilderOptions<TApiOrUrl<TApi>> | undefined;
1333
1336
  getApi(): TApi;
1334
- init(node: TNodeWithRelayChains, clientTtlMs?: number): Promise<void>;
1337
+ init(chain: TChain, clientTtlMs?: number): Promise<void>;
1335
1338
  createApiInstance: (wsUrl: string | string[]) => Promise<TApi>;
1336
1339
  accountToHex(address: string, isPrefixed?: boolean): string;
1337
1340
  accountToUint8a(address: string): Uint8Array;
@@ -1342,24 +1345,24 @@ interface IPolkadotApi<TApi, TRes> {
1342
1345
  stringToUint8a(str: string): Uint8Array;
1343
1346
  getMethod(tx: TRes): string;
1344
1347
  calculateTransactionFee(tx: TRes, address: string): Promise<bigint>;
1345
- quoteAhPrice(fromMl: TMultiLocation, toMl: TMultiLocation, amountIn: bigint, includeFee?: boolean): Promise<bigint | undefined>;
1348
+ quoteAhPrice(fromMl: TLocation, toMl: TLocation, amountIn: bigint, includeFee?: boolean): Promise<bigint | undefined>;
1346
1349
  getXcmWeight(xcm: any): Promise<TWeight>;
1347
- getXcmPaymentApiFee(chain: TNodeDotKsmWithRelayChains, xcm: any, asset: TAsset, transformXcm: boolean): Promise<bigint>;
1350
+ getXcmPaymentApiFee(chain: TSubstrateChain, xcm: any, asset: TAssetInfo, transformXcm: boolean): Promise<bigint>;
1348
1351
  getBalanceNative(address: string): Promise<bigint>;
1349
1352
  getBalanceNativeAcala(address: string, symbol: string): Promise<bigint>;
1350
1353
  getBalanceForeignPolkadotXcm(address: string, id?: string): Promise<bigint>;
1351
1354
  getMythosForeignBalance(address: string): Promise<bigint>;
1352
- getBalanceForeignAssetsPallet(address: string, multiLocation: TMultiLocation): Promise<bigint>;
1355
+ getBalanceForeignAssetsPallet(address: string, location: TLocation): Promise<bigint>;
1353
1356
  getForeignAssetsByIdBalance(address: string, assetId: string): Promise<bigint>;
1354
- getBalanceForeignXTokens(node: TNodePolkadotKusama, address: string, asset: TAsset): Promise<bigint>;
1355
- getBalanceForeignBifrost(address: string, asset: TAsset): Promise<bigint>;
1357
+ getBalanceForeignXTokens(chain: TSubstrateChain, address: string, asset: TAssetInfo): Promise<bigint>;
1358
+ getBalanceForeignBifrost(address: string, asset: TAssetInfo): Promise<bigint>;
1356
1359
  getBalanceAssetsPallet(address: string, assetId: bigint | number): Promise<bigint>;
1357
1360
  getFromRpc(module: string, method: string, key: string): Promise<string>;
1358
1361
  blake2AsHex(data: Uint8Array): string;
1359
1362
  clone(): IPolkadotApi<TApi, TRes>;
1360
- createApiForNode(node: TNodeWithRelayChains): Promise<IPolkadotApi<TApi, TRes>>;
1361
- getDryRunCall(options: TDryRunCallBaseOptions<TRes>): Promise<TDryRunNodeResultInternal>;
1362
- getDryRunXcm(options: TDryRunXcmBaseOptions): Promise<TDryRunNodeResultInternal>;
1363
+ createApiForChain(chain: TSubstrateChain): Promise<IPolkadotApi<TApi, TRes>>;
1364
+ getDryRunCall(options: TDryRunCallBaseOptions<TRes>): Promise<TDryRunChainResultInternal>;
1365
+ getDryRunXcm(options: TDryRunXcmBaseOptions): Promise<TDryRunChainResultInternal>;
1363
1366
  getBridgeStatus(): Promise<TBridgeStatus>;
1364
1367
  setDisconnectAllowed(allowed: boolean): void;
1365
1368
  getDisconnectAllowed(): boolean;
@@ -1370,29 +1373,44 @@ declare const blake2b256: (msg: Uint8Array) => Uint8Array<ArrayBufferLike>;
1370
1373
  declare const blake2b512: (msg: Uint8Array) => Uint8Array<ArrayBufferLike>;
1371
1374
  declare const deriveAccountId: (raw: Uint8Array) => Uint8Array;
1372
1375
  declare const encodeSs58: (payload: Uint8Array, network: number) => string;
1373
- declare const convertSs58: <TApi, TRes>(api: IPolkadotApi<TApi, TRes>, address: string, node: TNodeDotKsmWithRelayChains) => string;
1376
+ declare const convertSs58: <TApi, TRes>(api: IPolkadotApi<TApi, TRes>, address: string, chain: TSubstrateChain) => string;
1374
1377
 
1375
- declare const ETH_CHAIN_ID: bigint;
1376
- declare const ETHEREUM_JUNCTION: TJunction;
1377
- declare const TX_CLIENT_TIMEOUT_MS: number;
1378
- declare const DRY_RUN_CLIENT_TIMEOUT_MS: number;
1378
+ declare const getChainConfig: (chain: TSubstrateChain) => TChainConfig;
1379
+
1380
+ declare const getChainProviders: (chain: TSubstrateChain) => string[];
1379
1381
 
1380
- declare abstract class ParachainNode<TApi, TRes> {
1381
- private readonly _node;
1382
+ /**
1383
+ * Retrieves the parachain ID for a specified chain.
1384
+ *
1385
+ * @param chain - The chain for which to get the paraId.
1386
+ * @returns The parachain ID of the chain.
1387
+ */
1388
+ declare const getParaId: (chain: TChain) => number;
1389
+
1390
+ /**
1391
+ * Retrieves the chain name corresponding to a specified parachain ID.
1392
+ *
1393
+ * @param paraId - The parachain ID.
1394
+ * @returns The chain name if found; otherwise, null.
1395
+ */
1396
+ declare const getTChain: (paraId: number, ecosystem: TRelaychain | TExternalChain) => TChain | null;
1397
+
1398
+ declare abstract class Parachain<TApi, TRes> {
1399
+ private readonly _chain;
1382
1400
  private readonly _info;
1383
- private readonly _type;
1401
+ private readonly _ecosystem;
1384
1402
  private readonly _version;
1385
- constructor(node: TNodePolkadotKusama, info: string, type: TEcosystemType, version: Version);
1403
+ constructor(chain: TParachain, info: string, ecosystem: TRelaychain, version: Version);
1386
1404
  get info(): string;
1387
- get type(): TEcosystemType;
1388
- get node(): TNodePolkadotKusama;
1405
+ get ecosystem(): TRelaychain;
1406
+ get chain(): TParachain;
1389
1407
  get version(): Version;
1390
1408
  canUseXTokens(options: TSendInternalOptions<TApi, TRes>): boolean;
1391
1409
  transfer(sendOptions: TSendInternalOptions<TApi, TRes>): Promise<TRes>;
1392
- shouldUseNativeAssetTeleport({ asset, to }: TSendInternalOptions<TApi, TRes>): boolean;
1410
+ shouldUseNativeAssetTeleport({ assetInfo: asset, to }: TSendInternalOptions<TApi, TRes>): boolean;
1393
1411
  getRelayToParaOverrides(): TRelayToParaOverrides;
1394
1412
  transferRelayToPara(options: TRelayToParaOptions<TApi, TRes>): TSerializedApiCall;
1395
- createCurrencySpec(amount: bigint, scenario: TScenario, version: Version, _asset?: TAsset, _isOverridenAsset?: boolean): TMultiAsset;
1413
+ createCurrencySpec(amount: bigint, scenario: TScenario, version: Version, _asset?: TAssetInfo, _isOverridenAsset?: boolean): TAsset;
1396
1414
  getNativeAssetSymbol(): string;
1397
1415
  transferLocal(options: TSendInternalOptions<TApi, TRes>): TRes;
1398
1416
  transferLocalNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
@@ -1400,19 +1418,19 @@ declare abstract class ParachainNode<TApi, TRes> {
1400
1418
  protected transferToEthereum<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>, useOnlyDepositInstruction?: boolean): Promise<TRes>;
1401
1419
  }
1402
1420
 
1403
- declare class Acala<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1421
+ declare class Acala<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1404
1422
  constructor();
1405
- getCurrencySelection(asset: TAsset): TForeignOrTokenAsset;
1423
+ getCurrencySelection(asset: TAssetInfo): TForeignOrTokenAsset;
1406
1424
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1407
1425
  transferLocalNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1408
1426
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1409
1427
  }
1410
1428
 
1411
- declare class Ajuna<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer, IPolkadotXCMTransfer {
1412
- constructor(chain?: TNodePolkadotKusama, info?: string, type?: TEcosystemType, version?: Version);
1429
+ declare class Ajuna<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer, IPolkadotXCMTransfer {
1430
+ constructor(chain?: TParachain, info?: string, ecosystem?: TRelaychain, version?: Version);
1413
1431
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1414
1432
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1415
- canUseXTokens({ asset, to: destination }: TSendInternalOptions<TApi, TRes>): boolean;
1433
+ canUseXTokens({ assetInfo, to: destination }: TSendInternalOptions<TApi, TRes>): boolean;
1416
1434
  transferRelayToPara(): TSerializedApiCall;
1417
1435
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1418
1436
  }
@@ -1421,28 +1439,28 @@ declare class AjunaPaseo<TApi, TRes> extends Ajuna<TApi, TRes> {
1421
1439
  constructor();
1422
1440
  }
1423
1441
 
1424
- declare class Altair<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1442
+ declare class Altair<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1425
1443
  constructor();
1426
1444
  private getCurrencySelection;
1427
1445
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1428
1446
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1429
1447
  }
1430
1448
 
1431
- declare class Amplitude<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1449
+ declare class Amplitude<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1432
1450
  constructor();
1433
1451
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1434
1452
  }
1435
1453
 
1436
- declare class AssetHubKusama<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1454
+ declare class AssetHubKusama<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1437
1455
  constructor();
1438
1456
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1439
1457
  getRelayToParaOverrides(): TRelayToParaOverrides;
1440
- createCurrencySpec(amount: bigint, scenario: TScenario, version: Version, asset?: TAsset, isOverridenAsset?: boolean): _paraspell_assets.TMultiAsset;
1458
+ createCurrencySpec(amount: bigint, scenario: TScenario, version: Version, asset?: TAssetInfo, isOverridenAsset?: boolean): _paraspell_assets.TAsset;
1441
1459
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1442
1460
  }
1443
1461
 
1444
- declare class AssetHubPolkadot<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1445
- constructor(chain?: TNodePolkadotKusama, info?: string, type?: TEcosystemType, version?: Version);
1462
+ declare class AssetHubPolkadot<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1463
+ constructor(chain?: TParachain, info?: string, ecosystem?: TRelaychain, version?: Version);
1446
1464
  handleBridgeTransfer<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>, targetChain: 'Polkadot' | 'Kusama'): Promise<TRes>;
1447
1465
  handleEthBridgeNativeTransfer<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1448
1466
  handleEthBridgeTransfer<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
@@ -1451,7 +1469,7 @@ declare class AssetHubPolkadot<TApi, TRes> extends ParachainNode<TApi, TRes> imp
1451
1469
  private getMethod;
1452
1470
  transferPolkadotXCM<TApi, TRes>(options: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1453
1471
  getRelayToParaOverrides(): TRelayToParaOverrides;
1454
- createCurrencySpec(amount: bigint, scenario: TScenario, version: Version, asset?: TAsset, isOverriddenAsset?: boolean): _paraspell_assets.TMultiAsset;
1472
+ createCurrencySpec(amount: bigint, scenario: TScenario, version: Version, asset?: TAssetInfo, isOverriddenAsset?: boolean): _paraspell_assets.TAsset;
1455
1473
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1456
1474
  }
1457
1475
 
@@ -1463,30 +1481,30 @@ declare class AssetHubWestend<TApi, TRes> extends AssetHubPolkadot<TApi, TRes> {
1463
1481
  constructor();
1464
1482
  }
1465
1483
 
1466
- declare class Astar<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer, IXTokensTransfer {
1484
+ declare class Astar<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer, IXTokensTransfer {
1467
1485
  constructor();
1468
1486
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1469
1487
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1470
- canUseXTokens({ asset }: TSendInternalOptions<TApi, TRes>): boolean;
1488
+ canUseXTokens({ assetInfo }: TSendInternalOptions<TApi, TRes>): boolean;
1471
1489
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1472
1490
  }
1473
1491
 
1474
- declare class Basilisk<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1492
+ declare class Basilisk<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1475
1493
  constructor();
1476
1494
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1477
1495
  transferLocalNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1478
1496
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1479
1497
  }
1480
1498
 
1481
- declare class BifrostKusama<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1499
+ declare class BifrostKusama<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1482
1500
  constructor();
1483
1501
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1484
1502
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1485
1503
  }
1486
1504
 
1487
- declare class BifrostPolkadot<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer, IPolkadotXCMTransfer {
1488
- constructor(chain?: TNodePolkadotKusama, info?: string, type?: TEcosystemType, version?: Version);
1489
- getCurrencySelection(asset: TAsset): {
1505
+ declare class BifrostPolkadot<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer, IPolkadotXCMTransfer {
1506
+ constructor(chain?: TParachain, info?: string, ecosystem?: TRelaychain, version?: Version);
1507
+ getCurrencySelection(asset: TAssetInfo): {
1490
1508
  Native: string;
1491
1509
  VToken?: undefined;
1492
1510
  Token?: undefined;
@@ -1532,7 +1550,7 @@ declare class BifrostPolkadot<TApi, TRes> extends ParachainNode<TApi, TRes> impl
1532
1550
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1533
1551
  transferToAssetHub<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1534
1552
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1535
- canUseXTokens({ asset, to: destination }: TSendInternalOptions<TApi, TRes>): boolean;
1553
+ canUseXTokens({ assetInfo, to: destination }: TSendInternalOptions<TApi, TRes>): boolean;
1536
1554
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1537
1555
  }
1538
1556
 
@@ -1540,14 +1558,14 @@ declare class BifrostPaseo<TApi, TRes> extends BifrostPolkadot<TApi, TRes> {
1540
1558
  constructor();
1541
1559
  }
1542
1560
 
1543
- declare class BridgeHubKusama<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1561
+ declare class BridgeHubKusama<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1544
1562
  constructor();
1545
1563
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1546
1564
  getRelayToParaOverrides(): TRelayToParaOverrides;
1547
1565
  }
1548
1566
 
1549
- declare class BridgeHubPolkadot<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1550
- constructor(chain?: TNodePolkadotKusama, info?: string, type?: TEcosystemType, version?: Version);
1567
+ declare class BridgeHubPolkadot<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1568
+ constructor(chain?: TParachain, info?: string, ecosystem?: TRelaychain, version?: Version);
1551
1569
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1552
1570
  getRelayToParaOverrides(): TRelayToParaOverrides;
1553
1571
  }
@@ -1560,15 +1578,15 @@ declare class BridgeHubWestend<TApi, TRes> extends BridgeHubPolkadot<TApi, TRes>
1560
1578
  constructor();
1561
1579
  }
1562
1580
 
1563
- declare class Centrifuge<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1581
+ declare class Centrifuge<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1564
1582
  constructor();
1565
1583
  private getCurrencySelection;
1566
1584
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1567
1585
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1568
1586
  }
1569
1587
 
1570
- declare class Collectives<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1571
- constructor(chain?: TNodePolkadotKusama, info?: string, type?: TEcosystemType, version?: Version);
1588
+ declare class Collectives<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1589
+ constructor(chain?: TParachain, info?: string, ecosystem?: TRelaychain, version?: Version);
1572
1590
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1573
1591
  getRelayToParaOverrides(): TRelayToParaOverrides;
1574
1592
  }
@@ -1577,19 +1595,19 @@ declare class CollectivesWestend<TApi, TRes> extends Collectives<TApi, TRes> {
1577
1595
  constructor();
1578
1596
  }
1579
1597
 
1580
- declare class ComposableFinance<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1598
+ declare class ComposableFinance<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1581
1599
  constructor();
1582
1600
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1583
1601
  }
1584
1602
 
1585
- declare class CoretimeKusama<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1603
+ declare class CoretimeKusama<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1586
1604
  constructor();
1587
1605
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1588
1606
  getRelayToParaOverrides(): TRelayToParaOverrides;
1589
1607
  }
1590
1608
 
1591
- declare class CoretimePolkadot<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1592
- constructor(chain?: TNodePolkadotKusama, info?: string, type?: TEcosystemType, version?: Version);
1609
+ declare class CoretimePolkadot<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1610
+ constructor(chain?: TParachain, info?: string, ecosystem?: TRelaychain, version?: Version);
1593
1611
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1594
1612
  getRelayToParaOverrides(): TRelayToParaOverrides;
1595
1613
  }
@@ -1602,48 +1620,48 @@ declare class CoretimeWestend<TApi, TRes> extends CoretimePolkadot<TApi, TRes> {
1602
1620
  constructor();
1603
1621
  }
1604
1622
 
1605
- declare class Crab<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1623
+ declare class Crab<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1606
1624
  constructor();
1607
1625
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1608
1626
  transferRelayToPara(): TSerializedApiCall;
1609
- createCurrencySpec(amount: bigint, scenario: TScenario, version: Version, _asset?: TAsset): _paraspell_assets.TMultiAsset;
1627
+ createCurrencySpec(amount: bigint, scenario: TScenario, version: Version, _asset?: TAssetInfo): _paraspell_assets.TAsset;
1610
1628
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1611
1629
  }
1612
1630
 
1613
- declare class Crust<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1631
+ declare class Crust<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1614
1632
  constructor();
1615
1633
  private getCurrencySelection;
1616
1634
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1617
1635
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1618
1636
  }
1619
1637
 
1620
- declare class CrustShadow<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1638
+ declare class CrustShadow<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1621
1639
  constructor();
1622
1640
  private getCurrencySelection;
1623
1641
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1624
1642
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1625
1643
  }
1626
1644
 
1627
- declare class Curio<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1645
+ declare class Curio<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1628
1646
  constructor();
1629
1647
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1630
1648
  }
1631
1649
 
1632
- declare class Darwinia<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1650
+ declare class Darwinia<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1633
1651
  constructor();
1634
1652
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1635
- createCurrencySpec(amount: bigint, scenario: TScenario, version: Version, _asset?: TAsset): _paraspell_assets.TMultiAsset;
1653
+ createCurrencySpec(amount: bigint, scenario: TScenario, version: Version, _asset?: TAssetInfo): _paraspell_assets.TAsset;
1636
1654
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1637
1655
  }
1638
1656
 
1639
- declare class Encointer<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1657
+ declare class Encointer<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1640
1658
  constructor();
1641
1659
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1642
1660
  getRelayToParaOverrides(): TRelayToParaOverrides;
1643
1661
  }
1644
1662
 
1645
- declare class EnergyWebX<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1646
- constructor(chain?: TNodePolkadotKusama, info?: string, type?: TEcosystemType, version?: Version);
1663
+ declare class EnergyWebX<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1664
+ constructor(chain?: TParachain, info?: string, ecosystem?: TRelaychain, version?: Version);
1647
1665
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1648
1666
  transferRelayToPara(): TSerializedApiCall;
1649
1667
  }
@@ -1652,8 +1670,8 @@ declare class EnergyWebXPaseo<TApi, TRes> extends EnergyWebX<TApi, TRes> {
1652
1670
  constructor();
1653
1671
  }
1654
1672
 
1655
- declare class Heima<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1656
- constructor(chain?: TNodePolkadotKusama, info?: string, type?: TEcosystemType, version?: Version);
1673
+ declare class Heima<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1674
+ constructor(chain?: TParachain, info?: string, ecosystem?: TRelaychain, version?: Version);
1657
1675
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1658
1676
  }
1659
1677
 
@@ -1661,9 +1679,9 @@ declare class HeimaPaseo<TApi, TRes> extends Heima<TApi, TRes> {
1661
1679
  constructor();
1662
1680
  }
1663
1681
 
1664
- declare class Hydration<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer, IPolkadotXCMTransfer {
1682
+ declare class Hydration<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer, IPolkadotXCMTransfer {
1665
1683
  private static NATIVE_ASSET_ID;
1666
- constructor(chain?: TNodePolkadotKusama, info?: string, type?: TEcosystemType, version?: Version);
1684
+ constructor(chain?: TParachain, info?: string, ecosystem?: TRelaychain, version?: Version);
1667
1685
  transferToAssetHub<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): TRes;
1668
1686
  transferToPolimec<TApi, TRes>(options: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1669
1687
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
@@ -1678,8 +1696,8 @@ declare class HydrationPaseo<TApi, TRes> extends Hydration<TApi, TRes> {
1678
1696
  constructor();
1679
1697
  }
1680
1698
 
1681
- declare class IntegriteeKusama<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1682
- constructor(chain?: TNodePolkadotKusama, info?: string, type?: TEcosystemType, version?: Version);
1699
+ declare class IntegriteeKusama<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1700
+ constructor(chain?: TParachain, info?: string, type?: TRelaychain, version?: Version);
1683
1701
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1684
1702
  transferRelayToPara(): TSerializedApiCall;
1685
1703
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
@@ -1689,29 +1707,29 @@ declare class IntegriteePaseo<TApi, TRes> extends IntegriteeKusama<TApi, TRes> {
1689
1707
  constructor();
1690
1708
  }
1691
1709
 
1692
- declare class Interlay<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1710
+ declare class Interlay<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1693
1711
  constructor();
1694
- getCurrencySelection(asset: TAsset): TForeignOrTokenAsset;
1712
+ getCurrencySelection(asset: TAssetInfo): TForeignOrTokenAsset;
1695
1713
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1696
1714
  transferLocalNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1697
1715
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1698
1716
  }
1699
1717
 
1700
- declare class Jamton<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1718
+ declare class Jamton<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1701
1719
  private static NATIVE_ASSET_IDS;
1702
1720
  constructor();
1703
1721
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1704
1722
  }
1705
1723
 
1706
- declare class Karura<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1724
+ declare class Karura<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1707
1725
  constructor();
1708
1726
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1709
1727
  transferLocalNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1710
1728
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1711
1729
  }
1712
1730
 
1713
- declare class KiltSpiritnet<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1714
- constructor(chain?: TNodePolkadotKusama, info?: string, type?: TEcosystemType, version?: Version);
1731
+ declare class KiltSpiritnet<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1732
+ constructor(chain?: TParachain, info?: string, ecosystem?: TRelaychain, version?: Version);
1715
1733
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1716
1734
  transferRelayToPara(): TSerializedApiCall;
1717
1735
  }
@@ -1720,16 +1738,16 @@ declare class KiltPaseo<TApi, TRes> extends KiltSpiritnet<TApi, TRes> {
1720
1738
  constructor();
1721
1739
  }
1722
1740
 
1723
- declare class Kintsugi<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1741
+ declare class Kintsugi<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1724
1742
  constructor();
1725
- getCurrencySelection(asset: TAsset): TForeignOrTokenAsset;
1743
+ getCurrencySelection(asset: TAssetInfo): TForeignOrTokenAsset;
1726
1744
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1727
1745
  transferLocalNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1728
1746
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1729
1747
  }
1730
1748
 
1731
- declare class Laos<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1732
- constructor(chain?: TNodePolkadotKusama, info?: string, type?: TEcosystemType, version?: Version);
1749
+ declare class Laos<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1750
+ constructor(chain?: TParachain, info?: string, ecosystem?: TRelaychain, version?: Version);
1733
1751
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1734
1752
  transferRelayToPara(): TSerializedApiCall;
1735
1753
  }
@@ -1738,7 +1756,7 @@ declare class LaosPaseo<TApi, TRes> extends Laos<TApi, TRes> {
1738
1756
  constructor();
1739
1757
  }
1740
1758
 
1741
- declare class Manta<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1759
+ declare class Manta<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1742
1760
  static readonly NATIVE_ASSET_ID = 1n;
1743
1761
  constructor();
1744
1762
  private getAssetId;
@@ -1746,31 +1764,31 @@ declare class Manta<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXT
1746
1764
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1747
1765
  }
1748
1766
 
1749
- declare class Moonbeam<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1750
- constructor(chain?: TNodePolkadotKusama, info?: string, type?: TEcosystemType, version?: Version);
1751
- private getMultiLocation;
1767
+ declare class Moonbeam<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1768
+ constructor(chain?: TParachain, info?: string, ecosystem?: TRelaychain, version?: Version);
1769
+ private getLocation;
1752
1770
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1753
1771
  getRelayToParaOverrides(): TRelayToParaOverrides;
1754
1772
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1755
1773
  }
1756
1774
 
1757
- declare class Moonriver<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1775
+ declare class Moonriver<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1758
1776
  constructor();
1759
- private getMultiLocation;
1777
+ private getLocation;
1760
1778
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1761
1779
  getRelayToParaOverrides(): TRelayToParaOverrides;
1762
1780
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1763
1781
  }
1764
1782
 
1765
- declare class Mythos<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1783
+ declare class Mythos<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1766
1784
  constructor();
1767
1785
  private createTx;
1768
1786
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1769
1787
  transferRelayToPara(): TSerializedApiCall;
1770
1788
  }
1771
1789
 
1772
- declare class NeuroWeb<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1773
- constructor(chain?: TNodePolkadotKusama, info?: string, type?: TEcosystemType, version?: Version);
1790
+ declare class NeuroWeb<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1791
+ constructor(chain?: TParachain, info?: string, ecosystem?: TRelaychain, version?: Version);
1774
1792
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1775
1793
  }
1776
1794
 
@@ -1778,8 +1796,8 @@ declare class NeuroWebPaseo<TApi, TRes> extends NeuroWeb<TApi, TRes> {
1778
1796
  constructor();
1779
1797
  }
1780
1798
 
1781
- declare class Nodle<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1782
- constructor(chain?: TNodePolkadotKusama, info?: string, type?: TEcosystemType, version?: Version);
1799
+ declare class Nodle<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1800
+ constructor(chain?: TParachain, info?: string, ecosystem?: TRelaychain, version?: Version);
1783
1801
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1784
1802
  transferRelayToPara(): TSerializedApiCall;
1785
1803
  }
@@ -1788,8 +1806,8 @@ declare class NodlePaseo<TApi, TRes> extends Nodle<TApi, TRes> {
1788
1806
  constructor();
1789
1807
  }
1790
1808
 
1791
- declare class PeoplePolkadot<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1792
- constructor(chain?: TNodePolkadotKusama, info?: string, type?: TEcosystemType, version?: Version);
1809
+ declare class PeoplePolkadot<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1810
+ constructor(chain?: TParachain, info?: string, ecosystem?: TRelaychain, version?: Version);
1793
1811
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1794
1812
  getRelayToParaOverrides(): TRelayToParaOverrides;
1795
1813
  }
@@ -1798,14 +1816,14 @@ declare class PAssetHub<TApi, TRes> extends PeoplePolkadot<TApi, TRes> {
1798
1816
  constructor();
1799
1817
  }
1800
1818
 
1801
- declare class Peaq<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1819
+ declare class Peaq<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1802
1820
  constructor();
1803
1821
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1804
1822
  transferRelayToPara(): TSerializedApiCall;
1805
1823
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1806
1824
  }
1807
1825
 
1808
- declare class Pendulum<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1826
+ declare class Pendulum<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1809
1827
  constructor();
1810
1828
  private getCurrencySelection;
1811
1829
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
@@ -1815,7 +1833,7 @@ declare class Penpal<TApi, TRes> extends Moonbeam<TApi, TRes> {
1815
1833
  constructor();
1816
1834
  }
1817
1835
 
1818
- declare class PeopleKusama<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1836
+ declare class PeopleKusama<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1819
1837
  constructor();
1820
1838
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1821
1839
  getRelayToParaOverrides(): TRelayToParaOverrides;
@@ -1829,59 +1847,59 @@ declare class PeopleWestend<TApi, TRes> extends PeoplePolkadot<TApi, TRes> {
1829
1847
  constructor();
1830
1848
  }
1831
1849
 
1832
- declare class Phala<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTransferTransfer {
1850
+ declare class Phala<TApi, TRes> extends Parachain<TApi, TRes> implements IXTransferTransfer {
1833
1851
  constructor();
1834
1852
  transferXTransfer<TApi, TRes>(input: TXTransferTransferOptions<TApi, TRes>): TRes;
1835
1853
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1836
1854
  }
1837
1855
 
1838
- declare class Polimec<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1856
+ declare class Polimec<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1839
1857
  constructor();
1840
1858
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1841
1859
  transferRelayToPara(options: TRelayToParaOptions<TApi, TRes>): TSerializedApiCall;
1842
1860
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1843
1861
  }
1844
1862
 
1845
- declare class Quartz<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1863
+ declare class Quartz<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1846
1864
  private static NATIVE_ASSET_ID;
1847
1865
  constructor();
1848
1866
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1849
1867
  }
1850
1868
 
1851
- declare class RobonomicsKusama<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1869
+ declare class RobonomicsKusama<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1852
1870
  constructor();
1853
1871
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1854
1872
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1855
1873
  }
1856
1874
 
1857
- declare class RobonomicsPolkadot<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1875
+ declare class RobonomicsPolkadot<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1858
1876
  constructor();
1859
1877
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1860
1878
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1861
1879
  }
1862
1880
 
1863
- declare class Shiden<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer, IXTokensTransfer {
1881
+ declare class Shiden<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer, IXTokensTransfer {
1864
1882
  constructor();
1865
1883
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1866
1884
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1867
- canUseXTokens({ asset }: TSendInternalOptions<TApi, TRes>): boolean;
1885
+ canUseXTokens({ assetInfo }: TSendInternalOptions<TApi, TRes>): boolean;
1868
1886
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1869
1887
  }
1870
1888
 
1871
- declare class Subsocial<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
1889
+ declare class Subsocial<TApi, TRes> extends Parachain<TApi, TRes> implements IPolkadotXCMTransfer {
1872
1890
  constructor();
1873
1891
  transferPolkadotXCM<TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>): Promise<TRes>;
1874
1892
  }
1875
1893
 
1876
- declare class Unique<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1894
+ declare class Unique<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1877
1895
  private static NATIVE_ASSET_ID;
1878
1896
  constructor();
1879
1897
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1880
1898
  transferLocalNonNativeAsset(_options: TTransferLocalOptions<TApi, TRes>): TRes;
1881
1899
  }
1882
1900
 
1883
- declare class Zeitgeist<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1884
- constructor(chain?: TNodePolkadotKusama, info?: string, type?: TEcosystemType, version?: Version);
1901
+ declare class Zeitgeist<TApi, TRes> extends Parachain<TApi, TRes> implements IXTokensTransfer {
1902
+ constructor(chain?: TParachain, info?: string, ecosystem?: TRelaychain, version?: Version);
1885
1903
  private getCurrencySelection;
1886
1904
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1887
1905
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
@@ -1891,7 +1909,7 @@ declare class ZeitgeistPaseo<TApi, TRes> extends Zeitgeist<TApi, TRes> {
1891
1909
  constructor();
1892
1910
  }
1893
1911
 
1894
- declare const nodes: <TApi, TRes>() => {
1912
+ declare const chains: <TApi, TRes>() => {
1895
1913
  AssetHubPolkadot: AssetHubPolkadot<TApi, TRes>;
1896
1914
  Acala: Acala<TApi, TRes>;
1897
1915
  Ajuna: Ajuna<TApi, TRes>;
@@ -1968,41 +1986,26 @@ declare const nodes: <TApi, TRes>() => {
1968
1986
  ZeitgeistPaseo: ZeitgeistPaseo<TApi, TRes>;
1969
1987
  };
1970
1988
 
1971
- declare const getNodeConfig: (node: TNodeDotKsmWithRelayChains) => TNodeConfig;
1972
-
1973
- declare const getNodeProviders: (node: TNodeDotKsmWithRelayChains) => string[];
1974
-
1975
- /**
1976
- * Retrieves the parachain ID for a specified node.
1977
- *
1978
- * @param node - The node for which to get the paraId.
1979
- * @returns The parachain ID of the node.
1980
- */
1981
- declare const getParaId: (node: TNodeWithRelayChains) => number;
1982
-
1983
- /**
1984
- * Retrieves the node name corresponding to a specified parachain ID.
1985
- *
1986
- * @param paraId - The parachain ID.
1987
- * @returns The node name if found; otherwise, null.
1988
- */
1989
- declare const getTNode: (paraId: number, ecosystem: TEcosystemType) => TNodeWithRelayChains | null;
1989
+ declare const ETH_CHAIN_ID: bigint;
1990
+ declare const ETHEREUM_JUNCTION: TJunction;
1991
+ declare const TX_CLIENT_TIMEOUT_MS: number;
1992
+ declare const DRY_RUN_CLIENT_TIMEOUT_MS: number;
1990
1993
 
1991
1994
  declare const claimAssets: <TApi, TRes>(options: TAssetClaimOptions<TApi, TRes>) => Promise<TRes>;
1992
1995
 
1993
- declare const getAssetBalanceInternal: <TApi, TRes>({ address, node, currency, api }: TGetAssetBalanceOptions<TApi, TRes>) => Promise<bigint>;
1996
+ declare const getAssetBalanceInternal: <TApi, TRes>({ address, chain, currency, api }: TGetAssetBalanceOptions<TApi, TRes>) => Promise<bigint>;
1994
1997
  declare const getAssetBalance: <TApi, TRes>(options: TGetAssetBalanceOptions<TApi, TRes>) => Promise<bigint>;
1995
1998
 
1996
- declare const getBalanceForeignInternal: <TApi, TRes>({ address, node, currency, api }: TGetBalanceForeignOptions<TApi, TRes>) => Promise<bigint>;
1999
+ declare const getBalanceForeignInternal: <TApi, TRes>({ address, chain, currency, api }: TGetBalanceForeignOptions<TApi, TRes>) => Promise<bigint>;
1997
2000
  declare const getBalanceForeign: <TApi, TRes>(options: TGetBalanceForeignOptions<TApi, TRes>) => Promise<bigint>;
1998
2001
 
1999
- declare const getBalanceNativeInternal: <TApi, TRes>({ address, node, api, currency }: TGetBalanceNativeOptions<TApi, TRes>) => Promise<bigint>;
2002
+ declare const getBalanceNativeInternal: <TApi, TRes>({ address, chain, api, currency }: TGetBalanceNativeOptions<TApi, TRes>) => Promise<bigint>;
2000
2003
  declare const getBalanceNative: <TApi, TRes>(options: TGetBalanceNativeOptions<TApi, TRes>) => Promise<bigint>;
2001
2004
 
2002
2005
  declare const getOriginFeeDetailsInternal: <TApi, TRes>({ api, account, accountDestination, ahAddress, currency, origin, destination, feeMarginPercentage }: TGetOriginFeeDetailsOptions<TApi, TRes>) => Promise<TOriginFeeDetails>;
2003
2006
  declare const getOriginFeeDetails: <TApi, TRes>(options: TGetOriginFeeDetailsOptions<TApi, TRes>) => Promise<TOriginFeeDetails>;
2004
2007
 
2005
- declare const getTransferableAmountInternal: <TApi, TRes>({ api, senderAddress, origin: node, destination, currency, builder, feeAsset }: TGetTransferableAmountOptions<TApi, TRes>) => Promise<bigint>;
2008
+ declare const getTransferableAmountInternal: <TApi, TRes>({ api, senderAddress, origin: chain, destination, currency, builder, feeAsset }: TGetTransferableAmountOptions<TApi, TRes>) => Promise<bigint>;
2006
2009
  declare const getTransferableAmount: <TApi, TRes>(options: TGetTransferableAmountOptions<TApi, TRes>) => Promise<bigint>;
2007
2010
 
2008
2011
  declare const getTransferInfo: <TApi, TRes>({ api, tx, origin, destination, senderAddress, ahAddress, address, currency, feeAsset }: TGetTransferInfoOptions<TApi, TRes>) => Promise<TTransferInfo>;
@@ -2011,12 +2014,12 @@ declare const verifyEdOnDestination: <TApi, TRes>(options: TVerifyEdOnDestinatio
2011
2014
 
2012
2015
  declare const dryRun: <TApi, TRes>(options: TDryRunOptions<TApi, TRes>) => Promise<TDryRunResult>;
2013
2016
 
2014
- declare const dryRunOrigin: <TApi, TRes>(options: TDryRunCallOptions<TApi, TRes>) => Promise<TDryRunNodeResult>;
2017
+ declare const dryRunOrigin: <TApi, TRes>(options: TDryRunCallOptions<TApi, TRes>) => Promise<TDryRunChainResult>;
2015
2018
 
2016
2019
  declare function traverseXcmHops<TApi, TRes, THopResult>(config: HopTraversalConfig<TApi, TRes, THopResult>): Promise<HopTraversalResult<THopResult>>;
2017
2020
  declare const addEthereumBridgeFees: <TApi, TRes, TResult extends {
2018
2021
  fee?: bigint;
2019
- }>(api: IPolkadotApi<TApi, TRes>, bridgeHubResult: TResult | undefined, destination: TNodeWithRelayChains, assetHubNode: TNodeDotKsmWithRelayChains) => Promise<TResult | undefined>;
2022
+ }>(api: IPolkadotApi<TApi, TRes>, bridgeHubResult: TResult | undefined, destination: TChain, assetHubChain: TSubstrateChain) => Promise<TResult | undefined>;
2020
2023
 
2021
2024
  declare const getParaEthTransferFees: <TApi, TRes>(ahApi: IPolkadotApi<TApi, TRes>) => Promise<[bigint, bigint]>;
2022
2025
 
@@ -2044,7 +2047,7 @@ declare const getXcmFee: <TApi, TRes, TDisableFallback extends boolean>({ api, t
2044
2047
 
2045
2048
  declare const getXcmFeeEstimate: <TApi, TRes>(options: TGetXcmFeeEstimateOptions<TApi, TRes>) => Promise<TGetXcmFeeEstimateResult>;
2046
2049
 
2047
- declare const padFee: (raw: bigint, origin: TNodeDotKsmWithRelayChains, dest: TNodeWithRelayChains, side: "origin" | "destination") => bigint;
2050
+ declare const padFee: (raw: bigint, origin: TSubstrateChain, dest: TChain, side: "origin" | "destination") => bigint;
2048
2051
  declare const padFeeBy: (amount: bigint, percent: number) => bigint;
2049
2052
 
2050
2053
  declare const getBridgeStatus: <TApi, TRes>(api: IPolkadotApi<TApi, TRes>) => Promise<TBridgeStatus>;
@@ -2056,19 +2059,27 @@ declare const transferRelayToPara: <TApi, TRes>(options: TRelayToParaOptions<TAp
2056
2059
  /**
2057
2060
  * Creates a type and then call for transferring assets using XCM. Works only for DOT and snowbridge assets so far.
2058
2061
  */
2059
- declare const createTypeAndThenCall: <TApi, TRes>(chain: TNodeDotKsmWithRelayChains, options: TPolkadotXCMTransferOptions<TApi, TRes>) => Promise<TSerializedApiCall>;
2062
+ declare const createTypeAndThenCall: <TApi, TRes>(chain: TSubstrateChain, options: TPolkadotXCMTransferOptions<TApi, TRes>) => Promise<TSerializedApiCall>;
2060
2063
 
2061
2064
  declare const addXcmVersionHeader: <T, V extends Version>(obj: T, version: V) => OneKey<V, T>;
2062
2065
 
2063
- declare const assertToIsString: (to: TDestination, overrideMsg?: string) => asserts to is Exclude<TDestination, TMultiLocation>;
2064
- declare const assertAddressIsString: (address: TAddress) => asserts address is Exclude<TAddress, TMultiLocation>;
2065
- declare const assertHasLocation: (asset: TAsset) => asserts asset is TAssetWithLocation;
2066
- declare const assertHasId: (asset: TAsset) => asserts asset is TForeignAssetWithId;
2067
- declare const assertIsForeign: (asset: TAsset) => asserts asset is TForeignAsset;
2066
+ declare const assertToIsString: (to: TDestination, overrideMsg?: string) => asserts to is Exclude<TDestination, TLocation>;
2067
+ declare const assertAddressIsString: (address: TAddress) => asserts address is Exclude<TAddress, TLocation>;
2068
+ declare const assertHasLocation: (asset: TAssetInfo) => asserts asset is TAssetWithLocation;
2069
+ declare const assertHasId: (asset: TAssetInfo) => asserts asset is TForeignAssetWithId;
2070
+ declare const assertIsForeign: (asset: TAssetInfo) => asserts asset is TForeignAssetInfo;
2071
+
2072
+ declare const createAsset: (version: Version, amount: bigint, location: TLocation) => TAsset;
2073
+ declare const createVersionedAssets: (version: Version, amount: bigint, location: TLocation) => OneKey<Version, TAsset[]>;
2074
+
2075
+ declare const maybeOverrideAssets: (version: Version, amount: bigint, assets: TAsset[], overriddenCurrency?: TLocation | TAsset[]) => TAsset[];
2076
+ declare const maybeOverrideAsset: (version: Version, amount: bigint, asset: TAsset, overriddenCurrency?: TLocation | TAsset[]) => TAsset;
2077
+
2078
+ declare const sortAssets: (assets: TAsset[]) => TAsset[];
2068
2079
 
2069
2080
  declare const isConfig: <TApi>(value: any) => value is TBuilderConfig<TApi>;
2070
2081
 
2071
- declare const getChainVersion: <TApi, TRes>(chain: TNodeWithRelayChains) => Version;
2082
+ declare const getChainVersion: <TApi, TRes>(chain: TChain) => Version;
2072
2083
 
2073
2084
  /**
2074
2085
  * Gets the relay chain (Polkadot, Kusama, Westend, or Paseo) of a given chain.
@@ -2076,58 +2087,53 @@ declare const getChainVersion: <TApi, TRes>(chain: TNodeWithRelayChains) => Vers
2076
2087
  * @param chain - The chain to evaluate.
2077
2088
  * @returns The corresponding relay chain.
2078
2089
  */
2079
- declare const getRelayChainOf: (chain: TNodeDotKsmWithRelayChains) => TRelayChain;
2090
+ declare const getRelayChainOf: (chain: TSubstrateChain) => TRelaychain;
2080
2091
 
2081
- declare const createApiInstanceForNode: <TApi, TRes>(api: IPolkadotApi<TApi, TRes>, node: TNodeDotKsmWithRelayChains) => Promise<TApi>;
2092
+ declare const createChainClient: <TApi, TRes>(api: IPolkadotApi<TApi, TRes>, chain: TSubstrateChain) => Promise<TApi>;
2082
2093
 
2083
- declare const computeFeeFromDryRun: (dryRun: any, node: TNodeDotKsmWithRelayChains, executionFee: bigint, isFeeAsset?: boolean) => bigint;
2094
+ declare const computeFeeFromDryRun: (dryRun: any, chain: TSubstrateChain, executionFee: bigint, isFeeAsset?: boolean) => bigint;
2084
2095
 
2085
- declare const computeFeeFromDryRunPjs: (dryRun: any, node: TNodeDotKsmWithRelayChains, executionFee: bigint) => bigint;
2096
+ declare const computeFeeFromDryRunPjs: (dryRun: any, chain: TSubstrateChain, executionFee: bigint) => bigint;
2086
2097
 
2087
- declare const resolveModuleError: (node: TNodeDotKsmWithRelayChains, error: TModuleError) => XTokensError | PolkadotXcmError;
2098
+ declare const resolveModuleError: (chain: TSubstrateChain, error: TModuleError) => XTokensError | PolkadotXcmError;
2088
2099
 
2089
2100
  /**
2090
- * Retrieves the node instance for a given node.
2101
+ * Retrieves the chain instance for a given chain.
2091
2102
  *
2092
- * @param node - The node identifier.
2093
- * @returns The node instance
2103
+ * @param chain - The chain identifier.
2104
+ * @returns The chain instance
2094
2105
  */
2095
- declare const getNode: <TApi, TRes, T extends keyof ReturnType<typeof nodes>>(node: T) => ReturnType<typeof nodes<TApi, TRes>>[T];
2106
+ declare const getChain: <TApi, TRes, T extends keyof ReturnType<typeof chains>>(chain: T) => ReturnType<typeof chains<TApi, TRes>>[T];
2096
2107
 
2097
- declare const createBeneficiaryLocXTokens: <TApi, TRes>({ api, address: recipientAddress, origin, destination, version, paraId }: TCreateBeneficiaryXTokensOptions<TApi, TRes>) => TMultiLocation;
2098
- declare const createBeneficiaryLocation: <TApi, TRes>({ api, address: recipientAddress, version }: TCreateBeneficiaryOptions<TApi, TRes>) => TMultiLocation;
2108
+ declare const createBeneficiaryLocXTokens: <TApi, TRes>({ api, address: recipientAddress, origin, destination, version, paraId }: TCreateBeneficiaryXTokensOptions<TApi, TRes>) => TLocation;
2109
+ declare const createBeneficiaryLocation: <TApi, TRes>({ api, address, version }: TCreateBeneficiaryOptions<TApi, TRes>) => TLocation;
2099
2110
 
2100
2111
  declare const createX1Payload: (version: Version, junction: TJunction) => TJunctions;
2101
2112
 
2102
- declare const getChainLocation: (chain: TNodeWithRelayChains, destChain: TNodeWithRelayChains) => TMultiLocation;
2113
+ declare const getChainLocation: (chain: TChain, destChain: TChain) => TLocation;
2103
2114
 
2104
2115
  /**
2105
- * This function localizes a multiLocation by removing the `Parachain` junction
2116
+ * This function localizes a location by removing the `Parachain` junction
2106
2117
  * if it exists. The `parents` field is set to `0` either if a `Parachain` was removed
2107
- * or if the resulting interior is `'Here'` and the node is a relay chain.
2118
+ * or if the resulting interior is `'Here'` and the chain is a relay chain.
2108
2119
  *
2109
- * @param node - The current node
2110
- * @param multiLocation - The multiLocation to localize
2111
- * @returns The localized multiLocation
2120
+ * @param chain - The current chain
2121
+ * @param location - The location to localize
2122
+ * @returns The localized location
2112
2123
  */
2113
- declare const localizeLocation: (node: TNodeWithRelayChains, multiLocation: TMultiLocation) => TMultiLocation;
2114
-
2115
- declare const reverseTransformMultiLocation: (multiLocation: TMultiLocation) => TMultiLocation;
2124
+ declare const localizeLocation: (chain: TChain, location: TLocation) => TLocation;
2116
2125
 
2117
- declare const createMultiAsset: (version: Version, amount: bigint, multiLocation: TMultiLocation) => TMultiAsset;
2118
- declare const createVersionedMultiAssets: (version: Version, amount: bigint, multiLocation: TMultiLocation) => OneKey<Version, TMultiAsset[]>;
2119
-
2120
- declare const maybeOverrideMultiAssets: (version: Version, amount: bigint, multiAssets: TMultiAsset[], overriddenCurrency?: TMultiLocation | TMultiAsset[]) => TMultiAsset[];
2121
- declare const maybeOverrideMultiAsset: (version: Version, amount: bigint, multiAsset: TMultiAsset, overriddenCurrency?: TMultiLocation | TMultiAsset[]) => TMultiAsset;
2122
-
2123
- declare const sortMultiAssets: (assets: TMultiAsset[]) => TMultiAsset[];
2126
+ declare const reverseTransformLocation: (location: TLocation) => TLocation;
2124
2127
 
2125
2128
  declare const resolveParaId: (paraId: number | undefined, destination: TDestination) => number | undefined;
2126
2129
 
2127
- declare const createAssetsFilter: (asset: TMultiAsset) => {
2130
+ declare const abstractDecimals: <TApi, TRes>(amount: TAmount, decimals: number | undefined, api: IPolkadotApi<TApi, TRes>) => bigint;
2131
+ declare const applyDecimalAbstraction: (amount: TAmount, decimals: number | undefined, shouldAbstract: boolean) => bigint;
2132
+
2133
+ declare const createAssetsFilter: (asset: TAsset) => {
2128
2134
  Wild: {
2129
2135
  AllOf: {
2130
- id: _paraspell_sdk_common.TMultiLocation;
2136
+ id: _paraspell_sdk_common.TLocation;
2131
2137
  fun: string;
2132
2138
  };
2133
2139
  };
@@ -2137,21 +2143,21 @@ declare const createBaseExecuteXcm: (options: TCreateBaseTransferXcmOptions & {
2137
2143
  suffixXcm?: unknown[];
2138
2144
  }) => unknown[];
2139
2145
 
2140
- declare const createExecuteCall: (chain: TNodeDotKsmWithRelayChains, xcm: TXcmVersioned<any>, maxWeight: TWeight) => TSerializedApiCall;
2146
+ declare const createExecuteCall: (chain: TSubstrateChain, xcm: TXcmVersioned<any>, maxWeight: TWeight) => TSerializedApiCall;
2141
2147
 
2142
- declare const createExecuteExchangeXcm: <TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>, origin: TNodeDotKsmWithRelayChains, weight: TWeight, originExecutionFee: bigint, destExecutionFee: bigint) => TRes;
2148
+ declare const createExecuteExchangeXcm: <TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>, origin: TSubstrateChain, weight: TWeight, originExecutionFee: bigint, destExecutionFee: bigint) => TRes;
2143
2149
 
2144
2150
  declare const createDirectExecuteXcm: <TApi, TRes>(options: TCreateTransferXcmOptions<TApi, TRes>) => OneKey<_paraspell_sdk_common.Version, unknown[]>;
2145
2151
 
2146
- declare const getAssetReserveChain: (chain: TNodeDotKsmWithRelayChains, destChain: TNodeWithRelayChains, assetLocation: TMultiLocation) => TNodeDotKsmWithRelayChains;
2152
+ declare const getAssetReserveChain: (chain: TSubstrateChain, destChain: TChain, assetLocation: TLocation) => TSubstrateChain;
2147
2153
 
2148
- declare const handleExecuteTransfer: <TApi, TRes>(chain: TNodePolkadotKusama, options: TPolkadotXCMTransferOptions<TApi, TRes>) => Promise<TSerializedApiCall>;
2154
+ declare const handleExecuteTransfer: <TApi, TRes>(chain: TParachain, options: TPolkadotXCMTransferOptions<TApi, TRes>) => Promise<TSerializedApiCall>;
2149
2155
 
2150
2156
  declare const handleSwapExecuteTransfer: <TApi, TRes>(options: TCreateSwapXcmOptions<TApi, TRes>) => Promise<TRes>;
2151
2157
 
2152
- declare const handleToAhTeleport: <TApi, TRes>(origin: TNodePolkadotKusama, input: TPolkadotXCMTransferOptions<TApi, TRes>, defaultTx: TRes) => Promise<TRes>;
2158
+ declare const handleToAhTeleport: <TApi, TRes>(origin: TParachain, input: TPolkadotXCMTransferOptions<TApi, TRes>, defaultTx: TRes) => Promise<TRes>;
2153
2159
 
2154
- declare const validateAddress: (address: TAddress, node: TNodeWithRelayChains, isDestination?: boolean) => void;
2160
+ declare const validateAddress: (address: TAddress, chain: TChain, isDestination?: boolean) => void;
2155
2161
 
2156
- export { AssetClaimBuilder, BatchMode, BridgeHaltedError, Builder, DRY_RUN_CLIENT_TIMEOUT_MS, DryRunFailedError, ETHEREUM_JUNCTION, ETH_CHAIN_ID, GeneralBuilder, IncompatibleNodesError, InvalidAddressError, InvalidParameterError, MissingChainApiError, NoXCMSupportImplementedError, NodeNotSupportedError, PolkadotXcmError, ScenarioNotSupportedError, TX_CLIENT_TIMEOUT_MS, TransferToAhNotSupported, UnableToComputeError, XTokensError, addEthereumBridgeFees, addXcmVersionHeader, assertAddressIsString, assertHasId, assertHasLocation, assertIsForeign, assertToIsString, blake2b256, blake2b512, claimAssets, computeFeeFromDryRun, computeFeeFromDryRunPjs, convertSs58, createApiInstanceForNode, createAssetsFilter, createBaseExecuteXcm, createBeneficiaryLocXTokens, createBeneficiaryLocation, createDirectExecuteXcm, createExecuteCall, createExecuteExchangeXcm, createMultiAsset, createTypeAndThenCall, createVersionedMultiAssets, createX1Payload, deriveAccountId, dryRun, dryRunOrigin, encodeSs58, getAssetBalance, getAssetBalanceInternal, getAssetReserveChain, getBalanceForeign, getBalanceForeignInternal, getBalanceNative, getBalanceNativeInternal, getBridgeStatus, getChainLocation, getChainVersion, getNode, getNodeConfig, getNodeProviders, getOriginFeeDetails, getOriginFeeDetailsInternal, getOriginXcmFee, getOriginXcmFeeEstimate, getParaEthTransferFees, getParaId, getRelayChainOf, getTNode, getTransferInfo, getTransferableAmount, getTransferableAmountInternal, getXcmFee, getXcmFeeEstimate, handleExecuteTransfer, handleSwapExecuteTransfer, handleToAhTeleport, isConfig, localizeLocation, maybeOverrideMultiAsset, maybeOverrideMultiAssets, padFee, padFeeBy, resolveModuleError, resolveParaId, reverseTransformMultiLocation, send, sortMultiAssets, transferMoonbeamEvm, transferMoonbeamToEth, transferRelayToPara, traverseXcmHops, validateAddress, verifyEdOnDestination };
2157
- export type { HopProcessParams, HopTraversalConfig, HopTraversalResult, IPolkadotApi, IPolkadotXCMTransfer, IXTokensTransfer, IXTransferTransfer, OneKey, TAddress, TApiOrUrl, TAssetClaimOptions, TAssetClaimOptionsBase, TAttemptDryRunFeeOptions, TBalanceResponse, TBatchOptions, TBifrostToken, TBridgeStatus, TBuilderConfig, TBuilderOptions, TChainWithApi, TConditionalXcmFeeDetail, TConditionalXcmFeeHopInfo, TCreateBaseSwapXcmOptions, TCreateBaseTransferXcmOptions, TCreateBeneficiaryOptions, TCreateBeneficiaryXTokensOptions, TCreateSwapXcmInternalOptions, TCreateSwapXcmOptions, TCreateTransferXcmOptions, TDestWeight, TDestXcmFeeDetail, TDestination, TDryRunBaseOptions, TDryRunCallBaseOptions, TDryRunCallOptions, TDryRunChain, TDryRunNodeFailure, TDryRunNodeResult, TDryRunNodeResultInternal, TDryRunNodeSuccess, TDryRunOptions, TDryRunResult, TDryRunXcmBaseOptions, TDryRunXcmOptions, TEdJsonMap, TEvmBuilderOptions, TEvmBuilderOptionsBase, TEvmNodeFrom, TFeeType, TForeignAssetId, TForeignOrNativeAsset, TForeignOrTokenAsset, TGetAssetBalanceOptions, TGetAssetBalanceOptionsBase, TGetBalanceForeignOptions, TGetBalanceForeignOptionsBase, TGetBalanceNativeOptions, TGetBalanceNativeOptionsBase, TGetFeeForDestNodeBaseOptions, TGetFeeForDestNodeOptions, TGetMaxForeignTransferableAmountOptions, TGetMaxForeignTransferableAmountOptionsBase, TGetMaxNativeTransferableAmountOptions, TGetMaxNativeTransferableAmountOptionsBase, TGetOriginFeeDetailsOptions, TGetOriginFeeDetailsOptionsBase, TGetOriginXcmFeeBaseOptions, TGetOriginXcmFeeEstimateOptions, TGetOriginXcmFeeOptions, TGetReverseTxFeeOptions, TGetTransferInfoOptions, TGetTransferInfoOptionsBase, TGetTransferableAmountOptions, TGetTransferableAmountOptionsBase, TGetXcmFeeBaseOptions, TGetXcmFeeBuilderOptions, TGetXcmFeeEstimateDetail, TGetXcmFeeEstimateOptions, TGetXcmFeeEstimateResult, TGetXcmFeeOptions, TGetXcmFeeResult, THopInfo, THopTransferInfo, THubKey, TMantaAsset, TModuleError, TNativeTokenAsset, TNodeConfig, TNodeConfigMap, TNodleAsset, TOriginFeeDetails, TOtherReserveAsset, TPolkadotXCMTransferOptions, TPolkadotXcmMethod, TProviderEntry, TRelayToParaDestination, TRelayToParaOptions, TRelayToParaOverrides, TReserveAsset, TScenario, TSelfReserveAsset, TSendBaseOptions, TSendBaseOptionsWithSenderAddress, TSendInternalOptions, TSendOptions, TSerializeEthTransferOptions, TSerializedApiCall, TSerializedEthTransfer, TSwapFeeEstimates, TTransferFeeEstimates, TTransferInfo, TTransferLocalOptions, TTypeAndThenCallContext, TTypeAndThenFees, TVerifyEdOnDestinationOptions, TVerifyEdOnDestinationOptionsBase, TWeight, TXTokensCurrencySelection, TXTokensMethod, TXTokensTransferOptions, TXTransferMethod, TXTransferTransferOptions, TXcmAsset, TXcmFeeBase, TXcmFeeChain, TXcmFeeDetail, TXcmFeeDetailWithFallback, TXcmFeeHopInfo, TXcmForeignAsset, TXcmPalletMethod, TXcmVersioned, TZeitgeistAsset, WithApi, WithRequiredSenderAddress, XcmFeeHopResult };
2162
+ export { AssetClaimBuilder, BatchMode, BridgeHaltedError, Builder, ChainNotSupportedError, DRY_RUN_CLIENT_TIMEOUT_MS, DryRunFailedError, ETHEREUM_JUNCTION, ETH_CHAIN_ID, GeneralBuilder, IncompatibleChainsError, InvalidAddressError, InvalidParameterError, MissingChainApiError, NoXCMSupportImplementedError, PolkadotXcmError, ScenarioNotSupportedError, TX_CLIENT_TIMEOUT_MS, TransferToAhNotSupported, UnableToComputeError, XTokensError, abstractDecimals, addEthereumBridgeFees, addXcmVersionHeader, applyDecimalAbstraction, assertAddressIsString, assertHasId, assertHasLocation, assertIsForeign, assertToIsString, blake2b256, blake2b512, claimAssets, computeFeeFromDryRun, computeFeeFromDryRunPjs, convertSs58, createAsset, createAssetsFilter, createBaseExecuteXcm, createBeneficiaryLocXTokens, createBeneficiaryLocation, createChainClient, createDirectExecuteXcm, createExecuteCall, createExecuteExchangeXcm, createTypeAndThenCall, createVersionedAssets, createX1Payload, deriveAccountId, dryRun, dryRunOrigin, encodeSs58, getAssetBalance, getAssetBalanceInternal, getAssetReserveChain, getBalanceForeign, getBalanceForeignInternal, getBalanceNative, getBalanceNativeInternal, getBridgeStatus, getChain, getChainConfig, getChainLocation, getChainProviders, getChainVersion, getOriginFeeDetails, getOriginFeeDetailsInternal, getOriginXcmFee, getOriginXcmFeeEstimate, getParaEthTransferFees, getParaId, getRelayChainOf, getTChain, getTransferInfo, getTransferableAmount, getTransferableAmountInternal, getXcmFee, getXcmFeeEstimate, handleExecuteTransfer, handleSwapExecuteTransfer, handleToAhTeleport, isConfig, localizeLocation, maybeOverrideAsset, maybeOverrideAssets, padFee, padFeeBy, resolveModuleError, resolveParaId, reverseTransformLocation, send, sortAssets, transferMoonbeamEvm, transferMoonbeamToEth, transferRelayToPara, traverseXcmHops, validateAddress, verifyEdOnDestination };
2163
+ export type { HopProcessParams, HopTraversalConfig, HopTraversalResult, IPolkadotApi, IPolkadotXCMTransfer, IXTokensTransfer, IXTransferTransfer, OneKey, TAddress, TApiOrUrl, TAssetClaimInternalOptions, TAssetClaimOptions, TAssetClaimOptionsBase, TAttemptDryRunFeeOptions, TBalanceResponse, TBatchOptions, TBifrostToken, TBridgeStatus, TBuilderConfig, TBuilderOptions, TChainConfig, TChainConfigMap, TChainWithApi, TConditionalXcmFeeDetail, TConditionalXcmFeeHopInfo, TCreateBaseSwapXcmOptions, TCreateBaseTransferXcmOptions, TCreateBeneficiaryOptions, TCreateBeneficiaryXTokensOptions, TCreateSwapXcmInternalOptions, TCreateSwapXcmOptions, TCreateTransferXcmOptions, TDestWeight, TDestXcmFeeDetail, TDestination, TDryRunBaseOptions, TDryRunCallBaseOptions, TDryRunCallOptions, TDryRunChain, TDryRunChainFailure, TDryRunChainResult, TDryRunChainResultInternal, TDryRunChainSuccess, TDryRunOptions, TDryRunResult, TDryRunXcmBaseOptions, TDryRunXcmOptions, TEvmBuilderOptions, TEvmBuilderOptionsBase, TEvmChainFrom, TFeeType, TForeignAssetId, TForeignOrNativeAsset, TForeignOrTokenAsset, TGetAssetBalanceOptions, TGetAssetBalanceOptionsBase, TGetBalanceForeignOptions, TGetBalanceForeignOptionsBase, TGetBalanceNativeOptions, TGetBalanceNativeOptionsBase, TGetFeeForDestChainBaseOptions, TGetFeeForDestChainOptions, TGetMaxForeignTransferableAmountOptions, TGetMaxForeignTransferableAmountOptionsBase, TGetMaxNativeTransferableAmountOptions, TGetMaxNativeTransferableAmountOptionsBase, TGetOriginFeeDetailsOptions, TGetOriginFeeDetailsOptionsBase, TGetOriginXcmFeeBaseOptions, TGetOriginXcmFeeEstimateOptions, TGetOriginXcmFeeOptions, TGetReverseTxFeeOptions, TGetTransferInfoOptions, TGetTransferInfoOptionsBase, TGetTransferableAmountOptions, TGetTransferableAmountOptionsBase, TGetXcmFeeBaseOptions, TGetXcmFeeBuilderOptions, TGetXcmFeeEstimateDetail, TGetXcmFeeEstimateOptions, TGetXcmFeeEstimateResult, TGetXcmFeeOptions, TGetXcmFeeResult, THopInfo, THopTransferInfo, THubKey, TMantaAsset, TModuleError, TNativeTokenAsset, TNodleAsset, TOriginFeeDetails, TOtherReserveAsset, TPolkadotXCMTransferOptions, TPolkadotXcmMethod, TProviderEntry, TRelayToParaDestination, TRelayToParaOptions, TRelayToParaOverrides, TReserveAsset, TScenario, TSelfReserveAsset, TSendBaseOptions, TSendBaseOptionsWithSenderAddress, TSendInternalOptions, TSendOptions, TSerializeEthTransferOptions, TSerializedApiCall, TSerializedEthTransfer, TSwapFeeEstimates, TTransferFeeEstimates, TTransferInfo, TTransferLocalOptions, TTypeAndThenCallContext, TTypeAndThenFees, TVerifyEdOnDestinationOptions, TVerifyEdOnDestinationOptionsBase, TWeight, TXTokensCurrencySelection, TXTokensMethod, TXTokensTransferOptions, TXTransferMethod, TXTransferTransferOptions, TXcmAsset, TXcmFeeBase, TXcmFeeChain, TXcmFeeDetail, TXcmFeeDetailWithFallback, TXcmFeeHopInfo, TXcmForeignAsset, TXcmPalletMethod, TXcmVersioned, TZeitgeistAsset, WithApi, WithRequiredSenderAddress, XcmFeeHopResult };