@paraspell/sdk-core 12.8.3 → 12.8.4

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 (3) hide show
  1. package/dist/index.d.ts +298 -176
  2. package/dist/index.mjs +1724 -1314
  3. package/package.json +12 -4
package/dist/index.d.ts CHANGED
@@ -1,12 +1,13 @@
1
1
  import * as _paraspell_sdk_common from '@paraspell/sdk-common';
2
- import { TChain, TSubstrateChain, Version, TLocation, TRelaychain, TParachain, TExternalChain, TJunction, Parents, TJunctions } from '@paraspell/sdk-common';
2
+ import { TChain as TChain$1, TSubstrateChain as TSubstrateChain$1, Version, TLocation, TRelaychain, TParachain, TExternalChain, TJunction, Parents, TJunctions } from '@paraspell/sdk-common';
3
3
  export * from '@paraspell/sdk-common';
4
4
  import * as _paraspell_assets from '@paraspell/assets';
5
- import { TAssetInfo, WithAmount, TAsset, TCurrencyInputWithAmount, TCurrencyInput, TAssetWithFee, WithComplexAmount, TCurrencyCore, TAmount, TAssetInfoWithId } from '@paraspell/assets';
5
+ import { TAssetInfo, WithAmount, TAsset, TCurrencyCore, TCurrencyInputWithAmount, TCurrencyInput as TCurrencyInput$1, TAssetWithFee, WithComplexAmount, TAmount as TAmount$1, TAssetInfoWithId } from '@paraspell/assets';
6
6
  export * from '@paraspell/assets';
7
7
  import { TPallet, TAssetsPallet } from '@paraspell/pallets';
8
8
  export * from '@paraspell/pallets';
9
9
  import { WalletClient, formatUnits as formatUnits$1, parseUnits as parseUnits$1 } from 'viem';
10
+ import * as _paraspell_xcm_router from '@paraspell/xcm-router';
10
11
 
