@flashnet/sdk 0.3.7 → 0.3.9
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/cjs/index.d.ts +2 -2
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +0 -1
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/src/api/typed-endpoints.d.ts.map +1 -1
- package/dist/cjs/src/api/typed-endpoints.js.map +1 -1
- package/dist/cjs/src/client/FlashnetClient.d.ts +61 -12
- package/dist/cjs/src/client/FlashnetClient.d.ts.map +1 -1
- package/dist/cjs/src/client/FlashnetClient.js +153 -60
- package/dist/cjs/src/client/FlashnetClient.js.map +1 -1
- package/dist/cjs/src/config/index.d.ts +2 -13
- package/dist/cjs/src/config/index.d.ts.map +1 -1
- package/dist/cjs/src/config/index.js +17 -30
- package/dist/cjs/src/config/index.js.map +1 -1
- package/dist/cjs/src/types/index.d.ts.map +1 -1
- package/dist/cjs/src/types/index.js +16 -0
- package/dist/cjs/src/types/index.js.map +1 -1
- package/dist/cjs/src/utils/intents.d.ts.map +1 -1
- package/dist/cjs/src/utils/intents.js.map +1 -1
- package/dist/cjs/src/utils/spark-address.d.ts.map +1 -1
- package/dist/cjs/src/utils/spark-address.js.map +1 -1
- package/dist/cjs/src/utils/tokenAddress.d.ts.map +1 -1
- package/dist/cjs/src/utils/tokenAddress.js +1 -1
- package/dist/cjs/src/utils/tokenAddress.js.map +1 -1
- package/dist/esm/index.d.ts +2 -2
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +1 -1
- package/dist/esm/src/api/typed-endpoints.d.ts.map +1 -1
- package/dist/esm/src/api/typed-endpoints.js.map +1 -1
- package/dist/esm/src/client/FlashnetClient.d.ts +61 -12
- package/dist/esm/src/client/FlashnetClient.d.ts.map +1 -1
- package/dist/esm/src/client/FlashnetClient.js +157 -64
- package/dist/esm/src/client/FlashnetClient.js.map +1 -1
- package/dist/esm/src/config/index.d.ts +2 -13
- package/dist/esm/src/config/index.d.ts.map +1 -1
- package/dist/esm/src/config/index.js +18 -30
- package/dist/esm/src/config/index.js.map +1 -1
- package/dist/esm/src/types/index.d.ts.map +1 -1
- package/dist/esm/src/types/index.js +14 -1
- package/dist/esm/src/types/index.js.map +1 -1
- package/dist/esm/src/utils/intents.d.ts.map +1 -1
- package/dist/esm/src/utils/intents.js.map +1 -1
- package/dist/esm/src/utils/spark-address.d.ts.map +1 -1
- package/dist/esm/src/utils/spark-address.js.map +1 -1
- package/dist/esm/src/utils/tokenAddress.d.ts.map +1 -1
- package/dist/esm/src/utils/tokenAddress.js +1 -1
- package/dist/esm/src/utils/tokenAddress.js.map +1 -1
- package/package.json +1 -1
package/dist/esm/index.js
CHANGED
|
@@ -2,7 +2,7 @@ export { ApiClient } from './src/api/client.js';
|
|
|
2
2
|
export { TypedAmmApi, isApiError, isFlashnetError } from './src/api/typed-endpoints.js';
|
|
3
3
|
export { ValidationError, commonValidationRules, constantProductPoolValidationRules, validateBps, validateNamespace, validatePositiveAmount, validatePublicKey, validateRequest, validateSignature } from './src/api/validation.js';
|
|
4
4
|
export { FlashnetClient } from './src/client/FlashnetClient.js';
|
|
5
|
-
export { BTC_ASSET_PUBKEY, BTC_DECIMALS, CLIENT_NETWORK_CONFIGS, DEFAULT_HOST_NAMESPACE, DEFAULT_SLIPPAGE_BPS, NETWORK_CONFIGS, getClientEnvironmentName, getClientNetworkConfig, getDefaultSparkNetworkForEnvironment, getNetworkConfig, resolveClientNetworkConfig, validateClientNetworkConfig
|
|
5
|
+
export { BTC_ASSET_PUBKEY, BTC_DECIMALS, CLIENT_NETWORK_CONFIGS, DEFAULT_HOST_NAMESPACE, DEFAULT_SLIPPAGE_BPS, NETWORK_CONFIGS, getClientEnvironmentName, getClientNetworkConfig, getDefaultSparkNetworkForEnvironment, getNetworkConfig, resolveClientNetworkConfig, validateClientNetworkConfig } from './src/config/index.js';
|
|
6
6
|
export { fromSmallestUnit, generateNonce, toSmallestUnit } from './src/utils/index.js';
|
|
7
7
|
export { AuthManager } from './src/utils/auth.js';
|
|
8
8
|
export { generateAddLiquidityIntentMessage, generateConstantProductPoolInitializationIntentMessage, generatePoolConfirmInitialDepositIntentMessage, generatePoolInitializationIntentMessage, generatePoolSwapIntentMessage, generateRegisterHostIntentMessage, generateRemoveLiquidityIntentMessage, generateWithdrawHostFeesIntentMessage } from './src/utils/intents.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typed-endpoints.d.ts","sourceRoot":"","sources":["../../../../src/api/typed-endpoints.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,KAAK,MAAM,UAAU,CAAC;AACvC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C;;GAEG;AACH,qBAAa,WAAW;IACV,OAAO,CAAC,MAAM;gBAAN,MAAM,EAAE,SAAS;IAIrC;;;OAGG;IACG,YAAY,CAChB,OAAO,EAAE,KAAK,CAAC,gBAAgB,GAC9B,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC;IAOnC;;;OAGG;IACG,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,aAAa,GAAG,OAAO,CAAC,KAAK,CAAC,cAAc,CAAC;IASzE;;;;OAIG;IACG,YAAY,CAChB,OAAO,EAAE,KAAK,CAAC,mBAAmB,GACjC,OAAO,CAAC,KAAK,CAAC,oBAAoB,CAAC;IAOtC;;;OAGG;IACG,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC;IAIhE;;;;OAIG;IACG,gBAAgB,CACpB,OAAO,EAAE,KAAK,CAAC,uBAAuB,GACrC,OAAO,CAAC,KAAK,CAAC,wBAAwB,CAAC;IAO1C;;;;OAIG;IACG,eAAe,CACnB,OAAO,EAAE,KAAK,CAAC,sBAAsB,GACpC,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC;IAOzC;;;;OAIG;IACG,WAAW,CACf,OAAO,EAAE,KAAK,CAAC,kBAAkB,GAChC,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC;IASrC;;;;OAIG;IACG,yBAAyB,CAC7B,OAAO,EAAE,KAAK,CAAC,gCAAgC,GAC9C,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC;IAOpC;;;;OAIG;IACG,qBAAqB,CACzB,OAAO,EAAE,KAAK,CAAC,4BAA4B,GAC1C,OAAO,CAAC,KAAK,CAAC,kBAAkB,CAAC;IAOpC;;;;OAIG;IACG,qBAAqB,CACzB,OAAO,EAAE,KAAK,CAAC,4BAA4B,GAC1C,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC;IAOxC;;;OAGG;IACG,SAAS,CACb,KAAK,CAAC,EAAE,KAAK,CAAC,cAAc,GAC3B,OAAO,CAAC,KAAK,CAAC,iBAAiB,CAAC;IAMnC;;;OAGG;IACG,OAAO,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC;IAIjE;;;;OAIG;IACG,aAAa,CACjB,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE,MAAM,GACxB,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC;IAM3C;;;;OAIG;IACG,iBAAiB,IAAI,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"typed-endpoints.d.ts","sourceRoot":"","sources":["../../../../src/api/typed-endpoints.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typed-endpoints.js","sources":["../../../../../../src/api/typed-endpoints.ts"],"sourcesContent":[null],"names":[],"mappings":"AAGA;;AAEG;MACU,WAAW,CAAA;AACF,IAAA,MAAA;AAApB,IAAA,WAAA,CAAoB,MAAiB,EAAA;QAAjB,IAAA,CAAA,MAAM,GAAN,MAAM;IAAc;;AAIxC;;;AAGG;IACH,MAAM,YAAY,CAChB,OAA+B,EAAA;QAE/B,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,oBAAoB,EACpB,OAAO,CACR;IACH;AAEA;;;AAGG;IACH,MAAM,MAAM,CAAC,OAA4B,EAAA;QACvC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,iBAAiB,EACjB,OAAO,CACR;IACH;;AAIA;;;;AAIG;IACH,MAAM,YAAY,CAChB,OAAkC,EAAA;QAElC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,oBAAoB,EACpB,OAAO,CACR;IACH;AAEA;;;AAGG;IACH,MAAM,OAAO,CAAC,SAAiB,EAAA;QAC7B,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAwB,CAAA,UAAA,EAAa,SAAS,CAAA,CAAE,CAAC;IAC5E;AAEA;;;;AAIG;IACH,MAAM,gBAAgB,CACpB,OAAsC,EAAA;QAEtC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,yBAAyB,EACzB,OAAO,CACR;IACH;AAEA;;;;AAIG;IACH,MAAM,eAAe,CACnB,OAAqC,EAAA;QAErC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,qBAAqB,EACrB,OAAO,CACR;IACH;AAEA;;;;AAIG;IACH,MAAM,WAAW,CACf,OAAiC,EAAA;QAEjC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,qBAAqB,EACrB,OAAO,CACR;IACH;;AAIA;;;;AAIG;IACH,MAAM,yBAAyB,CAC7B,OAA+C,EAAA;QAE/C,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,4BAA4B,EAC5B,OAAO,CACR;IACH;AAEA;;;;AAIG;IACH,MAAM,qBAAqB,CACzB,OAA2C,EAAA;QAE3C,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,wBAAwB,EACxB,OAAO,CACR;IACH;AAEA;;;;AAIG;IACH,MAAM,qBAAqB,CACzB,OAA2C,EAAA;QAE3C,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CACxB,gDAAgD,EAChD,OAAO,CACR;IACH;AAEA;;;AAGG;IACH,MAAM,SAAS,CACb,KAA4B,EAAA;AAE5B,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAA0B,WAAW,EAAE;AAC9D,YAAA,MAAM,EAAE,KAAY;AACrB,SAAA,CAAC;IACJ;AAEA;;;AAGG;IACH,MAAM,OAAO,CAAC,MAAc,EAAA;QAC1B,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAA4B,CAAA,UAAA,EAAa,MAAM,CAAA,CAAE,CAAC;IAC7E;AAEA;;;;AAIG;AACH,IAAA,MAAM,aAAa,CACjB,MAAc,EACd,iBAAyB,EAAA;AAEzB,QAAA,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CACvB,CAAA,UAAA,EAAa,MAAM,CAAA,IAAA,EAAO,iBAAiB,CAAA,CAAE,CAC9C;IACH;AAEA;;;;AAIG;AACH,IAAA,MAAM,iBAAiB,GAAA;QACrB,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"typed-endpoints.js","sources":["../../../../../../src/api/typed-endpoints.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { IssuerSparkWallet } from "@buildonspark/issuer-sdk";
|
|
2
2
|
import type { SparkWallet } from "@buildonspark/spark-sdk";
|
|
3
|
-
import { type AddLiquidityResponse, type AllLpPositionsResponse, type ConfirmDepositResponse, type CreatePoolResponse, type ExecuteRouteSwapResponse, type GetHostFeesResponse, type GetHostResponse, type GetIntegratorFeesResponse, type GetPoolHostFeesResponse, type ListGlobalSwapsQuery, type ListGlobalSwapsResponse, type ListPoolSwapsQuery, type ListPoolSwapsResponse, type ListPoolsQuery, type ListPoolsResponse, type ListUserSwapsQuery, type ListUserSwapsResponse, type LpPositionDetailsResponse, type NetworkType, type PoolDetailsResponse, type RegisterHostResponse, type RemoveLiquidityResponse, type SettlementPingResponse, type SimulateAddLiquidityRequest, type SimulateAddLiquidityResponse, type SimulateRemoveLiquidityRequest, type SimulateRemoveLiquidityResponse, type SimulateRouteSwapRequest, type SimulateRouteSwapResponse, type SimulateSwapRequest, type SimulateSwapResponse, type SwapResponse, type WithdrawHostFeesResponse, type WithdrawIntegratorFeesResponse } from "../types";
|
|
4
|
-
import { type
|
|
3
|
+
import { type AddLiquidityResponse, type AllLpPositionsResponse, type ClientEnvironment, type ConfirmDepositResponse, type CreatePoolResponse, type ExecuteRouteSwapResponse, type FlashnetClientConfig, type FlashnetClientCustomConfig, type FlashnetClientEnvironmentConfig, type FlashnetClientLegacyConfig, type GetHostFeesResponse, type GetHostResponse, type GetIntegratorFeesResponse, type GetPoolHostFeesResponse, type ListGlobalSwapsQuery, type ListGlobalSwapsResponse, type ListPoolSwapsQuery, type ListPoolSwapsResponse, type ListPoolsQuery, type ListPoolsResponse, type ListUserSwapsQuery, type ListUserSwapsResponse, type LpPositionDetailsResponse, type NetworkType, type PoolDetailsResponse, type RegisterHostResponse, type RemoveLiquidityResponse, type SettlementPingResponse, type SimulateAddLiquidityRequest, type SimulateAddLiquidityResponse, type SimulateRemoveLiquidityRequest, type SimulateRemoveLiquidityResponse, type SimulateRouteSwapRequest, type SimulateRouteSwapResponse, type SimulateSwapRequest, type SimulateSwapResponse, type SparkNetworkType, type SwapResponse, type WithdrawHostFeesResponse, type WithdrawIntegratorFeesResponse } from "../types";
|
|
4
|
+
import { type SparkHumanReadableTokenIdentifier } from "../utils/tokenAddress";
|
|
5
5
|
export interface TokenBalance {
|
|
6
6
|
balance: bigint;
|
|
7
7
|
tokenInfo?: {
|
|
@@ -17,6 +17,9 @@ export interface WalletBalance {
|
|
|
17
17
|
balance: bigint;
|
|
18
18
|
tokenBalances: Map<string, TokenBalance>;
|
|
19
19
|
}
|
|
20
|
+
/**
|
|
21
|
+
* @deprecated Use FlashnetClientConfig instead
|
|
22
|
+
*/
|
|
20
23
|
export interface FlashnetClientOptions {
|
|
21
24
|
autoAuthenticate?: boolean;
|
|
22
25
|
}
|
|
@@ -35,7 +38,8 @@ export declare class FlashnetClient {
|
|
|
35
38
|
private apiClient;
|
|
36
39
|
private typedApi;
|
|
37
40
|
private authManager;
|
|
38
|
-
private
|
|
41
|
+
private sparkNetwork;
|
|
42
|
+
private clientEnvironment;
|
|
39
43
|
private publicKey;
|
|
40
44
|
private sparkAddress;
|
|
41
45
|
private isAuthenticated;
|
|
@@ -44,6 +48,15 @@ export declare class FlashnetClient {
|
|
|
44
48
|
*/
|
|
45
49
|
get wallet(): IssuerSparkWallet | SparkWallet;
|
|
46
50
|
/**
|
|
51
|
+
* Get the Spark network type (for blockchain operations)
|
|
52
|
+
*/
|
|
53
|
+
get sparkNetworkType(): SparkNetworkType;
|
|
54
|
+
/**
|
|
55
|
+
* Get the client environment (for API configuration)
|
|
56
|
+
*/
|
|
57
|
+
get clientEnvironmentType(): ClientEnvironment;
|
|
58
|
+
/**
|
|
59
|
+
* @deprecated Use sparkNetworkType instead
|
|
47
60
|
* Get the network type
|
|
48
61
|
*/
|
|
49
62
|
get networkType(): NetworkType;
|
|
@@ -56,11 +69,30 @@ export declare class FlashnetClient {
|
|
|
56
69
|
*/
|
|
57
70
|
get address(): string;
|
|
58
71
|
/**
|
|
59
|
-
* Create a new FlashnetClient instance
|
|
72
|
+
* Create a new FlashnetClient instance with new configuration system
|
|
73
|
+
* @param wallet - The SparkWallet to use
|
|
74
|
+
* @param config - Client configuration with separate Spark network and client config
|
|
75
|
+
*/
|
|
76
|
+
constructor(wallet: IssuerSparkWallet | SparkWallet, config: FlashnetClientConfig);
|
|
77
|
+
/**
|
|
78
|
+
* Create a new FlashnetClient instance with custom configuration
|
|
79
|
+
* @param wallet - The SparkWallet to use
|
|
80
|
+
* @param config - Custom configuration with specific endpoints
|
|
81
|
+
*/
|
|
82
|
+
constructor(wallet: IssuerSparkWallet | SparkWallet, config: FlashnetClientCustomConfig);
|
|
83
|
+
/**
|
|
84
|
+
* Create a new FlashnetClient instance with environment configuration
|
|
85
|
+
* @param wallet - The SparkWallet to use
|
|
86
|
+
* @param config - Environment-based configuration
|
|
87
|
+
*/
|
|
88
|
+
constructor(wallet: IssuerSparkWallet | SparkWallet, config: FlashnetClientEnvironmentConfig);
|
|
89
|
+
/**
|
|
90
|
+
* @deprecated Use the new constructor with FlashnetClientConfig instead
|
|
91
|
+
* Create a new FlashnetClient instance with legacy configuration
|
|
60
92
|
* @param wallet - The SparkWallet to use
|
|
61
|
-
* @param options -
|
|
93
|
+
* @param options - Legacy client options
|
|
62
94
|
*/
|
|
63
|
-
constructor(wallet: IssuerSparkWallet | SparkWallet,
|
|
95
|
+
constructor(wallet: IssuerSparkWallet | SparkWallet, options?: FlashnetClientLegacyConfig);
|
|
64
96
|
/**
|
|
65
97
|
* Initialize the client by deducing network and authenticating
|
|
66
98
|
* This is called automatically on first use if not called manually
|
|
@@ -73,7 +105,7 @@ export declare class FlashnetClient {
|
|
|
73
105
|
/**
|
|
74
106
|
* Ensure a token identifier is in human-readable (Bech32m) form expected by the Spark SDK.
|
|
75
107
|
* If the identifier is already human-readable or it is the BTC constant, it is returned unchanged.
|
|
76
|
-
* Otherwise, it is encoded from the raw hex form using the client network.
|
|
108
|
+
* Otherwise, it is encoded from the raw hex form using the client's Spark network.
|
|
77
109
|
*/
|
|
78
110
|
private toHumanReadableTokenIdentifier;
|
|
79
111
|
/**
|
|
@@ -103,8 +135,8 @@ export declare class FlashnetClient {
|
|
|
103
135
|
*/
|
|
104
136
|
getLpPosition(poolId: string, providerPublicKey?: string): Promise<LpPositionDetailsResponse>;
|
|
105
137
|
/**
|
|
106
|
-
|
|
107
|
-
|
|
138
|
+
* Get LP position details for a provider in a pool
|
|
139
|
+
*/
|
|
108
140
|
getAllLpPositions(): Promise<AllLpPositionsResponse>;
|
|
109
141
|
/**
|
|
110
142
|
* Create a constant product pool
|
|
@@ -257,17 +289,34 @@ export declare class FlashnetClient {
|
|
|
257
289
|
*/
|
|
258
290
|
getUserSwaps(userPublicKey?: string, query?: ListUserSwapsQuery): Promise<ListUserSwapsResponse>;
|
|
259
291
|
/**
|
|
260
|
-
* Encode a token identifier into a human-readable token address using the client's network
|
|
292
|
+
* Encode a token identifier into a human-readable token address using the client's Spark network
|
|
261
293
|
* @param tokenIdentifier - Token identifier as hex string or Uint8Array
|
|
262
294
|
* @returns Human-readable token address
|
|
263
295
|
*/
|
|
264
|
-
encodeTokenAddress(tokenIdentifier: string | Uint8Array):
|
|
296
|
+
encodeTokenAddress(tokenIdentifier: string | Uint8Array): SparkHumanReadableTokenIdentifier;
|
|
265
297
|
/**
|
|
266
298
|
* Decode a human-readable token address back to its identifier
|
|
267
299
|
* @param address - Human-readable token address
|
|
300
|
+
* @returns Object containing the token identifier (as hex string) and Spark network
|
|
301
|
+
*/
|
|
302
|
+
decodeTokenAddress(address: SparkHumanReadableTokenIdentifier): {
|
|
303
|
+
tokenIdentifier: string;
|
|
304
|
+
network: SparkNetworkType;
|
|
305
|
+
};
|
|
306
|
+
/**
|
|
307
|
+
* @deprecated Use encodeTokenAddress instead - this method uses legacy types
|
|
308
|
+
* Encode a token identifier into a human-readable token address using legacy types
|
|
309
|
+
* @param tokenIdentifier - Token identifier as hex string or Uint8Array
|
|
310
|
+
* @returns Human-readable token address
|
|
311
|
+
*/
|
|
312
|
+
encodeLegacyTokenAddress(tokenIdentifier: string | Uint8Array): SparkHumanReadableTokenIdentifier;
|
|
313
|
+
/**
|
|
314
|
+
* @deprecated Use decodeTokenAddress instead - this method uses legacy types
|
|
315
|
+
* Decode a human-readable token address back to its identifier using legacy types
|
|
316
|
+
* @param address - Human-readable token address
|
|
268
317
|
* @returns Object containing the token identifier (as hex string) and network
|
|
269
318
|
*/
|
|
270
|
-
|
|
319
|
+
decodeLegacyTokenAddress(address: SparkHumanReadableTokenIdentifier): {
|
|
271
320
|
tokenIdentifier: string;
|
|
272
321
|
network: NetworkType;
|
|
273
322
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlashnetClient.d.ts","sourceRoot":"","sources":["../../../../src/client/FlashnetClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"FlashnetClient.d.ts","sourceRoot":"","sources":["../../../../src/client/FlashnetClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import { ApiClient } from '../api/client.js';
|
|
2
2
|
import { TypedAmmApi } from '../api/typed-endpoints.js';
|
|
3
|
-
import {
|
|
4
|
-
import { Network } from '../types/index.js';
|
|
3
|
+
import { getClientEnvironmentName, resolveClientNetworkConfig, getClientNetworkConfig, BTC_ASSET_PUBKEY } from '../config/index.js';
|
|
4
|
+
import { getSparkNetworkFromLegacy, getClientEnvironmentFromLegacy, Network } from '../types/index.js';
|
|
5
5
|
import { generateNonce } from '../utils/index.js';
|
|
6
6
|
import { AuthManager } from '../utils/auth.js';
|
|
7
7
|
import { generateConstantProductPoolInitializationIntentMessage, generatePoolInitializationIntentMessage, generatePoolConfirmInitialDepositIntentMessage, generatePoolSwapIntentMessage, generateRouteSwapIntentMessage, generateAddLiquidityIntentMessage, generateRemoveLiquidityIntentMessage, generateRegisterHostIntentMessage, generateWithdrawHostFeesIntentMessage, generateWithdrawIntegratorFeesIntentMessage } from '../utils/intents.js';
|
|
8
8
|
import { createWalletSigner } from '../utils/signer.js';
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
9
|
+
import { getSparkNetworkFromAddress, encodeSparkAddressNew } from '../utils/spark-address.js';
|
|
10
|
+
import { encodeSparkHumanReadableTokenIdentifier, decodeSparkHumanReadableTokenIdentifier } from '../utils/tokenAddress.js';
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* FlashnetClient - A comprehensive client for interacting with Flashnet AMM
|
|
@@ -24,7 +24,8 @@ class FlashnetClient {
|
|
|
24
24
|
apiClient;
|
|
25
25
|
typedApi;
|
|
26
26
|
authManager;
|
|
27
|
-
|
|
27
|
+
sparkNetwork;
|
|
28
|
+
clientEnvironment;
|
|
28
29
|
publicKey = "";
|
|
29
30
|
sparkAddress = "";
|
|
30
31
|
isAuthenticated = false;
|
|
@@ -35,10 +36,27 @@ class FlashnetClient {
|
|
|
35
36
|
return this._wallet;
|
|
36
37
|
}
|
|
37
38
|
/**
|
|
39
|
+
* Get the Spark network type (for blockchain operations)
|
|
40
|
+
*/
|
|
41
|
+
get sparkNetworkType() {
|
|
42
|
+
return this.sparkNetwork;
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Get the client environment (for API configuration)
|
|
46
|
+
*/
|
|
47
|
+
get clientEnvironmentType() {
|
|
48
|
+
return this.clientEnvironment;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* @deprecated Use sparkNetworkType instead
|
|
38
52
|
* Get the network type
|
|
39
53
|
*/
|
|
40
54
|
get networkType() {
|
|
41
|
-
|
|
55
|
+
// Map Spark network back to legacy network type
|
|
56
|
+
// This is for backward compatibility
|
|
57
|
+
return this.sparkNetwork === "REGTEST" && this.clientEnvironment === "local"
|
|
58
|
+
? "LOCAL"
|
|
59
|
+
: this.sparkNetwork;
|
|
42
60
|
}
|
|
43
61
|
/**
|
|
44
62
|
* Get the wallet's public key
|
|
@@ -52,24 +70,83 @@ class FlashnetClient {
|
|
|
52
70
|
get address() {
|
|
53
71
|
return this.sparkAddress;
|
|
54
72
|
}
|
|
55
|
-
|
|
56
|
-
* Create a new FlashnetClient instance
|
|
57
|
-
* @param wallet - The SparkWallet to use
|
|
58
|
-
* @param options - Client options
|
|
59
|
-
*/
|
|
60
|
-
constructor(wallet, _options = {}) {
|
|
73
|
+
constructor(wallet, configOrOptions) {
|
|
61
74
|
this._wallet = wallet;
|
|
62
|
-
//
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
75
|
+
// Determine configuration type and extract values
|
|
76
|
+
const isLegacyConfig = !configOrOptions ||
|
|
77
|
+
"network" in configOrOptions ||
|
|
78
|
+
!("sparkNetworkType" in configOrOptions);
|
|
79
|
+
if (isLegacyConfig) {
|
|
80
|
+
// Legacy configuration system - derive from wallet or options
|
|
81
|
+
const legacyConfig = configOrOptions;
|
|
82
|
+
if (legacyConfig?.network) {
|
|
83
|
+
// Use provided legacy network
|
|
84
|
+
this.sparkNetwork = getSparkNetworkFromLegacy(legacyConfig.network);
|
|
85
|
+
this.clientEnvironment = getClientEnvironmentFromLegacy(legacyConfig.network);
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
// Auto-detect from wallet (existing behavior)
|
|
89
|
+
// @ts-expect-error - wallet.config is protected
|
|
90
|
+
const networkEnum = wallet.config.getNetwork();
|
|
91
|
+
const networkName = Network[networkEnum];
|
|
92
|
+
const detectedNetwork = networkName === "MAINNET" ? "MAINNET" : "REGTEST";
|
|
93
|
+
this.sparkNetwork = getSparkNetworkFromLegacy(detectedNetwork);
|
|
94
|
+
this.clientEnvironment =
|
|
95
|
+
getClientEnvironmentFromLegacy(detectedNetwork);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
// New configuration system
|
|
100
|
+
const config = configOrOptions;
|
|
101
|
+
this.sparkNetwork = config.sparkNetworkType;
|
|
102
|
+
// Determine client configuration based on the specific config type
|
|
103
|
+
let clientConfig;
|
|
104
|
+
if ("clientConfig" in config) {
|
|
105
|
+
// FlashnetClientConfig - can be either environment or custom config
|
|
106
|
+
clientConfig = config.clientConfig;
|
|
107
|
+
}
|
|
108
|
+
else if ("clientNetworkConfig" in config) {
|
|
109
|
+
// FlashnetClientCustomConfig - custom configuration
|
|
110
|
+
clientConfig = config.clientNetworkConfig;
|
|
111
|
+
}
|
|
112
|
+
else if ("clientEnvironment" in config) {
|
|
113
|
+
// FlashnetClientEnvironmentConfig - predefined environment
|
|
114
|
+
clientConfig = config.clientEnvironment;
|
|
115
|
+
}
|
|
116
|
+
else {
|
|
117
|
+
throw new Error("Invalid configuration: must specify clientConfig, clientNetworkConfig, or clientEnvironment");
|
|
118
|
+
}
|
|
119
|
+
// Resolve the client environment name for internal tracking
|
|
120
|
+
const environmentName = getClientEnvironmentName(clientConfig);
|
|
121
|
+
this.clientEnvironment =
|
|
122
|
+
environmentName === "custom"
|
|
123
|
+
? "local"
|
|
124
|
+
: environmentName;
|
|
125
|
+
}
|
|
126
|
+
// Initialize API client with resolved client configuration
|
|
127
|
+
let resolvedClientConfig;
|
|
128
|
+
if (!isLegacyConfig) {
|
|
129
|
+
const config = configOrOptions;
|
|
130
|
+
let clientConfigParam;
|
|
131
|
+
if ("clientConfig" in config) {
|
|
132
|
+
clientConfigParam = config.clientConfig;
|
|
133
|
+
}
|
|
134
|
+
else if ("clientNetworkConfig" in config) {
|
|
135
|
+
clientConfigParam = config.clientNetworkConfig;
|
|
136
|
+
}
|
|
137
|
+
else if ("clientEnvironment" in config) {
|
|
138
|
+
clientConfigParam = config.clientEnvironment;
|
|
139
|
+
}
|
|
140
|
+
else {
|
|
141
|
+
throw new Error("Invalid configuration");
|
|
142
|
+
}
|
|
143
|
+
resolvedClientConfig = resolveClientNetworkConfig(clientConfigParam);
|
|
144
|
+
}
|
|
145
|
+
else {
|
|
146
|
+
// Use legacy resolution
|
|
147
|
+
resolvedClientConfig = getClientNetworkConfig(this.clientEnvironment);
|
|
70
148
|
}
|
|
71
|
-
|
|
72
|
-
this.apiClient = new ApiClient(config);
|
|
149
|
+
this.apiClient = new ApiClient(resolvedClientConfig);
|
|
73
150
|
this.typedApi = new TypedAmmApi(this.apiClient);
|
|
74
151
|
this.authManager = new AuthManager(this.apiClient, "", wallet);
|
|
75
152
|
}
|
|
@@ -84,20 +161,17 @@ class FlashnetClient {
|
|
|
84
161
|
// Get wallet details
|
|
85
162
|
this.publicKey = await this._wallet.getIdentityPublicKey();
|
|
86
163
|
this.sparkAddress = await this._wallet.getSparkAddress();
|
|
87
|
-
// Deduce network from spark address
|
|
88
|
-
const
|
|
89
|
-
if (!
|
|
90
|
-
throw new Error(`Unable to determine network from spark address: ${this.sparkAddress}`);
|
|
164
|
+
// Deduce Spark network from spark address and validate consistency
|
|
165
|
+
const detectedSparkNetwork = getSparkNetworkFromAddress(this.sparkAddress);
|
|
166
|
+
if (!detectedSparkNetwork) {
|
|
167
|
+
throw new Error(`Unable to determine Spark network from spark address: ${this.sparkAddress}`);
|
|
91
168
|
}
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
169
|
+
// Warn if configured Spark network doesn't match detected network
|
|
170
|
+
if (this.sparkNetwork !== detectedSparkNetwork) {
|
|
171
|
+
console.warn(`Warning: Configured Spark network (${this.sparkNetwork}) doesn't match detected network from address (${detectedSparkNetwork}). Using detected network.`);
|
|
172
|
+
this.sparkNetwork = detectedSparkNetwork;
|
|
96
173
|
}
|
|
97
|
-
//
|
|
98
|
-
const config = getNetworkConfig(this.network);
|
|
99
|
-
this.apiClient = new ApiClient(config);
|
|
100
|
-
this.typedApi = new TypedAmmApi(this.apiClient);
|
|
174
|
+
// Re-initialize auth manager with correct public key
|
|
101
175
|
this.authManager = new AuthManager(this.apiClient, this.publicKey, createWalletSigner(this._wallet));
|
|
102
176
|
// Authenticate
|
|
103
177
|
const token = await this.authManager.authenticate();
|
|
@@ -115,7 +189,7 @@ class FlashnetClient {
|
|
|
115
189
|
/**
|
|
116
190
|
* Ensure a token identifier is in human-readable (Bech32m) form expected by the Spark SDK.
|
|
117
191
|
* If the identifier is already human-readable or it is the BTC constant, it is returned unchanged.
|
|
118
|
-
* Otherwise, it is encoded from the raw hex form using the client network.
|
|
192
|
+
* Otherwise, it is encoded from the raw hex form using the client's Spark network.
|
|
119
193
|
*/
|
|
120
194
|
toHumanReadableTokenIdentifier(tokenIdentifier) {
|
|
121
195
|
if (tokenIdentifier === BTC_ASSET_PUBKEY) {
|
|
@@ -124,7 +198,7 @@ class FlashnetClient {
|
|
|
124
198
|
if (tokenIdentifier.startsWith("btkn")) {
|
|
125
199
|
return tokenIdentifier;
|
|
126
200
|
}
|
|
127
|
-
return
|
|
201
|
+
return encodeSparkHumanReadableTokenIdentifier(tokenIdentifier, this.sparkNetwork);
|
|
128
202
|
}
|
|
129
203
|
/**
|
|
130
204
|
* Convert a token identifier into the raw hex string form expected by the Flashnet backend.
|
|
@@ -136,7 +210,7 @@ class FlashnetClient {
|
|
|
136
210
|
return tokenIdentifier;
|
|
137
211
|
}
|
|
138
212
|
if (tokenIdentifier.startsWith("btkn")) {
|
|
139
|
-
return
|
|
213
|
+
return decodeSparkHumanReadableTokenIdentifier(tokenIdentifier, this.sparkNetwork).tokenIdentifier;
|
|
140
214
|
}
|
|
141
215
|
return tokenIdentifier;
|
|
142
216
|
}
|
|
@@ -152,7 +226,7 @@ class FlashnetClient {
|
|
|
152
226
|
const info = tokenData.tokenMetadata;
|
|
153
227
|
// Convert raw token identifier to hex and human-readable forms
|
|
154
228
|
const tokenIdentifierHex = Buffer.from(info.rawTokenIdentifier).toString("hex");
|
|
155
|
-
const tokenAddress =
|
|
229
|
+
const tokenAddress = encodeSparkHumanReadableTokenIdentifier(info.rawTokenIdentifier, this.sparkNetwork);
|
|
156
230
|
tokenBalances.set(tokenPubkey, {
|
|
157
231
|
balance: BigInt(tokenData.balance),
|
|
158
232
|
tokenInfo: {
|
|
@@ -188,7 +262,8 @@ class FlashnetClient {
|
|
|
188
262
|
for (const [tokenPubkey, requiredAmount,] of requirements.tokens.entries()) {
|
|
189
263
|
// If direct lookup fails (possible representation mismatch), try the human-readable form
|
|
190
264
|
const hrKey = this.toHumanReadableTokenIdentifier(tokenPubkey);
|
|
191
|
-
const effectiveTokenBalance = balance.tokenBalances.get(tokenPubkey) ??
|
|
265
|
+
const effectiveTokenBalance = balance.tokenBalances.get(tokenPubkey) ??
|
|
266
|
+
balance.tokenBalances.get(hrKey);
|
|
192
267
|
const available = effectiveTokenBalance?.balance ?? 0n;
|
|
193
268
|
if (available < requiredAmount) {
|
|
194
269
|
return {
|
|
@@ -224,8 +299,8 @@ class FlashnetClient {
|
|
|
224
299
|
return this.typedApi.getLpPosition(poolId, provider);
|
|
225
300
|
}
|
|
226
301
|
/**
|
|
227
|
-
|
|
228
|
-
|
|
302
|
+
* Get LP position details for a provider in a pool
|
|
303
|
+
*/
|
|
229
304
|
async getAllLpPositions() {
|
|
230
305
|
await this.ensureInitialized();
|
|
231
306
|
return this.typedApi.getAllLpPositions();
|
|
@@ -352,10 +427,10 @@ class FlashnetClient {
|
|
|
352
427
|
// If pool creation was successful, handle the initial deposit
|
|
353
428
|
if (createResponse.poolId) {
|
|
354
429
|
try {
|
|
355
|
-
// Transfer initial reserve to the pool
|
|
356
|
-
const lpSparkAddress =
|
|
430
|
+
// Transfer initial reserve to the pool using new address encoding
|
|
431
|
+
const lpSparkAddress = encodeSparkAddressNew({
|
|
357
432
|
identityPublicKey: createResponse.poolId,
|
|
358
|
-
network: this.
|
|
433
|
+
network: this.sparkNetwork,
|
|
359
434
|
});
|
|
360
435
|
let assetATransferId;
|
|
361
436
|
if (params.assetAAddress === BTC_ASSET_PUBKEY) {
|
|
@@ -454,10 +529,10 @@ class FlashnetClient {
|
|
|
454
529
|
if (!balanceCheck.sufficient) {
|
|
455
530
|
throw new Error(`Insufficient balance for swap: ${balanceCheck.message}`);
|
|
456
531
|
}
|
|
457
|
-
// Transfer assets to pool
|
|
458
|
-
const lpSparkAddress =
|
|
532
|
+
// Transfer assets to pool using new address encoding
|
|
533
|
+
const lpSparkAddress = encodeSparkAddressNew({
|
|
459
534
|
identityPublicKey: params.poolId,
|
|
460
|
-
network: this.
|
|
535
|
+
network: this.sparkNetwork,
|
|
461
536
|
});
|
|
462
537
|
let transferId;
|
|
463
538
|
if (params.assetInAddress === BTC_ASSET_PUBKEY) {
|
|
@@ -546,14 +621,14 @@ class FlashnetClient {
|
|
|
546
621
|
if (!params.hops.length) {
|
|
547
622
|
throw new Error("Route swap requires at least one hop");
|
|
548
623
|
}
|
|
549
|
-
// Transfer initial asset to first pool
|
|
624
|
+
// Transfer initial asset to first pool using new address encoding
|
|
550
625
|
const firstPoolId = params.hops[0]?.poolId;
|
|
551
626
|
if (!firstPoolId) {
|
|
552
627
|
throw new Error("First pool ID is required");
|
|
553
628
|
}
|
|
554
|
-
const lpSparkAddress =
|
|
629
|
+
const lpSparkAddress = encodeSparkAddressNew({
|
|
555
630
|
identityPublicKey: firstPoolId,
|
|
556
|
-
network: this.
|
|
631
|
+
network: this.sparkNetwork,
|
|
557
632
|
});
|
|
558
633
|
let initialTransferId;
|
|
559
634
|
if (params.initialAssetAddress === BTC_ASSET_PUBKEY) {
|
|
@@ -668,10 +743,10 @@ class FlashnetClient {
|
|
|
668
743
|
if (!balanceCheck.sufficient) {
|
|
669
744
|
throw new Error(`Insufficient balance for adding liquidity: ${balanceCheck.message}`);
|
|
670
745
|
}
|
|
671
|
-
// Transfer assets to pool
|
|
672
|
-
const lpSparkAddress =
|
|
746
|
+
// Transfer assets to pool using new address encoding
|
|
747
|
+
const lpSparkAddress = encodeSparkAddressNew({
|
|
673
748
|
identityPublicKey: params.poolId,
|
|
674
|
-
network: this.
|
|
749
|
+
network: this.sparkNetwork,
|
|
675
750
|
});
|
|
676
751
|
// Transfer asset A
|
|
677
752
|
let assetATransferId;
|
|
@@ -931,20 +1006,38 @@ class FlashnetClient {
|
|
|
931
1006
|
}
|
|
932
1007
|
// ===== Token Address Operations =====
|
|
933
1008
|
/**
|
|
934
|
-
* Encode a token identifier into a human-readable token address using the client's network
|
|
1009
|
+
* Encode a token identifier into a human-readable token address using the client's Spark network
|
|
935
1010
|
* @param tokenIdentifier - Token identifier as hex string or Uint8Array
|
|
936
1011
|
* @returns Human-readable token address
|
|
937
1012
|
*/
|
|
938
1013
|
encodeTokenAddress(tokenIdentifier) {
|
|
939
|
-
return
|
|
1014
|
+
return encodeSparkHumanReadableTokenIdentifier(tokenIdentifier, this.sparkNetwork);
|
|
940
1015
|
}
|
|
941
1016
|
/**
|
|
942
1017
|
* Decode a human-readable token address back to its identifier
|
|
943
1018
|
* @param address - Human-readable token address
|
|
944
|
-
* @returns Object containing the token identifier (as hex string) and network
|
|
1019
|
+
* @returns Object containing the token identifier (as hex string) and Spark network
|
|
945
1020
|
*/
|
|
946
1021
|
decodeTokenAddress(address) {
|
|
947
|
-
return
|
|
1022
|
+
return decodeSparkHumanReadableTokenIdentifier(address, this.sparkNetwork);
|
|
1023
|
+
}
|
|
1024
|
+
/**
|
|
1025
|
+
* @deprecated Use encodeTokenAddress instead - this method uses legacy types
|
|
1026
|
+
* Encode a token identifier into a human-readable token address using legacy types
|
|
1027
|
+
* @param tokenIdentifier - Token identifier as hex string or Uint8Array
|
|
1028
|
+
* @returns Human-readable token address
|
|
1029
|
+
*/
|
|
1030
|
+
encodeLegacyTokenAddress(tokenIdentifier) {
|
|
1031
|
+
return encodeSparkHumanReadableTokenIdentifier(tokenIdentifier, this.sparkNetwork);
|
|
1032
|
+
}
|
|
1033
|
+
/**
|
|
1034
|
+
* @deprecated Use decodeTokenAddress instead - this method uses legacy types
|
|
1035
|
+
* Decode a human-readable token address back to its identifier using legacy types
|
|
1036
|
+
* @param address - Human-readable token address
|
|
1037
|
+
* @returns Object containing the token identifier (as hex string) and network
|
|
1038
|
+
*/
|
|
1039
|
+
decodeLegacyTokenAddress(address) {
|
|
1040
|
+
return decodeSparkHumanReadableTokenIdentifier(address, this.sparkNetwork);
|
|
948
1041
|
}
|
|
949
1042
|
// ===== Status =====
|
|
950
1043
|
/**
|
|
@@ -958,14 +1051,14 @@ class FlashnetClient {
|
|
|
958
1051
|
/**
|
|
959
1052
|
* Helper method to add initial liquidity after pool creation
|
|
960
1053
|
*/
|
|
961
|
-
async addInitialLiquidity(poolId,
|
|
962
|
-
const lpSparkAddress =
|
|
1054
|
+
async addInitialLiquidity(poolId, assetAAddress, assetBAddress, assetAAmount, assetBAmount) {
|
|
1055
|
+
const lpSparkAddress = encodeSparkAddressNew({
|
|
963
1056
|
identityPublicKey: poolId,
|
|
964
|
-
network: this.
|
|
1057
|
+
network: this.sparkNetwork,
|
|
965
1058
|
});
|
|
966
1059
|
// Transfer asset A
|
|
967
1060
|
let assetATransferId;
|
|
968
|
-
if (
|
|
1061
|
+
if (assetAAddress === BTC_ASSET_PUBKEY) {
|
|
969
1062
|
const transfer = await this._wallet.transfer({
|
|
970
1063
|
amountSats: Number(assetAAmount),
|
|
971
1064
|
receiverSparkAddress: lpSparkAddress,
|
|
@@ -974,14 +1067,14 @@ class FlashnetClient {
|
|
|
974
1067
|
}
|
|
975
1068
|
else {
|
|
976
1069
|
assetATransferId = await this._wallet.transferTokens({
|
|
977
|
-
tokenIdentifier: this.toHumanReadableTokenIdentifier(
|
|
1070
|
+
tokenIdentifier: this.toHumanReadableTokenIdentifier(assetAAddress),
|
|
978
1071
|
tokenAmount: BigInt(assetAAmount),
|
|
979
1072
|
receiverSparkAddress: lpSparkAddress,
|
|
980
1073
|
});
|
|
981
1074
|
}
|
|
982
1075
|
// Transfer asset B
|
|
983
1076
|
let assetBTransferId;
|
|
984
|
-
if (
|
|
1077
|
+
if (assetBAddress === BTC_ASSET_PUBKEY) {
|
|
985
1078
|
const transfer = await this._wallet.transfer({
|
|
986
1079
|
amountSats: Number(assetBAmount),
|
|
987
1080
|
receiverSparkAddress: lpSparkAddress,
|
|
@@ -990,7 +1083,7 @@ class FlashnetClient {
|
|
|
990
1083
|
}
|
|
991
1084
|
else {
|
|
992
1085
|
assetBTransferId = await this._wallet.transferTokens({
|
|
993
|
-
tokenIdentifier: this.toHumanReadableTokenIdentifier(
|
|
1086
|
+
tokenIdentifier: this.toHumanReadableTokenIdentifier(assetBAddress),
|
|
994
1087
|
tokenAmount: BigInt(assetBAmount),
|
|
995
1088
|
receiverSparkAddress: lpSparkAddress,
|
|
996
1089
|
});
|