@paraspell/sdk 7.1.1 → 7.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.ts CHANGED
@@ -2,7 +2,6 @@ import { SubmittableExtrinsic } from '@polkadot/api/types';
2
2
  import * as _polkadot_api from '@polkadot/api';
3
3
  import { ApiPromise } from '@polkadot/api';
4
4
  import { Signer, AbstractProvider } from 'ethers';
5
- import * as _polkadot_apps_config_endpoints_types from '@polkadot/apps-config/endpoints/types';
6
5
 
7
6
  type WithApi<TBase, TApi, TRes> = TBase & {
8
7
  api: IPolkadotApi<TApi, TRes>;
@@ -21,6 +20,7 @@ interface IPolkadotApi<TApi, TRes> {
21
20
  getBalanceForeignPolkadotXcm(address: string, id?: string): Promise<bigint>;
22
21
  getMythosForeignBalance(address: string): Promise<bigint>;
23
22
  getAssetHubForeignBalance(address: string, multiLocation: TMultiLocation): Promise<bigint>;
23
+ getForeignAssetsByIdBalance(address: string, assetId: string): Promise<bigint>;
24
24
  getBalanceForeignXTokens(address: string, asset: TAsset): Promise<bigint>;
25
25
  getBalanceForeignAssetsAccount(address: string, assetId: bigint | number): Promise<bigint>;
26
26
  getFromStorage(key: string): Promise<string>;
@@ -30,14 +30,14 @@ interface IPolkadotApi<TApi, TRes> {
30
30
 
31
31
  declare abstract class ParachainNode<TApi, TRes> {
32
32
  private readonly _node;
33
- private readonly _name;
33
+ private readonly _info;
34
34
  private readonly _type;
35
35
  private readonly _version;
36
36
  protected _assetCheckEnabled: boolean;
37
- constructor(node: TNode, name: string, type: TRelayChainType, version: Version);
38
- get name(): string;
37
+ constructor(node: TNodePolkadotKusama, info: string, type: TRelayChainType, version: Version);
38
+ get info(): string;
39
39
  get type(): TRelayChainType;
40
- get node(): TNode;
40
+ get node(): TNodePolkadotKusama;
41
41
  get version(): Version;
42
42
  get assetCheckEnabled(): boolean;
43
43
  protected canUseXTokens(_: TSendInternalOptions<TApi, TRes>): boolean;
@@ -45,7 +45,7 @@ declare abstract class ParachainNode<TApi, TRes> {
45
45
  transferRelayToPara(options: TRelayToParaOptions<TApi, TRes>): TSerializedApiCallV2;
46
46
  getProvider(): string;
47
47
  createApiInstance(api: IPolkadotApi<TApi, TRes>): Promise<TApi>;
48
- createCurrencySpec(amount: string, scenario: TScenario, version: Version, _currencyId?: string, overridedMultiLocation?: TMultiLocation | TMultiAsset[]): TCurrencySelectionHeaderArr;
48
+ createCurrencySpec(amount: string, scenario: TScenario, version: Version, _asset?: TAsset, overridedMultiLocation?: TMultiLocation | TMultiAsset[]): TCurrencySelectionHeaderArr;
49
49
  createPolkadotXcmHeader(scenario: TScenario, version: Version, destination?: TDestination, paraId?: number): TMultiLocationHeader;
50
50
  getNativeAssetSymbol(): string;
51
51
  }
@@ -63,7 +63,7 @@ declare class Unique<TApi, TRes> extends ParachainNode<TApi, TRes> implements IX
63
63
 
64
64
  declare class Crust<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
65
65
  constructor();
66
- getCurrencySelection<TApi, TRes>({ currency, currencyID }: XTokensTransferInput<TApi, TRes>): TReserveAsset;
66
+ private getCurrencySelection;
67
67
  transferXTokens<TApi, TRes>(input: XTokensTransferInput<TApi, TRes>): TTransferReturn<TRes>;
68
68
  }
69
69
 
@@ -72,7 +72,8 @@ declare class BifrostPolkadot<TApi, TRes> extends ParachainNode<TApi, TRes> impl
72
72
  private getCurrencySelection;
73
73
  transferXTokens<TApi, TRes>(input: XTokensTransferInput<TApi, TRes>): TTransferReturn<TRes>;
74
74
  transferPolkadotXCM<TApi, TRes>(input: PolkadotXCMTransferInput<TApi, TRes>): Promise<TTransferReturn<TRes>>;
75
- protected canUseXTokens({ currencySymbol, destination }: TSendInternalOptions<TApi, TRes>): boolean;
75
+ protected canUseXTokens({ asset, destination }: TSendInternalOptions<TApi, TRes>): boolean;
76
+ getProvider(): string;
76
77
  }
77
78
 
78
79
  declare class Bitgreen<TApi, TRes> extends ParachainNode<TApi, TRes> {
@@ -81,6 +82,7 @@ declare class Bitgreen<TApi, TRes> extends ParachainNode<TApi, TRes> {
81
82
 
82
83
  declare class Centrifuge<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
83
84
  constructor();
85
+ private getCurrencySelection;
84
86
  transferXTokens<TApi, TRes>(input: XTokensTransferInput<TApi, TRes>): TTransferReturn<TRes>;
85
87
  }
86
88
 
@@ -90,12 +92,14 @@ declare class ComposableFinance<TApi, TRes> extends ParachainNode<TApi, TRes> im
90
92
  }
91
93
 
92
94
  declare class Hydration<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer, IPolkadotXCMTransfer {
95
+ private static NATIVE_ASSET_ID;
93
96
  constructor();
94
97
  transferToEthereum<TApi, TRes>(input: PolkadotXCMTransferInput<TApi, TRes>): Promise<TTransferReturn<TRes>>;
95
98
  transferToAssetHub<TApi, TRes>(input: PolkadotXCMTransferInput<TApi, TRes>): TTransferReturn<TRes>;
96
99
  transferPolkadotXCM<TApi, TRes>(input: PolkadotXCMTransferInput<TApi, TRes>): Promise<TTransferReturn<TRes>>;
97
100
  transferXTokens<TApi, TRes>(input: XTokensTransferInput<TApi, TRes>): TTransferReturn<TRes>;
98
- protected canUseXTokens({ destination, currencySymbol, currencyId }: TSendInternalOptions<TApi, TRes>): boolean;
101
+ protected canUseXTokens({ destination, asset }: TSendInternalOptions<TApi, TRes>): boolean;
102
+ getProvider(): string;
99
103
  }
100
104
 
101
105
  declare class Interlay<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
@@ -110,6 +114,7 @@ declare class Litentry<TApi, TRes> extends ParachainNode<TApi, TRes> implements
110
114
 
111
115
  declare class Moonbeam<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
112
116
  constructor();
117
+ private getCurrencySelection;
113
118
  transferXTokens<TApi, TRes>(input: XTokensTransferInput<TApi, TRes>): TTransferReturn<TRes>;
114
119
  transferRelayToPara(options: TRelayToParaOptions<TApi, TRes>): TSerializedApiCallV2;
115
120
  getProvider(): string;
@@ -122,6 +127,7 @@ declare class Parallel<TApi, TRes> extends ParachainNode<TApi, TRes> implements
122
127
 
123
128
  declare class Altair<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
124
129
  constructor();
130
+ private getCurrencySelection;
125
131
  transferXTokens<TApi, TRes>(input: XTokensTransferInput<TApi, TRes>): TTransferReturn<TRes>;
126
132
  }
127
133
 
@@ -145,6 +151,7 @@ declare class Basilisk<TApi, TRes> extends ParachainNode<TApi, TRes> implements
145
151
  declare class BifrostKusama<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
146
152
  constructor();
147
153
  transferXTokens<TApi, TRes>(input: XTokensTransferInput<TApi, TRes>): TTransferReturn<TRes>;
154
+ getProvider(): string;
148
155
  }
