@arkade-os/sdk 0.4.75 → 0.4.76

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/dist/adapters/expo.cjs +5 -5
  2. package/dist/adapters/expo.d.cts +2 -2
  3. package/dist/adapters/expo.d.ts +2 -2
  4. package/dist/adapters/expo.js +3 -3
  5. package/dist/adapters/indexedDB.cjs +5 -5
  6. package/dist/adapters/indexedDB.js +4 -4
  7. package/dist/{asyncStorageTaskQueue-5k0H_cDM.d.cts → asyncStorageTaskQueue-D7BU-BdP.d.cts} +1 -1
  8. package/dist/{asyncStorageTaskQueue-DjwCbb07.d.ts → asyncStorageTaskQueue-DrKbfleJ.d.ts} +1 -1
  9. package/dist/{chunk-YA3L3WL4.cjs → chunk-2KFXM3N5.cjs} +17 -17
  10. package/dist/{chunk-YA3L3WL4.cjs.map → chunk-2KFXM3N5.cjs.map} +1 -1
  11. package/dist/{chunk-PS564TAU.js → chunk-54W6QBXL.js} +3 -3
  12. package/dist/{chunk-PS564TAU.js.map → chunk-54W6QBXL.js.map} +1 -1
  13. package/dist/{chunk-4GLSOP6L.js → chunk-7UJLIZQU.js} +3 -3
  14. package/dist/{chunk-4GLSOP6L.js.map → chunk-7UJLIZQU.js.map} +1 -1
  15. package/dist/{chunk-YYWEBYFJ.cjs → chunk-CQNX4BTA.cjs} +49 -49
  16. package/dist/{chunk-YYWEBYFJ.cjs.map → chunk-CQNX4BTA.cjs.map} +1 -1
  17. package/dist/{chunk-UKFA7NVE.js → chunk-F6YOCYWU.js} +3 -3
  18. package/dist/{chunk-UKFA7NVE.js.map → chunk-F6YOCYWU.js.map} +1 -1
  19. package/dist/{chunk-EHJYR4E5.cjs → chunk-LHSVPDFJ.cjs} +501 -464
  20. package/dist/chunk-LHSVPDFJ.cjs.map +1 -0
  21. package/dist/{chunk-2Q2PYU3Y.cjs → chunk-LQM6RHNT.cjs} +10 -10
  22. package/dist/{chunk-2Q2PYU3Y.cjs.map → chunk-LQM6RHNT.cjs.map} +1 -1
  23. package/dist/{chunk-2ULUCL6A.js → chunk-MUBPGYUE.js} +4 -4
  24. package/dist/{chunk-2ULUCL6A.js.map → chunk-MUBPGYUE.js.map} +1 -1
  25. package/dist/{chunk-SKAL4MCW.js → chunk-O2BIWLZC.js} +4 -4
  26. package/dist/{chunk-SKAL4MCW.js.map → chunk-O2BIWLZC.js.map} +1 -1
  27. package/dist/{chunk-J5EX3OMM.cjs → chunk-P53OHGXY.cjs} +3 -3
  28. package/dist/{chunk-J5EX3OMM.cjs.map → chunk-P53OHGXY.cjs.map} +1 -1
  29. package/dist/{chunk-SH23SRZE.cjs → chunk-T327OEMV.cjs} +17 -17
  30. package/dist/{chunk-SH23SRZE.cjs.map → chunk-T327OEMV.cjs.map} +1 -1
  31. package/dist/{chunk-FTLPTF3R.js → chunk-WMHELOHH.js} +52 -15
  32. package/dist/chunk-WMHELOHH.js.map +1 -0
  33. package/dist/contracts/handlers/index.cjs +9 -9
  34. package/dist/contracts/handlers/index.d.cts +3 -3
  35. package/dist/contracts/handlers/index.d.ts +3 -3
  36. package/dist/contracts/handlers/index.js +2 -2
  37. package/dist/{delegate-D_sW61rj.d.ts → delegate-BAYpqkEx.d.ts} +1 -1
  38. package/dist/{delegate-D0v8yT-a.d.cts → delegate-CR7msIXK.d.cts} +1 -1
  39. package/dist/{hdWalletCapable-DHCNbAgl.d.ts → hdWalletCapable-BSF29IjK.d.ts} +2 -2
  40. package/dist/{hdWalletCapable-66hG5KQP.d.cts → hdWalletCapable-BbZxCUeZ.d.cts} +2 -2
  41. package/dist/{index-B2JSxDi1.d.cts → index-4NF3srcg.d.cts} +2 -2
  42. package/dist/{index-TZBbMNqA.d.ts → index-B_RYn9rg.d.cts} +4 -0
  43. package/dist/{index-TZBbMNqA.d.cts → index-B_RYn9rg.d.ts} +4 -0
  44. package/dist/{index-vUeTpifq.d.ts → index-Dj2yOhQ2.d.ts} +2 -2
  45. package/dist/index.cjs +303 -303
  46. package/dist/index.d.cts +8 -8
  47. package/dist/index.d.ts +8 -8
  48. package/dist/index.js +4 -4
  49. package/dist/repositories/realm/index.cjs +19 -19
  50. package/dist/repositories/realm/index.d.cts +2 -2
  51. package/dist/repositories/realm/index.d.ts +2 -2
  52. package/dist/repositories/realm/index.js +5 -5
  53. package/dist/repositories/sqlite/index.cjs +18 -18
  54. package/dist/repositories/sqlite/index.d.cts +2 -2
  55. package/dist/repositories/sqlite/index.d.ts +2 -2
  56. package/dist/repositories/sqlite/index.js +5 -5
  57. package/dist/{taskRunner-CAAPpdyi.d.cts → taskRunner-DGxde-YU.d.cts} +1 -1
  58. package/dist/{taskRunner-CairkunF.d.ts → taskRunner-TzGUhxP-.d.ts} +1 -1
  59. package/dist/wallet/expo/background.cjs +14 -14
  60. package/dist/wallet/expo/background.d.cts +3 -3
  61. package/dist/wallet/expo/background.d.ts +3 -3
  62. package/dist/wallet/expo/background.js +6 -6
  63. package/dist/wallet/expo/index.cjs +14 -14
  64. package/dist/wallet/expo/index.d.cts +4 -4
  65. package/dist/wallet/expo/index.d.ts +4 -4
  66. package/dist/wallet/expo/index.js +5 -5
  67. package/dist/worker/expo/index.cjs +9 -9
  68. package/dist/worker/expo/index.d.cts +4 -4
  69. package/dist/worker/expo/index.d.ts +4 -4
  70. package/dist/worker/expo/index.js +5 -5
  71. package/package.json +1 -1
  72. package/dist/chunk-EHJYR4E5.cjs.map +0 -1
  73. package/dist/chunk-FTLPTF3R.js.map +0 -1
