@paraspell/sdk-core 10.8.3 → 10.9.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
@@ -38,7 +38,7 @@ type TPolkadotXCMTransferOptions<TApi, TRes> = {
38
38
  type TXTokensTransferOptions<TApi, TRes> = {
39
39
  api: IPolkadotApi<TApi, TRes>;
40
40
  asset: WithAmount<TAsset>;
41
- destLocation: TMultiLocation;
41
+ address: TAddress;
42
42
  scenario: TScenario;
43
43
  origin: TNodePolkadotKusama;
44
44
  destination: TDestination;
@@ -52,7 +52,6 @@ type TXTokensTransferOptions<TApi, TRes> = {
52
52
  type TXTransferTransferOptions<TApi, TRes> = {
53
53
  api: IPolkadotApi<TApi, TRes>;
54
54
  asset: WithAmount<TAsset>;
55
- scenario: TScenario;
56
55
  recipientAddress: TAddress;
57
56
  origin: TNodePolkadotKusama;
58
57
  paraIdTo?: number;
@@ -200,9 +199,14 @@ type TWeight = {
200
199
  };
201
200
  type TCreateBeneficiaryOptions<TApi, TRes> = {
202
201
  api: IPolkadotApi<TApi, TRes>;
203
- scenario: TScenario;
204
- pallet: TPallet | null;
205
- recipientAddress: TAddress;
202
+ address: TAddress;
203
+ version: Version;
204
+ };
205
+ type TCreateBeneficiaryXTokensOptions<TApi, TRes> = {
206
+ api: IPolkadotApi<TApi, TRes>;
207
+ origin: TNodeDotKsmWithRelayChains;
208
+ destination: TDestination;
209
+ address: TAddress;
206
210
  version: Version;
207
211
  paraId?: number;
208
212
  };
@@ -210,6 +214,42 @@ type TBridgeStatus = 'Normal' | 'Halted';
210
214
  type TTransferLocalOptions<TApi, TRes> = Omit<TSendInternalOptions<TApi, TRes>, 'address'> & {
211
215
  address: string;
212
216
  };
217
+ type TTransferFeeEstimates = {
218
+ originFee: bigint;
219
+ reserveFee: bigint;
220
+ };
221
+ type TCreateBaseTransferXcmOptions = {
222
+ chain: TNodeDotKsmWithRelayChains;
223
+ destChain: TNodeWithRelayChains;
224
+ asset: WithAmount<TAsset>;
225
+ feeAsset?: TAsset;
226
+ fees: TTransferFeeEstimates;
227
+ recipientAddress: string;
228
+ version: Version;
229
+ paraIdTo?: number;
230
+ };
231
+ type TCreateTransferXcmOptions<TApi, TRes> = WithApi<TCreateBaseTransferXcmOptions, TApi, TRes>;
232
+ type TCreateBaseSwapXcmOptions = {
233
+ chain?: TNodeDotKsmWithRelayChains;
234
+ exchangeChain: TNodePolkadotKusama;
235
+ destChain?: TNodeWithRelayChains;
236
+ assetFrom: WithAmount<TAsset>;
237
+ assetTo: WithAmount<TAsset>;
238
+ senderAddress: string;
239
+ recipientAddress: string;
240
+ calculateMinAmountOut: (amountIn: bigint, assetTo?: TAsset) => Promise<bigint>;
241
+ };
242
+ type TCreateSwapXcmOptions<TApi, TRes> = WithApi<TCreateBaseSwapXcmOptions, TApi, TRes>;
243
+ type TSwapFeeEstimates = {
244
+ originReserveFee: bigint;
245
+ exchangeFee: bigint;
246
+ destReserveFee: bigint;
247
+ };
248
+ type TCreateSwapXcmInternalOptions<TApi, TRes> = WithApi<TCreateBaseSwapXcmOptions, TApi, TRes> & {
249
+ version: Version;
250
+ fees: TSwapFeeEstimates;
251
+ paraIdTo?: number;
252
+ };
213
253
 
214
254
  type TAssetClaimOptionsBase = {
215
255
  node: TNodeWithRelayChains;
@@ -503,7 +543,7 @@ type TOtherReserveAsset = {
503
543
  type TSelfReserveAsset = 'SelfReserve';
504
544
  type TReserveAsset = TOtherReserveAsset | TSelfReserveAsset;
505
545
  type TBifrostToken = {
506
- Native: string;
546
+ Native: string | number;
507
547
  } | {
508
548
  VToken: string;
509
549
  } | {
@@ -666,6 +706,8 @@ declare class BridgeHaltedError extends Error {
666
706
  * Error thrown when the Dry Run fails.
667
707
  */
668
708
  declare class DryRunFailedError extends Error {
709
+ readonly reason: string;
710
+ readonly dryRunType?: 'origin' | 'destination' | 'assetHub' | 'bridgeHub';
669
711
  /**
670
712
  * Constructs a new DryRunFailedError.
671
713
  *
@@ -1488,6 +1530,12 @@ declare class Interlay<TApi, TRes> extends ParachainNode<TApi, TRes> implements
1488
1530
  transferLocalNonNativeAsset(options: TTransferLocalOptions<TApi, TRes>): TRes;
1489
1531
  }
1490
1532
 
1533
+ declare class Jamton<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1534
+ private static NATIVE_ASSET_IDS;
1535
+ constructor();
1536
+ transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
1537
+ }
1538
+
1491
1539
  declare class Karura<TApi, TRes> extends ParachainNode<TApi, TRes> implements IXTokensTransfer {
1492
1540
  constructor();
1493
1541
  transferXTokens<TApi, TRes>(input: TXTokensTransferOptions<TApi, TRes>): TRes;
@@ -1656,6 +1704,7 @@ declare const nodes: <TApi, TRes>() => {
1656
1704
  Hydration: Hydration<TApi, TRes>;
1657
1705
  Interlay: Interlay<TApi, TRes>;
1658
1706
  Heima: Heima<TApi, TRes>;
1707
+ Jamton: Jamton<TApi, TRes>;
1659
1708
  Moonbeam: Moonbeam<TApi, TRes>;
1660
1709
  AssetHubKusama: AssetHubKusama<TApi, TRes>;
1661
1710
  CoretimeKusama: CoretimeKusama<TApi, TRes>;
@@ -1768,9 +1817,6 @@ declare const assertHasLocation: (asset: TAsset) => asserts asset is TAssetWithL
1768
1817
 
1769
1818
  declare const createApiInstanceForNode: <TApi, TRes>(api: IPolkadotApi<TApi, TRes>, node: TNodeDotKsmWithRelayChains) => Promise<TApi>;
1770
1819
 
1771
- declare const createBeneficiary: <TApi, TRes>(options: TCreateBeneficiaryOptions<TApi, TRes>) => _paraspell_sdk_common.TMultiLocation;
1772
- declare const createVersionedBeneficiary: <TApi, TRes>(options: TCreateBeneficiaryOptions<TApi, TRes>) => OneKey<_paraspell_sdk_common.Version, _paraspell_sdk_common.TMultiLocation>;
1773
-
1774
1820
  declare const computeFeeFromDryRun: (dryRun: any, node: TNodeDotKsmWithRelayChains, executionFee: bigint, isFeeAsset?: boolean) => bigint;
1775
1821
 
1776
1822
  declare const computeFeeFromDryRunPjs: (dryRun: any, node: TNodeDotKsmWithRelayChains, executionFee: bigint) => bigint;
@@ -1785,10 +1831,13 @@ declare const resolveModuleError: (node: TNodeDotKsmWithRelayChains, error: TMod
1785
1831
  */
1786
1832
  declare const getNode: <TApi, TRes, T extends keyof ReturnType<typeof nodes>>(node: T) => ReturnType<typeof nodes<TApi, TRes>>[T];
1787
1833
 
1788
- declare const createBeneficiaryMultiLocation: <TApi, TRes>({ api, scenario, pallet, recipientAddress, version, paraId }: TCreateBeneficiaryOptions<TApi, TRes>) => TMultiLocation;
1834
+ declare const createBeneficiaryLocXTokens: <TApi, TRes>({ api, address: recipientAddress, origin, destination, version, paraId }: TCreateBeneficiaryXTokensOptions<TApi, TRes>) => TMultiLocation;
1835
+ declare const createBeneficiaryLocation: <TApi, TRes>({ api, address: recipientAddress, version }: TCreateBeneficiaryOptions<TApi, TRes>) => TMultiLocation;
1789
1836
 
1790
1837
  declare const createX1Payload: (version: Version, junction: TJunction) => TJunctions;
1791
1838
 
1839
+ declare const getChainLocation: (chain: TNodeWithRelayChains) => TMultiLocation;
1840
+
1792
1841
  /**
1793
1842
  * This function localizes a multiLocation by removing the `Parachain` junction
1794
1843
  * if it exists. The `parents` field is set to `0` either if a `Parachain` was removed
@@ -1802,8 +1851,41 @@ declare const localizeLocation: (node: TNodeWithRelayChains, multiLocation: TMul
1802
1851
 
1803
1852
  declare const reverseTransformMultiLocation: (multiLocation: TMultiLocation) => TMultiLocation;
1804
1853
 
1854
+ declare const createMultiAsset: (version: Version, amount: TAmount, multiLocation: TMultiLocation) => TMultiAsset;
1855
+ declare const createVersionedMultiAssets: (version: Version, amount: TAmount, multiLocation: TMultiLocation) => OneKey<Version, TMultiAsset[]>;
1856
+
1857
+ declare const maybeOverrideMultiAssets: (version: Version, amount: TAmount, multiAssets: TMultiAsset[], overriddenCurrency?: TMultiLocation | TMultiAsset[]) => TMultiAsset[];
1858
+ declare const maybeOverrideMultiAsset: (version: Version, amount: TAmount, multiAsset: TMultiAsset, overriddenCurrency?: TMultiLocation | TMultiAsset[]) => TMultiAsset;
1859
+
1860
+ declare const sortMultiAssets: (assets: TMultiAsset[]) => TMultiAsset[];
1861
+
1805
1862
  declare const resolveParaId: (paraId: number | undefined, destination: TDestination) => number | undefined;
1806
1863
 
1864
+ declare const createAssetsFilter: (asset: TMultiAsset) => {
1865
+ Wild: {
1866
+ AllOf: {
1867
+ id: _paraspell_sdk_common.TMultiLocation;
1868
+ fun: string;
1869
+ };
1870
+ };
1871
+ };
1872
+
1873
+ declare const createBaseExecuteXcm: (options: TCreateBaseTransferXcmOptions & {
1874
+ suffixXcm?: unknown[];
1875
+ }) => unknown[];
1876
+
1877
+ declare const createExecuteCall: (chain: TNodeDotKsmWithRelayChains, xcm: TXcmVersioned<any>, maxWeight: TWeight) => TSerializedApiCall;
1878
+
1879
+ declare const createExecuteExchangeXcm: <TApi, TRes>(input: TPolkadotXCMTransferOptions<TApi, TRes>, origin: TNodeDotKsmWithRelayChains, weight: TWeight, originExecutionFee: bigint, destExecutionFee: bigint) => TRes;
1880
+
1881
+ declare const createDirectExecuteXcm: <TApi, TRes>(options: TCreateTransferXcmOptions<TApi, TRes>) => OneKey<_paraspell_sdk_common.Version, unknown[]>;
1882
+
1883
+ declare const handleExecuteTransfer: <TApi, TRes>(chain: TNodePolkadotKusama, options: TPolkadotXCMTransferOptions<TApi, TRes>) => Promise<TSerializedApiCall>;
1884
+
1885
+ declare const handleSwapExecuteTransfer: <TApi, TRes>(options: TCreateSwapXcmOptions<TApi, TRes>) => Promise<TRes>;
1886
+
1887
+ declare const handleToAhTeleport: <TApi, TRes>(origin: TNodePolkadotKusama, input: TPolkadotXCMTransferOptions<TApi, TRes>, defaultTx: TRes) => Promise<TRes>;
1888
+
1807
1889
  declare const validateAddress: (address: TAddress, node: TNodeWithRelayChains, isDestination?: boolean) => void;
1808
1890
 
1809
1891
  /**
@@ -1814,5 +1896,5 @@ declare const validateAddress: (address: TAddress, node: TNodeWithRelayChains, i
1814
1896
  */
1815
1897
  declare const determineRelayChain: (node: TNodeWithRelayChains) => TRelaychain;
1816
1898
 
1817
- export { AssetClaimBuilder, BatchMode, BridgeHaltedError, Builder, DRY_RUN_CLIENT_TIMEOUT_MS, DryRunFailedError, ETHEREUM_JUNCTION, ETH_CHAIN_ID, GeneralBuilder, IncompatibleNodesError, InvalidAddressError, InvalidParameterError, NoXCMSupportImplementedError, NodeNotSupportedError, PolkadotXcmError, ScenarioNotSupportedError, TX_CLIENT_TIMEOUT_MS, TransferToAhNotSupported, UnableToComputeError, XTokensError, addXcmVersionHeader, assertAddressIsString, assertHasLocation, assertToIsString, blake2b256, blake2b512, claimAssets, computeFeeFromDryRun, computeFeeFromDryRunPjs, convertSs58, createApiInstanceForNode, createBeneficiary, createBeneficiaryMultiLocation, createVersionedBeneficiary, createX1Payload, deriveAccountId, determineRelayChain, dryRun, dryRunOrigin, encodeSs58, getAssetBalance, getAssetBalanceInternal, getBalanceForeign, getBalanceForeignInternal, getBalanceNative, getBalanceNativeInternal, getBridgeStatus, getNode, getNodeConfig, getNodeProviders, getOriginFeeDetails, getOriginFeeDetailsInternal, getOriginXcmFee, getOriginXcmFeeEstimate, getParaEthTransferFees, getParaId, getTNode, getTransferInfo, getTransferableAmount, getTransferableAmountInternal, getXcmFee, getXcmFeeEstimate, localizeLocation, resolveModuleError, resolveParaId, reverseTransformMultiLocation, send, transferMoonbeamEvm, transferMoonbeamToEth, transferRelayToPara, validateAddress, verifyEdOnDestination };
1818
- export type { IPolkadotApi, IPolkadotXCMTransfer, IXTokensTransfer, IXTransferTransfer, OneKey, TAddress, TApiOrUrl, TAssetClaimOptions, TAssetClaimOptionsBase, TBalanceResponse, TBatchOptions, TBifrostToken, TBridgeStatus, TCreateBeneficiaryOptions, TDestWeight, TDestination, TDryRunBaseOptions, TDryRunCallBaseOptions, TDryRunCallOptions, TDryRunChain, TDryRunNodeFailure, TDryRunNodeResult, TDryRunNodeResultInternal, TDryRunNodeSuccess, TDryRunOptions, TDryRunResult, TDryRunXcmBaseOptions, TDryRunXcmOptions, TEdJsonMap, TEvmBuilderOptions, TEvmBuilderOptionsBase, TEvmNodeFrom, TFeeType, TForeignAssetId, TForeignOrNativeAsset, TForeignOrTokenAsset, TGetAssetBalanceOptions, TGetAssetBalanceOptionsBase, TGetBalanceForeignOptions, TGetBalanceForeignOptionsBase, TGetBalanceNativeOptions, TGetBalanceNativeOptionsBase, TGetFeeForDestNodeBaseOptions, TGetFeeForDestNodeOptions, TGetMaxForeignTransferableAmountOptions, TGetMaxForeignTransferableAmountOptionsBase, TGetMaxNativeTransferableAmountOptions, TGetMaxNativeTransferableAmountOptionsBase, TGetOriginFeeDetailsOptions, TGetOriginFeeDetailsOptionsBase, TGetOriginXcmFeeBaseOptions, TGetOriginXcmFeeEstimateOptions, TGetOriginXcmFeeOptions, TGetReverseTxFeeOptions, TGetTransferInfoOptions, TGetTransferInfoOptionsBase, TGetTransferableAmountOptions, TGetTransferableAmountOptionsBase, TGetXcmFeeBaseOptions, TGetXcmFeeBuilderOptions, TGetXcmFeeEstimateDetail, TGetXcmFeeEstimateOptions, TGetXcmFeeEstimateResult, TGetXcmFeeOptions, TGetXcmFeeResult, THopInfo, THopTransferInfo, THubKey, TMantaAsset, TModuleError, TNativeTokenAsset, TNodeConfig, TNodeConfigMap, TNodleAsset, TOriginFeeDetails, TOtherReserveAsset, TPolkadotXCMTransferOptions, TPolkadotXcmMethod, TProviderEntry, TRelayToParaDestination, TRelayToParaOptions, TRelayToParaOverrides, TRelaychain, TReserveAsset, TScenario, TSelfReserveAsset, TSendBaseOptions, TSendBaseOptionsWithSenderAddress, TSendInternalOptions, TSendOptions, TSerializeEthTransferOptions, TSerializedApiCall, TSerializedEthTransfer, TTransferInfo, TTransferLocalOptions, TVerifyEdOnDestinationOptions, TVerifyEdOnDestinationOptionsBase, TWeight, TXTokensCurrencySelection, TXTokensMethod, TXTokensTransferOptions, TXTransferMethod, TXTransferTransferOptions, TXcmAsset, TXcmFeeBase, TXcmFeeChain, TXcmFeeDetail, TXcmFeeHopInfo, TXcmForeignAsset, TXcmPalletMethod, TXcmVersioned, TZeitgeistAsset, WithApi, WithRequiredSenderAddress };
1899
+ export { AssetClaimBuilder, BatchMode, BridgeHaltedError, Builder, DRY_RUN_CLIENT_TIMEOUT_MS, DryRunFailedError, ETHEREUM_JUNCTION, ETH_CHAIN_ID, GeneralBuilder, IncompatibleNodesError, InvalidAddressError, InvalidParameterError, NoXCMSupportImplementedError, NodeNotSupportedError, PolkadotXcmError, ScenarioNotSupportedError, TX_CLIENT_TIMEOUT_MS, TransferToAhNotSupported, UnableToComputeError, XTokensError, addXcmVersionHeader, assertAddressIsString, assertHasLocation, assertToIsString, blake2b256, blake2b512, claimAssets, computeFeeFromDryRun, computeFeeFromDryRunPjs, convertSs58, createApiInstanceForNode, createAssetsFilter, createBaseExecuteXcm, createBeneficiaryLocXTokens, createBeneficiaryLocation, createDirectExecuteXcm, createExecuteCall, createExecuteExchangeXcm, createMultiAsset, createVersionedMultiAssets, createX1Payload, deriveAccountId, determineRelayChain, dryRun, dryRunOrigin, encodeSs58, getAssetBalance, getAssetBalanceInternal, getBalanceForeign, getBalanceForeignInternal, getBalanceNative, getBalanceNativeInternal, getBridgeStatus, getChainLocation, getNode, getNodeConfig, getNodeProviders, getOriginFeeDetails, getOriginFeeDetailsInternal, getOriginXcmFee, getOriginXcmFeeEstimate, getParaEthTransferFees, getParaId, getTNode, getTransferInfo, getTransferableAmount, getTransferableAmountInternal, getXcmFee, getXcmFeeEstimate, handleExecuteTransfer, handleSwapExecuteTransfer, handleToAhTeleport, localizeLocation, maybeOverrideMultiAsset, maybeOverrideMultiAssets, resolveModuleError, resolveParaId, reverseTransformMultiLocation, send, sortMultiAssets, transferMoonbeamEvm, transferMoonbeamToEth, transferRelayToPara, validateAddress, verifyEdOnDestination };
1900
+ export type { IPolkadotApi, IPolkadotXCMTransfer, IXTokensTransfer, IXTransferTransfer, OneKey, TAddress, TApiOrUrl, TAssetClaimOptions, TAssetClaimOptionsBase, TBalanceResponse, TBatchOptions, TBifrostToken, TBridgeStatus, TCreateBaseSwapXcmOptions, TCreateBaseTransferXcmOptions, TCreateBeneficiaryOptions, TCreateBeneficiaryXTokensOptions, TCreateSwapXcmInternalOptions, TCreateSwapXcmOptions, TCreateTransferXcmOptions, TDestWeight, TDestination, TDryRunBaseOptions, TDryRunCallBaseOptions, TDryRunCallOptions, TDryRunChain, TDryRunNodeFailure, TDryRunNodeResult, TDryRunNodeResultInternal, TDryRunNodeSuccess, TDryRunOptions, TDryRunResult, TDryRunXcmBaseOptions, TDryRunXcmOptions, TEdJsonMap, TEvmBuilderOptions, TEvmBuilderOptionsBase, TEvmNodeFrom, TFeeType, TForeignAssetId, TForeignOrNativeAsset, TForeignOrTokenAsset, TGetAssetBalanceOptions, TGetAssetBalanceOptionsBase, TGetBalanceForeignOptions, TGetBalanceForeignOptionsBase, TGetBalanceNativeOptions, TGetBalanceNativeOptionsBase, TGetFeeForDestNodeBaseOptions, TGetFeeForDestNodeOptions, TGetMaxForeignTransferableAmountOptions, TGetMaxForeignTransferableAmountOptionsBase, TGetMaxNativeTransferableAmountOptions, TGetMaxNativeTransferableAmountOptionsBase, TGetOriginFeeDetailsOptions, TGetOriginFeeDetailsOptionsBase, TGetOriginXcmFeeBaseOptions, TGetOriginXcmFeeEstimateOptions, TGetOriginXcmFeeOptions, TGetReverseTxFeeOptions, TGetTransferInfoOptions, TGetTransferInfoOptionsBase, TGetTransferableAmountOptions, TGetTransferableAmountOptionsBase, TGetXcmFeeBaseOptions, TGetXcmFeeBuilderOptions, TGetXcmFeeEstimateDetail, TGetXcmFeeEstimateOptions, TGetXcmFeeEstimateResult, TGetXcmFeeOptions, TGetXcmFeeResult, THopInfo, THopTransferInfo, THubKey, TMantaAsset, TModuleError, TNativeTokenAsset, TNodeConfig, TNodeConfigMap, TNodleAsset, TOriginFeeDetails, TOtherReserveAsset, TPolkadotXCMTransferOptions, TPolkadotXcmMethod, TProviderEntry, TRelayToParaDestination, TRelayToParaOptions, TRelayToParaOverrides, TRelaychain, TReserveAsset, TScenario, TSelfReserveAsset, TSendBaseOptions, TSendBaseOptionsWithSenderAddress, TSendInternalOptions, TSendOptions, TSerializeEthTransferOptions, TSerializedApiCall, TSerializedEthTransfer, TSwapFeeEstimates, TTransferFeeEstimates, TTransferInfo, TTransferLocalOptions, TVerifyEdOnDestinationOptions, TVerifyEdOnDestinationOptionsBase, TWeight, TXTokensCurrencySelection, TXTokensMethod, TXTokensTransferOptions, TXTransferMethod, TXTransferTransferOptions, TXcmAsset, TXcmFeeBase, TXcmFeeChain, TXcmFeeDetail, TXcmFeeHopInfo, TXcmForeignAsset, TXcmPalletMethod, TXcmVersioned, TZeitgeistAsset, WithApi, WithRequiredSenderAddress };