@lendasat/lendaswap-sdk 0.1.65 → 0.1.68
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/README.md +200 -126
- package/dist/api.d.ts +139 -103
- package/dist/api.d.ts.map +1 -1
- package/dist/api.js +236 -137
- package/dist/api.js.map +1 -1
- package/dist/index.d.ts +20 -20
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +20 -27
- package/dist/index.js.map +1 -1
- package/package.json +14 -15
- package/wasm/lendaswap_wasm_sdk.d.ts +133 -123
- package/wasm/lendaswap_wasm_sdk_bg.js +548 -248
- package/wasm/lendaswap_wasm_sdk_bg.wasm +0 -0
- package/wasm/lendaswap_wasm_sdk_bg.wasm.d.ts +45 -35
- package/dist/price-calculations.test.d.ts +0 -2
- package/dist/price-calculations.test.d.ts.map +0 -1
- package/dist/price-calculations.test.js +0 -173
- package/dist/price-calculations.test.js.map +0 -1
- package/dist/storage/dexieSwapStorage.d.ts +0 -113
- package/dist/storage/dexieSwapStorage.d.ts.map +0 -1
- package/dist/storage/dexieSwapStorage.js +0 -200
- package/dist/storage/dexieSwapStorage.js.map +0 -1
- package/dist/storage/dexieVtxoSwapStorage.d.ts +0 -105
- package/dist/storage/dexieVtxoSwapStorage.d.ts.map +0 -1
- package/dist/storage/dexieVtxoSwapStorage.js +0 -149
- package/dist/storage/dexieVtxoSwapStorage.js.map +0 -1
- package/dist/storage/dexieWalletStorage.d.ts +0 -99
- package/dist/storage/dexieWalletStorage.d.ts.map +0 -1
- package/dist/storage/dexieWalletStorage.js +0 -139
- package/dist/storage/dexieWalletStorage.js.map +0 -1
- package/dist/storage/index.d.ts +0 -19
- package/dist/storage/index.d.ts.map +0 -1
- package/dist/storage/index.js +0 -22
- package/dist/storage/index.js.map +0 -1
package/dist/api.d.ts
CHANGED
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
* This module provides a high-level TypeScript API that wraps the WASM-based
|
|
5
5
|
* API client for easier use in TypeScript/JavaScript applications.
|
|
6
6
|
*/
|
|
7
|
-
import { type AssetPair, type BtcToArkadeSwapResponse, type BtcToEvmSwapResponse, type CreateVtxoSwapResult, type EstimateVtxoSwapResponse, type EvmToBtcSwapResponse, type ExtendedVtxoSwapStorageData, type QuoteResponse, type SwapParams, type TokenInfo, type Version, type VhtlcAmounts, type VtxoSwapResponse } from "../wasm/lendaswap_wasm_sdk.js";
|
|
8
|
-
export { AssetPair, BtcToEvmSwapResponse, BtcToArkadeSwapResponse, Chain, CreateVtxoSwapResult, EstimateVtxoSwapResponse, EvmToBtcSwapResponse, ExtendedSwapStorageData as ExtendedSwapStorageDataWasm, ExtendedVtxoSwapStorageData, Network, QuoteResponse, SwapParams as VtxoSwapParams, SwapStatus, SwapType, swapStatusToString, TokenId, TokenInfo, Version, VhtlcAmounts, VtxoSwapResponse, } from "../wasm/lendaswap_wasm_sdk.js";
|
|
7
|
+
import { type AssetPair, type BtcToArkadeSwapResponse, type BtcToEvmSwapResponse, Client as WasmClient, type CreateVtxoSwapResult, type EstimateVtxoSwapResponse, type EvmToBtcSwapResponse, type ExtendedVtxoSwapStorageData, type IdbStorageHandle, type QuoteResponse, type SwapParams, type TokenInfo, type Version, type VhtlcAmounts, type VtxoSwapResponse } from "../wasm/lendaswap_wasm_sdk.js";
|
|
8
|
+
export { AssetPair, BtcToEvmSwapResponse, BtcToArkadeSwapResponse, Chain, CreateVtxoSwapResult, EstimateVtxoSwapResponse, EvmToBtcSwapResponse, ExtendedSwapStorageData as ExtendedSwapStorageDataWasm, ExtendedVtxoSwapStorageData, IdbStorageHandle, Network, openIdbDatabase, QuoteResponse, SwapParams as VtxoSwapParams, SwapStatus, SwapType, swapStatusToString, TokenId, TokenInfo, Version, VhtlcAmounts, VtxoSwapResponse, } from "../wasm/lendaswap_wasm_sdk.js";
|
|
9
9
|
/**
|
|
10
10
|
* Known token identifiers.
|
|
11
11
|
* Add new tokens here as they become supported.
|
|
@@ -30,8 +30,9 @@ export interface ExtendedSwapStorageData {
|
|
|
30
30
|
* Request to create an Arkade to EVM swap (BTC → Token).
|
|
31
31
|
*/
|
|
32
32
|
export interface SwapRequest {
|
|
33
|
+
source_amount?: bigint;
|
|
33
34
|
target_address: string;
|
|
34
|
-
target_amount
|
|
35
|
+
target_amount?: number;
|
|
35
36
|
target_token: TokenIdString;
|
|
36
37
|
referral_code?: string;
|
|
37
38
|
}
|
|
@@ -101,75 +102,139 @@ export interface QuoteRequest {
|
|
|
101
102
|
to: TokenIdString;
|
|
102
103
|
base_amount: number;
|
|
103
104
|
}
|
|
104
|
-
/**
|
|
105
|
-
* Typed storage provider interface for wallet data (mnemonic, key index).
|
|
106
|
-
* Provides typed async methods for wallet credential storage.
|
|
107
|
-
*/
|
|
108
|
-
export interface WalletStorageProvider {
|
|
109
|
-
/** Get the mnemonic phrase. Returns null if not stored. */
|
|
110
|
-
getMnemonic: () => Promise<string | null>;
|
|
111
|
-
/** Store the mnemonic phrase. Overwrites any existing mnemonic. */
|
|
112
|
-
setMnemonic: (mnemonic: string) => Promise<void>;
|
|
113
|
-
/** Get the current key derivation index. Returns 0 if not set. */
|
|
114
|
-
getKeyIndex: () => Promise<number>;
|
|
115
|
-
/** Set the key derivation index. */
|
|
116
|
-
setKeyIndex: (index: number) => Promise<void>;
|
|
117
|
-
}
|
|
118
|
-
/**
|
|
119
|
-
* Typed storage provider interface for swap data.
|
|
120
|
-
* Storage receives plain objects from serde serialization.
|
|
121
|
-
*/
|
|
122
|
-
export interface SwapStorageProvider {
|
|
123
|
-
/** Get swap data by swap ID. Returns null if not found. */
|
|
124
|
-
get: (swapId: string) => Promise<ExtendedSwapStorageData | null>;
|
|
125
|
-
/** Store swap data. Overwrites any existing swap with the same ID. */
|
|
126
|
-
store: (swapId: string, data: ExtendedSwapStorageData) => Promise<void>;
|
|
127
|
-
/** Delete swap data by swap ID. */
|
|
128
|
-
delete: (swapId: string) => Promise<void>;
|
|
129
|
-
/** List all stored swap IDs. */
|
|
130
|
-
list: () => Promise<string[]>;
|
|
131
|
-
/** List all stored swaps. */
|
|
132
|
-
getAll: () => Promise<ExtendedSwapStorageData[]>;
|
|
133
|
-
}
|
|
134
|
-
/**
|
|
135
|
-
* Typed storage provider interface for VTXO swap data.
|
|
136
|
-
* Storage receives plain objects matching ExtendedVtxoSwapStorageData structure.
|
|
137
|
-
*/
|
|
138
|
-
export interface VtxoSwapStorageProvider {
|
|
139
|
-
/** Get VTXO swap data by swap ID. Returns null if not found. */
|
|
140
|
-
get: (swapId: string) => Promise<ExtendedVtxoSwapStorageData | null>;
|
|
141
|
-
/** Store VTXO swap data. Overwrites any existing swap with the same ID. */
|
|
142
|
-
store: (swapId: string, data: ExtendedVtxoSwapStorageData) => Promise<void>;
|
|
143
|
-
/** Delete VTXO swap data by swap ID. */
|
|
144
|
-
delete: (swapId: string) => Promise<void>;
|
|
145
|
-
/** List all stored VTXO swap IDs. */
|
|
146
|
-
list: () => Promise<string[]>;
|
|
147
|
-
/** List all stored VTXO swaps. */
|
|
148
|
-
getAll: () => Promise<ExtendedVtxoSwapStorageData[]>;
|
|
149
|
-
}
|
|
150
105
|
/**
|
|
151
106
|
* Network input type for Bitcoin networks (string union for API convenience).
|
|
152
107
|
*/
|
|
153
108
|
export type NetworkInput = "bitcoin" | "testnet" | "regtest" | "mutinynet";
|
|
154
109
|
/**
|
|
155
|
-
*
|
|
110
|
+
* Builder for constructing a Client with a fluent API.
|
|
111
|
+
*
|
|
112
|
+
* Uses IndexedDB storage via `.withIdbStorage()` for browser applications.
|
|
113
|
+
* For Node.js server-side applications, use `@lendasat/lendaswap-sdk-native` instead.
|
|
114
|
+
*
|
|
115
|
+
* @example
|
|
116
|
+
* ```typescript
|
|
117
|
+
* import { Client } from '@lendasat/lendaswap-sdk';
|
|
118
|
+
*
|
|
119
|
+
* const client = await Client.builder()
|
|
120
|
+
* .url('https://api.lendaswap.com')
|
|
121
|
+
* .withIdbStorage()
|
|
122
|
+
* .network('bitcoin')
|
|
123
|
+
* .arkadeUrl('https://arkade.computer')
|
|
124
|
+
* .esploraUrl('https://mempool.space/api')
|
|
125
|
+
* .build();
|
|
126
|
+
* ```
|
|
156
127
|
*/
|
|
157
|
-
export
|
|
158
|
-
|
|
159
|
-
|
|
128
|
+
export declare class ClientBuilder {
|
|
129
|
+
private _url?;
|
|
130
|
+
private _storage?;
|
|
131
|
+
private _network?;
|
|
132
|
+
private _arkadeUrl?;
|
|
133
|
+
private _esploraUrl?;
|
|
134
|
+
constructor();
|
|
135
|
+
/**
|
|
136
|
+
* Set the Lendaswap API URL.
|
|
137
|
+
*/
|
|
138
|
+
url(url: string): this;
|
|
139
|
+
/**
|
|
140
|
+
* Use IndexedDB storage.
|
|
141
|
+
*
|
|
142
|
+
* This will automatically open the IndexedDB database when `build()` is called.
|
|
143
|
+
*
|
|
144
|
+
* @example
|
|
145
|
+
* ```typescript
|
|
146
|
+
* const client = await Client.builder()
|
|
147
|
+
* .url('https://api.lendaswap.com')
|
|
148
|
+
* .withIdbStorage()
|
|
149
|
+
* .network('bitcoin')
|
|
150
|
+
* .arkadeUrl('...')
|
|
151
|
+
* .esploraUrl('...')
|
|
152
|
+
* .build();
|
|
153
|
+
* ```
|
|
154
|
+
*/
|
|
155
|
+
withIdbStorage(): this;
|
|
156
|
+
/**
|
|
157
|
+
* Set the storage handle directly (for advanced use cases).
|
|
158
|
+
* @deprecated Use `.withIdbStorage()` instead.
|
|
159
|
+
*/
|
|
160
|
+
storage(storage: IdbStorageHandle): this;
|
|
161
|
+
/**
|
|
162
|
+
* Set the Bitcoin network.
|
|
163
|
+
*/
|
|
164
|
+
network(network: NetworkInput): this;
|
|
165
|
+
/**
|
|
166
|
+
* Set the Arkade server URL.
|
|
167
|
+
*/
|
|
168
|
+
arkadeUrl(url: string): this;
|
|
169
|
+
/**
|
|
170
|
+
* Set the Esplora API URL for on-chain Bitcoin operations.
|
|
171
|
+
*/
|
|
172
|
+
esploraUrl(url: string): this;
|
|
173
|
+
/**
|
|
174
|
+
* Build the client asynchronously.
|
|
175
|
+
*
|
|
176
|
+
* @returns A Promise that resolves to a new Client instance
|
|
177
|
+
* @throws Error if any required field is missing or storage initialization fails
|
|
178
|
+
*/
|
|
179
|
+
build(): Promise<Client>;
|
|
160
180
|
}
|
|
181
|
+
/**
|
|
182
|
+
* Lendaswap client using IndexedDB storage.
|
|
183
|
+
*
|
|
184
|
+
* This client uses native Rust IndexedDB storage via the `idb` crate,
|
|
185
|
+
* eliminating the need for JavaScript storage callbacks.
|
|
186
|
+
*
|
|
187
|
+
* @example
|
|
188
|
+
* ```typescript
|
|
189
|
+
* import { openIdbDatabase, Client } from '@lendasat/lendaswap-sdk';
|
|
190
|
+
*
|
|
191
|
+
* // Open the IndexedDB database
|
|
192
|
+
* const storage = await openIdbDatabase();
|
|
193
|
+
*
|
|
194
|
+
* // Create the client
|
|
195
|
+
* const client = await Client.create(
|
|
196
|
+
* 'https://api.lendaswap.com',
|
|
197
|
+
* storage,
|
|
198
|
+
* 'bitcoin',
|
|
199
|
+
* 'https://arkade.computer',
|
|
200
|
+
* 'https://mempool.space/api'
|
|
201
|
+
* );
|
|
202
|
+
*
|
|
203
|
+
* // Initialize wallet (generates mnemonic if needed)
|
|
204
|
+
* await client.init();
|
|
205
|
+
*
|
|
206
|
+
* // Get all swaps
|
|
207
|
+
* const swaps = await client.listAllSwaps();
|
|
208
|
+
* ```
|
|
209
|
+
*/
|
|
161
210
|
export declare class Client {
|
|
162
|
-
private
|
|
163
|
-
private baseUrl;
|
|
164
|
-
private swapStorage;
|
|
211
|
+
private wasmClient;
|
|
165
212
|
private constructor();
|
|
166
213
|
/**
|
|
167
|
-
* Create a new
|
|
214
|
+
* Create a new ClientBuilder for constructing a client.
|
|
215
|
+
*
|
|
216
|
+
* @example
|
|
217
|
+
* ```typescript
|
|
218
|
+
* const client = Client.builder()
|
|
219
|
+
* .url('https://api.lendaswap.com')
|
|
220
|
+
* .withIdbStorage()
|
|
221
|
+
* .network('bitcoin')
|
|
222
|
+
* .arkadeUrl('https://arkade.computer')
|
|
223
|
+
* .esploraUrl('https://mempool.space/api')
|
|
224
|
+
* .build();
|
|
225
|
+
* ```
|
|
226
|
+
*/
|
|
227
|
+
static builder(): ClientBuilder;
|
|
228
|
+
/**
|
|
229
|
+
* Create a Client from a WASM client instance.
|
|
230
|
+
* Used internally by ClientBuilder.
|
|
231
|
+
*/
|
|
232
|
+
static fromWasmClient(wasmClient: WasmClient): Client;
|
|
233
|
+
/**
|
|
234
|
+
* Create a new Client instance with IndexedDB storage.
|
|
168
235
|
*
|
|
169
236
|
* @param baseUrl - The base URL of the Lendaswap API
|
|
170
|
-
* @param
|
|
171
|
-
* @param swapStorage - Storage provider for persisting swap data (uses Dexie/IndexedDB)
|
|
172
|
-
* @param vtxoSwapStorage - Storage provider for persisting VTXO swap data (uses Dexie/IndexedDB)
|
|
237
|
+
* @param storage - Storage handle from `openIdbDatabase()`
|
|
173
238
|
* @param network - Bitcoin network ("bitcoin", "testnet", "regtest", "mutinynet")
|
|
174
239
|
* @param arkadeUrl - Arkade's server url
|
|
175
240
|
* @param esploraUrl - Esplora API URL for on-chain Bitcoin operations (e.g., "https://mempool.space/api")
|
|
@@ -177,29 +242,19 @@ export declare class Client {
|
|
|
177
242
|
*
|
|
178
243
|
* @example
|
|
179
244
|
* ```typescript
|
|
180
|
-
* import {
|
|
181
|
-
* Client,
|
|
182
|
-
* createDexieWalletStorage,
|
|
183
|
-
* createDexieSwapStorage,
|
|
184
|
-
* createDexieVtxoSwapStorage
|
|
185
|
-
* } from '@lendasat/lendaswap-sdk';
|
|
186
|
-
*
|
|
187
|
-
* const walletStorage = createDexieWalletStorage();
|
|
188
|
-
* const swapStorage = createDexieSwapStorage();
|
|
189
|
-
* const vtxoSwapStorage = createDexieVtxoSwapStorage();
|
|
245
|
+
* import { openIdbDatabase, Client } from '@lendasat/lendaswap-sdk';
|
|
190
246
|
*
|
|
247
|
+
* const storage = await openIdbDatabase();
|
|
191
248
|
* const client = await Client.create(
|
|
192
249
|
* 'https://apilendaswap.lendasat.com',
|
|
193
|
-
*
|
|
194
|
-
* swapStorage,
|
|
195
|
-
* vtxoSwapStorage,
|
|
250
|
+
* storage,
|
|
196
251
|
* 'bitcoin',
|
|
197
252
|
* 'https://arkade.computer',
|
|
198
253
|
* 'https://mempool.space/api'
|
|
199
254
|
* );
|
|
200
255
|
* ```
|
|
201
256
|
*/
|
|
202
|
-
static create(baseUrl: string,
|
|
257
|
+
static create(baseUrl: string, storage: IdbStorageHandle, network: NetworkInput, arkadeUrl: string, esploraUrl: string): Promise<Client>;
|
|
203
258
|
init(mnemonic?: string): Promise<void>;
|
|
204
259
|
/**
|
|
205
260
|
* Create an Arkade to EVM swap (BTC → Token).
|
|
@@ -209,6 +264,14 @@ export declare class Client {
|
|
|
209
264
|
* @returns The created swap response
|
|
210
265
|
*/
|
|
211
266
|
createArkadeToEvmSwap(request: SwapRequest, targetNetwork: "ethereum" | "polygon"): Promise<BtcToEvmSwapResponse>;
|
|
267
|
+
/**
|
|
268
|
+
* Create a Lightning to EVM swap (BTC → Token).
|
|
269
|
+
*
|
|
270
|
+
* @param request - The swap request parameters
|
|
271
|
+
* @param targetNetwork - Target EVM network (e.g., 'polygon', 'ethereum')
|
|
272
|
+
* @returns The created swap response
|
|
273
|
+
*/
|
|
274
|
+
createLightningToEvmSwap(request: SwapRequest, targetNetwork: "ethereum" | "polygon"): Promise<BtcToEvmSwapResponse>;
|
|
212
275
|
/**
|
|
213
276
|
* Create an EVM to Arkade swap (Token → BTC).
|
|
214
277
|
*
|
|
@@ -270,9 +333,10 @@ export declare class Client {
|
|
|
270
333
|
*/
|
|
271
334
|
claimVhtlc(swapId: string): Promise<void>;
|
|
272
335
|
/**
|
|
273
|
-
*
|
|
336
|
+
* Refund a swap VHTLC
|
|
274
337
|
*
|
|
275
338
|
* @param swapId - The swap ID
|
|
339
|
+
* @param refundAddress - The address to receive the refund
|
|
276
340
|
* @returns The TXID of the Ark transaction which refunded the VHTLC.
|
|
277
341
|
*/
|
|
278
342
|
refundVhtlc(swapId: string, refundAddress: string): Promise<string>;
|
|
@@ -306,34 +370,6 @@ export declare class Client {
|
|
|
306
370
|
* Delete one particular swap by id
|
|
307
371
|
*/
|
|
308
372
|
deleteSwap(id: string): Promise<void>;
|
|
309
|
-
/**
|
|
310
|
-
* Get the list of swap IDs that failed to deserialize during the last listAllSwaps() call.
|
|
311
|
-
* These are "corrupted" entries that couldn't be loaded due to invalid or missing data.
|
|
312
|
-
*
|
|
313
|
-
* @returns Array of swap IDs that failed to load
|
|
314
|
-
*/
|
|
315
|
-
getCorruptedSwapIds(): string[];
|
|
316
|
-
/**
|
|
317
|
-
* Delete all corrupted swap entries from storage.
|
|
318
|
-
* Call this after listAllSwaps() to clean up entries that couldn't be deserialized.
|
|
319
|
-
*
|
|
320
|
-
* @returns The number of corrupted entries that were deleted
|
|
321
|
-
*/
|
|
322
|
-
deleteCorruptedSwaps(): Promise<number>;
|
|
323
|
-
/**
|
|
324
|
-
* Attempt to repair corrupted swap entries by fetching missing data from the server.
|
|
325
|
-
*
|
|
326
|
-
* For each corrupted swap ID:
|
|
327
|
-
* 1. Reads the raw swap_params from local storage
|
|
328
|
-
* 2. Fetches the swap response from the server via GET /swap/:id
|
|
329
|
-
* 3. Combines them and stores the repaired entry
|
|
330
|
-
*
|
|
331
|
-
* @returns Object with repaired count and any failed IDs
|
|
332
|
-
*/
|
|
333
|
-
repairCorruptedSwaps(): Promise<{
|
|
334
|
-
repaired: number;
|
|
335
|
-
failed: string[];
|
|
336
|
-
}>;
|
|
337
373
|
/**
|
|
338
374
|
* Estimate the fee for a VTXO swap.
|
|
339
375
|
*
|
package/dist/api.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EACL,KAAK,SAAS,EACd,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../src/api.ts"],"names":[],"mappings":"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"}
|