@@ -1,38 +1,38 @@
1
1
  'use strict';
2
2
 
3
- var chunkYYWEBYFJ_cjs = require('../../chunk-YYWEBYFJ.cjs');
4
- require('../../chunk-J5EX3OMM.cjs');
3
+ var chunkCQNX4BTA_cjs = require('../../chunk-CQNX4BTA.cjs');
4
+ require('../../chunk-P53OHGXY.cjs');
5
5
  require('../../chunk-5BLDMQED.cjs');
6
6
 
7
7
 
8
8
 
9
9
  Object.defineProperty(exports, "ArkadeContractHandler", {
10
10
  enumerable: true,
11
- get: function () { return chunkYYWEBYFJ_cjs.ArkadeContractHandler; }
11
+ get: function () { return chunkCQNX4BTA_cjs.ArkadeContractHandler; }
12
12
  });
13
13
  Object.defineProperty(exports, "BoardingContractHandler", {
14
14
  enumerable: true,
15
- get: function () { return chunkYYWEBYFJ_cjs.BoardingContractHandler; }
15
+ get: function () { return chunkCQNX4BTA_cjs.BoardingContractHandler; }
16
16
  });
17
17
  Object.defineProperty(exports, "DefaultContractHandler", {
18
18
  enumerable: true,
19
- get: function () { return chunkYYWEBYFJ_cjs.DefaultContractHandler; }
19
+ get: function () { return chunkCQNX4BTA_cjs.DefaultContractHandler; }
20
20
  });