149
156
 
150
157
  declare class Pioneer<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
@@ -169,6 +176,7 @@ declare class ParallelHeiko<TApi, TRes> extends ParachainNode<TApi, TRes> implem
169
176
 
170
177
  declare class Moonriver<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
171
178
  constructor();
179
+ private getCurrencySelection;
172
180
  transferXTokens<TApi, TRes>(input: XTokensTransferInput<TApi, TRes>): TTransferReturn<TRes>;
173
181
  transferRelayToPara(options: TRelayToParaOptions<TApi, TRes>): TSerializedApiCallV2;
174
182
  getProvider(): string;
@@ -186,7 +194,7 @@ declare class Calamari<TApi, TRes> extends ParachainNode<TApi, TRes> implements
186
194
 
187
195
  declare class CrustShadow<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
188
196
  constructor();
189
- getCurrencySelection<TApi, TRes>({ currency, currencyID }: XTokensTransferInput<TApi, TRes>): TReserveAsset;
197
+ private getCurrencySelection;
190
198
  transferXTokens<TApi, TRes>(input: XTokensTransferInput<TApi, TRes>): TTransferReturn<TRes>;
191
199
  }
192
200
 
@@ -217,17 +225,19 @@ declare class AssetHubPolkadot<TApi, TRes> extends ParachainNode<TApi, TRes> imp
217
225
  handleBridgeTransfer<TApi, TRes>(input: PolkadotXCMTransferInput<TApi, TRes>, targetChain: 'Polkadot' | 'Kusama'): TTransferReturn<TRes>;
218
226
  handleEthBridgeTransfer<TApi, TRes>(input: PolkadotXCMTransferInput<TApi, TRes>): TTransferReturn<TRes>;
219
227
  handleMythosTransfer<TApi, TRes>(input: PolkadotXCMTransferInput<TApi, TRes>): TTransferReturn<TRes>;
228
+ handleBifrostEthTransfer: <TApi_1, TRes_1>(input: PolkadotXCMTransferInput<TApi_1, TRes_1>) => TTransferReturn<TRes_1>;
220
229
  patchInput<TApi, TRes>(input: PolkadotXCMTransferInput<TApi, TRes>): PolkadotXCMTransferInput<TApi, TRes>;
230
+ private getSection;
221
231
  transferPolkadotXCM<TApi, TRes>(input: PolkadotXCMTransferInput<TApi, TRes>): Promise<TTransferReturn<TRes>>;
222
232
  transferRelayToPara(options: TRelayToParaOptions<TApi, TRes>): TSerializedApiCallV2;
223
- createCurrencySpec(amount: string, scenario: TScenario, version: Version, currencyId?: string, overridedMultiLocation?: TMultiLocation | TMultiAsset[]): TCurrencySelectionHeaderArr;
233
+ createCurrencySpec(amount: string, scenario: TScenario, version: Version, asset?: TAsset, overridedMultiLocation?: TMultiLocation | TMultiAsset[]): TCurrencySelectionHeaderArr;
224
234
  }
225
235
 
226
236
  declare class AssetHubKusama<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
227
237
  constructor();
228
238
  transferPolkadotXCM<TApi, TRes>(input: PolkadotXCMTransferInput<TApi, TRes>): Promise<TTransferReturn<TRes>>;
229
239
  transferRelayToPara(options: TRelayToParaOptions<TApi, TRes>): TSerializedApiCallV2;
230
- createCurrencySpec(amount: string, scenario: TScenario, version: Version, currencyId?: string, overridedMultiLocation?: TMultiLocation | TMultiAsset[]): TCurrencySelectionHeaderArr;
240
+ createCurrencySpec(amount: string, scenario: TScenario, version: Version, asset?: TAsset, overridedMultiLocation?: TMultiLocation | TMultiAsset[]): TCurrencySelectionHeaderArr;
231
241
  }
232
242
 
233
243
  declare class CoretimeKusama<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
@@ -276,7 +286,7 @@ declare class Astar<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPo
276
286
  constructor();
277
287
  transferPolkadotXCM<TApi, TRes>(input: PolkadotXCMTransferInput<TApi, TRes>): Promise<TTransferReturn<TRes>>;
278
288
  transferXTokens<TApi, TRes>(input: XTokensTransferInput<TApi, TRes>): TTransferReturn<TRes>;
279
- protected canUseXTokens({ currencySymbol, currencyId }: TSendInternalOptions<TApi, TRes>): boolean;
289
+ protected canUseXTokens({ asset }: TSendInternalOptions<TApi, TRes>): boolean;
280
290
  }
281
291
 
282
292
  type TMultiAsset = TMultiAssetV3 | TMultiAssetV4;
@@ -296,14 +306,34 @@ interface TMultiAssetV4 {
296
306
  }
297
307
 
298
308
  type TCurrency = string | number | bigint;
309
+ type TSymbolSpecifier = {
310
+ type: 'Native' | 'Foreign' | 'ForeignAbstract';
311
+ value: string;
312
+ };
313
+ type TOverrideMultiLocationSpecifier = {
314
+ type: 'Override';
315
+ value: TMultiLocation;
316
+ };
317
+ type TCurrencySymbolValue = string | TSymbolSpecifier;
299
318
  type TCurrencySymbol = {
300
- symbol: string;
319
+ symbol: TCurrencySymbolValue;
301
320
  };
302
321
  type TCurrencyCore = TCurrencySymbol | {
303
322
  id: TCurrency;
323
+ } | {
324
+ multilocation: TMultiLocationValue;
325
+ };
326
+ type TCurrencyCoreV1 = {
327
+ symbol: string;
328
+ } | {
329
+ id: TCurrency;
304
330
  };