11
12
  type WithApi<TBase, TApi, TRes, TSigner> = TBase & {
12
13
  api: IPolkadotApi<TApi, TRes, TSigner>;
@@ -35,12 +36,14 @@ type ClientCache<T> = {
35
36
  remainingTtl: (k: TClientKey) => number | undefined;
36
37
  revive: (k: TClientKey, ttl: number) => void;
37
38
  };
39
+ type TApiType = 'PAPI' | 'PJS';
38
40
 
39
41
  interface IPolkadotApi<TApi, TRes, TSigner> {
42
+ getType(): TApiType;
40
43
  getConfig(): TBuilderOptions<TApiOrUrl<TApi>> | undefined;
41
44
  getApi(): TApi;
42
- init(chain: TChain, clientTtlMs?: number): Promise<void>;
43
- createApiInstance: (wsUrl: TUrl, chain: TSubstrateChain) => Promise<TApi>;
45
+ init(chain: TChain$1, clientTtlMs?: number): Promise<void>;
46
+ createApiInstance: (wsUrl: TUrl, chain: TSubstrateChain$1) => Promise<TApi>;
44
47
  accountToHex(address: string, isPrefixed?: boolean): string;
45
48
  accountToUint8a(address: string): Uint8Array;
46
49
  deserializeExtrinsics(serialized: TSerializedExtrinsics): TRes;
@@ -61,12 +64,12 @@ interface IPolkadotApi<TApi, TRes, TSigner> {
61
64
  }>;
62
65
  quoteAhPrice(fromMl: TLocation, toMl: TLocation, amountIn: bigint, includeFee?: boolean): Promise<bigint | undefined>;
63
66
  getXcmWeight(xcm: any): Promise<TWeight>;
64
- getXcmPaymentApiFee(chain: TSubstrateChain, localXcm: any, forwardedXcm: any, asset: TAssetInfo, version: Version, transformXcm: boolean): Promise<bigint>;
67
+ getXcmPaymentApiFee(chain: TSubstrateChain$1, localXcm: any, forwardedXcm: any, asset: TAssetInfo, version: Version, transformXcm: boolean): Promise<bigint>;
65
68
  getEvmStorage(contract: string, slot: string): Promise<string>;
66
69
  getFromRpc(module: string, method: string, key: string): Promise<string>;
67
70
  blake2AsHex(data: Uint8Array): string;
68
71
  clone(): IPolkadotApi<TApi, TRes, TSigner>;
69
- createApiForChain(chain: TSubstrateChain): Promise<IPolkadotApi<TApi, TRes, TSigner>>;
72
+ createApiForChain(chain: TSubstrateChain$1): Promise<IPolkadotApi<TApi, TRes, TSigner>>;
70
73
  getDryRunCall(options: TDryRunCallBaseOptions<TRes>): Promise<TDryRunChainResult>;
71
74
  getDryRunXcm(options: TDryRunXcmBaseOptions<TRes>): Promise<TDryRunChainResult>;
72
75
  getBridgeStatus(): Promise<TBridgeStatus>;
@@ -84,18 +87,18 @@ declare abstract class Chain<TApi, TRes, TSigner> {
84
87
  private readonly _info;
85
88
  private readonly _ecosystem;
86
89
  private readonly _version;
87
- constructor(chain: TSubstrateChain, info: string, ecosystem: TRelaychain, version: Version);
90
+ constructor(chain: TSubstrateChain$1, info: string, ecosystem: TRelaychain, version: Version);
88
91
  get info(): string;
89
92
  get ecosystem(): TRelaychain;
90
- get chain(): TSubstrateChain;
93
+ get chain(): TSubstrateChain$1;
91
94
  get version(): Version;
92
95
  transfer(sendOptions: TSendInternalOptions<TApi, TRes, TSigner>): Promise<TRes>;
93
96
  isRelayToParaEnabled(): boolean;
94
- throwIfCantReceive(destChain: TChain | undefined): void;
95
- throwIfTempDisabled(options: TSendInternalOptions<TApi, TRes, TSigner>, destChain?: TChain): void;
97
+ throwIfCantReceive(destChain: TChain$1 | undefined): void;
98
+ throwIfTempDisabled(options: TSendInternalOptions<TApi, TRes, TSigner>, destChain?: TChain$1): void;
96
99
  isSendingTempDisabled(_options: TSendInternalOptions<TApi, TRes, TSigner>): boolean;
97
100
  isReceivingTempDisabled(_scenario: TScenario): boolean;
98
- canReceiveFrom(_origin: TChain): boolean;
101
+ canReceiveFrom(_origin: TChain$1): boolean;
99
102
  shouldUseNativeAssetTeleport({ assetInfo: asset, to }: TSendInternalOptions<TApi, TRes, TSigner>): boolean;
100
103
  createAsset(asset: WithAmount<TAssetInfo>, version: Version): TAsset;
101
104
  getNativeAssetSymbol(): string;
@@ -281,7 +284,7 @@ declare class CoretimeKusama<TApi, TRes, TSigner> extends Chain<TApi, TRes, TSig
281
284
  declare class CoretimePolkadot<TApi, TRes, TSigner> extends Chain<TApi, TRes, TSigner> implements IPolkadotXCMTransfer<TApi, TRes, TSigner> {
282
285
  constructor(chain?: TParachain, info?: string, ecosystem?: TRelaychain, version?: Version);
283
286
  transferPolkadotXCM(input: TPolkadotXCMTransferOptions<TApi, TRes, TSigner>): Promise<TRes>;
284
- canReceiveFrom(origin: TChain): boolean;
287
+ canReceiveFrom(origin: TChain$1): boolean;
285
288
  }
286
289
 
287
290
  declare class CoretimePaseo<TApi, TRes, TSigner> extends CoretimePolkadot<TApi, TRes, TSigner> {
@@ -383,7 +386,7 @@ declare class Kintsugi<TApi, TRes, TSigner> extends Chain<TApi, TRes, TSigner> i
383
386
  }
384
387
 
385
388
  declare class Polkadot<TApi, TRes, TSigner> extends Chain<TApi, TRes, TSigner> implements IPolkadotXCMTransfer<TApi, TRes, TSigner> {
386
- constructor(chain?: TSubstrateChain, info?: string, ecosystem?: TRelaychain, version?: Version);
389
+ constructor(chain?: TSubstrateChain$1, info?: string, ecosystem?: TRelaychain, version?: Version);
387
390
  transferPolkadotXCM(input: TPolkadotXCMTransferOptions<TApi, TRes, TSigner>): Promise<TRes>;
388
391
  }
389
392
 
@@ -509,14 +512,14 @@ declare class Westend<TApi, TRes, TSigner> extends Polkadot<TApi, TRes, TSigner>
509
512
  declare class Xode<TApi, TRes, TSigner> extends Chain<TApi, TRes, TSigner> implements IPolkadotXCMTransfer<TApi, TRes, TSigner> {
510
513
  constructor();
511
514
  transferPolkadotXCM(options: TPolkadotXCMTransferOptions<TApi, TRes, TSigner>): Promise<TRes>;
512
- canReceiveFrom(origin: TChain): boolean;
515
+ canReceiveFrom(origin: TChain$1): boolean;
513
516
  }
514
517
 
515
518
  declare class Zeitgeist<TApi, TRes, TSigner> extends Chain<TApi, TRes, TSigner> implements IPolkadotXCMTransfer<TApi, TRes, TSigner> {
516
519
  constructor(chain?: TParachain, info?: string, ecosystem?: TRelaychain, version?: Version);
517
520
  getCustomCurrencyId(asset: TAssetInfo): TZeitgeistAsset | TXcmForeignAsset;
518
521
  transferPolkadotXCM(input: TPolkadotXCMTransferOptions<TApi, TRes, TSigner>): Promise<TRes>;
519
- canReceiveFrom(origin: TChain): boolean;
522
+ canReceiveFrom(origin: TChain$1): boolean;
520
523
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes, TSigner>): TRes;
521
524
  }
522
525
 
@@ -598,10 +601,59 @@ declare const RELAY_LOCATION: TLocation;
598
601
  declare const TX_CLIENT_TIMEOUT_MS: number;
599
602
  declare const DRY_RUN_CLIENT_TIMEOUT_MS: number;
600
603
  declare const TRANSACT_ORIGINS: readonly ["Native", "SovereignAccount", "Superuser", "Xcm"];
604
+ /**
605
+ * Supported exchange chains
606
+ */
607
+ declare const EXCHANGE_CHAINS: readonly ["AssetHubPolkadotDex", "AssetHubKusamaDex", "AssetHubPaseoDex", "AssetHubWestendDex", "HydrationDex", "KaruraDex", "AcalaDex", "BifrostKusamaDex", "BifrostPolkadotDex"];
608
+
609
+ type TExchangeChain = (typeof EXCHANGE_CHAINS)[number];
610
+ type TExchangeInput = TExchangeChain | [TExchangeChain, ...TExchangeChain[]] | undefined;
611
+ type TSwapOptions<TApi, TRes, TSigner> = {
612
+ currencyTo: TCurrencyCore;
613
+ exchange: TExchangeInput;
614
+ slippage: number;
615
+ evmSenderAddress?: string;
616
+ evmSigner?: TSigner;
617
+ onStatusChange?: TStatusChangeCallback<TApi, TRes>;
618
+ };
619
+ type TTransactionContext<TApi, TRes> = {
620
+ type: TTransactionType;
621
+ api: TApi;
622
+ chain: TSubstrateChain$1;
623
+ tx: TRes;
624
+ };
625
+ type TTransactionType = 'TRANSFER' | 'SWAP' | 'SWAP_AND_TRANSFER';
626
+ type TSwapEventType = TTransactionType | 'SELECTING_EXCHANGE' | 'COMPLETED';
627
+ /**
628
+ * The transaction progress information.
629
+ */
630
+ type TSwapEvent<TApi, TRes> = {
631
+ /**
632
+ * Current execution phase type
633
+ */
634
+ type: TSwapEventType;
635
+ /**
636
+ * Full transaction plan for visualization
637
+ */
638
+ routerPlan?: TTransactionContext<TApi, TRes>[];
639
+ /**
640
+ * Current transaction's origin chain
641
+ */
642
+ chain?: TSubstrateChain$1;
643
+ /**
644
+ * Current transaction's destination chain
645
+ */
646
+ destinationChain?: TChain$1;
647
+ /**
648
+ * 0-based step index of current operation
649
+ */
650
+ currentStep?: number;
651
+ };
652
+ type TStatusChangeCallback<TApi, TRes> = (info: TSwapEvent<TApi, TRes>) => void;
601
653
 
602
654
  type TPolkadotXCMTransferOptions<TApi, TRes, TSigner> = {
603
655
  api: IPolkadotApi<TApi, TRes, TSigner>;
604
- chain: TSubstrateChain;
656
+ chain: TSubstrateChain$1;
605
657
  beneficiaryLocation: TLocation;
606
658
  address: TAddress;
607
659
  asset: TAsset;
@@ -610,9 +662,9 @@ type TPolkadotXCMTransferOptions<TApi, TRes, TSigner> = {
610
662
  assetInfo: WithAmount<TAssetInfo>;
611
663
  currency: TCurrencyInputWithAmount;
612
664
  feeAssetInfo?: TAssetInfo;
613
- feeCurrency?: TCurrencyInput;
665
+ feeCurrency?: TCurrencyInput$1;
614
666
  destination: TDestination;
615
- destChain?: TChain;
667
+ destChain?: TChain$1;
616
668
  paraIdTo?: number;
617
669
  version: Version;
618
670
  senderAddress?: string;
@@ -626,7 +678,7 @@ type TXTokensTransferOptions<TApi, TRes, TSigner> = {
626
678
  asset: WithAmount<TAssetInfo>;
627
679
  address: TAddress;
628
680
  scenario: TScenario;
629
- origin: TSubstrateChain;
681
+ origin: TSubstrateChain$1;
630
682
  destination: TDestination;
631
683
  paraIdTo?: number;
632
684
  version: Version;
@@ -643,12 +695,12 @@ interface IXTokensTransfer<TApi, TRes, TSigner> {
643
695
  }
644
696
  type TScenario = 'ParaToRelay' | 'ParaToPara' | 'RelayToPara';
645
697
  type TAddress = string | TLocation;
646
- type TDestination = TChain | TLocation;
647
- type TSendBaseOptions<TRes> = {
698
+ type TDestination = TChain$1 | TLocation;
699
+ type TSendBaseOptions<TApi, TRes, TSigner> = {
648
700
  /**
649
701
  * The origin chain
650
702
  */
651
- from: TSubstrateChain;
703
+ from: TSubstrateChain$1;
652
704
  /**
653
705
  * The destination address. A SS58 or H160 format.
654
706
  */
@@ -672,7 +724,7 @@ type TSendBaseOptions<TRes> = {
672
724
  /**
673
725
  * The optional fee asset. Either ID, symbol, or location
674
726
  */
675
- feeAsset?: TCurrencyInput;
727
+ feeAsset?: TCurrencyInput$1;
676
728
  /**
677
729
  * The optional destination parachain ID
678
730
  */
@@ -697,11 +749,15 @@ type TSendBaseOptions<TRes> = {
697
749
  * Hex of the encoded transaction call to apply on the destination chain
698
750
  */
699
751
  transactOptions?: TTransactOptions<TRes>;
752
+ /**
753
+ * The optional swap options
754
+ */
755
+ swapOptions?: TSwapOptions<TApi, TRes, TSigner>;
700
756
  };
701
757
  /**
702
758
  * Options for transferring from a parachain to another parachain or relay chain
703
759
  */
704
- type TSendOptions<TApi, TRes, TSigner> = WithApi<TSendBaseOptions<TRes>, TApi, TRes, TSigner> & {
760
+ type TSendOptions<TApi, TRes, TSigner> = WithApi<TSendBaseOptions<TApi, TRes, TSigner>, TApi, TRes, TSigner> & {
705
761
  isAmountAll: boolean;
706
762
  };
707
763
  type WithRequiredSenderAddress<TBase> = Omit<TBase, 'senderAddress'> & {
@@ -710,12 +766,17 @@ type WithRequiredSenderAddress<TBase> = Omit<TBase, 'senderAddress'> & {
710
766
  */
711
767
  senderAddress: string;
712
768
  };
713
- type TSendBaseOptionsWithSenderAddress<TRes> = WithRequiredSenderAddress<TSendBaseOptions<TRes>>;
714
- type TSendInternalOptions<TApi, TRes, TSigner> = Omit<TSendBaseOptions<TRes>, 'from' | 'feeAsset' | 'version'> & {
769
+ type WithRequiredSwapOptions<TBase, TApi, TRes, TSigner> = Omit<TBase, 'swapOptions'> & {
770
+ swapOptions: TSwapOptions<TApi, TRes, TSigner>;
771
+ };
772
+ type TSendOptionsWithSwap<TApi, TRes, TSigner> = WithRequiredSwapOptions<Omit<TSendOptions<TApi, TRes, TSigner>, 'isAmountAll'>, TApi, TRes, TSigner>;
773
+ type TSendBaseOptionsWithSwap<TApi, TRes, TSigner> = WithRequiredSwapOptions<TSendBaseOptions<TApi, TRes, TSigner>, TApi, TRes, TSigner>;
774
+ type TSendBaseOptionsWithSenderAddress<TApi, TRes, TSigner> = WithRequiredSenderAddress<TSendBaseOptions<TApi, TRes, TSigner>>;
775
+ type TSendInternalOptions<TApi, TRes, TSigner> = Omit<TSendBaseOptions<TApi, TRes, TSigner>, 'from' | 'feeAsset' | 'version'> & {
715
776
  api: IPolkadotApi<TApi, TRes, TSigner>;
716
777
  assetInfo: WithAmount<TAssetInfo>;
717
778
  feeAsset?: TAssetInfo;
718
- feeCurrency?: TCurrencyInput;
779
+ feeCurrency?: TCurrencyInput$1;
719
780
  overriddenAsset?: TLocation | TAssetWithFee[];
720
781
  version: Version;
721
782
  isAmountAll: boolean;
@@ -759,7 +820,7 @@ type TCreateBeneficiaryOptions<TApi, TRes, TSigner> = {
759
820
  };
760
821
  type TCreateBeneficiaryXTokensOptions<TApi, TRes, TSigner> = {
761
822
  api: IPolkadotApi<TApi, TRes, TSigner>;
762
- origin: TSubstrateChain;
823
+ origin: TSubstrateChain$1;
763
824
  destination: TDestination;
764
825
  address: TAddress;
765
826
  version: Version;
@@ -775,8 +836,8 @@ type TTransferFeeEstimates = {
775
836
  reserveFee: bigint;
776
837
  };
777
838
  type TCreateBaseTransferXcmOptions<TRes> = {
778
- chain: TSubstrateChain;
779
- destChain: TChain;
839
+ chain: TSubstrateChain$1;
840
+ destChain: TChain$1;
780
841
  assetInfo: WithAmount<TAssetInfo>;
781
842
  feeAssetInfo?: TAssetInfo;
782
843
  fees: TTransferFeeEstimates;
@@ -790,12 +851,12 @@ type TCreateBaseTransferXcmOptions<TRes> = {
790
851
  };
791
852
  type TCreateTransferXcmOptions<TApi, TRes, TSigner> = WithApi<TCreateBaseTransferXcmOptions<TRes>, TApi, TRes, TSigner>;
792
853
  type TCreateBaseSwapXcmOptions = {
793
- chain?: TSubstrateChain;
854
+ chain?: TSubstrateChain$1;
794
855
  exchangeChain: TParachain;
795
- destChain?: TChain;
856
+ destChain?: TChain$1;
796
857
  assetInfoFrom: WithAmount<TAssetInfo>;
797
858
  assetInfoTo: WithAmount<TAssetInfo>;
798
- currencyTo: TCurrencyInput;
859
+ currencyTo: TCurrencyInput$1;
799
860
  feeAssetInfo?: TAssetInfo;
800
861
  senderAddress: string;
801
862
  recipientAddress: string;
@@ -823,8 +884,8 @@ type TCreateEthBridgeInstructionsOptions<TApi, TRes, TSigner> = {
823
884
  };
824
885
 
825
886
  type TAssetClaimOptionsBase = {
826
- chain: TSubstrateChain;
827
- currency: WithComplexAmount<TCurrencyCore> | TAsset<TAmount>[] | WithComplexAmount<TCurrencyCore>[];
887
+ chain: TSubstrateChain$1;
888
+ currency: WithComplexAmount<TCurrencyCore> | TAsset<TAmount$1>[] | WithComplexAmount<TCurrencyCore>[];
828
889
  address: TAddress;
829
890
  version?: Version;
830
891
  };
@@ -841,7 +902,7 @@ type TSetBalanceRes = {
841
902
  declare abstract class BaseAssetsPallet {
842
903
  protected palletName: TAssetsPallet;
843
904
  constructor(palletName: TAssetsPallet);
844
- abstract mint<TApi, TRes, TSigner>(address: string, assetInfo: WithAmount<TAssetInfo>, balance: bigint, chain: TSubstrateChain, api: IPolkadotApi<TApi, TRes, TSigner>): Promise<TSetBalanceRes>;
905
+ abstract mint<TApi, TRes, TSigner>(address: string, assetInfo: WithAmount<TAssetInfo>, balance: bigint, chain: TSubstrateChain$1, api: IPolkadotApi<TApi, TRes, TSigner>): Promise<TSetBalanceRes>;
845
906
  abstract getBalance<TApi, TRes, TSigner>(api: IPolkadotApi<TApi, TRes, TSigner>, address: string, asset: TAssetInfo, customCurrencyId?: unknown): Promise<bigint>;
846
907
  }
847
908
 
@@ -913,13 +974,13 @@ declare class BatchTransactionManager<TApi, TRes, TSigner> {
913
974
  transactionOptions: TBatchedSendOptions<TApi, TRes, TSigner>[];
914
975
  addTransaction(options: TBatchedSendOptions<TApi, TRes, TSigner>): void;
915
976
  isEmpty(): boolean;
916
- buildBatch(api: IPolkadotApi<TApi, TRes, TSigner>, from: TSubstrateChain, options?: TBatchOptions): Promise<TRes>;
977
+ buildBatch(api: IPolkadotApi<TApi, TRes, TSigner>, from: TSubstrateChain$1, options?: TBatchOptions): Promise<TRes>;
917
978
  }
918
979
 
919
980
  /**
920
981
  * A builder class for constructing Para-to-Para, Para-to-Relay, Relay-to-Para transactions and asset claims.
921
982
  */
922
- declare class GeneralBuilder<TApi, TRes, TSigner, T extends Partial<TSendBaseOptions<TRes> & TBuilderInternalOptions<TSigner>> = object> {
983
+ declare class GeneralBuilder<TApi, TRes, TSigner, T extends Partial<TSendBaseOptions<TApi, TRes, TSigner> & TBuilderInternalOptions<TSigner>> = object> {
923
984
  readonly batchManager: BatchTransactionManager<TApi, TRes, TSigner>;
924
985
  readonly api: IPolkadotApi<TApi, TRes, TSigner>;
925
986
  readonly _options: T;
@@ -930,8 +991,8 @@ declare class GeneralBuilder<TApi, TRes, TSigner, T extends Partial<TSendBaseOpt
930
991
  * @param chain - The chain from which the transaction originates.
931
992
  * @returns An instance of Builder
932
993
  */
933
- from(chain: TSubstrateChain): GeneralBuilder<TApi, TRes, TSigner, T & {
934
- from: TSubstrateChain;
994
+ from(chain: TSubstrateChain$1): GeneralBuilder<TApi, TRes, TSigner, T & {
995
+ from: TSubstrateChain$1;
935
996
  }>;
936
997
  /**
937
998
  * Specifies the destination chain for the transaction.
@@ -949,8 +1010,8 @@ declare class GeneralBuilder<TApi, TRes, TSigner, T extends Partial<TSendBaseOpt
949
1010
  * @param chain - The chain from which to claim assets.
950
1011
  * @returns An instance of Builder
951
1012
  */
952
- claimFrom(chain: TSubstrateChain): AssetClaimBuilder<TApi, TRes, TSigner, {
953
- chain: TSubstrateChain;
1013
+ claimFrom(chain: TSubstrateChain$1): AssetClaimBuilder<TApi, TRes, TSigner, {
1014
+ chain: TSubstrateChain$1;
954
1015
  }>;
955
1016
  /**
956
1017
  * Specifies the currency to be used in the transaction. Symbol, ID, location or multi-asset.
@@ -1022,8 +1083,8 @@ declare class GeneralBuilder<TApi, TRes, TSigner, T extends Partial<TSendBaseOpt
1022
1083
  * @param currency - The currency to be used for the fee.
1023
1084
  * @returns An instance of the Builder
1024
1085
  */
1025
- feeAsset(currency: TCurrencyInput | undefined): GeneralBuilder<TApi, TRes, TSigner, T & {
1026
- feeAsset: TCurrencyInput | undefined;
1086
+ feeAsset(currency: TCurrencyInput$1 | undefined): GeneralBuilder<TApi, TRes, TSigner, T & {
1087
+ feeAsset: TCurrencyInput$1 | undefined;
1027
1088
  }>;
1028
1089
  /**
1029
1090
  * Sets the hex of the encoded transaction call to apply on the destination chain
@@ -1040,13 +1101,22 @@ declare class GeneralBuilder<TApi, TRes, TSigner, T extends Partial<TSendBaseOpt
1040
1101
  maxWeight: TWeight | undefined;
1041
1102
  };
1042
1103
  }>;
1104
+ /**
1105
+ * Performs a token swap as part of the transfer, using the specified exchange and destination currency.
1106
+ *
1107
+ * @param options - The swap options.
1108
+ * @returns An instance of the Builder.
1109
+ */
1110
+ swap(options: TSwapOptions<TApi, TRes, TSigner>): GeneralBuilder<TApi, TRes, TSigner, T & {
1111
+ swapOptions: TSwapOptions<TApi, TRes, TSigner>;
1112
+ }>;
1043
1113
  /**
1044
1114
  * Adds the transfer transaction to the batch.
1045
1115
  *
1046
1116
  * @returns An instance of Builder
1047
1117
  */
1048
- addToBatch(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptions<TRes>>): GeneralBuilder<TApi, TRes, TSigner, T & {
1049
- from: TSubstrateChain;
1118
+ addToBatch(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptions<TApi, TRes, TSigner>>): GeneralBuilder<TApi, TRes, TSigner, T & {
1119
+ from: TSubstrateChain$1;
1050
1120
  }>;
1051
1121
  /**
1052
1122
  * Builds and returns the batched transaction based on the configured parameters.
@@ -1054,26 +1124,34 @@ declare class GeneralBuilder<TApi, TRes, TSigner, T extends Partial<TSendBaseOpt
1054
1124
  * @param options - (Optional) Options to customize the batch transaction.
1055
1125
  * @returns A Extrinsic representing the batched transactions.
1056
1126
  */
1057
- buildBatch(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptions<TRes>>, options?: TBatchOptions): Promise<TRes>;
1058
- protected buildInternal<TOptions extends TSendBaseOptions<TRes>>(this: GeneralBuilder<TApi, TRes, TSigner, TOptions>): Promise<TBuildInternalRes<TApi, TRes, TSigner, TOptions>>;
1127
+ buildBatch(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptions<TApi, TRes, TSigner>>, options?: TBatchOptions): Promise<TRes>;
1128
+ protected buildInternal<TOptions extends TSendBaseOptions<TApi, TRes, TSigner>>(this: GeneralBuilder<TApi, TRes, TSigner, TOptions>): Promise<TBuildInternalRes<TApi, TRes, TSigner, TOptions>>;
1059
1129
  private prepareNormalizedOptions;
1060
1130
  /**
1061
1131
  * Builds and returns the transfer extrinsic.
1062
1132
  *
1063
1133
  * @returns A Promise that resolves to the transfer extrinsic.
1064
1134
  */
1065
- build(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptions<TRes>>): Promise<TRes>;
1135
+ build(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptions<TApi, TRes, TSigner>>): Promise<TRes>;
1136
+ /**
1137
+ * Builds and returns multiple transfer or swap extrinsics
1138
+ *
1139
+ * @returns A Promise that resolves to the transfer extrinsic contexts
1140
+ */
1141
+ buildAll(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptions<TApi, TRes, TSigner>>): Promise<TTransactionContext<TApi, TRes>[]>;
1142
+ private validateBatchState;
1066
1143
  private buildCommon;
1144
+ private buildCommonAll;
1067
1145
  private maybePerformXcmFormatCheck;
1068
- dryRun(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TRes>>): Promise<TDryRunResult>;
1069
- dryRunPreview(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TRes>>, dryRunOptions?: TDryRunPreviewOptions): Promise<TDryRunResult>;
1070
- protected createTxFactory<TOptions extends TSendBaseOptions<TRes>>(this: GeneralBuilder<TApi, TRes, TSigner, TOptions>): TTxFactory<TRes>;
1146
+ dryRun(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TApi, TRes, TSigner>>): Promise<TDryRunResult>;
1147
+ dryRunPreview(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TApi, TRes, TSigner>>, dryRunOptions?: TDryRunPreviewOptions): Promise<TDryRunResult>;
1148
+ protected createTxFactory<TOptions extends TSendBaseOptions<TApi, TRes, TSigner>>(this: GeneralBuilder<TApi, TRes, TSigner, TOptions>): TTxFactory<TRes>;
1071
1149
  /**
1072
1150
  * Returns the XCM fee for the transfer using dryRun or paymentInfo function.
1073
1151
  *
1074
1152
  * @returns An origin and destination fee.
1075
1153
  */
1076
- getXcmFee<TDisableFallback extends boolean = false>(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TRes>>, options?: TGetXcmFeeBuilderOptions & {
1154
+ getXcmFee<TDisableFallback extends boolean = false>(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TApi, TRes, TSigner>>, options?: TGetXcmFeeBuilderOptions & {
1077
1155
  disableFallback: TDisableFallback;
1078
1156
  }): Promise<TGetXcmFeeResult<TDisableFallback>>;
1079
1157
  /**
@@ -1081,7 +1159,7 @@ declare class GeneralBuilder<TApi, TRes, TSigner, T extends Partial<TSendBaseOpt
1081
1159
  *
1082
1160
  * @returns An origin fee.
1083
1161
  */
1084
- getOriginXcmFee(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TRes>>, { disableFallback }?: TGetXcmFeeBuilderOptions): Promise<TXcmFeeDetail & {
1162
+ getOriginXcmFee(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TApi, TRes, TSigner>>, { disableFallback }?: TGetXcmFeeBuilderOptions): Promise<TXcmFeeDetail & {
1085
1163
  forwardedXcms?: unknown;
1086
1164
  destParaId?: number;
1087
1165
  }>;
@@ -1096,7 +1174,7 @@ declare class GeneralBuilder<TApi, TRes, TSigner, T extends Partial<TSendBaseOpt
1096
1174
  *
1097
1175
  * @returns An origin and destination fee estimate.
1098
1176
  */
1099
- getXcmFeeEstimate(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TRes>>): Promise<TGetXcmFeeEstimateResult>;
1177
+ getXcmFeeEstimate(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TApi, TRes, TSigner>>): Promise<TGetXcmFeeEstimateResult>;
1100
1178
  /**
1101
1179
  * Estimates the origin XCM fee using paymentInfo function.
1102
1180
  *
@@ -1108,39 +1186,40 @@ declare class GeneralBuilder<TApi, TRes, TSigner, T extends Partial<TSendBaseOpt
1108
1186
  *
1109
1187
  * @returns An origin fee estimate.
1110
1188
  */
1111
- getOriginXcmFeeEstimate(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TRes>>): Promise<TGetXcmFeeEstimateDetail>;
1189
+ getOriginXcmFeeEstimate(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TApi, TRes, TSigner>>): Promise<TGetXcmFeeEstimateDetail>;
1112
1190
  /**
1113
1191
  * Returns the max transferable amount for the transfer
1114
1192
  *
1115
1193
  * @returns The max transferable amount.
1116
1194
  */
1117
- getTransferableAmount(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TRes>>): Promise<bigint>;
1195
+ getTransferableAmount(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TApi, TRes, TSigner>>): Promise<bigint>;
1118
1196
  /**
1119
1197
  * Returns the min transferable amount for the transfer
1120
1198
  *
1121
1199
  * @returns The min transferable amount.
1122
1200
  */
1123
- getMinTransferableAmount(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TRes>>): Promise<bigint>;
1201
+ getMinTransferableAmount(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TApi, TRes, TSigner>>): Promise<bigint>;
1124
1202
  /**
1125
1203
  * Returns the max transferable amount for the transfer
1126
1204
  *
1127
1205
  * @returns The max transferable amount.
1128
1206
  */
1129
- verifyEdOnDestination(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TRes>>): Promise<boolean>;
1207
+ verifyEdOnDestination(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TApi, TRes, TSigner>>): Promise<boolean>;
1130
1208
  /**
1131
1209
  * Returns the transfer info for the transfer
1132
1210
  *
1133
1211
  * @returns The transfer info.
1134
1212
  */
1135
- getTransferInfo(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TRes>>): Promise<TTransferInfo>;
1213
+ getTransferInfo(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TApi, TRes, TSigner>>): Promise<TTransferInfo>;
1136
1214
  /**
1137
1215
  * Returns the receivable amount on the destination after the transfer
1138
1216
  *
1139
1217
  * @returns The computed receivable amount.
1140
1218
  * @throws \{UnableToComputeError\} Thrown when the receivable amount cannot be determined.
1141
1219
  */
1142
- getReceivableAmount(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TRes>>): Promise<bigint>;
1143
- signAndSubmit(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TRes> & TBuilderInternalOptions<TSigner>>): Promise<string>;
1220
+ getReceivableAmount(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TApi, TRes, TSigner>>): Promise<bigint>;
1221
+ getBestAmountOut(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSwap<TApi, TRes, TSigner>>): Promise<_paraspell_xcm_router.TGetBestAmountOutResult>;
1222
+ signAndSubmit(this: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TApi, TRes, TSigner> & TBuilderInternalOptions<TSigner>>): Promise<string>;
1144
1223
  /**
1145
1224
  * Returns the API instance used by the builder.
1146
1225
  *
@@ -1168,13 +1247,13 @@ type TSwapConfig = {
1168
1247
  };
1169
1248
  type TDryRunBaseOptions<TRes> = {
1170
1249
  tx: TRes;
1171
- origin: TSubstrateChain;
1172
- destination: TChain;
1250
+ origin: TSubstrateChain$1;
1251
+ destination: TChain$1;
1173
1252
  senderAddress: string;
1174
1253
  address: string;
1175
1254
  currency: TCurrencyInputWithAmount;
1176
1255
  version?: Version;
1177
- feeAsset?: TCurrencyInput;
1256
+ feeAsset?: TCurrencyInput$1;
1178
1257
  swapConfig?: TSwapConfig;
1179
1258
  useRootOrigin?: boolean;
1180
1259
  bypassOptions?: TBypassOptions;
@@ -1188,7 +1267,7 @@ type TDryRunCallBaseOptions<TRes> = {
1188
1267
  /**
1189
1268
  * The chain to dry-run on
1190
1269
  */
1191
- chain: TSubstrateChain;
1270
+ chain: TSubstrateChain$1;
1192
1271
  /**
1193
1272
  * The destination chain
1194
1273
  */
@@ -1222,11 +1301,11 @@ type TDryRunXcmBaseOptions<TRes> = {
1222
1301
  /**
1223
1302
  * The chain to dry-run on
1224
1303
  */
1225
- chain: TSubstrateChain;
1304
+ chain: TSubstrateChain$1;
1226
1305
  /**
1227
1306
  * The origin chain
1228
1307
  */
1229
- origin: TSubstrateChain;
1308
+ origin: TSubstrateChain$1;
1230
1309
  asset: TAssetInfo;
1231
1310
  version: Version;
1232
1311
  feeAsset?: TAssetInfo;
@@ -1252,12 +1331,12 @@ type TDryRunChainFailure = TDryRunResBase & {
1252
1331
  };
1253
1332
  type TDryRunChainResult = TDryRunChainSuccess | TDryRunChainFailure;
1254
1333
  type THopInfo = {
1255
- chain: TChain;
1334
+ chain: TChain$1;
1256
1335
  result: TDryRunChainResult;
1257
1336
  /** @deprecated Use `result.isExchange` instead. Will be removed in v13. */
1258
1337
  isExchange?: boolean;
1259
1338
  };
1260
- type TChainEndpoint = 'origin' | 'destination' | TChain;
1339
+ type TChainEndpoint = 'origin' | 'destination' | TChain$1;
1261
1340
  type TDryRunResult = {
1262
1341
  failureReason?: string;
1263
1342
  failureSubReason?: string;
@@ -1269,8 +1348,8 @@ type TDryRunResult = {
1269
1348
  type TResolveHopParams<TApi, TRes, TSigner> = {
1270
1349
  api: IPolkadotApi<TApi, TRes, TSigner>;
1271
1350
  tx: TRes;
1272
- originChain: TSubstrateChain;
1273
- currentChain: TSubstrateChain;
1351
+ originChain: TSubstrateChain$1;
1352
+ currentChain: TSubstrateChain$1;
1274
1353
  destination: TDestination;
1275
1354
  asset: TAssetInfo;
1276
1355
  currency: TCurrencyInputWithAmount;
@@ -1279,8 +1358,8 @@ type TResolveHopParams<TApi, TRes, TSigner> = {
1279
1358
  };
1280
1359
  type HopProcessParams<TApi, TRes, TSigner> = {
1281
1360
  api: IPolkadotApi<TApi, TRes, TSigner>;
1282
- currentChain: TSubstrateChain;
1283
- currentOrigin: TSubstrateChain;
1361
+ currentChain: TSubstrateChain$1;
1362
+ currentOrigin: TSubstrateChain$1;
1284
1363
  currentAsset: TAssetInfo;
1285
1364
  forwardedXcms: any;
1286
1365
  hasPassedExchange: boolean;
@@ -1288,8 +1367,8 @@ type HopProcessParams<TApi, TRes, TSigner> = {
1288
1367
  };
1289
1368
  type HopTraversalConfig<TApi, TRes, TSigner, THopResult> = {
1290
1369
  api: IPolkadotApi<TApi, TRes, TSigner>;
1291
- origin: TSubstrateChain;
1292
- destination: TChain;
1370
+ origin: TSubstrateChain$1;
1371
+ destination: TChain$1;
1293
1372
  currency: TCurrencyCore;
1294
1373
  initialForwardedXcms: any;
1295
1374
  initialDestParaId: number | undefined;
@@ -1303,11 +1382,11 @@ type HopTraversalConfig<TApi, TRes, TSigner, THopResult> = {
1303
1382
  };
1304
1383
  type HopTraversalResult<THopResult> = {
1305
1384
  hops: Array<{
1306
- chain: TSubstrateChain;
1385
+ chain: TSubstrateChain$1;
1307
1386
  result: THopResult;
1308
1387
  }>;
1309
1388
  destination?: THopResult;
1310
- lastProcessedChain?: TSubstrateChain;
1389
+ lastProcessedChain?: TSubstrateChain$1;
1311
1390
  };
1312
1391
  type TBypassOptions = {
1313
1392
  mintFeeAssets?: boolean;
@@ -1430,11 +1509,11 @@ type TGetXcmFeeBaseOptions<TRes, TDisableFallback extends boolean = boolean> = {
1430
1509
  /**
1431
1510
  * The origin chain
1432
1511
  */
1433
- origin: TSubstrateChain;
1512
+ origin: TSubstrateChain$1;
1434
1513
  /**
1435
1514
  * The destination chain
1436
1515
  */
1437
- destination: TChain;
1516
+ destination: TChain$1;
1438
1517
  /**
1439
1518
  * The sender address
1440
1519
  */
@@ -1442,7 +1521,7 @@ type TGetXcmFeeBaseOptions<TRes, TDisableFallback extends boolean = boolean> = {
1442
1521
  address: string;
1443
1522
  currency: WithAmount<TCurrencyCore>;
1444
1523
  version?: Version;
1445
- feeAsset?: TCurrencyInput;
1524
+ feeAsset?: TCurrencyInput$1;
1446
1525
  disableFallback: TDisableFallback;
1447
1526
  swapConfig?: TXcmFeeSwapConfig;
1448
1527
  skipReverseFeeCalculation?: boolean;
@@ -1459,12 +1538,12 @@ type TGetXcmFeeBuilderOptions = {
1459
1538
  };
1460
1539
  type TGetOriginXcmFeeBaseOptions<TRes> = {
1461
1540
  buildTx: TTxFactory<TRes>;
1462
- origin: TSubstrateChain;
1463
- destination: TChain;
1541
+ origin: TSubstrateChain$1;
1542
+ destination: TChain$1;
1464
1543
  senderAddress: string;
1465
1544
  currency: WithAmount<TCurrencyCore>;
1466
1545
  version?: Version;
1467
- feeAsset?: TCurrencyInput;
1546
+ feeAsset?: TCurrencyInput$1;
1468
1547
  disableFallback: boolean;
1469
1548
  useRootOrigin?: boolean;
1470
1549
  };
@@ -1473,9 +1552,9 @@ type TGetOriginXcmFeeInternalOptions<TApi, TRes, TSigner> = Omit<TGetOriginXcmFe
1473
1552
  tx: TRes;
1474
1553
  };
1475
1554
  type TGetFeeForDestChainBaseOptions<TRes> = {
1476
- prevChain: TSubstrateChain;
1477
- origin: TSubstrateChain;
1478
- destination: TChain;
1555
+ prevChain: TSubstrateChain$1;
1556
+ origin: TSubstrateChain$1;
1557
+ destination: TChain$1;
1479
1558
  senderAddress: string;
1480
1559
  address: string;
1481
1560
  currency: WithAmount<TCurrencyCore>;
@@ -1484,7 +1563,7 @@ type TGetFeeForDestChainBaseOptions<TRes> = {
1484
1563
  asset: TAssetInfo;
1485
1564
  version: Version;
1486
1565
  originFee: bigint;
1487
- feeAsset?: TCurrencyInput;
1566
+ feeAsset?: TCurrencyInput$1;
1488
1567
  disableFallback: boolean;
1489
1568
  hasPassedExchange?: boolean;
1490
1569
  swapConfig?: TXcmFeeSwapConfig;
@@ -1492,7 +1571,7 @@ type TGetFeeForDestChainBaseOptions<TRes> = {
1492
1571
  };
1493
1572
  type TGetFeeForDestChainOptions<TApi, TRes, TSigner> = WithApi<TGetFeeForDestChainBaseOptions<TRes>, TApi, TRes, TSigner>;
1494
1573
  type TGetReverseTxFeeOptions<TApi, TRes, TSigner> = Omit<TGetFeeForDestChainOptions<TApi, TRes, TSigner>, 'destination' | 'disableFallback' | 'forwardedXcms' | 'asset' | 'originFee' | 'prevChain' | 'version'> & {
1495
- destination: TSubstrateChain;
1574
+ destination: TSubstrateChain$1;
1496
1575
  };
1497
1576
  type TFeeType = 'dryRun' | 'paymentInfo' | 'noFeeRequired';
1498
1577
  type TXcmFeeBase$1 = {
@@ -1531,13 +1610,13 @@ type TDestXcmFeeDetail<TDisableFallback extends boolean> = TConditionalXcmFeeDet
1531
1610
  destParaId?: number;
1532
1611
  };
1533
1612
  type TConditionalXcmFeeHopInfo<TDisableFallback extends boolean> = {
1534
- chain: TChain;
1613
+ chain: TChain$1;
1535
1614
  result: TConditionalXcmFeeDetail<TDisableFallback>;
1536
1615
  /** @deprecated - Use `result.isExchange` instead. Will be removed in v13. */
1537
1616
  isExchange?: boolean;
1538
1617
  };
1539
1618
  type TXcmFeeHopInfo = {
1540
- chain: TChain;
1619
+ chain: TChain$1;
1541
1620
  result: TXcmFeeDetail;
1542
1621
  /** @deprecated - Use `result.isExchange` instead. Will be removed in v13. */
1543
1622
  isExchange?: boolean;
@@ -1571,7 +1650,7 @@ type TGetBalanceCommonOptions = {
1571
1650
  /**
1572
1651
  * The chain on which to query the balance.
1573
1652
  */
1574
- chain: TChain;
1653
+ chain: TChain$1;
1575
1654
  };
1576
1655
  /**
1577
1656
  * Retrieves the asset balance for a given account on a specified chain.
@@ -1601,33 +1680,33 @@ type TGetTransferableAmountOptionsBase<TRes> = {
1601
1680
  /**
1602
1681
  * The chain on which to query the balance.
1603
1682
  */
1604
- origin: TSubstrateChain;
1683
+ origin: TSubstrateChain$1;
1605
1684
  /**
1606
1685
  * The destination chain.
1607
1686
  */
1608
- destination: TChain;
1687
+ destination: TChain$1;
1609
1688
  /**
1610
1689
  * The currency to query.
1611
1690
  */
1612
1691
  currency: WithAmount<TCurrencyCore>;
1613
1692
  version: Version | undefined;
1614
1693
  buildTx: TTxFactory<TRes>;
1615
- feeAsset?: TCurrencyInput;
1694
+ feeAsset?: TCurrencyInput$1;
1616
1695
  };
1617
1696
  type TGetTransferableAmountOptions<TApi, TRes, TSigner> = WithApi<TGetTransferableAmountOptionsBase<TRes>, TApi, TRes, TSigner>;
1618
1697
  type TGetMinTransferableAmountOptions<TApi, TRes, TSigner> = WithApi<TGetTransferableAmountOptionsBase<TRes> & {
1619
1698
  address: string;
1620
- builder: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TRes>>;
1699
+ builder: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptionsWithSenderAddress<TApi, TRes, TSigner>>;
1621
1700
  }, TApi, TRes, TSigner>;
1622
1701
  type TVerifyEdOnDestinationOptionsBase<TRes> = {
1623
1702
  /**
1624
1703
  * The origin chain.
1625
1704
  */
1626
- origin: TSubstrateChain;
1705
+ origin: TSubstrateChain$1;
1627
1706
  /**
1628
1707
  * The destination chain.
1629
1708
  */
1630
- destination: TChain;
1709
+ destination: TChain$1;
1631
1710
  /**
1632
1711
  * The address of the account.
1633
1712
  */
@@ -1642,11 +1721,11 @@ type TVerifyEdOnDestinationOptionsBase<TRes> = {
1642
1721
  currency: WithAmount<TCurrencyCore>;
1643
1722
  version: Version | undefined;
1644
1723
  buildTx: TTxFactory<TRes>;
1645
- feeAsset?: TCurrencyInput;
1724
+ feeAsset?: TCurrencyInput$1;
1646
1725
  };
1647
1726
  type TVerifyEdOnDestinationOptions<TApi, TRes, TSigner> = WithApi<TVerifyEdOnDestinationOptionsBase<TRes>, TApi, TRes, TSigner>;
1648
1727
 
1649
- type TEvmChainFrom = Extract<TChain, 'Ethereum' | 'Moonbeam' | 'Moonriver' | 'Darwinia'>;
1728
+ type TEvmChainFrom = Extract<TChain$1, 'Ethereum' | 'Moonbeam' | 'Moonriver' | 'Darwinia'>;
1650
1729
  /**
1651
1730
  * The options for the Ethereum to Polkadot transfer builder.
1652
1731
  */
@@ -1658,7 +1737,7 @@ type TEvmBuilderOptionsBase = {
1658
1737
  /**
1659
1738
  * The destination chain on Polkadot network.
1660
1739
  */
1661
- to: TChain;
1740
+ to: TChain$1;
1662
1741
  /**
1663
1742
  * The currency to transfer. Symbol or ID.
1664
1743
  */
@@ -1716,19 +1795,24 @@ type TDryRunPreviewOptions = {
1716
1795
  };
1717
1796
  type TBuilderOptions<TApi> = TApi | TBuilderConfig<TApi>;
1718
1797
  type TBuilderConfig<TApi> = Partial<{
1719
- apiOverrides: Partial<Record<TChain, TApi>>;
1798
+ apiOverrides: Partial<Record<TChain$1, TApi>>;
1720
1799
  development: boolean;
1721
1800
  abstractDecimals: boolean;
1722
1801
  xcmFormatCheck: boolean;
1723
1802
  }>;
1724
1803
  type TCreateTxsOptions<TApi, TRes, TSigner> = Pick<TSendOptions<TApi, TRes, TSigner>, 'api' | 'from' | 'to' | 'currency'>;
1725
1804
  type TBatchedSendOptions<TApi, TRes, TSigner> = Omit<TSendOptions<TApi, TRes, TSigner>, 'isAmountAll'> & {
1726
- builder: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptions<TRes>>;
1805
+ builder: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptions<TApi, TRes, TSigner>>;
1727
1806
  };
1728
- type TBuildInternalRes<TApi, TRes, TSigner, TOptions extends TSendBaseOptions<TRes> = TSendBaseOptions<TRes>> = {
1729
- tx: TRes;
1807
+ type TBuildInternalResBase<TApi, TRes, TSigner, TOptions extends TSendBaseOptions<TApi, TRes, TSigner> = TSendBaseOptions<TApi, TRes, TSigner>> = {
1730
1808
  options: TSendOptions<TApi, TRes, TSigner> & TOptions;
1731
1809
  };
1810
+ type TBuildInternalRes<TApi, TRes, TSigner, TOptions extends TSendBaseOptions<TApi, TRes, TSigner> = TSendBaseOptions<TApi, TRes, TSigner>> = TBuildInternalResBase<TApi, TRes, TSigner, TOptions> & {
1811
+ tx: TRes;
1812
+ };
1813
+ type TBuildAllInternalRes<TApi, TRes, TSigner, TOptions extends TSendBaseOptions<TApi, TRes, TSigner> = TSendBaseOptions<TApi, TRes, TSigner>> = TBuildInternalResBase<TApi, TRes, TSigner, TOptions> & {
1814
+ txContexts: TTransactionContext<TApi, TRes>[];
1815
+ };
1732
1816
  type TSender<TSigner> = string | TSigner;
1733
1817
  type TBuilderInternalOptions<TSigner> = {
1734
1818
  sender?: TSender<TSigner>;
@@ -1744,7 +1828,7 @@ type TChainConfig = {
1744
1828
  paraId: number;
1745
1829
  providers: TProviderEntry[];
1746
1830
  };
1747
- type TChainConfigMap = Record<TSubstrateChain, TChainConfig>;
1831
+ type TChainConfigMap = Record<TSubstrateChain$1, TChainConfig>;
1748
1832
 
1749
1833
  type OneKey<K extends string, V = unknown> = {
1750
1834
  [P in K]: Record<P, V> & Partial<Record<Exclude<K, P>, never>> extends infer O ? {
@@ -1831,6 +1915,18 @@ declare class DryRunFailedError extends Error {
1831
1915
  constructor(reason: string, dryRunType?: TChainEndpoint);
1832
1916
  }
1833
1917
 
1918
+ /**
1919
+ * Error thrown when an extension is not installed.
1920
+ */
1921
+ declare class ExtensionNotInstalledError extends Error {
1922
+ /**
1923
+ * Constructs a new ExtensionNotInstalledError.
1924
+ *
1925
+ * @param message - The error message.
1926
+ */
1927
+ constructor(message: string);
1928
+ }
1929
+
1834
1930
  /**
1835
1931
  * Error thrown when a feature or route is temporarily disabled via configuration or governance.
1836
1932
  */
@@ -1859,7 +1955,7 @@ declare class MissingChainApiError extends Error {
1859
1955
  *
1860
1956
  * @param chain - The chain for which the API is missing.
1861
1957
  */
1862
- constructor(chain: TChain);
1958
+ constructor(chain: TChain$1);
1863
1959
  }
1864
1960
 
1865
1961
  /**
@@ -1878,7 +1974,7 @@ declare class NoXCMSupportImplementedError extends Error {
1878
1974
  *
1879
1975
  * @param chain - The chain for which XCM support is not implemented.
1880
1976
  */
1881
- constructor(chain: TChain);
1977
+ constructor(chain: TChain$1);
1882
1978
  }
1883
1979
 
1884
1980
  /**
@@ -1917,7 +2013,7 @@ declare class RuntimeApiUnavailableError extends Error {
1917
2013
  }
1918
2014
 
1919
2015
  type TScenarioNotSupportedContext = {
1920
- chain: TChain;
2016
+ chain: TChain$1;
1921
2017
  scenario: TScenario;
1922
2018
  };
1923
2019
  /**
@@ -1963,7 +2059,7 @@ declare class ValidationError extends Error {
1963
2059
  }
1964
2060
 
1965
2061
  type THopTransferInfo = {
1966
- chain: TChain;
2062
+ chain: TChain$1;
1967
2063
  result: {
1968
2064
  xcmFee: TXcmFeeBase;
1969
2065
  asset: TAssetInfo;
@@ -1975,8 +2071,8 @@ type TXcmFeeBase = {
1975
2071
  };
1976
2072
  type TTransferInfo = {
1977
2073
  chain: {
1978
- origin: TChain;
1979
- destination: TChain;
2074
+ origin: TChain$1;
2075
+ destination: TChain$1;
1980
2076
  ecosystem: string;
1981
2077
  };
1982
2078
  origin: {
@@ -2008,9 +2104,9 @@ type TTransferInfo = {
2008
2104
  };
2009
2105
  type BuildHopInfoOptions<TApi, TRes, TSigner> = {
2010
2106
  api: IPolkadotApi<TApi, TRes, TSigner>;
2011
- chain: TSubstrateChain;
2107
+ chain: TSubstrateChain$1;
2012
2108
  fee: bigint;
2013
- originChain: TSubstrateChain;
2109
+ originChain: TSubstrateChain$1;
2014
2110
  currency: TCurrencyCore;
2015
2111
  asset: TAssetInfo;
2016
2112
  senderAddress: string;
@@ -2018,8 +2114,8 @@ type BuildHopInfoOptions<TApi, TRes, TSigner> = {
2018
2114
  };
2019
2115
  type TBuildDestInfoOptions<TApi, TRes, TSigner> = {
2020
2116
  api: IPolkadotApi<TApi, TRes, TSigner>;
2021
- origin: TSubstrateChain;
2022
- destination: TChain;
2117
+ origin: TSubstrateChain$1;
2118
+ destination: TChain$1;
2023
2119
  address: string;
2024
2120
  currency: WithAmount<TCurrencyCore>;
2025
2121
  originFee: bigint;
@@ -2034,8 +2130,8 @@ type TOriginFeeDetails = {
2034
2130
  };
2035
2131
  type TGetTransferInfoOptionsBase<TRes> = {
2036
2132
  buildTx: TTxFactory<TRes>;
2037
- origin: TSubstrateChain;
2038
- destination: TChain;
2133
+ origin: TSubstrateChain$1;
2134
+ destination: TChain$1;
2039
2135
  senderAddress: string;
2040
2136
  ahAddress?: string;
2041
2137
  address: string;
@@ -2045,14 +2141,14 @@ type TGetTransferInfoOptionsBase<TRes> = {
2045
2141
  };
2046
2142
  type TGetTransferInfoOptions<TApi, TRes, TSigner> = WithApi<TGetTransferInfoOptionsBase<TRes>, TApi, TRes, TSigner>;
2047
2143
 
2048
- type TChainWithApi<TApi, TRes, TSigner, T = TSubstrateChain> = {
2144
+ type TChainWithApi<TApi, TRes, TSigner, T = TSubstrateChain$1> = {
2049
2145
  api: IPolkadotApi<TApi, TRes, TSigner>;
2050
2146
  chain: T;
2051
2147
  };
2052
2148
  type TTypeAndThenCallContext<TApi, TRes, TSigner> = {
2053
2149
  origin: TChainWithApi<TApi, TRes, TSigner>;
2054
2150
  dest: TChainWithApi<TApi, TRes, TSigner>;
2055
- reserve: TChainWithApi<TApi, TRes, TSigner, TChain>;
2151
+ reserve: TChainWithApi<TApi, TRes, TSigner, TChain$1>;
2056
2152
  isSubBridge: boolean;
2057
2153
  isSnowbridge: boolean;
2058
2154
  isRelayAsset: boolean;
@@ -2065,7 +2161,7 @@ type TTypeAndThenFees = {
2065
2161
  destFee: bigint;
2066
2162
  };
2067
2163
  type TTypeAndThenOverrides = {
2068
- reserveChain?: TSubstrateChain;
2164
+ reserveChain?: TSubstrateChain$1;
2069
2165
  noFeeAsset?: boolean;
2070
2166
  };
2071
2167
 
@@ -2081,7 +2177,7 @@ declare const blake2b256: (msg: Uint8Array) => Uint8Array<ArrayBufferLike>;
2081
2177
  declare const blake2b512: (msg: Uint8Array) => Uint8Array<ArrayBufferLike>;
2082
2178
  declare const deriveAccountId: (raw: Uint8Array) => Uint8Array;
2083
2179
  declare const encodeSs58: (payload: Uint8Array, network: number) => string;
2084
- declare const convertSs58: <TApi, TRes, TSigner>(api: IPolkadotApi<TApi, TRes, TSigner>, address: string, chain: TSubstrateChain) => string;
2180
+ declare const convertSs58: <TApi, TRes, TSigner>(api: IPolkadotApi<TApi, TRes, TSigner>, address: string, chain: TSubstrateChain$1) => string;
2085
2181
 
2086
2182
  declare const getAssetBalanceInternal: <TApi, TRes, TSigner>({ api, address, chain, asset }: TGetAssetBalanceOptions<TApi, TRes, TSigner>) => Promise<bigint>;
2087
2183
  declare const getBalanceInternal: <TApi, TRes, TSigner>(options: TGetBalanceOptions<TApi, TRes, TSigner>) => Promise<bigint>;
@@ -2089,11 +2185,11 @@ declare const getBalance: <TApi, TRes, TSigner>(options: TGetBalanceOptions<TApi
2089
2185
 
2090
2186
  declare const getEthErc20Balance: (chain: TExternalChain, asset: TAssetInfo, address: string) => Promise<bigint>;
2091
2187
 
2092
- declare const getMoonbeamErc20Balance: (chain: TSubstrateChain, assetId: string, address: string) => Promise<bigint>;
2188
+ declare const getMoonbeamErc20Balance: (chain: TSubstrateChain$1, assetId: string, address: string) => Promise<bigint>;
2093
2189
 
2094
- declare const getChainConfig: (chain: TSubstrateChain) => TChainConfig;
2190
+ declare const getChainConfig: (chain: TSubstrateChain$1) => TChainConfig;
2095
2191
 
2096
- declare const getChainProviders: (chain: TSubstrateChain) => string[];
2192
+ declare const getChainProviders: (chain: TSubstrateChain$1) => string[];
2097
2193
 
2098
2194
  /**
2099
2195
  * Retrieves the parachain ID for a specified chain.
@@ -2101,7 +2197,7 @@ declare const getChainProviders: (chain: TSubstrateChain) => string[];
2101
2197
  * @param chain - The chain for which to get the paraId.
2102
2198
  * @returns The parachain ID of the chain.
2103
2199
  */
2104
- declare const getParaId: (chain: TChain) => number;
2200
+ declare const getParaId: (chain: TChain$1) => number;
2105
2201
 
2106
2202
  /**
2107
2203
  * Retrieves the chain name corresponding to a specified parachain ID.
@@ -2109,10 +2205,28 @@ declare const getParaId: (chain: TChain) => number;
2109
2205
  * @param paraId - The parachain ID.
2110
2206
  * @returns The chain name if found; otherwise, null.
2111
2207
  */
2112
- declare const getTChain: (paraId: number, ecosystem: TRelaychain | TExternalChain) => TChain | null;
2208
+ declare const getTChain: (paraId: number, ecosystem: TRelaychain | TExternalChain) => TChain$1 | null;
2113
2209
 
2114
2210
  declare const claimAssets: <TApi, TRes, TSigner>(options: TAssetClaimOptions<TApi, TRes, TSigner>) => Promise<TRes>;
2115
2211
 
2212
+ declare const resolveTransferParams: <TApi, TRes, TSigner>(options: TSendOptions<TApi, TRes, TSigner>) => {
2213
+ resolvedFeeAsset: TAssetInfo | undefined;
2214
+ resolvedVersion: _paraspell_sdk_common.Version;
2215
+ overriddenAsset: _paraspell_sdk_common.TLocation | _paraspell_assets.TAssetWithFee[] | undefined;
2216
+ normalizedAsset: {
2217
+ amount: bigint;
2218
+ decimals: number;
2219
+ symbol: string;
2220
+ isNative?: boolean;
2221
+ assetId?: string;
2222
+ location: _paraspell_sdk_common.TLocation;
2223
+ existentialDeposit?: string;
2224
+ isFeeAsset?: boolean;
2225
+ alias?: string;
2226
+ };
2227
+ };
2228
+ declare const createTransfer: <TApi, TRes, TSigner>(options: TSendOptions<TApi, TRes, TSigner>) => Promise<TRes>;
2229
+
2116
2230
  declare const dryRun: <TApi, TRes, TSigner>(options: TDryRunOptions<TApi, TRes, TSigner>) => Promise<TDryRunResult>;
2117
2231
 
2118
2232
  declare const dryRunInternal: <TApi, TRes, TSigner>(options: TDryRunOptions<TApi, TRes, TSigner>) => Promise<TDryRunResult>;
@@ -2124,7 +2238,7 @@ declare const getFailureInfo: (result: TDryRunResult) => Pick<TDryRunResult, "fa
2124
2238
  declare const traverseXcmHops: <TApi, TRes, TSigner, THopResult>(config: HopTraversalConfig<TApi, TRes, TSigner, THopResult>) => Promise<HopTraversalResult<THopResult>>;
2125
2239
  declare const addEthereumBridgeFees: <TApi, TRes, TSigner, TResult extends {
2126
2240
  fee?: bigint;
2127
- }>(api: IPolkadotApi<TApi, TRes, TSigner>, bridgeHubResult: TResult | undefined, destination: TChain, assetHubChain: TSubstrateChain) => Promise<TResult | undefined>;
2241
+ }>(api: IPolkadotApi<TApi, TRes, TSigner>, bridgeHubResult: TResult | undefined, destination: TChain$1, assetHubChain: TSubstrateChain$1) => Promise<TResult | undefined>;
2128
2242
 
2129
2243
  declare const calcPreviewMintAmount: (balance: bigint, desired: bigint) => bigint | null;
2130
2244
  declare const wrapTxBypass: <TApi, TRes, TSigner>(dryRunOptions: TDryRunBypassOptions<TApi, TRes, TSigner>, options?: TBypassOptions) => Promise<TRes>;
@@ -2133,7 +2247,7 @@ declare const getParaEthTransferFees: <TApi, TRes, TSigner>(ahApi: IPolkadotApi<
2133
2247
 
2134
2248
  declare const transferMoonbeamEvm: <TApi, TRes, TSigner>(options: TEvmBuilderOptions<TApi, TRes, TSigner>) => Promise<string>;
2135
2249
 
2136
- declare const transferMoonbeamToEth: <TApi, TRes, TSigner>(from: TSubstrateChain, { api, to, signer, address, ahAddress, currency }: TEvmBuilderOptions<TApi, TRes, TSigner>) => Promise<`0x${string}`>;
2250
+ declare const transferMoonbeamToEth: <TApi, TRes, TSigner>(from: TSubstrateChain$1, { api, to, signer, address, ahAddress, currency }: TEvmBuilderOptions<TApi, TRes, TSigner>) => Promise<`0x${string}`>;
2137
2251
 
2138
2252
  declare const getOriginXcmFee: <TApi, TRes, TSigner>(options: TGetOriginXcmFeeOptions<TApi, TRes, TSigner>) => Promise<TXcmFeeDetail & {
2139
2253
  forwardedXcms?: unknown;
@@ -2170,24 +2284,6 @@ declare const getXcmFeeOnce: <TApi, TRes, TSigner, TDisableFallback extends bool
2170
2284
 
2171
2285
  declare const getBridgeStatus: <TApi, TRes, TSigner>(api: IPolkadotApi<TApi, TRes, TSigner>) => Promise<TBridgeStatus>;
2172
2286
 
2173
- declare const resolveSendParams: <TApi, TRes, TSigner>(options: TSendOptions<TApi, TRes, TSigner>) => {
2174
- resolvedFeeAsset: TAssetInfo | undefined;
2175
- resolvedVersion: _paraspell_sdk_common.Version;
2176
- overriddenAsset: _paraspell_sdk_common.TLocation | _paraspell_assets.TAssetWithFee[] | undefined;
2177
- normalizedAsset: {
2178
- amount: bigint;
2179
- decimals: number;
2180
- symbol: string;
2181
- isNative?: boolean;
2182
- assetId?: string;
2183
- location: _paraspell_sdk_common.TLocation;
2184
- existentialDeposit?: string;
2185
- isFeeAsset?: boolean;
2186
- alias?: string;
2187
- };
2188
- };
2189
- declare const send: <TApi, TRes, TSigner>(options: TSendOptions<TApi, TRes, TSigner>) => Promise<TRes>;
2190
-
2191
2287
  declare const getTransferInfo: <TApi, TRes, TSigner>({ api, buildTx, origin, destination, senderAddress, ahAddress, address, currency, feeAsset, version }: TGetTransferInfoOptions<TApi, TRes, TSigner>) => Promise<TTransferInfo>;
2192
2288
 
2193
2289
  declare const getMinTransferableAmountInternal: <TApi, TRes, TSigner>({ api, origin, senderAddress, address, origin: chain, destination, currency, feeAsset, buildTx, builder, version }: TGetMinTransferableAmountOptions<TApi, TRes, TSigner>) => Promise<bigint>;
@@ -2207,18 +2303,18 @@ declare const createTypeAndThenCall: <TApi, TRes, TSigner>(options: TPolkadotXCM
2207
2303
  * by dry-running both variants and preferring the one that succeeds. If both fail, returns the
2208
2304
  * AssetHub variant. Supports only relaychain assets.
2209
2305
  */
2210
- declare const createTypeThenAutoReserve: <TApi, TRes, TSigner>(chain: TSubstrateChain, options: TPolkadotXCMTransferOptions<TApi, TRes, TSigner>) => Promise<TSerializedExtrinsics>;
2306
+ declare const createTypeThenAutoReserve: <TApi, TRes, TSigner>(chain: TSubstrateChain$1, options: TPolkadotXCMTransferOptions<TApi, TRes, TSigner>) => Promise<TSerializedExtrinsics>;
2211
2307
 
2212
- declare const validateCurrency: (currency: TCurrencyInput, feeAsset?: TCurrencyInput) => void;
2213
- declare const validateDestination: (origin: TSubstrateChain, destination: TDestination) => void;
2214
- declare const validateAssetSpecifiers: (assetCheckEnabled: boolean, currency: TCurrencyInput) => void;
2308
+ declare const validateCurrency: (currency: TCurrencyInput$1, feeAsset?: TCurrencyInput$1) => void;
2309
+ declare const validateDestination: (origin: TSubstrateChain$1, destination: TDestination) => void;
2310
+ declare const validateAssetSpecifiers: (assetCheckEnabled: boolean, currency: TCurrencyInput$1) => void;
2215
2311
  declare const validateTransact: <TApi, TRes, TSigner>({ api, from, to, senderAddress, address, transactOptions }: TSendOptions<TApi, TRes, TSigner>) => ValidationError | undefined;
2216
2312
 
2217
2313
  declare const verifyEdOnDestination: <TApi, TRes, TSigner>(options: TVerifyEdOnDestinationOptions<TApi, TRes, TSigner>) => Promise<boolean>;
2218
2314
 
2219
2315
  declare const compareAddresses: <TApi, TRes, TSigner>(api: IPolkadotApi<TApi, TRes, TSigner>, addr1: string, addr2: string) => boolean;
2220
2316
 
2221
- declare const validateAddress: <TApi, TRes, TSigner>(api: IPolkadotApi<TApi, TRes, TSigner>, address: TAddress, chain: TChain, isDestination?: boolean) => void;
2317
+ declare const validateAddress: <TApi, TRes, TSigner>(api: IPolkadotApi<TApi, TRes, TSigner>, address: TAddress, chain: TChain$1, isDestination?: boolean) => void;
2222
2318
 
2223
2319
  declare const validateDestinationAddress: <TApi, TRes, TSigner>(address: TAddress, destination: TDestination, api: IPolkadotApi<TApi, TRes, TSigner>) => void;
2224
2320
 
@@ -2228,6 +2324,7 @@ declare const assertSenderAddress: (address: string | undefined) => asserts addr
2228
2324
  declare const assertHasId: (asset: TAssetInfo) => asserts asset is TAssetInfoWithId;
2229
2325
  declare const assertSender: <TSigner>(sender?: TSender<TSigner>) => asserts sender is TSender<TSigner>;
2230
2326
  declare const isSenderSigner: <TSigner>(sender: TSender<TSigner>) => sender is TSigner;
2327
+ declare const assertSwapSupport: <TApi, TRes, TSigner>(options: TSwapOptions<TApi, TRes, TSigner> | undefined) => void;
2231
2328
 
2232
2329
  declare const createId: (version: Version, location: TLocation) => TLocation | {
2233
2330
  Concrete: TLocation;
@@ -2243,14 +2340,16 @@ declare const maybeOverrideAsset: (version: Version, amount: bigint, asset: TAss
2243
2340
  declare const sortAssets: (assets: TAsset[]) => TAsset[];
2244
2341
 
2245
2342
  declare const computeOverridenAmount: <TApi, TRes, TSigner>(options: TCreateTxsOptions<TApi, TRes, TSigner>, increaseAmount: string, relative?: boolean) => number | bigint;
2246
- declare const overrideTxAmount: <TApi, TRes, TSigner>(options: TCreateTxsOptions<TApi, TRes, TSigner>, builder: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptions<TRes>>, amount: string, relative?: boolean) => Promise<TRes>;
2247
- declare const createTx: <TApi, TRes, TSigner>(options: TCreateTxsOptions<TApi, TRes, TSigner>, builder: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptions<TRes>>, amount?: string, relative?: boolean) => Promise<TRes>;
2343
+ declare const overrideTxAmount: <TApi, TRes, TSigner>(options: TCreateTxsOptions<TApi, TRes, TSigner>, builder: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptions<TApi, TRes, TSigner>>, amount: string, relative?: boolean) => Promise<TRes>;
2344
+ declare const createTxOverrideAmount: <TApi, TRes, TSigner>(options: TCreateTxsOptions<TApi, TRes, TSigner>, builder: GeneralBuilder<TApi, TRes, TSigner, TSendBaseOptions<TApi, TRes, TSigner>>, amount?: string, relative?: boolean) => Promise<TRes>;
2345
+ declare const createTransferOrSwapAll: <TApi, TRes, TSigner>(options: TSendOptions<TApi, TRes, TSigner>) => Promise<TTransactionContext<TApi, TRes>[]>;
2346
+ declare const createTransferOrSwap: <TApi, TRes, TSigner>(options: TSendOptions<TApi, TRes, TSigner>) => Promise<TRes>;
2248
2347
 
2249
2348
  declare const isConfig: <TApi>(value: any) => value is TBuilderConfig<TApi>;
2250
2349
 
2251
- declare const getAssetReserveChain: (chain: TSubstrateChain, assetLocation: TLocation) => TSubstrateChain;
2350
+ declare const getAssetReserveChain: (chain: TSubstrateChain$1, assetLocation: TLocation) => TSubstrateChain$1;
2252
2351
 
2253
- declare const getChainVersion: <TApi, TRes, TSigner>(chain: TChain) => Version;
2352
+ declare const getChainVersion: <TApi, TRes, TSigner>(chain: TChain$1) => Version;
2254
2353
 
2255
2354
  /**
2256
2355
  * Gets the relay chain (Polkadot, Kusama, Westend, or Paseo) of a given chain.
@@ -2258,17 +2357,17 @@ declare const getChainVersion: <TApi, TRes, TSigner>(chain: TChain) => Version;
2258
2357
  * @param chain - The chain to evaluate.
2259
2358
  * @returns The corresponding relay chain.
2260
2359
  */
2261
- declare const getRelayChainOf: (chain: TSubstrateChain) => TRelaychain;
2360
+ declare const getRelayChainOf: (chain: TSubstrateChain$1) => TRelaychain;
2262
2361
 
2263
- declare const createChainClient: <TApi, TRes, TSigner>(api: IPolkadotApi<TApi, TRes, TSigner>, chain: TSubstrateChain) => Promise<TApi>;
2362
+ declare const createChainClient: <TApi, TRes, TSigner>(api: IPolkadotApi<TApi, TRes, TSigner>, chain: TSubstrateChain$1) => Promise<TApi>;
2264
2363
 
2265
- declare const computeFeeFromDryRun: (dryRun: any, chain: TSubstrateChain, executionFee: bigint, isFeeAsset?: boolean) => bigint;
2364
+ declare const computeFeeFromDryRun: (dryRun: any, chain: TSubstrateChain$1, executionFee: bigint, isFeeAsset?: boolean) => bigint;
2266
2365
 
2267
- declare const computeFeeFromDryRunPjs: (dryRun: any, chain: TSubstrateChain, executionFee: bigint) => bigint;
2366
+ declare const computeFeeFromDryRunPjs: (dryRun: any, chain: TSubstrateChain$1, executionFee: bigint) => bigint;
2268
2367
 
2269
- declare const resolveModuleError: (chain: TSubstrateChain, error: TModuleError) => TDryRunError;
2368
+ declare const resolveModuleError: (chain: TSubstrateChain$1, error: TModuleError) => TDryRunError;
2270
2369
 
2271
- declare const padFee: (raw: bigint, origin: TSubstrateChain, dest: TChain, side: "origin" | "destination") => bigint;
2370
+ declare const padFee: (raw: bigint, origin: TSubstrateChain$1, dest: TChain$1, side: "origin" | "destination") => bigint;
2272
2371
  declare const padValueBy: (amount: bigint, percent: number) => bigint;
2273
2372
 
2274
2373
  /**
@@ -2284,12 +2383,12 @@ declare const getEvmPrivateKeyHex: (path: string) => "0x5fb92d6e98884f76de468fa3
2284
2383
  declare const createBeneficiaryLocXTokens: <TApi, TRes, TSigner>({ api, address: recipientAddress, origin, destination, version, paraId }: TCreateBeneficiaryXTokensOptions<TApi, TRes, TSigner>) => TLocation;
2285
2384
  declare const createBeneficiaryLocation: <TApi, TRes, TSigner>({ api, address, version }: TCreateBeneficiaryOptions<TApi, TRes, TSigner>) => TLocation;
2286
2385
 
2287
- declare const createDestination: (version: Version, origin: TSubstrateChain, destination: TDestination, chainId?: number, junction?: TJunction, parents?: Parents) => TLocation;
2288
- declare const createVersionedDestination: (version: Version, origin: TSubstrateChain, destination: TDestination, chainId?: number, junction?: TJunction, parents?: Parents) => TXcmVersioned<TLocation>;
2386
+ declare const createDestination: (version: Version, origin: TSubstrateChain$1, destination: TDestination, chainId?: number, junction?: TJunction, parents?: Parents) => TLocation;
2387
+ declare const createVersionedDestination: (version: Version, origin: TSubstrateChain$1, destination: TDestination, chainId?: number, junction?: TJunction, parents?: Parents) => TXcmVersioned<TLocation>;
2289
2388
 
2290
2389
  declare const createX1Payload: (version: Version, junction: TJunction) => TJunctions;
2291
2390
 
2292
- declare const getChainLocation: (chain: TChain, destChain: TChain) => TLocation;
2391
+ declare const getChainLocation: (chain: TChain$1, destChain: TChain$1) => TLocation;
2293
2392
 
2294
2393
  /**
2295
2394
  * This function localizes a location by removing the `Parachain` junction
@@ -2300,18 +2399,41 @@ declare const getChainLocation: (chain: TChain, destChain: TChain) => TLocation;
2300
2399
  * @param location - The location to localize
2301
2400
  * @returns The localized location
2302
2401
  */
2303
- declare const localizeLocation: (chain: TChain, location: TLocation, origin?: TChain) => TLocation;
2402
+ declare const localizeLocation: (chain: TChain$1, location: TLocation, origin?: TChain$1) => TLocation;
2304
2403
 
2305
2404
  declare const reverseTransformLocation: (location: TLocation) => TLocation;
2306
2405
 
2307
2406
  declare const normalizeAmount: (amount: bigint) => bigint;
2308
2407
 
2309
- declare const resolveDestChain: (originChain: TSubstrateChain, paraId: number | undefined) => "AssetHubPolkadot" | "Acala" | "Ajuna" | "Astar" | "BifrostPolkadot" | "BridgeHubPolkadot" | "Centrifuge" | "Darwinia" | "EnergyWebX" | "Hydration" | "Interlay" | "Heima" | "Jamton" | "Moonbeam" | "CoretimePolkadot" | "Collectives" | "Crust" | "Manta" | "Nodle" | "NeuroWeb" | "Pendulum" | "Mythos" | "Peaq" | "PeoplePolkadot" | "Unique" | "Xode" | "AssetHubKusama" | "BridgeHubKusama" | "Karura" | "Kintsugi" | "Moonriver" | "CoretimeKusama" | "Encointer" | "Altair" | "Basilisk" | "BifrostKusama" | "CrustShadow" | "Crab" | "Laos" | "Quartz" | "PeopleKusama" | "Shiden" | "Zeitgeist" | "AssetHubWestend" | "BridgeHubWestend" | "CollectivesWestend" | "CoretimeWestend" | "Penpal" | "PeopleWestend" | "AjunaPaseo" | "AssetHubPaseo" | "BifrostPaseo" | "BridgeHubPaseo" | "CoretimePaseo" | "EnergyWebXPaseo" | "HeimaPaseo" | "HydrationPaseo" | "LaosPaseo" | "NeuroWebPaseo" | "PeoplePaseo" | "ZeitgeistPaseo" | undefined;
2408
+ declare const resolveDestChain: (originChain: TSubstrateChain$1, paraId: number | undefined) => "AssetHubPolkadot" | "Acala" | "Ajuna" | "Astar" | "BifrostPolkadot" | "BridgeHubPolkadot" | "Centrifuge" | "Darwinia" | "EnergyWebX" | "Hydration" | "Interlay" | "Heima" | "Jamton" | "Moonbeam" | "CoretimePolkadot" | "Collectives" | "Crust" | "Manta" | "Nodle" | "NeuroWeb" | "Pendulum" | "Mythos" | "Peaq" | "PeoplePolkadot" | "Unique" | "Xode" | "AssetHubKusama" | "BridgeHubKusama" | "Karura" | "Kintsugi" | "Moonriver" | "CoretimeKusama" | "Encointer" | "Altair" | "Basilisk" | "BifrostKusama" | "CrustShadow" | "Crab" | "Laos" | "Quartz" | "PeopleKusama" | "Shiden" | "Zeitgeist" | "AssetHubWestend" | "BridgeHubWestend" | "CollectivesWestend" | "CoretimeWestend" | "Penpal" | "PeopleWestend" | "AjunaPaseo" | "AssetHubPaseo" | "BifrostPaseo" | "BridgeHubPaseo" | "CoretimePaseo" | "EnergyWebXPaseo" | "HeimaPaseo" | "HydrationPaseo" | "LaosPaseo" | "NeuroWebPaseo" | "PeoplePaseo" | "ZeitgeistPaseo" | undefined;
2310
2409
 
2311
2410
  declare const resolveParaId: (paraId: number | undefined, destination: TDestination) => number | undefined;
2312
2411
 
2313
- declare const abstractDecimals: <TApi, TRes, TSigner>(amount: TAmount, decimals: number | undefined, api: IPolkadotApi<TApi, TRes, TSigner>) => bigint;
2314
- declare const applyDecimalAbstraction: (amount: TAmount, decimals: number | undefined, shouldAbstract: boolean) => bigint;
2412
+ declare const createRouterBuilder: <TApi, TRes, TSigner>(options: TSendOptionsWithSwap<TApi, TRes, TSigner>) => Promise<_paraspell_xcm_router.RouterBuilderCore<object & {
2413
+ from: TSubstrateChain | undefined;
2414
+ } & {
2415
+ exchange: _paraspell_xcm_router.TExchangeInput;
2416
+ } & {
2417
+ to: TChain | undefined;
2418
+ } & {
2419
+ currencyFrom: TCurrencyInput;
2420
+ } & {
2421
+ currencyTo: TCurrencyInput;
2422
+ } & {
2423
+ amount: TAmount;
2424
+ } & {
2425
+ senderAddress: string;
2426
+ } & {
2427
+ evmSenderAddress: string | undefined;
2428
+ } & {
2429
+ recipientAddress: string | undefined;
2430
+ } & {
2431
+ slippagePct: string;
2432
+ }>>;
2433
+ declare const executeWithRouter: <TApi, TRes, TSigner, T>(options: TSendOptionsWithSwap<TApi, TRes, TSigner>, executor: (builder: Awaited<ReturnType<typeof createRouterBuilder>>) => Promise<T>) => Promise<T>;
2434
+
2435
+ declare const abstractDecimals: <TApi, TRes, TSigner>(amount: TAmount$1, decimals: number | undefined, api: IPolkadotApi<TApi, TRes, TSigner>) => bigint;
2436
+ declare const applyDecimalAbstraction: (amount: TAmount$1, decimals: number | undefined, shouldAbstract: boolean) => bigint;
2315
2437
 
2316
2438
  declare const createAssetsFilter: (asset: TAsset, version: Version) => {
2317
2439
  Wild: {
@@ -2328,9 +2450,9 @@ declare const createBaseExecuteXcm: <TRes>(options: TCreateBaseTransferXcmOption
2328
2450
  suffixXcm?: unknown[];
2329
2451
  }) => unknown[];
2330
2452
 
2331
- declare const createExecuteCall: (chain: TSubstrateChain, xcm: TXcmVersioned<any>, maxWeight: TWeight) => TSerializedExtrinsics;
2453
+ declare const createExecuteCall: (chain: TSubstrateChain$1, xcm: TXcmVersioned<any>, maxWeight: TWeight) => TSerializedExtrinsics;
2332
2454
 
2333
- declare const createExecuteExchangeXcm: <TApi, TRes, TSigner>(input: TPolkadotXCMTransferOptions<TApi, TRes, TSigner>, origin: TSubstrateChain, weight: TWeight, originExecutionFee: bigint, destExecutionFee: bigint) => TRes;
2455
+ declare const createExecuteExchangeXcm: <TApi, TRes, TSigner>(input: TPolkadotXCMTransferOptions<TApi, TRes, TSigner>, origin: TSubstrateChain$1, weight: TWeight, originExecutionFee: bigint, destExecutionFee: bigint) => TRes;
2334
2456
 
2335
2457
  declare const createDirectExecuteXcm: <TApi, TRes, TSigner>(options: TCreateTransferXcmOptions<TApi, TRes, TSigner>) => Promise<OneKey<_paraspell_sdk_common.Version, unknown[]>>;
2336
2458
 
@@ -2342,7 +2464,7 @@ declare const getLocalTransferAmount: <TApi, TRes, TSigner>({ assetInfo, balance
2342
2464
 
2343
2465
  declare const handleToAhTeleport: <TApi, TRes, TSigner>(origin: TParachain, input: TPolkadotXCMTransferOptions<TApi, TRes, TSigner>, defaultTx: TRes) => Promise<TRes>;
2344
2466
 
2345
- declare const throwUnsupportedCurrency: (currency: TCurrencyInput, chain: string, { isDestination }?: {
2467
+ declare const throwUnsupportedCurrency: (currency: TCurrencyInput$1, chain: string, { isDestination }?: {
2346
2468
  isDestination: boolean;
2347
2469
  }) => never;
2348
2470
 
@@ -2351,8 +2473,8 @@ declare const formatUnits: typeof formatUnits$1;
2351
2473
 
2352
2474
  declare const addXcmVersionHeader: <T, V extends Version>(obj: T, version: V) => OneKey<V, T>;
2353
2475
  declare const selectXcmVersion: (forcedVersion: Version | undefined, originVersion: Version, destMaxVersion?: Version) => Version;
2354
- declare const pickCompatibleXcmVersion: (origin: TSubstrateChain, destination: TDestination, override?: Version) => Version;
2355
- declare const pickRouterCompatibleXcmVersion: (origin: TSubstrateChain | undefined, exchangeChain: TSubstrateChain, destination: TChain | undefined) => Version;
2476
+ declare const pickCompatibleXcmVersion: (origin: TSubstrateChain$1, destination: TDestination, override?: Version) => Version;
2477
+ declare const pickRouterCompatibleXcmVersion: (origin: TSubstrateChain$1 | undefined, exchangeChain: TSubstrateChain$1, destination: TChain$1 | undefined) => Version;
2356
2478
 
2357
- export { AmountTooLowError, AssetClaimBuilder, BaseAssetsPallet, BatchMode, BatchValidationError, BridgeHaltedError, Builder, DRY_RUN_CLIENT_TIMEOUT_MS, DryRunFailedError, ETH_MAINNET_CHAIN_ID, ETH_TESTNET_CHAIN_ID, FeatureTemporarilyDisabledError, GeneralBuilder, InvalidAddressError, MissingChainApiError, MissingParameterError, NoXCMSupportImplementedError, NumberFormatError, OverrideConflictError, PolkadotXcmError, PolkadotXcmExecutionError, ProviderUnavailableError, RELAY_LOCATION, RoutingResolutionError, RuntimeApiUnavailableError, ScenarioNotSupportedError, TRANSACT_ORIGINS, TX_CLIENT_TIMEOUT_MS, TransferToAhNotSupported, TypeAndThenUnavailableError, UnableToComputeError, UnsupportedOperationError, ValidationError, XTokensError, abstractDecimals, addEthereumBridgeFees, addXcmVersionHeader, applyDecimalAbstraction, assertAddressIsString, assertHasId, assertSender, assertSenderAddress, assertToIsString, blake2b256, blake2b512, calcPreviewMintAmount, claimAssets, compareAddresses, computeFeeFromDryRun, computeFeeFromDryRunPjs, computeOverridenAmount, constructTypeAndThenCall, convertSs58, createAsset, createAssetsFilter, createBaseExecuteXcm, createBeneficiaryLocXTokens, createBeneficiaryLocation, createChainClient, createClientCache, createClientPoolHelpers, createDestination, createDirectExecuteXcm, createExecuteCall, createExecuteExchangeXcm, createId, createTx, createTypeAndThenCall, createTypeThenAutoReserve, createVersionedAssets, createVersionedDestination, createX1Payload, deriveAccountId, dryRun, dryRunInternal, dryRunOrigin, encodeSs58, formatAssetIdToERC20, formatUnits, getAssetBalanceInternal, getAssetReserveChain, getBalance, getBalanceInternal, getBridgeStatus, getChain, getChainConfig, getChainLocation, getChainProviders, getChainVersion, getEthErc20Balance, getEvmPrivateKeyHex, getFailureInfo, getLocalTransferAmount, getMinTransferableAmount, getMinTransferableAmountInternal, getMoonbeamErc20Balance, getOriginXcmFee, getOriginXcmFeeEstimate, getOriginXcmFeeInternal, getParaEthTransferFees, getParaId, getRelayChainOf, getTChain, getTransferInfo, getTransferableAmount, getTransferableAmountInternal, getXcmFee, getXcmFeeEstimate, getXcmFeeInternal, getXcmFeeOnce, handleExecuteTransfer, handleSwapExecuteTransfer, handleToAhTeleport, isConfig, isSenderSigner, keyFromWs, localizeLocation, maybeOverrideAsset, maybeOverrideAssets, normalizeAmount, overrideTxAmount, padFee, padValueBy, parseUnits, pickCompatibleXcmVersion, pickRouterCompatibleXcmVersion, resolveDestChain, resolveModuleError, resolveParaId, resolveSendParams, reverseTransformLocation, selectXcmVersion, send, sortAssets, throwUnsupportedCurrency, transferMoonbeamEvm, transferMoonbeamToEth, traverseXcmHops, validateAddress, validateAssetSpecifiers, validateCurrency, validateDestination, validateDestinationAddress, validateTransact, verifyEdOnDestination, wrapTxBypass };
2358
- export type { BuildHopInfoOptions, ClientCache, HopProcessParams, HopTraversalConfig, HopTraversalResult, IPolkadotApi, IPolkadotXCMTransfer, IXTokensTransfer, OneKey, TAddress, TApiOrUrl, TAssetClaimInternalOptions, TAssetClaimOptions, TAssetClaimOptionsBase, TBatchOptions, TBatchedSendOptions, TBifrostToken, TBridgeStatus, TBuildDestInfoOptions, TBuildInternalRes, TBuilderConfig, TBuilderInternalOptions, TBuilderOptions, TBypassOptions, TCacheItem, TChainConfig, TChainConfigMap, TChainEndpoint, TChainWithApi, TClientEntry, TClientKey, TConditionalXcmFeeDetail, TConditionalXcmFeeHopInfo, TCreateBaseSwapXcmOptions, TCreateBaseTransferXcmOptions, TCreateBeneficiaryOptions, TCreateBeneficiaryXTokensOptions, TCreateEthBridgeInstructionsOptions, TCreateSwapXcmInternalOptions, TCreateSwapXcmOptions, TCreateTransferXcmOptions, TCreateTxsOptions, TDestWeight, TDestXcmFeeDetail, TDestination, TDryRunBaseOptions, TDryRunBypassOptions, TDryRunCallBaseOptions, TDryRunCallOptions, TDryRunChainFailure, TDryRunChainResult, TDryRunChainSuccess, TDryRunError, TDryRunOptions, TDryRunPreviewOptions, TDryRunResBase, TDryRunResult, TDryRunXcmBaseOptions, TDryRunXcmOptions, TEvmBuilderOptions, TEvmBuilderOptionsBase, TEvmChainFrom, TFeeType, TForeignAssetId, TForeignOrNativeAsset, TForeignOrTokenAsset, TGetAssetBalanceOptions, TGetAssetBalanceOptionsBase, TGetBalanceCommonOptions, TGetBalanceOptions, TGetBalanceOptionsBase, TGetFeeForDestChainBaseOptions, TGetFeeForDestChainOptions, TGetMinTransferableAmountOptions, TGetOriginXcmFeeBaseOptions, TGetOriginXcmFeeEstimateOptions, TGetOriginXcmFeeInternalOptions, TGetOriginXcmFeeOptions, TGetReverseTxFeeOptions, TGetTransferInfoOptions, TGetTransferInfoOptionsBase, TGetTransferableAmountOptions, TGetTransferableAmountOptionsBase, TGetXcmFeeBaseOptions, TGetXcmFeeBuilderOptions, TGetXcmFeeEstimateDetail, TGetXcmFeeEstimateOptions, TGetXcmFeeEstimateResult, TGetXcmFeeInternalOptions, TGetXcmFeeOptions, TGetXcmFeeResult, THopInfo, THopTransferInfo, TMantaAsset, TModuleError, TNativeTokenAsset, TNodleAsset, TOriginFeeDetails, TOtherReserveAsset, TPaymentInfo, TPolkadotXCMTransferOptions, TPolkadotXcmMethod, TProviderEntry, TReserveAsset, TResolveHopParams, TScenario, TSelfReserveAsset, TSendBaseOptions, TSendBaseOptionsWithSenderAddress, TSendInternalOptions, TSendOptions, TSender, TSerializeEthTransferOptions, TSerializedEthTransfer, TSerializedExtrinsics, TSerializedRuntimeApiQuery, TSerializedStateQuery, TSetBalanceRes, TSwapConfig, TSwapFeeEstimates, TTransactOptions, TTransactOrigin, TTransferFeeEstimates, TTransferInfo, TTransferLocalOptions, TTxFactory, TTypeAndThenCallContext, TTypeAndThenFees, TTypeAndThenOverrides, TUrl, TVerifyEdOnDestinationOptions, TVerifyEdOnDestinationOptionsBase, TWeight, TXTokensCurrencySelection, TXTokensMethod, TXTokensTransferOptions, TXcmAsset, TXcmFeeBase, TXcmFeeDetail, TXcmFeeDetailError, TXcmFeeDetailSuccess, TXcmFeeDetailWithFallback, TXcmFeeHopInfo, TXcmFeeHopResult, TXcmFeeSwapConfig, TXcmForeignAsset, TXcmPalletMethod, TXcmVersioned, TZeitgeistAsset, WithApi, WithRequiredSenderAddress };
2479
+ export { AmountTooLowError, AssetClaimBuilder, BaseAssetsPallet, BatchMode, BatchValidationError, BridgeHaltedError, Builder, DRY_RUN_CLIENT_TIMEOUT_MS, DryRunFailedError, ETH_MAINNET_CHAIN_ID, ETH_TESTNET_CHAIN_ID, EXCHANGE_CHAINS, ExtensionNotInstalledError, FeatureTemporarilyDisabledError, GeneralBuilder, InvalidAddressError, MissingChainApiError, MissingParameterError, NoXCMSupportImplementedError, NumberFormatError, OverrideConflictError, PolkadotXcmError, PolkadotXcmExecutionError, ProviderUnavailableError, RELAY_LOCATION, RoutingResolutionError, RuntimeApiUnavailableError, ScenarioNotSupportedError, TRANSACT_ORIGINS, TX_CLIENT_TIMEOUT_MS, TransferToAhNotSupported, TypeAndThenUnavailableError, UnableToComputeError, UnsupportedOperationError, ValidationError, XTokensError, abstractDecimals, addEthereumBridgeFees, addXcmVersionHeader, applyDecimalAbstraction, assertAddressIsString, assertHasId, assertSender, assertSenderAddress, assertSwapSupport, assertToIsString, blake2b256, blake2b512, calcPreviewMintAmount, claimAssets, compareAddresses, computeFeeFromDryRun, computeFeeFromDryRunPjs, computeOverridenAmount, constructTypeAndThenCall, convertSs58, createAsset, createAssetsFilter, createBaseExecuteXcm, createBeneficiaryLocXTokens, createBeneficiaryLocation, createChainClient, createClientCache, createClientPoolHelpers, createDestination, createDirectExecuteXcm, createExecuteCall, createExecuteExchangeXcm, createId, createRouterBuilder, createTransfer, createTransferOrSwap, createTransferOrSwapAll, createTxOverrideAmount, createTypeAndThenCall, createTypeThenAutoReserve, createVersionedAssets, createVersionedDestination, createX1Payload, deriveAccountId, dryRun, dryRunInternal, dryRunOrigin, encodeSs58, executeWithRouter, formatAssetIdToERC20, formatUnits, getAssetBalanceInternal, getAssetReserveChain, getBalance, getBalanceInternal, getBridgeStatus, getChain, getChainConfig, getChainLocation, getChainProviders, getChainVersion, getEthErc20Balance, getEvmPrivateKeyHex, getFailureInfo, getLocalTransferAmount, getMinTransferableAmount, getMinTransferableAmountInternal, getMoonbeamErc20Balance, getOriginXcmFee, getOriginXcmFeeEstimate, getOriginXcmFeeInternal, getParaEthTransferFees, getParaId, getRelayChainOf, getTChain, getTransferInfo, getTransferableAmount, getTransferableAmountInternal, getXcmFee, getXcmFeeEstimate, getXcmFeeInternal, getXcmFeeOnce, handleExecuteTransfer, handleSwapExecuteTransfer, handleToAhTeleport, isConfig, isSenderSigner, keyFromWs, localizeLocation, maybeOverrideAsset, maybeOverrideAssets, normalizeAmount, overrideTxAmount, padFee, padValueBy, parseUnits, pickCompatibleXcmVersion, pickRouterCompatibleXcmVersion, resolveDestChain, resolveModuleError, resolveParaId, resolveTransferParams, reverseTransformLocation, selectXcmVersion, sortAssets, throwUnsupportedCurrency, transferMoonbeamEvm, transferMoonbeamToEth, traverseXcmHops, validateAddress, validateAssetSpecifiers, validateCurrency, validateDestination, validateDestinationAddress, validateTransact, verifyEdOnDestination, wrapTxBypass };
2480
+ export type { BuildHopInfoOptions, ClientCache, HopProcessParams, HopTraversalConfig, HopTraversalResult, IPolkadotApi, IPolkadotXCMTransfer, IXTokensTransfer, OneKey, TAddress, TApiOrUrl, TApiType, TAssetClaimInternalOptions, TAssetClaimOptions, TAssetClaimOptionsBase, TBatchOptions, TBatchedSendOptions, TBifrostToken, TBridgeStatus, TBuildAllInternalRes, TBuildDestInfoOptions, TBuildInternalRes, TBuildInternalResBase, TBuilderConfig, TBuilderInternalOptions, TBuilderOptions, TBypassOptions, TCacheItem, TChainConfig, TChainConfigMap, TChainEndpoint, TChainWithApi, TClientEntry, TClientKey, TConditionalXcmFeeDetail, TConditionalXcmFeeHopInfo, TCreateBaseSwapXcmOptions, TCreateBaseTransferXcmOptions, TCreateBeneficiaryOptions, TCreateBeneficiaryXTokensOptions, TCreateEthBridgeInstructionsOptions, TCreateSwapXcmInternalOptions, TCreateSwapXcmOptions, TCreateTransferXcmOptions, TCreateTxsOptions, TDestWeight, TDestXcmFeeDetail, TDestination, TDryRunBaseOptions, TDryRunBypassOptions, TDryRunCallBaseOptions, TDryRunCallOptions, TDryRunChainFailure, TDryRunChainResult, TDryRunChainSuccess, TDryRunError, TDryRunOptions, TDryRunPreviewOptions, TDryRunResBase, TDryRunResult, TDryRunXcmBaseOptions, TDryRunXcmOptions, TEvmBuilderOptions, TEvmBuilderOptionsBase, TEvmChainFrom, TExchangeChain, TExchangeInput, TFeeType, TForeignAssetId, TForeignOrNativeAsset, TForeignOrTokenAsset, TGetAssetBalanceOptions, TGetAssetBalanceOptionsBase, TGetBalanceCommonOptions, TGetBalanceOptions, TGetBalanceOptionsBase, TGetFeeForDestChainBaseOptions, TGetFeeForDestChainOptions, TGetMinTransferableAmountOptions, TGetOriginXcmFeeBaseOptions, TGetOriginXcmFeeEstimateOptions, TGetOriginXcmFeeInternalOptions, TGetOriginXcmFeeOptions, TGetReverseTxFeeOptions, TGetTransferInfoOptions, TGetTransferInfoOptionsBase, TGetTransferableAmountOptions, TGetTransferableAmountOptionsBase, TGetXcmFeeBaseOptions, TGetXcmFeeBuilderOptions, TGetXcmFeeEstimateDetail, TGetXcmFeeEstimateOptions, TGetXcmFeeEstimateResult, TGetXcmFeeInternalOptions, TGetXcmFeeOptions, TGetXcmFeeResult, THopInfo, THopTransferInfo, TMantaAsset, TModuleError, TNativeTokenAsset, TNodleAsset, TOriginFeeDetails, TOtherReserveAsset, TPaymentInfo, TPolkadotXCMTransferOptions, TPolkadotXcmMethod, TProviderEntry, TReserveAsset, TResolveHopParams, TScenario, TSelfReserveAsset, TSendBaseOptions, TSendBaseOptionsWithSenderAddress, TSendBaseOptionsWithSwap, TSendInternalOptions, TSendOptions, TSendOptionsWithSwap, TSender, TSerializeEthTransferOptions, TSerializedEthTransfer, TSerializedExtrinsics, TSerializedRuntimeApiQuery, TSerializedStateQuery, TSetBalanceRes, TStatusChangeCallback, TSwapConfig, TSwapEvent, TSwapEventType, TSwapFeeEstimates, TSwapOptions, TTransactOptions, TTransactOrigin, TTransactionContext, TTransactionType, TTransferFeeEstimates, TTransferInfo, TTransferLocalOptions, TTxFactory, TTypeAndThenCallContext, TTypeAndThenFees, TTypeAndThenOverrides, TUrl, TVerifyEdOnDestinationOptions, TVerifyEdOnDestinationOptionsBase, TWeight, TXTokensCurrencySelection, TXTokensMethod, TXTokensTransferOptions, TXcmAsset, TXcmFeeBase, TXcmFeeDetail, TXcmFeeDetailError, TXcmFeeDetailSuccess, TXcmFeeDetailWithFallback, TXcmFeeHopInfo, TXcmFeeHopResult, TXcmFeeSwapConfig, TXcmForeignAsset, TXcmPalletMethod, TXcmVersioned, TZeitgeistAsset, WithApi, WithRequiredSenderAddress, WithRequiredSwapOptions };