21
21
  Object.defineProperty(exports, "DelegateContractHandler", {
22
22
  enumerable: true,
23
- get: function () { return chunkYYWEBYFJ_cjs.DelegateContractHandler; }
23
+ get: function () { return chunkCQNX4BTA_cjs.DelegateContractHandler; }
24
24
  });
25
25
  Object.defineProperty(exports, "VHTLCContractHandler", {
26
26
  enumerable: true,
27
- get: function () { return chunkYYWEBYFJ_cjs.VHTLCContractHandler; }
27
+ get: function () { return chunkCQNX4BTA_cjs.VHTLCContractHandler; }
28
28
  });
29
29
  Object.defineProperty(exports, "VHTLCV2ContractHandler", {
30
30
  enumerable: true,
31
- get: function () { return chunkYYWEBYFJ_cjs.VHTLCV2ContractHandler; }
31
+ get: function () { return chunkCQNX4BTA_cjs.VHTLCV2ContractHandler; }
32
32
  });
33
33
  Object.defineProperty(exports, "contractHandlers", {
34
34
  enumerable: true,
35
- get: function () { return chunkYYWEBYFJ_cjs.contractHandlers; }
35
+ get: function () { return chunkCQNX4BTA_cjs.contractHandlers; }
36
36
  });
37
37
  //# sourceMappingURL=index.cjs.map
38
38
  //# sourceMappingURL=index.cjs.map
@@ -1,7 +1,7 @@
1
- export { n as ArkadeContractHandler, B as BoardingContractHandler, o as BoardingContractParams, D as DefaultContractHandler, q as DefaultContractParams, t as DelegateContractHandler, u as DelegateContractParams, x as VHTLCContractHandler, y as VHTLCContractParams, z as VHTLCV2ContractHandler, E as VHTLCV2ContractParams, F as contractHandlers } from '../../index-B2JSxDi1.cjs';
2
- import '../../index-TZBbMNqA.cjs';
1
+ export { n as ArkadeContractHandler, B as BoardingContractHandler, o as BoardingContractParams, D as DefaultContractHandler, q as DefaultContractParams, t as DelegateContractHandler, u as DelegateContractParams, x as VHTLCContractHandler, y as VHTLCContractParams, z as VHTLCV2ContractHandler, E as VHTLCV2ContractParams, F as contractHandlers } from '../../index-4NF3srcg.cjs';
2
+ import '../../index-B_RYn9rg.cjs';
3
3
  import '@scure/btc-signer/utils.js';
4
4
  import '@scure/btc-signer/transaction.js';
5
5
  import '@scure/btc-signer';
6
6
  import '@scure/btc-signer/psbt.js';
7
- import '../../delegate-D0v8yT-a.cjs';
7
+ import '../../delegate-CR7msIXK.cjs';
@@ -1,7 +1,7 @@
1
- export { n as ArkadeContractHandler, B as BoardingContractHandler, o as BoardingContractParams, D as DefaultContractHandler, q as DefaultContractParams, t as DelegateContractHandler, u as DelegateContractParams, x as VHTLCContractHandler, y as VHTLCContractParams, z as VHTLCV2ContractHandler, E as VHTLCV2ContractParams, F as contractHandlers } from '../../index-vUeTpifq.js';
2
- import '../../index-TZBbMNqA.js';
1
+ export { n as ArkadeContractHandler, B as BoardingContractHandler, o as BoardingContractParams, D as DefaultContractHandler, q as DefaultContractParams, t as DelegateContractHandler, u as DelegateContractParams, x as VHTLCContractHandler, y as VHTLCContractParams, z as VHTLCV2ContractHandler, E as VHTLCV2ContractParams, F as contractHandlers } from '../../index-Dj2yOhQ2.js';
2
+ import '../../index-B_RYn9rg.js';
3
3
  import '@scure/btc-signer/utils.js';
