@trustware/sdk-staging 1.1.9-staging.7 → 1.1.11-staging.1

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.
@@ -187,6 +187,15 @@ type BuildRouteBody = {
187
187
  slippageBps?: number;
188
188
  linkId?: string;
189
189
  memo?: string;
190
+ /**
191
+ * Optional bridge-and-call: execute a contract call on the destination
192
+ * chain right after funds land, instead of a plain wallet transfer (e.g.
193
+ * depositing into a vault in the same flow). Fully optional and backward
194
+ * compatible — omit `hooks` entirely and nothing changes.
195
+ */
196
+ hooks?: {
197
+ postHook?: PostHookRequest;
198
+ };
190
199
  };
191
200
  type TxRequest = {
192
201
  to?: string;
@@ -199,6 +208,18 @@ type TxRequest = {
199
208
  chainId?: number | string;
200
209
  gasPrice?: string;
201
210
  };
211
+ type BuildRouteResponse = {
212
+ intentId?: string;
213
+ route?: RoutePlan;
214
+ sponsorship?: RouteSponsorship;
215
+ data?: {
216
+ intentId?: string;
217
+ route?: RoutePlan;
218
+ sponsorship?: RouteSponsorship;
219
+ };
220
+ error?: string;
221
+ message?: string;
222
+ };
202
223
  declare function buildRoute(body: BuildRouteBody, signal?: AbortSignal): Promise<BuildRouteResult>;
203
224
  declare function buildDepositAddress(body: BuildRouteBody, signal?: AbortSignal): Promise<{
204
225
  intentId: string;
@@ -215,7 +236,36 @@ declare function submitReceipt(intentId: string, txHash: string, sponsorshipRequ
215
236
  * executes from a smart account, so the backend records the tx against the
216
237
  * address the user actually connects with. */
217
238
  eoaAddress?: string): Promise<any>;
239
+ /**
240
+ * Reports the submitted tx hash for one execution step of a multi-step
241
+ * route — approve steps only; the main tx keeps going through
242
+ * `submitReceipt`. `stepIndex` is the step's position in
243
+ * `route.execution.approvals` (the backend seeds its step plan in the same
244
+ * order). Best-effort telemetry: callers fire-and-forget so a failed report
245
+ * never blocks the payment flow, but a successful one lets the backend tell
246
+ * "approve landed, main never followed" apart from an intent the user
247
+ * abandoned before signing anything.
248
+ */
249
+ declare function submitStepReceipt(intentId: string, stepIndex: number, txHash: string): Promise<any>;
250
+ /**
251
+ * Fetches the current status for a route intent.
252
+ *
253
+ * Response contract:
254
+ * - 404 (throws) → intent doesn't exist. Stop polling.
255
+ * - 200 status: "pending" → intent exists, no receipt yet. Keep polling.
256
+ * - 200 status: "submitted" → receipt in, tx in flight. Keep polling.
257
+ * - 200 status: "bridging" → cross-chain leg in progress. Keep polling.
258
+ * - 200 status: "success"/"failed" → terminal. Stop polling.
259
+ *
260
+ * A "pending" payload is a stub ({intent_id, status, intent_status,
261
+ * create_date}) — the full Transaction fields appear once a receipt lands.
262
+ */
218
263
  declare function getStatus(intentId: string): Promise<Transaction>;
264
+ /**
265
+ * Polls intent status until terminal ("success"/"failed") or timeout.
266
+ * Non-terminal statuses ("pending", "submitted", "bridging") keep the loop
267
+ * going; a 404 (unknown intent) throws out of the loop — don't retry it.
268
+ */
219
269
  declare function pollStatus(intentId: string, { intervalMs, timeoutMs }?: {
220
270
  intervalMs?: number | undefined;
221
271
  timeoutMs?: number | undefined;
@@ -262,11 +312,30 @@ type Transaction = {
262
312
  destTxHash: string;
263
313
  requestId: string;
264
314
  transactionRequest: unknown;
265
- status: "submitted" | "bridging" | "success" | "failed";
315
+ /**
316
+ * "pending" means the intent exists but no receipt has been submitted yet —
317
+ * the backend returns it (HTTP 200) instead of the old 404 so pollers can
318
+ * tell "not ready yet, keep polling" apart from "unknown intent" (a real
319
+ * 404, which means stop polling). A pending response carries only
320
+ * `intent_id`, `status`, `intent_status`, and `create_date`; the other
321
+ * Transaction fields are absent until a receipt lands.
322
+ */
323
+ status: "pending" | "submitted" | "bridging" | "success" | "failed";
266
324
  statusRaw?: unknown;
267
325
  routePath?: unknown;
268
326
  routeStatus?: unknown;
327
+ /**
328
+ * Exact once landed_amount_verified is true; otherwise a pre-trade quote
329
+ * estimate copied in when the transaction was submitted — neither Squid's
330
+ * nor LiFi's status API carries a real landed-amount field, so the
331
+ * backend confirms it by reading the destination chain directly instead
332
+ * (see BVT-246). Check `landed_amount_verified` before auto-continuing
333
+ * on this value.
334
+ */
269
335
  toAmountWei?: string | number;
336
+ /** True once toAmountWei has been confirmed on-chain rather than being the
337
+ * pre-trade quote estimate. Wire field: `landed_amount_verified`. */
338
+ landed_amount_verified?: boolean;
270
339
  fromChainBlock: number;
271
340
  toChainBlock: number;
272
341
  fromChainTxUrl?: string;
@@ -305,6 +374,60 @@ type RouteSponsorship = {
305
374
  typedDataHash: string;
306
375
  approval: SponsorshipApproval;
307
376
  };
377
+ /**
378
+ * A destination-chain contract call to execute automatically once bridged
379
+ * funds land — e.g. depositing straight into a vault instead of a plain
380
+ * wallet transfer. Entirely optional: omit `hooks` on `BuildRouteBody`
381
+ * altogether and nothing about existing `buildRoute`/`buildDepositAddress`
382
+ * behavior changes.
383
+ *
384
+ * There are two ways to tell the backend how much the call should act on:
385
+ * - `fundAmount` (recommended — works with every provider): a fixed amount
386
+ * you already know ahead of time, with `callData` ABI-encoded for that
387
+ * exact number.
388
+ * - `fullAmount: true` + `amountInputPos` (Squid only): lets the backend
389
+ * dynamically patch `callData` with the *actual* landed amount at
390
+ * execution time — useful when the exact bridged amount can't be known in
391
+ * advance. Requests using this mode are only ever routed to a provider
392
+ * that supports it.
393
+ *
394
+ * Pick one of the two amount modes; you don't need both.
395
+ */
396
+ type PostHookRequest = {
397
+ /** Contract address to call on the destination chain. */
398
+ target: string;
399
+ /** ABI-encoded calldata for the call. */
400
+ callData: string;
401
+ /** msg.value to send with the call, in wei — only for native-value calls. */
402
+ value?: string;
403
+ /** Token the call acts on. Defaults to the route's `toToken`. */
404
+ fundToken?: string;
405
+ /** Fixed amount (wei). Required unless `fullAmount` is set. */
406
+ fundAmount?: string;
407
+ /** Squid-only: dynamically patch `callData` with the actual landed amount. */
408
+ fullAmount?: boolean;
409
+ /** Squid-only: required when `fullAmount` is true — the ABI arg index to patch. */
410
+ amountInputPos?: number;
411
+ /**
412
+ * Gas limit hint for the call. Optional for Squid, but required to keep
413
+ * this request eligible for LiFi — include it unless you're intentionally
414
+ * Squid-only.
415
+ */
416
+ estimatedGas?: string;
417
+ /**
418
+ * Set this when `target` needs to pull `fundToken` via `transferFrom` (the
419
+ * common ERC20 vault-deposit case) — usually the same address as `target`
420
+ * itself. On Squid, an `approve()` call is automatically prepended before
421
+ * your call (patched with the landed amount too, when `fullAmount` is
422
+ * true). On LiFi, this is passed through as-is; LiFi's own execution
423
+ * engine handles the approval. Leave unset for native-asset calls, which
424
+ * never need an approval.
425
+ */
426
+ toApprovalAddress?: string;
427
+ /** Where bridged funds go if the call fails (LiFi only). */
428
+ toFallbackAddress?: string;
429
+ description?: string;
430
+ };
308
431
  type RouteEstimate = {
309
432
  fromAmount?: string;
310
433
  toAmount?: string;
@@ -315,10 +438,23 @@ type RouteEstimate = {
315
438
  toAmountMinUsd?: string;
316
439
  fees?: unknown[];
317
440
  };
441
+ /**
442
+ * An ERC20 allowance that must be granted before `execution.transaction` can
443
+ * succeed — e.g. bridging from USDC instead of a native asset. `sendRouteTransaction`
444
+ * checks and grants these automatically; you only need this if you're
445
+ * building the transaction lifecycle yourself.
446
+ */
447
+ type RouteApproval = {
448
+ chainId?: string;
449
+ tokenAddress?: string;
450
+ spender?: string;
451
+ amount?: string;
452
+ };
318
453
  type RoutePlan = {
319
454
  estimate?: RouteEstimate;
320
455
  execution?: {
321
456
  transaction?: TxRequest;
457
+ approvals?: RouteApproval[];
322
458
  };
323
459
  steps?: unknown[];
324
460
  provider?: string;
@@ -705,4 +841,4 @@ declare function useWalletInfo(wagmi?: WagmiBridge): {
705
841
  };
706
842
  declare function useWalletExternalDisconnect(cb: () => void): void;
707
843
 
708
- export { useWalletInfo as $, type TrustwareWidgetMessages as A, type BuildRouteResult as B, type WagmiBridge as C, DEFAULT_AUTO_DETECT_PROVIDER as D, type EIP1193 as E, type FeatureFlags as F, type WagmiConnector as G, type WalletAddressResolution as H, IdentityStore as I, type WalletAddressSource as J, type WalletCategory as K, type WalletConnectConfig as L, type WalletEcosystem as M, type WalletId as N, type WalletIdentity as O, type WalletIdentityAddress as P, type WalletIdentityChainLike as Q, type RateLimitInfo as R, type SimpleWalletInterface as S, type TrustwareConfigOptions as T, type WalletMeta as U, buildWalletIdentityAddress as V, type WalletInterFaceAPI as W, createWalletIdentity as X, resolveWalletAddressForChain as Y, upsertWalletIdentityAddress as Z, useWalletExternalDisconnect as _, TrustwareError as a, useWireDetectionIntoManager as a0, walletManager as a1, type WalletSnapshot as a2, useWalletConnectConnect as a3, buildRoute as a4, buildDepositAddress as a5, submitReceipt as a6, getStatus as a7, pollStatus as a8, type Transaction as b, type TrustwareEvent as c, DEFAULT_FEATURE_FLAGS as d, DEFAULT_MESSAGES as e, DEFAULT_RETRY_CONFIG as f, DEFAULT_SLIPPAGE as g, type DetectedWallet as h, type EIP6963ProviderDetail as i, type EvmWalletInterface as j, type ResolvedFeatureFlags as k, type ResolvedRetryConfig as l, type ResolvedTrustwareConfig as m, type ResolvedWalletConnectConfig as n, type RetryConfig as o, type RouteEstimate as p, type RouteIntent as q, type RouteParams as r, type RoutePlan as s, type RouteSponsorship as t, type RoutesConfig as u, type SolanaProviderLike as v, type SolanaWalletInterface as w, type SponsorshipApproval as x, type SwapTokenRef as y, type TrustwareTheme as z };
844
+ export { type WalletConnectConfig as $, type ResolvedWalletConnectConfig as A, type BuildRouteBody as B, type RetryConfig as C, type DetectedWallet as D, type EIP1193 as E, type FeatureFlags as F, type RouteApproval as G, type RouteEstimate as H, IdentityStore as I, type RouteIntent as J, type RouteParams as K, type RoutePlan as L, type RouteSponsorship as M, type RoutesConfig as N, type SimpleWalletInterface as O, type PostHookRequest as P, type SponsorshipApproval as Q, type RateLimitInfo as R, type SolanaProviderLike as S, type TrustwareConfigOptions as T, type SwapTokenRef as U, type TrustwareTheme as V, type WalletMeta as W, type TrustwareWidgetMessages as X, type WalletAddressResolution as Y, type WalletAddressSource as Z, type WalletCategory as _, type WalletId as a, type WalletEcosystem as a0, type WalletIdentity as a1, type WalletIdentityAddress as a2, type WalletIdentityChainLike as a3, buildWalletIdentityAddress as a4, createWalletIdentity as a5, resolveWalletAddressForChain as a6, upsertWalletIdentityAddress as a7, buildRoute as a8, buildDepositAddress as a9, submitReceipt as aa, submitStepReceipt as ab, getStatus as ac, pollStatus as ad, type SolanaWalletInterface as b, type WagmiBridge as c, type WagmiConnector as d, type WalletSnapshot as e, useWalletExternalDisconnect as f, useWalletInfo as g, useWireDetectionIntoManager as h, type WalletInterFaceAPI as i, TrustwareError as j, type Transaction as k, type TrustwareEvent as l, type BuildRouteResponse as m, type BuildRouteResult as n, DEFAULT_AUTO_DETECT_PROVIDER as o, DEFAULT_FEATURE_FLAGS as p, DEFAULT_MESSAGES as q, DEFAULT_RETRY_CONFIG as r, DEFAULT_SLIPPAGE as s, type EIP6963ProviderDetail as t, useWalletConnectConnect as u, type EvmWalletInterface as v, walletManager as w, type ResolvedFeatureFlags as x, type ResolvedRetryConfig as y, type ResolvedTrustwareConfig as z };
@@ -187,6 +187,15 @@ type BuildRouteBody = {
187
187
  slippageBps?: number;
188
188
  linkId?: string;
189
189
  memo?: string;
190
+ /**
191
+ * Optional bridge-and-call: execute a contract call on the destination
192
+ * chain right after funds land, instead of a plain wallet transfer (e.g.
193
+ * depositing into a vault in the same flow). Fully optional and backward
194
+ * compatible — omit `hooks` entirely and nothing changes.
195
+ */
196
+ hooks?: {
197
+ postHook?: PostHookRequest;
198
+ };
190
199
  };
191
200
  type TxRequest = {
192
201
  to?: string;
@@ -199,6 +208,18 @@ type TxRequest = {
199
208
  chainId?: number | string;
200
209
  gasPrice?: string;
201
210
  };
211
+ type BuildRouteResponse = {
212
+ intentId?: string;
213
+ route?: RoutePlan;
214
+ sponsorship?: RouteSponsorship;
215
+ data?: {
216
+ intentId?: string;
217
+ route?: RoutePlan;
218
+ sponsorship?: RouteSponsorship;
219
+ };
220
+ error?: string;
221
+ message?: string;
222
+ };
202
223
  declare function buildRoute(body: BuildRouteBody, signal?: AbortSignal): Promise<BuildRouteResult>;
203
224
  declare function buildDepositAddress(body: BuildRouteBody, signal?: AbortSignal): Promise<{
204
225
  intentId: string;
@@ -215,7 +236,36 @@ declare function submitReceipt(intentId: string, txHash: string, sponsorshipRequ
215
236
  * executes from a smart account, so the backend records the tx against the
216
237
  * address the user actually connects with. */
217
238
  eoaAddress?: string): Promise<any>;
239
+ /**
240
+ * Reports the submitted tx hash for one execution step of a multi-step
241
+ * route — approve steps only; the main tx keeps going through
242
+ * `submitReceipt`. `stepIndex` is the step's position in
243
+ * `route.execution.approvals` (the backend seeds its step plan in the same
244
+ * order). Best-effort telemetry: callers fire-and-forget so a failed report
245
+ * never blocks the payment flow, but a successful one lets the backend tell
246
+ * "approve landed, main never followed" apart from an intent the user
247
+ * abandoned before signing anything.
248
+ */
249
+ declare function submitStepReceipt(intentId: string, stepIndex: number, txHash: string): Promise<any>;
250
+ /**
251
+ * Fetches the current status for a route intent.
252
+ *
253
+ * Response contract:
254
+ * - 404 (throws) → intent doesn't exist. Stop polling.
255
+ * - 200 status: "pending" → intent exists, no receipt yet. Keep polling.
256
+ * - 200 status: "submitted" → receipt in, tx in flight. Keep polling.
257
+ * - 200 status: "bridging" → cross-chain leg in progress. Keep polling.
258
+ * - 200 status: "success"/"failed" → terminal. Stop polling.
259
+ *
260
+ * A "pending" payload is a stub ({intent_id, status, intent_status,
261
+ * create_date}) — the full Transaction fields appear once a receipt lands.
262
+ */
218
263
  declare function getStatus(intentId: string): Promise<Transaction>;
264
+ /**
265
+ * Polls intent status until terminal ("success"/"failed") or timeout.
266
+ * Non-terminal statuses ("pending", "submitted", "bridging") keep the loop
267
+ * going; a 404 (unknown intent) throws out of the loop — don't retry it.
268
+ */
219
269
  declare function pollStatus(intentId: string, { intervalMs, timeoutMs }?: {
220
270
  intervalMs?: number | undefined;
221
271
  timeoutMs?: number | undefined;
@@ -262,11 +312,30 @@ type Transaction = {
262
312
  destTxHash: string;
263
313
  requestId: string;
264
314
  transactionRequest: unknown;
265
- status: "submitted" | "bridging" | "success" | "failed";
315
+ /**
316
+ * "pending" means the intent exists but no receipt has been submitted yet —
317
+ * the backend returns it (HTTP 200) instead of the old 404 so pollers can
318
+ * tell "not ready yet, keep polling" apart from "unknown intent" (a real
319
+ * 404, which means stop polling). A pending response carries only
320
+ * `intent_id`, `status`, `intent_status`, and `create_date`; the other
321
+ * Transaction fields are absent until a receipt lands.
322
+ */
323
+ status: "pending" | "submitted" | "bridging" | "success" | "failed";
266
324
  statusRaw?: unknown;
267
325
  routePath?: unknown;
268
326
  routeStatus?: unknown;
327
+ /**
328
+ * Exact once landed_amount_verified is true; otherwise a pre-trade quote
329
+ * estimate copied in when the transaction was submitted — neither Squid's
330
+ * nor LiFi's status API carries a real landed-amount field, so the
331
+ * backend confirms it by reading the destination chain directly instead
332
+ * (see BVT-246). Check `landed_amount_verified` before auto-continuing
333
+ * on this value.
334
+ */
269
335
  toAmountWei?: string | number;
336
+ /** True once toAmountWei has been confirmed on-chain rather than being the
337
+ * pre-trade quote estimate. Wire field: `landed_amount_verified`. */
338
+ landed_amount_verified?: boolean;
270
339
  fromChainBlock: number;
271
340
  toChainBlock: number;
272
341
  fromChainTxUrl?: string;
@@ -305,6 +374,60 @@ type RouteSponsorship = {
305
374
  typedDataHash: string;
306
375
  approval: SponsorshipApproval;
307
376
  };
377
+ /**
378
+ * A destination-chain contract call to execute automatically once bridged
379
+ * funds land — e.g. depositing straight into a vault instead of a plain
380
+ * wallet transfer. Entirely optional: omit `hooks` on `BuildRouteBody`
381
+ * altogether and nothing about existing `buildRoute`/`buildDepositAddress`
382
+ * behavior changes.
383
+ *
384
+ * There are two ways to tell the backend how much the call should act on:
385
+ * - `fundAmount` (recommended — works with every provider): a fixed amount
386
+ * you already know ahead of time, with `callData` ABI-encoded for that
387
+ * exact number.
388
+ * - `fullAmount: true` + `amountInputPos` (Squid only): lets the backend
389
+ * dynamically patch `callData` with the *actual* landed amount at
390
+ * execution time — useful when the exact bridged amount can't be known in
391
+ * advance. Requests using this mode are only ever routed to a provider
392
+ * that supports it.
393
+ *
394
+ * Pick one of the two amount modes; you don't need both.
395
+ */
396
+ type PostHookRequest = {
397
+ /** Contract address to call on the destination chain. */
398
+ target: string;
399
+ /** ABI-encoded calldata for the call. */
400
+ callData: string;
401
+ /** msg.value to send with the call, in wei — only for native-value calls. */
402
+ value?: string;
403
+ /** Token the call acts on. Defaults to the route's `toToken`. */
404
+ fundToken?: string;
405
+ /** Fixed amount (wei). Required unless `fullAmount` is set. */
406
+ fundAmount?: string;
407
+ /** Squid-only: dynamically patch `callData` with the actual landed amount. */
408
+ fullAmount?: boolean;
409
+ /** Squid-only: required when `fullAmount` is true — the ABI arg index to patch. */
410
+ amountInputPos?: number;
411
+ /**
412
+ * Gas limit hint for the call. Optional for Squid, but required to keep
413
+ * this request eligible for LiFi — include it unless you're intentionally
414
+ * Squid-only.
415
+ */
416
+ estimatedGas?: string;
417
+ /**
418
+ * Set this when `target` needs to pull `fundToken` via `transferFrom` (the
419
+ * common ERC20 vault-deposit case) — usually the same address as `target`
420
+ * itself. On Squid, an `approve()` call is automatically prepended before
421
+ * your call (patched with the landed amount too, when `fullAmount` is
422
+ * true). On LiFi, this is passed through as-is; LiFi's own execution
423
+ * engine handles the approval. Leave unset for native-asset calls, which
424
+ * never need an approval.
425
+ */
426
+ toApprovalAddress?: string;
427
+ /** Where bridged funds go if the call fails (LiFi only). */
428
+ toFallbackAddress?: string;
429
+ description?: string;
430
+ };
308
431
  type RouteEstimate = {
309
432
  fromAmount?: string;
310
433
  toAmount?: string;
@@ -315,10 +438,23 @@ type RouteEstimate = {
315
438
  toAmountMinUsd?: string;
316
439
  fees?: unknown[];
317
440
  };
441
+ /**
442
+ * An ERC20 allowance that must be granted before `execution.transaction` can
443
+ * succeed — e.g. bridging from USDC instead of a native asset. `sendRouteTransaction`
444
+ * checks and grants these automatically; you only need this if you're
445
+ * building the transaction lifecycle yourself.
446
+ */
447
+ type RouteApproval = {
448
+ chainId?: string;
449
+ tokenAddress?: string;
450
+ spender?: string;
451
+ amount?: string;
452
+ };
318
453
  type RoutePlan = {
319
454
  estimate?: RouteEstimate;
320
455
  execution?: {
321
456
  transaction?: TxRequest;
457
+ approvals?: RouteApproval[];
322
458
  };
323
459
  steps?: unknown[];
324
460
  provider?: string;
@@ -705,4 +841,4 @@ declare function useWalletInfo(wagmi?: WagmiBridge): {
705
841
  };
706
842
  declare function useWalletExternalDisconnect(cb: () => void): void;
707
843
 
708
- export { useWalletInfo as $, type TrustwareWidgetMessages as A, type BuildRouteResult as B, type WagmiBridge as C, DEFAULT_AUTO_DETECT_PROVIDER as D, type EIP1193 as E, type FeatureFlags as F, type WagmiConnector as G, type WalletAddressResolution as H, IdentityStore as I, type WalletAddressSource as J, type WalletCategory as K, type WalletConnectConfig as L, type WalletEcosystem as M, type WalletId as N, type WalletIdentity as O, type WalletIdentityAddress as P, type WalletIdentityChainLike as Q, type RateLimitInfo as R, type SimpleWalletInterface as S, type TrustwareConfigOptions as T, type WalletMeta as U, buildWalletIdentityAddress as V, type WalletInterFaceAPI as W, createWalletIdentity as X, resolveWalletAddressForChain as Y, upsertWalletIdentityAddress as Z, useWalletExternalDisconnect as _, TrustwareError as a, useWireDetectionIntoManager as a0, walletManager as a1, type WalletSnapshot as a2, useWalletConnectConnect as a3, buildRoute as a4, buildDepositAddress as a5, submitReceipt as a6, getStatus as a7, pollStatus as a8, type Transaction as b, type TrustwareEvent as c, DEFAULT_FEATURE_FLAGS as d, DEFAULT_MESSAGES as e, DEFAULT_RETRY_CONFIG as f, DEFAULT_SLIPPAGE as g, type DetectedWallet as h, type EIP6963ProviderDetail as i, type EvmWalletInterface as j, type ResolvedFeatureFlags as k, type ResolvedRetryConfig as l, type ResolvedTrustwareConfig as m, type ResolvedWalletConnectConfig as n, type RetryConfig as o, type RouteEstimate as p, type RouteIntent as q, type RouteParams as r, type RoutePlan as s, type RouteSponsorship as t, type RoutesConfig as u, type SolanaProviderLike as v, type SolanaWalletInterface as w, type SponsorshipApproval as x, type SwapTokenRef as y, type TrustwareTheme as z };
844
+ export { type WalletConnectConfig as $, type ResolvedWalletConnectConfig as A, type BuildRouteBody as B, type RetryConfig as C, type DetectedWallet as D, type EIP1193 as E, type FeatureFlags as F, type RouteApproval as G, type RouteEstimate as H, IdentityStore as I, type RouteIntent as J, type RouteParams as K, type RoutePlan as L, type RouteSponsorship as M, type RoutesConfig as N, type SimpleWalletInterface as O, type PostHookRequest as P, type SponsorshipApproval as Q, type RateLimitInfo as R, type SolanaProviderLike as S, type TrustwareConfigOptions as T, type SwapTokenRef as U, type TrustwareTheme as V, type WalletMeta as W, type TrustwareWidgetMessages as X, type WalletAddressResolution as Y, type WalletAddressSource as Z, type WalletCategory as _, type WalletId as a, type WalletEcosystem as a0, type WalletIdentity as a1, type WalletIdentityAddress as a2, type WalletIdentityChainLike as a3, buildWalletIdentityAddress as a4, createWalletIdentity as a5, resolveWalletAddressForChain as a6, upsertWalletIdentityAddress as a7, buildRoute as a8, buildDepositAddress as a9, submitReceipt as aa, submitStepReceipt as ab, getStatus as ac, pollStatus as ad, type SolanaWalletInterface as b, type WagmiBridge as c, type WagmiConnector as d, type WalletSnapshot as e, useWalletExternalDisconnect as f, useWalletInfo as g, useWireDetectionIntoManager as h, type WalletInterFaceAPI as i, TrustwareError as j, type Transaction as k, type TrustwareEvent as l, type BuildRouteResponse as m, type BuildRouteResult as n, DEFAULT_AUTO_DETECT_PROVIDER as o, DEFAULT_FEATURE_FLAGS as p, DEFAULT_MESSAGES as q, DEFAULT_RETRY_CONFIG as r, DEFAULT_SLIPPAGE as s, type EIP6963ProviderDetail as t, useWalletConnectConnect as u, type EvmWalletInterface as v, walletManager as w, type ResolvedFeatureFlags as x, type ResolvedRetryConfig as y, type ResolvedTrustwareConfig as z };
@@ -1,4 +1,4 @@
1
- import { h as DetectedWallet, C as WagmiBridge, W as WalletInterFaceAPI, E as EIP1193, N as WalletId, i as EIP6963ProviderDetail } from './manager-Dn4muk74.js';
1
+ import { D as DetectedWallet, c as WagmiBridge, i as WalletInterFaceAPI, E as EIP1193, a as WalletId, t as EIP6963ProviderDetail, W as WalletMeta } from './manager-BY3NHAks.js';
2
2
 
3
3
  /** Try wagmi bridge first (if provided), otherwise return EIP-1193 adapter. */
4
4
  declare function connectDetectedWallet(dw: DetectedWallet, opts?: {
@@ -32,4 +32,7 @@ declare function useWalletDetection(timeoutMs?: number): {
32
32
  };
33
33
  declare function useIsMobile(): boolean;
34
34
 
35
- export { useWagmi as a, useWalletDetection as b, connectDetectedWallet as c, autoDetectWallet as d, buildDetectedWalletFromProvider as e, createWalletConnectEntry as f, useIsMobile as g, toWalletInterfaceFromDetected as t, useEIP1193 as u };
35
+ declare const POPULAR_ORDER: WalletId[];
36
+ declare const WALLETS: WalletMeta[];
37
+
38
+ export { POPULAR_ORDER as P, WALLETS as W, autoDetectWallet as a, buildDetectedWalletFromProvider as b, connectDetectedWallet as c, createWalletConnectEntry as d, useIsMobile as e, useWagmi as f, useWalletDetection as g, toWalletInterfaceFromDetected as t, useEIP1193 as u };
@@ -1,4 +1,4 @@
1
- import { h as DetectedWallet, C as WagmiBridge, W as WalletInterFaceAPI, E as EIP1193, N as WalletId, i as EIP6963ProviderDetail } from './manager-DWFNyouP.cjs';
1
+ import { D as DetectedWallet, c as WagmiBridge, i as WalletInterFaceAPI, E as EIP1193, a as WalletId, t as EIP6963ProviderDetail, W as WalletMeta } from './manager-DT8enQbE.cjs';
2
2
 
3
3
  /** Try wagmi bridge first (if provided), otherwise return EIP-1193 adapter. */
4
4
  declare function connectDetectedWallet(dw: DetectedWallet, opts?: {
@@ -32,4 +32,7 @@ declare function useWalletDetection(timeoutMs?: number): {
32
32
  };
33
33
  declare function useIsMobile(): boolean;
34
34
 
35
- export { useWagmi as a, useWalletDetection as b, connectDetectedWallet as c, autoDetectWallet as d, buildDetectedWalletFromProvider as e, createWalletConnectEntry as f, useIsMobile as g, toWalletInterfaceFromDetected as t, useEIP1193 as u };
35
+ declare const POPULAR_ORDER: WalletId[];
36
+ declare const WALLETS: WalletMeta[];
37
+
38
+ export { POPULAR_ORDER as P, WALLETS as W, autoDetectWallet as a, buildDetectedWalletFromProvider as b, connectDetectedWallet as c, createWalletConnectEntry as d, useIsMobile as e, useWagmi as f, useWalletDetection as g, toWalletInterfaceFromDetected as t, useEIP1193 as u };
@@ -12265,7 +12265,7 @@ var init_constants = __esm({
12265
12265
  "src/constants.ts"() {
12266
12266
  "use strict";
12267
12267
  SDK_NAME = "@trustware/sdk";
12268
- SDK_VERSION = "1.1.9-staging.7";
12268
+ SDK_VERSION = "1.1.11-staging.1";
12269
12269
  API_ROOT = "https://bv-staging-api.trustware.io";
12270
12270
  API_PREFIX = "/api";
12271
12271
  }