305
- type TCurrencyInput = TCurrencyCore | {
306
- multilocation: TMultiLocation;
331
+ type TMultiLocationValue = string | TMultiLocation | TJunction[];
332
+ type TMultiLocationValueWithOverride = TMultiLocationValue | TOverrideMultiLocationSpecifier;
333
+ type TCurrencyInput = TCurrencySymbol | {
334
+ id: TCurrency;
335
+ } | {
336
+ multilocation: TMultiLocationValueWithOverride;
307
337
  } | {
308
338
  multiasset: TMultiAsset[];
309
339
  };
@@ -327,18 +357,18 @@ type TCurrencySelectionHeader = {
327
357
  type TCurrencySelectionHeaderArr = {
328
358
  [key in Version]?: [TCurrencySelection | TCurrencySelectionV4];
329
359
  };
330
- type TForeignAsset = {
360
+ type TXcmForeignAsset = {
331
361
  ForeignAsset: string | number | bigint | undefined;
332
362
  };
333
363
  type TForeignAssetId = {
334
- ForeignAssetId: string | undefined;
364
+ ForeignAssetId: bigint | undefined;
335
365
  };
336
- type TForeignOrTokenAsset = TForeignAsset | {
366
+ type TForeignOrTokenAsset = TXcmForeignAsset | {
337
367
  Token: string | undefined;
338
368
  };
339
- type TForeignOrNativeAsset = TForeignAsset | 'Native';
369
+ type TForeignOrNativeAsset = TXcmForeignAsset | 'Native';
340
370
  type TXcmAsset = {
341
- XCM: string | undefined;
371
+ XCM: number | undefined;
342
372
  };
343
373
  type TMantaAsset = {
344
374
  MantaCurrency: bigint | undefined;
@@ -347,7 +377,7 @@ type TNativeTokenAsset = 'NativeToken';
347
377
  type TNodleAsset = 'NodleNative';
348
378
  type TZeitgeistAsset = 'Ztg';
349
379
  type TOtherReserveAsset = {
350
- OtherReserve: string | undefined;
380
+ OtherReserve: string | bigint | undefined;
351
381
  };
352
382
  type TSelfReserveAsset = 'SelfReserve';
353
383
  type TReserveAsset = TOtherReserveAsset | TSelfReserveAsset;
@@ -364,7 +394,7 @@ type TBifrostToken = {
364
394
  } | {
365
395
  Token2: number;
366
396
  };
367
- type TXTokensCurrencySelection = TCurrencySelectionHeader | TCurrencySelectionHeaderArr | TForeignAsset | TForeignAssetId | TForeignOrTokenAsset | TXcmAsset | TMantaAsset | TOtherReserveAsset | TBifrostToken | string | bigint | undefined;
397
+ type TXTokensCurrencySelection = TCurrencySelectionHeader | TCurrencySelectionHeaderArr | TXcmForeignAsset | TForeignAssetId | TForeignOrTokenAsset | TXcmAsset | TMantaAsset | TOtherReserveAsset | TBifrostToken | string | bigint | number | undefined;
368
398
 
369
399
  type TPallet = (typeof SUPPORTED_PALLETS)[number];
370
400
  interface TPalletMap {
@@ -373,6 +403,32 @@ interface TPalletMap {
373
403
  }
374
404
  type TPalletJsonMap = Record<TNodePolkadotKusama, TPalletMap>;
375
405
 
406
+ type AtLeastOne<T, Keys extends keyof T = keyof T> = Pick<T, Exclude<keyof T, Keys>> & {
407
+ [K in Keys]-?: Required<Pick<T, K>> & Partial<Pick<T, Exclude<Keys, K>>>;
408
+ }[Keys];
409
+ type TBaseAsset = {
410
+ symbol?: string;
411
+ decimals?: number;
412
+ manuallyAdded?: boolean;
413
+ alias?: string;
414
+ };
415
+ type TNativeAsset = TBaseAsset & {
416
+ symbol: string;
417
+ };
418
+ type TForeignAsset = TBaseAsset & AtLeastOne<{
419
+ assetId?: string;
420
+ multiLocation?: object;
421
+ xcmInterior?: object[];
422
+ }>;
423
+ type TAsset = TNativeAsset | TForeignAsset;
424
+ type TNodeAssets = {
425
+ relayChainAssetSymbol: TRelayChainSymbol;
426
+ nativeAssetSymbol: string;
427
+ nativeAssets: TNativeAsset[];
428
+ otherAssets: TForeignAsset[];
429
+ };
430
+ type TAssetJsonMap = Record<TNodeWithRelayChains, TNodeAssets>;
431
+
376
432
  type HexString$1 = `0x${string}`;
377
433
  type PolkadotXCMTransferInput<TApi, TRes> = {
378
434
  api: IPolkadotApi<TApi, TRes>;
@@ -382,8 +438,7 @@ type PolkadotXCMTransferInput<TApi, TRes> = {
382
438
  address: TAddress;
383
439
  currencySelection: TCurrencySelectionHeaderArr;
384
440
  scenario: TScenario;
385
- currencySymbol: string | undefined;
386
- currencyId: string | undefined;
441
+ asset: TAsset;
387
442
  destination?: TDestination;
388
443
  paraIdTo?: number;
389
444
  feeAsset?: TCurrency;
@@ -394,13 +449,12 @@ type PolkadotXCMTransferInput<TApi, TRes> = {
394
449
  };
395
450
  type XTokensTransferInput<TApi, TRes> = {
396
451
  api: IPolkadotApi<TApi, TRes>;
397
- currency: string | undefined;
398
- currencyID: string | undefined;
452
+ asset: TAsset;
399
453
  amount: string;
400
454
  addressSelection: TMultiLocationHeader;
401
455
  fees: number;
402
456
  scenario: TScenario;
403
- origin: TNode;
457
+ origin: TNodePolkadotKusama;
404
458
  destination?: TDestination;
405
459
  paraIdTo?: number;
406
460
  overridedCurrencyMultiLocation?: TMultiLocation | TMultiAsset[];
@@ -409,11 +463,10 @@ type XTokensTransferInput<TApi, TRes> = {
409
463
  };
410
464
  type XTransferTransferInput<TApi, TRes> = {
411
465
  api: IPolkadotApi<TApi, TRes>;
412
- currency: string | undefined;
413
- currencyID: string | undefined;
466
+ asset: TAsset;
414
467
  amount: string;
415
468
  recipientAddress: TAddress;
416
- origin: TNode;
469
+ origin: TNodePolkadotKusama;
417
470
  paraId?: number;
418
471
  destination?: TDestination;
419
472
  overridedCurrencyMultiLocation?: TMultiLocation | TMultiAsset[];
@@ -450,6 +503,7 @@ declare enum Parents {
450
503
  type TAmount = string | number | bigint;
451
504
  type TAddress = string | TMultiLocation;
452
505
  type TDestination = TNode | TMultiLocation;
506
+ type TRelayToParaDestination = TNodePolkadotKusama | TMultiLocation;
453
507
  type TSendBaseOptions<TApi, TRes> = {
454
508
  /**
455
509
  * The destination address. A SS58 or H160 format.
@@ -487,7 +541,7 @@ type TSendOptions<TApi, TRes> = WithApi<TSendBaseOptions<TApi, TRes>, TApi, TRes
487
541
  /**
488
542
  * The origin node
489
543
  */
490
- origin: TNode;
544
+ origin: TNodePolkadotKusama;
491
545
  /**
492
546
  * The currency to transfer. Either ID, symbol, multi-location, or multi-asset
493
547
  */
@@ -499,8 +553,7 @@ type TSendOptions<TApi, TRes> = WithApi<TSendBaseOptions<TApi, TRes>, TApi, TRes
499
553
  };
500
554
  type TSendInternalOptions<TApi, TRes> = TSendBaseOptions<TApi, TRes> & {
501
555
  api: IPolkadotApi<TApi, TRes>;
502
- currencySymbol: string | undefined;
503
- currencyId: string | undefined;
556
+ asset: TAsset;
504
557
  amount: string;
505
558
  overridedCurrencyMultiLocation?: TMultiLocation | TMultiAsset[];
506
559
  serializedApiCallEnabled?: boolean;
@@ -509,7 +562,7 @@ type TRelayToParaBaseOptions<TApi, TRes> = {
509
562
  /**
510
563
  * The destination node or multi-location
511
564
  */
512
- destination: TDestination;
565
+ destination: TRelayToParaDestination;
513
566
  /**
514
567
  * The destination address. A SS58 or H160 format.
515
568
  */
@@ -552,7 +605,7 @@ type CheckKeepAliveOptions<TApi, TRes> = {
552
605
  amount: string;
553
606
  originNode?: TNodePolkadotKusama;
554
607
  destApi: IPolkadotApi<TApi, TRes>;
555
- currencySymbol?: string;
608
+ asset: TAsset;
556
609
  destNode?: TNodePolkadotKusama;
557
610
  };
558
611
  type TDestWeight = {
@@ -626,29 +679,6 @@ interface Junctions {
626
679
  X6?: [TJunction, TJunction, TJunction, TJunction, TJunction, TJunction];
627
680
  X7?: [TJunction, TJunction, TJunction, TJunction, TJunction, TJunction, TJunction];
628
681
  X8?: [TJunction, TJunction, TJunction, TJunction, TJunction, TJunction, TJunction, TJunction];
629
- X9?: [
630
- TJunction,
631
- TJunction,
632
- TJunction,
633
- TJunction,
634
- TJunction,
635
- TJunction,
636
- TJunction,
637
- TJunction,
638
- TJunction
639
- ];
640
- X10?: [
641
- TJunction,
642
- TJunction,
643
- TJunction,
644
- TJunction,
645
- TJunction,
646
- TJunction,
647
- TJunction,
648
- TJunction,
649
- TJunction,
650
- TJunction
651
- ];
652
682
  }
653
683
  interface TMultiLocation {
654
684
  parents: StringOrNumber;
@@ -660,9 +690,10 @@ type TMultiLocationHeader = {
660
690
 
661
691
  declare class Darwinia<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
662
692
  constructor();
693
+ private getCurrencySelection;
663
694
  transferXTokens<TApi, TRes>(input: XTokensTransferInput<TApi, TRes>): TTransferReturn<TRes>;
664
695
  transferRelayToPara(): TSerializedApiCallV2;
665
- createCurrencySpec(amount: string, scenario: TScenario, version: Version, currencyId?: string, overridedMultiLocation?: TMultiLocation): TCurrencySelectionHeaderArr;
696
+ createCurrencySpec(amount: string, scenario: TScenario, version: Version, _asset?: TAsset, overridedMultiLocation?: TMultiLocation): TCurrencySelectionHeaderArr;
666
697
  getProvider(): string;
667
698
  }
668
699
 
@@ -670,7 +701,7 @@ declare class Crab<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPol
670
701
  constructor();
671
702
  transferPolkadotXCM<TApi, TRes>(input: PolkadotXCMTransferInput<TApi, TRes>): Promise<TTransferReturn<TRes>>;
672
703
  transferRelayToPara(): TSerializedApiCallV2;
673
- createCurrencySpec(amount: string, scenario: TScenario, version: Version, currencyId?: string): TCurrencySelectionHeaderArr;
704
+ createCurrencySpec(amount: string, scenario: TScenario, version: Version, asset?: TAsset): TCurrencySelectionHeaderArr;
674
705
  }
675
706
 
676
707
  declare class Quartz<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
@@ -683,7 +714,7 @@ declare class Shiden<TApi, TRes> extends ParachainNode<TApi, TRes> implements IP
683
714
  constructor();
684
715
  transferPolkadotXCM<TApi, TRes>(input: PolkadotXCMTransferInput<TApi, TRes>): Promise<TTransferReturn<TRes>>;
685
716
  transferXTokens<TApi, TRes>(input: XTokensTransferInput<TApi, TRes>): TTransferReturn<TRes>;
686
- protected canUseXTokens({ currencySymbol, currencyId }: TSendInternalOptions<TApi, TRes>): boolean;
717
+ protected canUseXTokens({ asset }: TSendInternalOptions<TApi, TRes>): boolean;
687
718
  }
688
719
 
689
720
  declare class Manta<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
@@ -691,9 +722,9 @@ declare class Manta<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXT
691
722
  transferXTokens<TApi, TRes>(input: XTokensTransferInput<TApi, TRes>): TTransferReturn<TRes>;
692
723
  }
693
724
 
694
- declare class Nodle<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
725
+ declare class Nodle<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
695
726
  constructor();
696
- transferXTokens<TApi, TRes>(input: XTokensTransferInput<TApi, TRes>): TTransferReturn<TRes>;
727
+ transferPolkadotXCM<TApi, TRes>(input: PolkadotXCMTransferInput<TApi, TRes>): Promise<TTransferReturn<TRes>>;
697
728
  transferRelayToPara(): TSerializedApiCallV2;
698
729
  }
699
730
 
@@ -711,10 +742,12 @@ declare class Pendulum<TApi, TRes> extends ParachainNode<TApi, TRes> implements
711
742
  declare class Polkadex<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
712
743
  constructor();
713
744
  transferXTokens<TApi, TRes>(input: XTokensTransferInput<TApi, TRes>): TTransferReturn<TRes>;
745
+ getProvider(): string;
714
746
  }
715
747
 
716
748
  declare class Zeitgeist<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
717
749
  constructor();
750
+ private getCurrencySelection;
718
751
  transferXTokens<TApi, TRes>(input: XTokensTransferInput<TApi, TRes>): TTransferReturn<TRes>;
719
752
  }
720
753
 
@@ -722,7 +755,7 @@ declare class Collectives<TApi, TRes> extends ParachainNode<TApi, TRes> implemen
722
755
  constructor();
723
756
  transferPolkadotXCM<TApi, TRes>(input: PolkadotXCMTransferInput<TApi, TRes>): Promise<TTransferReturn<TRes>>;
724
757
  transferRelayToPara(options: TRelayToParaOptions<TApi, TRes>): TSerializedApiCallV2;
725
- createCurrencySpec(amount: string, scenario: TScenario, version: Version, currencyId?: string): TCurrencySelectionHeaderArr;
758
+ createCurrencySpec(amount: string, scenario: TScenario, version: Version, asset?: TAsset): TCurrencySelectionHeaderArr;
726
759
  }
727
760
 
728
761
  declare class Khala<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTransferTransfer {
@@ -766,10 +799,6 @@ declare class BridgeHubKusama<TApi, TRes> extends ParachainNode<TApi, TRes> impl
766
799
  transferRelayToPara(options: TRelayToParaOptions<TApi, TRes>): TSerializedApiCallV2;
767
800
  }
768
801
 
769
- declare class Ethereum<TApi, TRes> extends ParachainNode<TApi, TRes> {
770
- constructor();
771
- }
772
-
773
802
  declare class Mythos<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
774
803
  constructor();
775
804
  transferPolkadotXCM<TApi, TRes>(input: PolkadotXCMTransferInput<TApi, TRes>): Promise<TTransferReturn<TRes>>;
@@ -783,8 +812,12 @@ declare class Peaq<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTo
783
812
  getProvider(): string;
784
813
  }
785
814
 
786
- declare class Polimec<TApi, TRes> extends ParachainNode<TApi, TRes> {
815
+ declare class Polimec<TApi, TRes> extends ParachainNode<TApi, TRes> implements IPolkadotXCMTransfer {
787
816
  constructor();
817
+ private getAssetMultiLocation;
818
+ transferPolkadotXCM<TApi, TRes>(input: PolkadotXCMTransferInput<TApi, TRes>): Promise<TTransferReturn<TRes>>;
819
+ transferRelayToPara(options: TRelayToParaOptions<TApi, TRes>): TSerializedApiCallV2;
820
+ getProvider(): string;
788
821
  }
789
822
 
790
823
  /**
@@ -861,7 +894,6 @@ declare const nodes: <TApi, TRes>() => {
861
894
  Subsocial: Subsocial<TApi, TRes>;
862
895
  KiltSpiritnet: KiltSpiritnet<TApi, TRes>;
863
896
  Curio: Curio<TApi, TRes>;
864
- Ethereum: Ethereum<TApi, TRes>;
865
897
  Mythos: Mythos<TApi, TRes>;
866
898
  Peaq: Peaq<TApi, TRes>;
867
899
  Polimec: Polimec<TApi, TRes>;
@@ -879,27 +911,6 @@ type TNodeDotKsmWithRelayChains = Exclude<TNodeWithRelayChains, 'Ethereum'>;
879
911
  type TRelayChainType = 'polkadot' | 'kusama';
880
912
  type TRelayChainSymbol = 'DOT' | 'KSM';
881
913
 
882
- type TAsset = TNativeAssetDetails | TAssetDetails;
883
- type TAssetDetails = {
884
- assetId: string;
885
- symbol?: string;
886
- decimals?: number;
887
- };
888
- type TNativeAssetDetails = {
889
- assetId?: string;
890
- symbol: string;
891
- decimals: number;
892
- };
893
- type TNodeAssets = {
894
- paraId?: number;
895
- relayChainAssetSymbol: TRelayChainSymbol;
896
- nativeAssetSymbol: string;
897
- nativeAssets: TNativeAssetDetails[];
898
- otherAssets: TAssetDetails[];
899
- multiLocations?: TMultiLocation[];
900
- };
901
- type TAssetJsonMap = Record<TNodeWithRelayChains, TNodeAssets>;
902
-
903
914
  type TEdJsonMap = Record<TNodeDotKsmWithRelayChains, string | null>;
904
915
 
905
916
  /**
@@ -917,7 +928,7 @@ type TEvmBuilderOptions = {
917
928
  /**
918
929
  * The currency to transfer. Symbol or ID.
919
930
  */
920
- currency: TCurrencyCore;
931
+ currency: TCurrencyCoreV1;
921
932
  /**
922
933
  * The Polkadot destination address.
923
934
  */
@@ -1008,6 +1019,18 @@ type TGetTransferInfoOptionsBase = {
1008
1019
  };
1009
1020
  type TGetTransferInfoOptions<TApi, TRes> = WithApi<TGetTransferInfoOptionsBase, TApi, TRes>;
1010
1021
 
1022
+ type TProviderEntry = {
1023
+ name: string;
1024
+ endpoint: string;
1025
+ };
1026
+ type TNodeConfig = {
1027
+ name: string;
1028
+ info: string;
1029
+ paraId: number;
1030
+ providers: TProviderEntry[];
1031
+ };
1032
+ type TNodeConfigMap = Record<TNodeDotKsmWithRelayChains, TNodeConfig>;
1033
+
1011
1034
  type TPjsApi = ApiPromise;
1012
1035
  type TPjsApiOrUrl = TApiOrUrl<TPjsApi>;
1013
1036
  type Extrinsic = SubmittableExtrinsic<'promise'>;
@@ -1122,9 +1145,13 @@ type TGetOriginFeeDetailsOptionsBase = {
1122
1145
  */
1123
1146
  amount: string;
1124
1147
  /**
1125
- * The account to transfer from.
1148
+ * The origin account.
1126
1149
  */
1127
1150
  account: string;
1151
+ /**
1152
+ * The destination account.
1153
+ */
1154
+ accountDestination: string;
1128
1155
  /**
1129
1156
  * The fee margin percentage.
1130
1157
  */
@@ -1159,14 +1186,14 @@ declare const getRelayChainSymbol: (node: TNodeWithRelayChains) => TRelayChainSy
1159
1186
  * @param node - The node for which to get native assets.
1160
1187
  * @returns An array of native asset details.
1161
1188
  */
1162
- declare const getNativeAssets: (node: TNode) => TNativeAssetDetails[];
1189
+ declare const getNativeAssets: (node: TNode) => TNativeAsset[];
1163
1190
  /**
1164
1191
  * Retrieves the list of other (non-native) assets for a specified node.
1165
1192
  *
1166
1193
  * @param node - The node for which to get other assets.
1167
1194
  * @returns An array of other asset details.
1168
1195
  */
1169
- declare const getOtherAssets: (node: TNode) => TAssetDetails[];
1196
+ declare const getOtherAssets: (node: TNode) => TForeignAsset[];
1170
1197
  /**
1171
1198
  * Retrieves the complete list of assets for a specified node, including relay chain asset, native, and other assets.
1172
1199
  *
@@ -1204,13 +1231,6 @@ declare const hasSupportForAsset: (node: TNode, symbol: string) => boolean;
1204
1231
  * @returns The number of decimals if the asset is found; otherwise, null.
1205
1232
  */
1206
1233
  declare const getAssetDecimals: (node: TNodeWithRelayChains, symbol: string) => number | null;
1207
- /**
1208
- * Retrieves the parachain ID for a specified node.
1209
- *
1210
- * @param node - The node for which to get the paraId.
1211
- * @returns The parachain ID of the node.
1212
- */
1213
- declare const getParaId: (node: TNodeDotKsmWithRelayChains) => number;
1214
1234
  /**
1215
1235
  * Retrieves the node name corresponding to a specified parachain ID.
1216
1236
  *
@@ -1227,6 +1247,12 @@ declare const getTNode: (paraId: number, ecosystem: TRelayChainType) => TNodeDot
1227
1247
  */
1228
1248
  declare const getExistentialDeposit: (node: TNodeDotKsmWithRelayChains) => string | null;
1229
1249
 
1250
+ declare const Native: (symbol: string) => TSymbolSpecifier;
1251
+ declare const Foreign: (symbol: string) => TSymbolSpecifier;
1252
+ declare const ForeignAbstract: (symbol: string) => TSymbolSpecifier;
1253
+
1254
+ declare const Override: (multiLocation: TMultiLocation) => TOverrideMultiLocationSpecifier;
1255
+
1230
1256
  /**
1231
1257
  * Retrieves the list of assets that are supported for transfers between two specified nodes.
1232
1258
  *
@@ -1280,6 +1306,10 @@ declare const getOriginFeeDetails: (options: TGetOriginFeeDetailsOptionsBase & {
1280
1306
  api?: TPjsApiOrUrl;
1281
1307
  }) => Promise<TOriginFeeDetails>;
1282
1308
 
1309
+ declare const assets_Foreign: typeof Foreign;
1310
+ declare const assets_ForeignAbstract: typeof ForeignAbstract;
1311
+ declare const assets_Native: typeof Native;
1312
+ declare const assets_Override: typeof Override;
1283
1313
  declare const assets_claimAssets: typeof claimAssets;
1284
1314
  declare const assets_getAllAssetsSymbols: typeof getAllAssetsSymbols;
1285
1315
  declare const assets_getAssetBalance: typeof getAssetBalance;
@@ -1294,14 +1324,13 @@ declare const assets_getNativeAssetSymbol: typeof getNativeAssetSymbol;
1294
1324
  declare const assets_getNativeAssets: typeof getNativeAssets;
1295
1325
  declare const assets_getOriginFeeDetails: typeof getOriginFeeDetails;
1296
1326
  declare const assets_getOtherAssets: typeof getOtherAssets;
1297
- declare const assets_getParaId: typeof getParaId;
1298
1327
  declare const assets_getRelayChainSymbol: typeof getRelayChainSymbol;
1299
1328
  declare const assets_getSupportedAssets: typeof getSupportedAssets;
1300
1329
  declare const assets_getTNode: typeof getTNode;
1301
1330
  declare const assets_getTransferInfo: typeof getTransferInfo;
1302
1331
  declare const assets_hasSupportForAsset: typeof hasSupportForAsset;
1303
1332
  declare namespace assets {
1304
- export { assets_claimAssets as claimAssets, assets_getAllAssetsSymbols as getAllAssetsSymbols, assets_getAssetBalance as getAssetBalance, assets_getAssetDecimals as getAssetDecimals, assets_getAssetId as getAssetId, assets_getAssets as getAssets, assets_getAssetsObject as getAssetsObject, assets_getBalanceForeign as getBalanceForeign, assets_getBalanceNative as getBalanceNative, assets_getExistentialDeposit as getExistentialDeposit, assets_getNativeAssetSymbol as getNativeAssetSymbol, assets_getNativeAssets as getNativeAssets, assets_getOriginFeeDetails as getOriginFeeDetails, assets_getOtherAssets as getOtherAssets, assets_getParaId as getParaId, assets_getRelayChainSymbol as getRelayChainSymbol, assets_getSupportedAssets as getSupportedAssets, assets_getTNode as getTNode, assets_getTransferInfo as getTransferInfo, assets_hasSupportForAsset as hasSupportForAsset };
1333
+ export { assets_Foreign as Foreign, assets_ForeignAbstract as ForeignAbstract, assets_Native as Native, assets_Override as Override, assets_claimAssets as claimAssets, assets_getAllAssetsSymbols as getAllAssetsSymbols, assets_getAssetBalance as getAssetBalance, assets_getAssetDecimals as getAssetDecimals, assets_getAssetId as getAssetId, assets_getAssets as getAssets, assets_getAssetsObject as getAssetsObject, assets_getBalanceForeign as getBalanceForeign, assets_getBalanceNative as getBalanceNative, assets_getExistentialDeposit as getExistentialDeposit, assets_getNativeAssetSymbol as getNativeAssetSymbol, assets_getNativeAssets as getNativeAssets, assets_getOriginFeeDetails as getOriginFeeDetails, assets_getOtherAssets as getOtherAssets, assets_getRelayChainSymbol as getRelayChainSymbol, assets_getSupportedAssets as getSupportedAssets, assets_getTNode as getTNode, assets_getTransferInfo as getTransferInfo, assets_hasSupportForAsset as hasSupportForAsset };
1305
1334
  }
1306
1335
 
1307
1336
  /**
@@ -1344,7 +1373,7 @@ declare class ToGeneralBuilder<TApi, TRes> {
1344
1373
  private readonly from;
1345
1374
  private readonly to;
1346
1375
  private readonly paraIdTo?;
1347
- constructor(api: IPolkadotApi<TApi, TRes>, from: TNode, to: TDestination, batchManager: BatchTransactionManager<TApi, TRes>, paraIdTo?: number);
1376
+ constructor(api: IPolkadotApi<TApi, TRes>, from: TNodePolkadotKusama, to: TDestination, batchManager: BatchTransactionManager<TApi, TRes>, paraIdTo?: number);
1348
1377
  /**
1349
1378
  * Specifies the currency to be used in the transaction. Symbol, ID, multi-location or multi-asset.
1350
1379
  *
@@ -1361,7 +1390,7 @@ declare class FromGeneralBuilder<TApi, TRes> {
1361
1390
  private readonly api;
1362
1391
  private readonly from;
1363
1392
  private _feeAsset?;
1364
- constructor(api: IPolkadotApi<TApi, TRes>, from: TNode, batchManager: BatchTransactionManager<TApi, TRes>);
1393
+ constructor(api: IPolkadotApi<TApi, TRes>, from: TNodePolkadotKusama, batchManager: BatchTransactionManager<TApi, TRes>);
1365
1394
  /**
1366
1395
  * Specifies the destination node for the transaction.
1367
1396
  *
@@ -1481,7 +1510,7 @@ declare class EvmBuilderClass {
1481
1510
  * @param currency - The currency to be transferred.
1482
1511
  * @returns An instance of EvmBuilder
1483
1512
  */
1484
- currency(currency: TCurrencyCore): this;
1513
+ currency(currency: TCurrencyCoreV1): this;
1485
1514
  /**
1486
1515
  * Specifies the recipient address on Polkadot.
1487
1516
  *
@@ -1523,30 +1552,15 @@ declare const GeneralBuilder: {
1523
1552
  new (batchManager: BatchTransactionManager<_polkadot_api.ApiPromise, Extrinsic>, api: IPolkadotApi<_polkadot_api.ApiPromise, Extrinsic>, _from?: TNode | undefined, _to?: TDestination | undefined): GeneralBuilder$1<_polkadot_api.ApiPromise, Extrinsic>;
1524
1553
  };
1525
1554
 
1526
- declare const createApiInstanceForNode: (node: TNodeWithRelayChains) => Promise<_polkadot_api.ApiPromise>;
1555
+ declare const isForeignAsset: (asset: TAsset) => asset is TForeignAsset;
1556
+
1557
+ declare const createApiInstanceForNode: (node: TNodeDotKsmWithRelayChains) => Promise<_polkadot_api.ApiPromise>;
1527
1558
  declare const createPolkadotJsApiCall: <TArgs extends Record<string, unknown>, TResult>(apiCall: (options: TArgs & {
1528
1559
  api: IPolkadotApi<TPjsApi, Extrinsic>;
1529
1560
  }) => Promise<TResult>) => (options: TArgs & {
1530
1561
  api?: TPjsApiOrUrl;
1531
1562
  }) => Promise<TResult>;
1532
1563
 
1533
- /**
1534
- * Retrieves the WS provider URL for a specified node.
1535
- *
1536
- * @param node - The node for which to get the WS provider URL.
1537
- * @returns The WS provider URL as a string.
1538
- */
1539
- declare const getNodeProvider: (node: TNodeWithRelayChains) => string;
1540
-
1541
- /**
1542
- * Retrieves all WS provider URLs for a specified Polkadot or Kusama node.
1543
- *
1544
- * @param node - The Polkadot or Kusama node.
1545
- * @returns An array of WS provider URLs.
1546
- * @throws Error if the node does not have any providers.
1547
- */
1548
- declare const getAllNodeProviders: (node: TNodePolkadotKusama) => string[];
1549
-
1550
1564
  /**
1551
1565
  * Retrieves the node instance for a given node.
1552
1566
  *
@@ -1555,14 +1569,6 @@ declare const getAllNodeProviders: (node: TNodePolkadotKusama) => string[];
1555
1569
  */
1556
1570
  declare const getNode: <TApi, TRes, T extends keyof ReturnType<typeof nodes>>(node: T) => ReturnType<typeof nodes<TApi, TRes>>[T];
1557
1571
 
1558
- /**
1559
- * Retrieves the endpoint option for a given Polkadot or Kusama node.
1560
- *
1561
- * @param node - The Polkadot or Kusama node for which to get the endpoint option.
1562
- * @returns The endpoint option object if found; otherwise, undefined.
1563
- */
1564
- declare const getNodeEndpointOption: (node: TNodePolkadotKusama) => _polkadot_apps_config_endpoints_types.EndpointOption | undefined;
1565
-
1566
1572
  /**
1567
1573
  * Determines the relay chain for a given node.
1568
1574
  *
@@ -1576,7 +1582,7 @@ declare const determineRelayChain: (node: TNodeWithRelayChains) => TNodeDotKsmWi
1576
1582
  * @param node - The node to check.
1577
1583
  * @returns True if the node is 'Polkadot' or 'Kusama'; otherwise, false.
1578
1584
  */
1579
- declare const isRelayChain: (node: TNodeWithRelayChains) => boolean;
1585
+ declare const isRelayChain: (node: TNodeWithRelayChains) => node is "Polkadot" | "Kusama";
1580
1586
 
1581
1587
  /**
1582
1588
  * Used to inform user, that currency they wish to use is not registered on either origin or destination Parachain
@@ -1649,7 +1655,7 @@ declare class DuplicateAssetError extends Error {
1649
1655
  *
1650
1656
  * @param symbol - The symbol of the asset causing the duplication error.
1651
1657
  */
1652
- constructor(symbol: string);
1658
+ constructor(msg: string);
1653
1659
  }
1654
1660
 
1655
1661
  /**
@@ -1664,4 +1670,18 @@ declare class DuplicateAssetIdError extends Error {
1664
1670
  constructor(id: string);
1665
1671
  }
1666
1672
 
1667
- export { BatchMode, Builder, type CheckKeepAliveOptions, DuplicateAssetError, DuplicateAssetIdError, EvmBuilder, type Extrinsic, GeneralBuilder, type HexString$1 as HexString, type IPolkadotXCMTransfer, type IXTokensTransfer, type IXTransferTransfer, IncompatibleNodesError, InvalidCurrencyError, type JunctionParachain, type JunctionType, type Junctions, NODES_WITH_RELAY_CHAINS, NODES_WITH_RELAY_CHAINS_DOT_KSM, NODE_NAMES, NODE_NAMES_DOT_KSM, NoXCMSupportImplementedError, NodeNotSupportedError, Parents, type PolkadotXCMTransferInput, type PolkadotXcmSection, SUPPORTED_PALLETS, ScenarioNotSupportedError, type TAddress, type TAmount, type TAsset, type TAssetDetails, type TAssetJsonMap, type TBatchOptions, type TBifrostToken, type TCurrency, type TCurrencyCore, type TCurrencyInput, type TCurrencySelection, type TCurrencySelectionHeader, type TCurrencySelectionHeaderArr, type TCurrencySelectionV4, type TCurrencySymbol, type TDestWeight, type TDestination, type TEdJsonMap, type TEvmBuilderOptions, type TForeignAsset, type TForeignAssetId, type TForeignOrNativeAsset, type TForeignOrTokenAsset, type TGetTransferInfoOptions, type TGetTransferInfoOptionsBase, type TJunction, type TMantaAsset, type TMultiAsset, type TMultiAssetV3, type TMultiAssetV4, type TMultiLocation, type TMultiLocationHeader, type TNativeAssetDetails, type TNativeTokenAsset, type TNode, type TNodeAssets, type TNodeDotKsmWithRelayChains, type TNodePolkadotKusama, type TNodeWithRelayChains, type TNodleAsset, type TOptionalEvmBuilderOptions, type TOriginFeeDetails, type TOtherReserveAsset, type TPallet, type TPalletJsonMap, type TPalletMap, type TPjsApi, type TPjsApiOrUrl, type TRelayChainSymbol, type TRelayChainType, type TRelayToParaOptions, type TReserveAsset, type TScenario, type TSelfReserveAsset, type TSendBaseOptions, type TSendInternalOptions, type TSendOptions, type TSerializeEthTransferOptions, type TSerializedApiCall, type TSerializedApiCallV2, type TSerializedEthTransfer, type TTransferInfo, type TTransferReturn, type TVersionClaimAssets, type TXTokensCurrencySelection, type TXcmAsset, type TZeitgeistAsset, type UseKeepAliveFinalBuilder, Version, type XTokensSection, type XTokensTransferInput, type XTransferSection, type XTransferTransferInput, assets, buildEthTransferOptions, claimAssets, createApiInstanceForNode, createPolkadotJsApiCall, determineRelayChain, getAllAssetsSymbols, getAllNodeProviders, getAssetBalance, getAssetDecimals, getAssetId, getAssets, getAssetsObject, getBalanceForeign, getBalanceNative, getDefaultPallet, getExistentialDeposit, getNativeAssetSymbol, getNativeAssets, getNode, getNodeEndpointOption, getNodeProvider, getOriginFeeDetails, getOtherAssets, getParaId, getRelayChainSymbol, getSupportedAssets, getSupportedPallets, getTNode, getTransferInfo, hasSupportForAsset, isRelayChain, send, sendSerializedApiCall, transferRelayToPara, transferRelayToParaSerializedApiCall, transfer as xcmPallet };
1673
+ declare const getNodeConfig: (node: TNodeDotKsmWithRelayChains) => TNodeConfig;
1674
+
1675
+ declare const getNodeProviders: (node: TNodeDotKsmWithRelayChains) => string[];
1676
+
1677
+ declare const getNodeProvider: (node: TNodeDotKsmWithRelayChains) => string;
1678
+
1679
+ /**
1680
+ * Retrieves the parachain ID for a specified node.
1681
+ *
1682
+ * @param node - The node for which to get the paraId.
1683
+ * @returns The parachain ID of the node.
1684
+ */
1685
+ declare const getParaId: (node: TNodeDotKsmWithRelayChains) => number;
1686
+
1687
+ export { BatchMode, Builder, type CheckKeepAliveOptions, DuplicateAssetError, DuplicateAssetIdError, EvmBuilder, type Extrinsic, Foreign, ForeignAbstract, GeneralBuilder, type HexString$1 as HexString, type IPolkadotXCMTransfer, type IXTokensTransfer, type IXTransferTransfer, IncompatibleNodesError, InvalidCurrencyError, type JunctionParachain, type JunctionType, type Junctions, NODES_WITH_RELAY_CHAINS, NODES_WITH_RELAY_CHAINS_DOT_KSM, NODE_NAMES, NODE_NAMES_DOT_KSM, Native, NoXCMSupportImplementedError, NodeNotSupportedError, Override, Parents, type PolkadotXCMTransferInput, type PolkadotXcmSection, SUPPORTED_PALLETS, ScenarioNotSupportedError, type TAddress, type TAmount, type TAsset, type TAssetJsonMap, type TBatchOptions, type TBifrostToken, type TCurrency, type TCurrencyCore, type TCurrencyCoreV1, type TCurrencyInput, type TCurrencySelection, type TCurrencySelectionHeader, type TCurrencySelectionHeaderArr, type TCurrencySelectionV4, type TCurrencySymbol, type TCurrencySymbolValue, type TDestWeight, type TDestination, type TEdJsonMap, type TEvmBuilderOptions, type TForeignAsset, type TForeignAssetId, type TForeignOrNativeAsset, type TForeignOrTokenAsset, type TGetTransferInfoOptions, type TGetTransferInfoOptionsBase, type TJunction, type TMantaAsset, type TMultiAsset, type TMultiAssetV3, type TMultiAssetV4, type TMultiLocation, type TMultiLocationHeader, type TMultiLocationValue, type TMultiLocationValueWithOverride, type TNativeAsset, type TNativeTokenAsset, type TNode, type TNodeAssets, type TNodeConfig, type TNodeConfigMap, type TNodeDotKsmWithRelayChains, type TNodePolkadotKusama, type TNodeWithRelayChains, type TNodleAsset, type TOptionalEvmBuilderOptions, type TOriginFeeDetails, type TOtherReserveAsset, type TOverrideMultiLocationSpecifier, type TPallet, type TPalletJsonMap, type TPalletMap, type TPjsApi, type TPjsApiOrUrl, type TProviderEntry, type TRelayChainSymbol, type TRelayChainType, type TRelayToParaDestination, type TRelayToParaOptions, type TReserveAsset, type TScenario, type TSelfReserveAsset, type TSendBaseOptions, type TSendInternalOptions, type TSendOptions, type TSerializeEthTransferOptions, type TSerializedApiCall, type TSerializedApiCallV2, type TSerializedEthTransfer, type TSymbolSpecifier, type TTransferInfo, type TTransferReturn, type TVersionClaimAssets, type TXTokensCurrencySelection, type TXcmAsset, type TXcmForeignAsset, type TZeitgeistAsset, type UseKeepAliveFinalBuilder, Version, type XTokensSection, type XTokensTransferInput, type XTransferSection, type XTransferTransferInput, assets, buildEthTransferOptions, claimAssets, createApiInstanceForNode, createPolkadotJsApiCall, determineRelayChain, getAllAssetsSymbols, getAssetBalance, getAssetDecimals, getAssetId, getAssets, getAssetsObject, getBalanceForeign, getBalanceNative, getDefaultPallet, getExistentialDeposit, getNativeAssetSymbol, getNativeAssets, getNode, getNodeConfig, getNodeProvider, getNodeProviders, getOriginFeeDetails, getOtherAssets, getParaId, getRelayChainSymbol, getSupportedAssets, getSupportedPallets, getTNode, getTransferInfo, hasSupportForAsset, isForeignAsset, isRelayChain, send, sendSerializedApiCall, transferRelayToPara, transferRelayToParaSerializedApiCall, transfer as xcmPallet };