4
4
  import '@scure/btc-signer/transaction.js';
5
5
  import '@scure/btc-signer';
6
6
  import '@scure/btc-signer/psbt.js';
7
- import '../../delegate-D_sW61rj.js';
7
+ import '../../delegate-BAYpqkEx.js';
@@ -1,5 +1,5 @@
1
- export { ArkadeContractHandler, BoardingContractHandler, DefaultContractHandler, DelegateContractHandler, VHTLCContractHandler, VHTLCV2ContractHandler, contractHandlers } from '../../chunk-4GLSOP6L.js';
2
- import '../../chunk-UKFA7NVE.js';
1
+ export { ArkadeContractHandler, BoardingContractHandler, DefaultContractHandler, DelegateContractHandler, VHTLCContractHandler, VHTLCV2ContractHandler, contractHandlers } from '../../chunk-7UJLIZQU.js';
2
+ import '../../chunk-F6YOCYWU.js';
3
3
  import '../../chunk-NSBPE2FW.js';
4
4
  //# sourceMappingURL=index.js.map
5
5
  //# sourceMappingURL=index.js.map
@@ -1,5 +1,5 @@
1
1
  import { Bytes } from '@scure/btc-signer/utils.js';
2
- import { s as RelativeTimelock, V as VtxoScript, t as TapLeafScript } from './index-TZBbMNqA.js';
2
+ import { s as RelativeTimelock, V as VtxoScript, t as TapLeafScript } from './index-B_RYn9rg.js';
3
3
 
4
4
  /**
5
5
  * DefaultVtxo is the default implementation of a VtxoScript.
@@ -1,5 +1,5 @@
1
1
  import { Bytes } from '@scure/btc-signer/utils.js';
2
- import { s as RelativeTimelock, V as VtxoScript, t as TapLeafScript } from './index-TZBbMNqA.cjs';
2
+ import { s as RelativeTimelock, V as VtxoScript, t as TapLeafScript } from './index-B_RYn9rg.cjs';
3
3
 
4
4
  /**
5
5
  * DefaultVtxo is the default implementation of a VtxoScript.
@@ -1,8 +1,8 @@
1
- import { s as RelativeTimelock, M as Network, P as CSVMultisigTapscript, Q as BatchStartedEvent, U as TreeSigningStartedEvent, X as TxTree, Y as TreeNoncesEvent, Z as BatchFinalizationEvent, _ as BatchFinalizedEvent, $ as BatchFailedEvent, a0 as TreeTxEvent, a1 as TreeSignatureEvent, k as SettlementEvent, b as WalletConfig, W as WalletRepository, C as ContractRepository, a2 as DescriptorProvider, f as IContractManager, a3 as IReadonlyWallet, a4 as ReadonlyIdentity, a5 as OnchainProvider, r as IndexerProvider, a6 as DelegateProvider, a7 as ReadonlyWalletConfig, B as IntentRepository, H as VirtualTxRepository, a8 as ExitCaptureMode, a9 as ExitDataSource, d as ActivityRegistry, aa as IReadonlyAssetManager, ab as ContractSyncState, ac as RecipientAddressContext, q as ArkProvider, ad as NetworkName, ae as ArkInfo, af as ArkAddress, c as WalletBalance, G as GetVtxosFilter, N as NormalizedExtendedVirtualCoin, ag as ContractWithVtxos, ah as selectPendingRecoveryOutpoints, A as ArkTransaction, e as Activity, E as ExtendedCoin, ai as Coin, w as ExtendedVirtualCoin, aj as ContractManager, ak as ContractManagerConfig, I as IWallet, a as Identity, g as GetNewAddressesOptions, h as NewAddress, al as SettlementConfig, m as IAssetManager, am as VtxoManager, i as IDelegateManager, S as SendBitcoinParams, j as SettleParams, R as Recipient, an as SignerSession, ao as SignedIntent, ap as Intent, l as SendParams, aq as TimeHeight } from './index-TZBbMNqA.js';
1
+ import { s as RelativeTimelock, M as Network, P as CSVMultisigTapscript, Q as BatchStartedEvent, U as TreeSigningStartedEvent, X as TxTree, Y as TreeNoncesEvent, Z as BatchFinalizationEvent, _ as BatchFinalizedEvent, $ as BatchFailedEvent, a0 as TreeTxEvent, a1 as TreeSignatureEvent, k as SettlementEvent, b as WalletConfig, W as WalletRepository, C as ContractRepository, a2 as DescriptorProvider, f as IContractManager, a3 as IReadonlyWallet, a4 as ReadonlyIdentity, a5 as OnchainProvider, r as IndexerProvider, a6 as DelegateProvider, a7 as ReadonlyWalletConfig, B as IntentRepository, H as VirtualTxRepository, a8 as ExitCaptureMode, a9 as ExitDataSource, d as ActivityRegistry, aa as IReadonlyAssetManager, ab as ContractSyncState, ac as RecipientAddressContext, q as ArkProvider, ad as NetworkName, ae as ArkInfo, af as ArkAddress, c as WalletBalance, G as GetVtxosFilter, N as NormalizedExtendedVirtualCoin, ag as ContractWithVtxos, ah as selectPendingRecoveryOutpoints, A as ArkTransaction, e as Activity, E as ExtendedCoin, ai as Coin, w as ExtendedVirtualCoin, aj as ContractManager, ak as ContractManagerConfig, I as IWallet, a as Identity, g as GetNewAddressesOptions, h as NewAddress, al as SettlementConfig, m as IAssetManager, am as VtxoManager, i as IDelegateManager, S as SendBitcoinParams, j as SettleParams, R as Recipient, an as SignerSession, ao as SignedIntent, ap as Intent, l as SendParams, aq as TimeHeight } from './index-B_RYn9rg.js';
2
2
  import { Transaction } from '@scure/btc-signer';
3
3
  import { TransactionOutput } from '@scure/btc-signer/psbt.js';
4
4
  import { Bytes } from '@scure/btc-signer/utils.js';
5
- import { D as DefaultVtxo, a as DelegateVtxo } from './delegate-D_sW61rj.js';
5
+ import { D as DefaultVtxo, a as DelegateVtxo } from './delegate-BAYpqkEx.js';
6
6
 
7
7
  /** Wall-clock floor for `batchExpiry` outside regtest. */
8
8
  declare const DEFAULT_MIN_BATCH_EXPIRY_SECONDS = 86400n;
@@ -1,8 +1,8 @@
1
- import { s as RelativeTimelock, M as Network, P as CSVMultisigTapscript, Q as BatchStartedEvent, U as TreeSigningStartedEvent, X as TxTree, Y as TreeNoncesEvent, Z as BatchFinalizationEvent, _ as BatchFinalizedEvent, $ as BatchFailedEvent, a0 as TreeTxEvent, a1 as TreeSignatureEvent, k as SettlementEvent, b as WalletConfig, W as WalletRepository, C as ContractRepository, a2 as DescriptorProvider, f as IContractManager, a3 as IReadonlyWallet, a4 as ReadonlyIdentity, a5 as OnchainProvider, r as IndexerProvider, a6 as DelegateProvider, a7 as ReadonlyWalletConfig, B as IntentRepository, H as VirtualTxRepository, a8 as ExitCaptureMode, a9 as ExitDataSource, d as ActivityRegistry, aa as IReadonlyAssetManager, ab as ContractSyncState, ac as RecipientAddressContext, q as ArkProvider, ad as NetworkName, ae as ArkInfo, af as ArkAddress, c as WalletBalance, G as GetVtxosFilter, N as NormalizedExtendedVirtualCoin, ag as ContractWithVtxos, ah as selectPendingRecoveryOutpoints, A as ArkTransaction, e as Activity, E as ExtendedCoin, ai as Coin, w as ExtendedVirtualCoin, aj as ContractManager, ak as ContractManagerConfig, I as IWallet, a as Identity, g as GetNewAddressesOptions, h as NewAddress, al as SettlementConfig, m as IAssetManager, am as VtxoManager, i as IDelegateManager, S as SendBitcoinParams, j as SettleParams, R as Recipient, an as SignerSession, ao as SignedIntent, ap as Intent, l as SendParams, aq as TimeHeight } from './index-TZBbMNqA.cjs';
1
+ import { s as RelativeTimelock, M as Network, P as CSVMultisigTapscript, Q as BatchStartedEvent, U as TreeSigningStartedEvent, X as TxTree, Y as TreeNoncesEvent, Z as BatchFinalizationEvent, _ as BatchFinalizedEvent, $ as BatchFailedEvent, a0 as TreeTxEvent, a1 as TreeSignatureEvent, k as SettlementEvent, b as WalletConfig, W as WalletRepository, C as ContractRepository, a2 as DescriptorProvider, f as IContractManager, a3 as IReadonlyWallet, a4 as ReadonlyIdentity, a5 as OnchainProvider, r as IndexerProvider, a6 as DelegateProvider, a7 as ReadonlyWalletConfig, B as IntentRepository, H as VirtualTxRepository, a8 as ExitCaptureMode, a9 as ExitDataSource, d as ActivityRegistry, aa as IReadonlyAssetManager, ab as ContractSyncState, ac as RecipientAddressContext, q as ArkProvider, ad as NetworkName, ae as ArkInfo, af as ArkAddress, c as WalletBalance, G as GetVtxosFilter, N as NormalizedExtendedVirtualCoin, ag as ContractWithVtxos, ah as selectPendingRecoveryOutpoints, A as ArkTransaction, e as Activity, E as ExtendedCoin, ai as Coin, w as ExtendedVirtualCoin, aj as ContractManager, ak as ContractManagerConfig, I as IWallet, a as Identity, g as GetNewAddressesOptions, h as NewAddress, al as SettlementConfig, m as IAssetManager, am as VtxoManager, i as IDelegateManager, S as SendBitcoinParams, j as SettleParams, R as Recipient, an as SignerSession, ao as SignedIntent, ap as Intent, l as SendParams, aq as TimeHeight } from './index-B_RYn9rg.cjs';
2
2
  import { Transaction } from '@scure/btc-signer';
3
3
  import { TransactionOutput } from '@scure/btc-signer/psbt.js';
4
4
  import { Bytes } from '@scure/btc-signer/utils.js';
5
- import { D as DefaultVtxo, a as DelegateVtxo } from './delegate-D0v8yT-a.cjs';
5
+ import { D as DefaultVtxo, a as DelegateVtxo } from './delegate-CR7msIXK.cjs';
6
6
 
7
7
  /** Wall-clock floor for `batchExpiry` outside regtest. */
8
8
  declare const DEFAULT_MIN_BATCH_EXPIRY_SECONDS = 86400n;
@@ -1,5 +1,5 @@
1
- import { bh as ContractHandler, s as RelativeTimelock, bu as Discoverable, V as VtxoScript, t as TapLeafScript, d8 as TapscriptDeriving } from './index-TZBbMNqA.cjs';
2
- import { D as DefaultVtxo, a as DelegateVtxo } from './delegate-D0v8yT-a.cjs';
1
+ import { bh as ContractHandler, s as RelativeTimelock, bu as Discoverable, V as VtxoScript, t as TapLeafScript, d8 as TapscriptDeriving } from './index-B_RYn9rg.cjs';
2
+ import { D as DefaultVtxo, a as DelegateVtxo } from './delegate-CR7msIXK.cjs';
3
3
  import { Bytes } from '@scure/btc-signer/utils.js';
4
4
 
5
5
  /**
@@ -4060,6 +4060,8 @@ type CreateContractParams = Omit<Contract, "createdAt" | "state"> & {
4060
4060
  declare class ContractManager implements IContractManager {
4061
4061
  private config;
4062
4062
  private watcher;
4063
+ /** Per-sync tapscript caches start empty; this outlives them. Consumers only ever see clones. */
4064
+ private readonly tapscriptMemo;
4063
4065
  private initialized;
4064
4066
  private eventCallbacks;
4065
4067
  private stopWatcherFn?;
@@ -4935,6 +4937,7 @@ interface DerivedContractTapscripts {
4935
4937
  * doesn't expose the legacy `forfeit()` method (e.g. program-compiled arkade
4936
4938
  * contracts, where the right leaf depends on the program) implement this so
4937
4939
  * the annotation pipeline stays type-agnostic.
4940
+ * Must be pure in `(contract.type, contract.script, contract.params)`: `ContractManager` memoizes the result for its lifetime.
4938
4941
  */
4939
4942
  interface TapscriptDeriving<S extends VtxoScript = VtxoScript> {
4940
4943
  deriveTapscripts(script: S, contract: Contract): DerivedContractTapscripts;
@@ -5654,6 +5657,7 @@ interface WalletBalance {
5654
5657
  * Immediately spendable offchain balance — what generic selection would
5655
5658
  * pick, so nothing counted here can be refused by `send`:
5656
5659
  * `settled + preconfirmed - gated - intentLocked`.
5660
+ * A dust carrier is reserved if any assets are held on outputs comprising this balance.
5657
5661
  */
5658
5662
  available: number;
5659
5663
  /**
@@ -4060,6 +4060,8 @@ type CreateContractParams = Omit<Contract, "createdAt" | "state"> & {
4060
4060
  declare class ContractManager implements IContractManager {
4061
4061
  private config;
4062
4062
  private watcher;
4063
+ /** Per-sync tapscript caches start empty; this outlives them. Consumers only ever see clones. */
4064
+ private readonly tapscriptMemo;
4063
4065
  private initialized;
4064
4066
  private eventCallbacks;
4065
4067
  private stopWatcherFn?;
@@ -4935,6 +4937,7 @@ interface DerivedContractTapscripts {
4935
4937
  * doesn't expose the legacy `forfeit()` method (e.g. program-compiled arkade
4936
4938
  * contracts, where the right leaf depends on the program) implement this so
4937
4939
  * the annotation pipeline stays type-agnostic.
4940
+ * Must be pure in `(contract.type, contract.script, contract.params)`: `ContractManager` memoizes the result for its lifetime.
4938
4941
  */
4939
4942
  interface TapscriptDeriving<S extends VtxoScript = VtxoScript> {
4940
4943
  deriveTapscripts(script: S, contract: Contract): DerivedContractTapscripts;
@@ -5654,6 +5657,7 @@ interface WalletBalance {
5654
5657
  * Immediately spendable offchain balance — what generic selection would
5655
5658
  * pick, so nothing counted here can be refused by `send`:
5656
5659
  * `settled + preconfirmed - gated - intentLocked`.
5660
+ * A dust carrier is reserved if any assets are held on outputs comprising this balance.
5657
5661
  */
5658
5662
  available: number;
5659
5663
  /**
@@ -1,5 +1,5 @@
1
- import { bh as ContractHandler, s as RelativeTimelock, bu as Discoverable, V as VtxoScript, t as TapLeafScript, d8 as TapscriptDeriving } from './index-TZBbMNqA.js';
2
- import { D as DefaultVtxo, a as DelegateVtxo } from './delegate-D_sW61rj.js';
1
+ import { bh as ContractHandler, s as RelativeTimelock, bu as Discoverable, V as VtxoScript, t as TapLeafScript, d8 as TapscriptDeriving } from './index-B_RYn9rg.js';
2
+ import { D as DefaultVtxo, a as DelegateVtxo } from './delegate-BAYpqkEx.js';
3
3
  import { Bytes } from '@scure/btc-signer/utils.js';
4
4
 
5
5
  /**