@btc-vision/bitcoin 7.0.0-alpha.1 → 7.0.0-alpha.2

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 (160) hide show
  1. package/browser/address.d.ts +5 -1
  2. package/browser/address.d.ts.map +1 -1
  3. package/browser/branded.d.ts +3 -14
  4. package/browser/branded.d.ts.map +1 -1
  5. package/browser/ecc/context.d.ts.map +1 -1
  6. package/browser/index.d.ts +2 -1
  7. package/browser/index.d.ts.map +1 -1
  8. package/browser/index.js +2964 -2919
  9. package/browser/opcodes.d.ts +11 -0
  10. package/browser/opcodes.d.ts.map +1 -1
  11. package/browser/psbt/PsbtCache.d.ts +54 -0
  12. package/browser/psbt/PsbtCache.d.ts.map +1 -0
  13. package/browser/psbt/PsbtFinalizer.d.ts +21 -0
  14. package/browser/psbt/PsbtFinalizer.d.ts.map +1 -0
  15. package/browser/psbt/PsbtSigner.d.ts +32 -0
  16. package/browser/psbt/PsbtSigner.d.ts.map +1 -0
  17. package/browser/psbt/PsbtTransaction.d.ts +25 -0
  18. package/browser/psbt/PsbtTransaction.d.ts.map +1 -0
  19. package/browser/psbt/types.d.ts +13 -13
  20. package/browser/psbt/types.d.ts.map +1 -1
  21. package/browser/psbt/validation.d.ts +1 -1
  22. package/browser/psbt/validation.d.ts.map +1 -1
  23. package/browser/psbt.d.ts +27 -39
  24. package/browser/psbt.d.ts.map +1 -1
  25. package/browser/script.d.ts.map +1 -1
  26. package/browser/transaction.d.ts +4 -4
  27. package/browser/transaction.d.ts.map +1 -1
  28. package/browser/types.d.ts +4 -2
  29. package/browser/types.d.ts.map +1 -1
  30. package/browser/workers/index.d.ts +3 -50
  31. package/browser/workers/index.d.ts.map +1 -1
  32. package/browser/workers/index.node.d.ts +24 -0
  33. package/browser/workers/index.node.d.ts.map +1 -0
  34. package/build/address.d.ts +5 -1
  35. package/build/address.d.ts.map +1 -1
  36. package/build/address.js +29 -17
  37. package/build/address.js.map +1 -1
  38. package/build/branded.d.ts +3 -14
  39. package/build/branded.d.ts.map +1 -1
  40. package/build/branded.js +0 -5
  41. package/build/branded.js.map +1 -1
  42. package/build/ecc/context.d.ts.map +1 -1
  43. package/build/ecc/context.js +68 -45
  44. package/build/ecc/context.js.map +1 -1
  45. package/build/index.d.ts +2 -1
  46. package/build/index.d.ts.map +1 -1
  47. package/build/index.js +1 -1
  48. package/build/index.js.map +1 -1
  49. package/build/opcodes.d.ts +11 -0
  50. package/build/opcodes.d.ts.map +1 -1
  51. package/build/opcodes.js +19 -4
  52. package/build/opcodes.js.map +1 -1
  53. package/build/psbt/PsbtCache.d.ts +54 -0
  54. package/build/psbt/PsbtCache.d.ts.map +1 -0
  55. package/build/psbt/PsbtCache.js +249 -0
  56. package/build/psbt/PsbtCache.js.map +1 -0
  57. package/build/psbt/PsbtFinalizer.d.ts +21 -0
  58. package/build/psbt/PsbtFinalizer.d.ts.map +1 -0
  59. package/build/psbt/PsbtFinalizer.js +157 -0
  60. package/build/psbt/PsbtFinalizer.js.map +1 -0
  61. package/build/psbt/PsbtSigner.d.ts +32 -0
  62. package/build/psbt/PsbtSigner.d.ts.map +1 -0
  63. package/build/psbt/PsbtSigner.js +192 -0
  64. package/build/psbt/PsbtSigner.js.map +1 -0
  65. package/build/psbt/PsbtTransaction.d.ts +25 -0
  66. package/build/psbt/PsbtTransaction.d.ts.map +1 -0
  67. package/build/psbt/PsbtTransaction.js +61 -0
  68. package/build/psbt/PsbtTransaction.js.map +1 -0
  69. package/build/psbt/types.d.ts +13 -13
  70. package/build/psbt/types.d.ts.map +1 -1
  71. package/build/psbt/validation.d.ts +1 -1
  72. package/build/psbt/validation.d.ts.map +1 -1
  73. package/build/psbt.d.ts +27 -39
  74. package/build/psbt.d.ts.map +1 -1
  75. package/build/psbt.js +139 -746
  76. package/build/psbt.js.map +1 -1
  77. package/build/script.d.ts.map +1 -1
  78. package/build/script.js +2 -2
  79. package/build/script.js.map +1 -1
  80. package/build/transaction.d.ts +4 -4
  81. package/build/transaction.d.ts.map +1 -1
  82. package/build/transaction.js +5 -4
  83. package/build/transaction.js.map +1 -1
  84. package/build/tsconfig.build.tsbuildinfo +1 -1
  85. package/build/types.d.ts +4 -2
  86. package/build/types.d.ts.map +1 -1
  87. package/build/types.js +9 -0
  88. package/build/types.js.map +1 -1
  89. package/build/workers/WorkerSigningPool.js +1 -1
  90. package/build/workers/WorkerSigningPool.js.map +1 -1
  91. package/build/workers/index.d.ts +3 -3
  92. package/build/workers/index.d.ts.map +1 -1
  93. package/build/workers/index.js +0 -3
  94. package/build/workers/index.js.map +1 -1
  95. package/build/workers/index.node.d.ts +24 -0
  96. package/build/workers/index.node.d.ts.map +1 -0
  97. package/build/workers/index.node.js +26 -0
  98. package/build/workers/index.node.js.map +1 -0
  99. package/package.json +28 -9
  100. package/src/address.ts +41 -18
  101. package/src/branded.ts +15 -13
  102. package/src/ecc/context.ts +75 -57
  103. package/src/index.ts +36 -1
  104. package/src/opcodes.ts +21 -4
  105. package/src/psbt/PsbtCache.ts +325 -0
  106. package/src/psbt/PsbtFinalizer.ts +213 -0
  107. package/src/psbt/PsbtSigner.ts +302 -0
  108. package/src/psbt/PsbtTransaction.ts +82 -0
  109. package/src/psbt/types.ts +13 -13
  110. package/src/psbt/validation.ts +1 -1
  111. package/src/psbt.ts +299 -1090
  112. package/src/script.ts +2 -2
  113. package/src/transaction.ts +9 -8
  114. package/src/types.ts +13 -0
  115. package/src/workers/WorkerSigningPool.ts +1 -1
  116. package/src/workers/index.node.ts +27 -0
  117. package/src/workers/index.ts +7 -9
  118. package/test/address.spec.ts +2 -2
  119. package/test/bitcoin.core.spec.ts +5 -2
  120. package/test/browser/payments.spec.ts +151 -0
  121. package/test/browser/psbt.spec.ts +1510 -0
  122. package/test/browser/script.spec.ts +223 -0
  123. package/test/browser/setup.ts +13 -0
  124. package/test/browser/workers-signing.spec.ts +537 -0
  125. package/test/crypto.spec.ts +2 -2
  126. package/test/fixtures/core/base58_encode_decode.json +12 -48
  127. package/test/fixtures/core/base58_keys_invalid.json +50 -150
  128. package/test/fixtures/core/sighash.json +1 -3
  129. package/test/fixtures/core/tx_valid.json +133 -501
  130. package/test/fixtures/embed.json +3 -11
  131. package/test/fixtures/p2ms.json +21 -91
  132. package/test/fixtures/p2pk.json +5 -24
  133. package/test/fixtures/p2pkh.json +7 -36
  134. package/test/fixtures/p2sh.json +8 -54
  135. package/test/fixtures/p2tr.json +2 -6
  136. package/test/fixtures/p2wpkh.json +7 -36
  137. package/test/fixtures/p2wsh.json +14 -59
  138. package/test/fixtures/psbt.json +2 -6
  139. package/test/fixtures/script.json +12 -48
  140. package/test/integration/addresses.spec.ts +11 -5
  141. package/test/integration/bip32.spec.ts +1 -1
  142. package/test/integration/cltv.spec.ts +10 -6
  143. package/test/integration/csv.spec.ts +10 -9
  144. package/test/integration/payments.spec.ts +8 -4
  145. package/test/integration/taproot.spec.ts +26 -6
  146. package/test/integration/transactions.spec.ts +22 -8
  147. package/test/payments.spec.ts +1 -1
  148. package/test/payments.utils.ts +1 -1
  149. package/test/psbt.spec.ts +250 -64
  150. package/test/script_signature.spec.ts +1 -1
  151. package/test/transaction.spec.ts +18 -5
  152. package/test/tsconfig.json +6 -20
  153. package/test/workers-pool.spec.ts +22 -23
  154. package/test/workers-signing.spec.ts +7 -3
  155. package/test/workers.spec.ts +6 -7
  156. package/typedoc.json +11 -1
  157. package/vitest.config.browser.ts +68 -0
  158. package/browser/ecpair.d.ts +0 -99
  159. package/src/ecpair.d.ts +0 -99
  160. package/test/taproot-cache.spec.ts +0 -694
@@ -1,55 +1,8 @@
1
- /**
2
- * Worker-based parallel signing module.
3
- *
4
- * Provides secure parallel signature computation using worker threads.
5
- * Works in both Node.js (worker_threads) and browsers (Web Workers).
6
- *
7
- * @example
8
- * ```typescript
9
- * import { WorkerSigningPool, SignatureType } from '@btc-vision/bitcoin/workers';
10
- *
11
- * // Get singleton pool
12
- * const pool = WorkerSigningPool.getInstance({ workerCount: 4 });
13
- *
14
- * // Keep workers alive for multiple signing operations
15
- * pool.preserveWorkers();
16
- *
17
- * // Prepare signing tasks (one per input)
18
- * const tasks = [
19
- * {
20
- * taskId: 'input-0',
21
- * inputIndex: 0,
22
- * hash: hash0,
23
- * signatureType: SignatureType.ECDSA,
24
- * sighashType: 0x01,
25
- * },
26
- * {
27
- * taskId: 'input-1',
28
- * inputIndex: 1,
29
- * hash: hash1,
30
- * signatureType: SignatureType.Schnorr,
31
- * sighashType: 0x00,
32
- * },
33
- * ];
34
- *
35
- * // Sign ALL inputs in parallel
36
- * const result = await pool.signBatch(tasks, keyPair);
37
- *
38
- * if (result.success) {
39
- * console.log(`Signed ${result.signatures.size} inputs in ${result.durationMs}ms`);
40
- * }
41
- *
42
- * // Cleanup when done (optional)
43
- * await pool.shutdown();
44
- * ```
45
- *
46
- * @packageDocumentation
47
- */
1
+ import { WorkerPoolConfig, SigningTask, ParallelSignerKeyPair, ParallelSigningResult } from './types.js';
48
2
  export { SignatureType, type SigningTaskMessage, type BatchSigningMessage, type BatchSigningTask, type BatchSigningResultMessage, type BatchSigningTaskResult, type BatchSigningTaskError, type WorkerInitMessage, type WorkerShutdownMessage, type WorkerMessage, type SigningResultMessage, type SigningErrorMessage, type WorkerReadyMessage, type WorkerShutdownAckMessage, type WorkerResponse, isSigningError, isSigningResult, isBatchResult, isWorkerReady, type WorkerEccLib, type WorkerPoolConfig, type SigningTask, type ParallelSignerKeyPair, type ParallelSigningResult, WorkerState, type PooledWorker, } from './types.js';
49
3
  export { WorkerSigningPool, getSigningPool } from './WorkerSigningPool.js';
50
4
  export { generateWorkerCode, createWorkerBlobUrl, revokeWorkerBlobUrl } from './signing-worker.js';
51
5
  export { ECC_BUNDLE, ECC_BUNDLE_SIZE } from './ecc-bundle.js';
52
- export { type NodeWorkerPoolConfig } from './WorkerSigningPool.node.js';
53
6
  export { signPsbtParallel, prepareSigningTasks, applySignaturesToPsbt, type ParallelSignOptions, type PsbtParallelKeyPair, } from './psbt-parallel.js';
54
7
  /**
55
8
  * Detects the runtime environment and returns the appropriate signing pool.
@@ -78,8 +31,8 @@ export declare function detectRuntime(): 'node' | 'browser' | 'unknown';
78
31
  * await pool.shutdown();
79
32
  * ```
80
33
  */
81
- export declare function createSigningPool(config?: import('./types.js').WorkerPoolConfig): Promise<{
82
- signBatch: (tasks: readonly import('./types.js').SigningTask[], keyPair: import('./types.js').ParallelSignerKeyPair) => Promise<import('./types.js').ParallelSigningResult>;
34
+ export declare function createSigningPool(config?: WorkerPoolConfig): Promise<{
35
+ signBatch: (tasks: readonly SigningTask[], keyPair: ParallelSignerKeyPair) => Promise<ParallelSigningResult>;
83
36
  preserveWorkers: () => void;
84
37
  releaseWorkers: () => void;
85
38
  shutdown: () => Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/workers/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAGH,OAAO,EACH,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,cAAc,EACnB,cAAc,EACd,eAAe,EACf,aAAa,EACb,aAAa,EACb,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,WAAW,EACX,KAAK,YAAY,GACpB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG3E,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAGnG,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAG9D,OAAO,EAAE,KAAK,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAGxE,OAAO,EACH,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,GAC3B,MAAM,oBAAoB,CAAC;AAE5B;;;;GAIG;AACH,wBAAgB,aAAa,IAAI,MAAM,GAAG,SAAS,GAAG,SAAS,CAQ9D;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,CAAC,EAAE,OAAO,YAAY,EAAE,gBAAgB,GAAG,OAAO,CAAC;IAC7F,SAAS,EAAE,CACP,KAAK,EAAE,SAAS,OAAO,YAAY,EAAE,WAAW,EAAE,EAClD,OAAO,EAAE,OAAO,YAAY,EAAE,qBAAqB,KAClD,OAAO,CAAC,OAAO,YAAY,EAAE,qBAAqB,CAAC,CAAC;IACzD,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,OAAO,CAAC;CAChC,CAAC,CAiBD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/workers/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAG9G,OAAO,EACH,aAAa,EACb,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,yBAAyB,EAC9B,KAAK,sBAAsB,EAC3B,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,qBAAqB,EAC1B,KAAK,aAAa,EAClB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,wBAAwB,EAC7B,KAAK,cAAc,EACnB,cAAc,EACd,eAAe,EACf,aAAa,EACb,aAAa,EACb,KAAK,YAAY,EACjB,KAAK,gBAAgB,EACrB,KAAK,WAAW,EAChB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,WAAW,EACX,KAAK,YAAY,GACpB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG3E,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAGnG,OAAO,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAG9D,OAAO,EACH,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,KAAK,mBAAmB,EACxB,KAAK,mBAAmB,GAC3B,MAAM,oBAAoB,CAAC;AAE5B;;;;GAIG;AACH,wBAAgB,aAAa,IAAI,MAAM,GAAG,SAAS,GAAG,SAAS,CAQ9D;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC;IACxE,SAAS,EAAE,CACP,KAAK,EAAE,SAAS,WAAW,EAAE,EAC7B,OAAO,EAAE,qBAAqB,KAC7B,OAAO,CAAC,qBAAqB,CAAC,CAAC;IACpC,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC;IACxB,mBAAmB,EAAE,OAAO,CAAC;CAChC,CAAC,CAgBD"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * Node.js worker pool entry point.
3
+ *
4
+ * This module provides direct access to Node.js-specific worker functionality.
5
+ * It re-exports everything from the base index plus Node.js specific exports.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * import { NodeWorkerSigningPool } from '@btc-vision/bitcoin/workers';
10
+ *
11
+ * const pool = NodeWorkerSigningPool.getInstance({ workerCount: 4 });
12
+ * await pool.initialize();
13
+ * pool.preserveWorkers();
14
+ *
15
+ * const result = await pool.signBatch(tasks, keyPair);
16
+ *
17
+ * await pool.shutdown();
18
+ * ```
19
+ *
20
+ * @packageDocumentation
21
+ */
22
+ export * from './index.js';
23
+ export { NodeWorkerSigningPool, type NodeWorkerPoolConfig } from './WorkerSigningPool.node.js';
24
+ //# sourceMappingURL=index.node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.node.d.ts","sourceRoot":"","sources":["../../src/workers/index.node.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,cAAc,YAAY,CAAC;AAG3B,OAAO,EAAE,qBAAqB,EAAE,KAAK,oBAAoB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -40,7 +40,11 @@ export declare function toBase58Check(hash: Bytes20, version: number): string;
40
40
  */
41
41
  export declare function toBech32(data: Uint8Array, version: number, prefix: string, prefixOpnet?: string): string;
42
42
  /**
43
- * decode address from output script with network, return address if matched
43
+ * decode address from output script with network, return address if matched.
44
+ *
45
+ * Uses fast byte-pattern matching for common script types (P2PKH, P2SH,
46
+ * P2WPKH, P2WSH, P2TR) to avoid constructing payment objects and catching
47
+ * exceptions. Falls back to payment constructors for exotic types.
44
48
  */
45
49
  export declare function fromOutputScript(output: Uint8Array, network?: Network): string;
46
50
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"address.d.ts","sourceRoot":"","sources":["../src/address.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,KAAK,YAAY,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEjE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAU7C,OAAO,EACH,KAAK,OAAO,EAOf,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,UAAU,EAAE,KAAK,YAAY,EAAE,CAAC;AAEzC,gCAAgC;AAChC,MAAM,WAAW,iBAAiB;IAC9B,mBAAmB;IACnB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,qDAAqD;IACrD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC5B;AAED,eAAO,MAAM,sBAAsB,EAAE,MAAW,CAAC;AACjD,eAAO,MAAM,sBAAsB,EAAE,MAAU,CAAC;AAChD,eAAO,MAAM,yBAAyB,EAAE,MAAW,CAAC;AACpD,eAAO,MAAM,kBAAkB,EAAE,MAAW,CAAC;AAC7C,eAAO,MAAM,oBAAoB,EAAE,MAAW,CAAC;AAC/C,eAAO,MAAM,yBAAyB,EAAE,MAAU,CAAC;AACnD,eAAO,MAAM,0BAA0B,EAAE,MAAa,CAAC;AAOvD,eAAO,MAAM,sBAAsB,GAAI,QAAQ,UAAU,KAAG,OAkB3D,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAoCjF;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAgBnF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,CAWlE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CASpE;AAED;;GAEG;AACH,wBAAgB,QAAQ,CACpB,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,WAAW,CAAC,EAAE,MAAM,GACrB,MAAM,CASR;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CA2B9E;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC;;OAEG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;OAKG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC1B,OAAO,EAAE,MAAM,EACf,gBAAgB,CAAC,EAAE,OAAO,GAAG,qBAAqB,GACnD,UAAU,CAwEZ"}
1
+ {"version":3,"file":"address.d.ts","sourceRoot":"","sources":["../src/address.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,KAAK,YAAY,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAEjE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAU7C,OAAO,EACH,KAAK,OAAO,EAMf,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,UAAU,EAAE,KAAK,YAAY,EAAE,CAAC;AAEzC,gCAAgC;AAChC,MAAM,WAAW,iBAAiB;IAC9B,mBAAmB;IACnB,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,qDAAqD;IACrD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC5B;AAED,eAAO,MAAM,sBAAsB,EAAE,MAAW,CAAC;AACjD,eAAO,MAAM,sBAAsB,EAAE,MAAU,CAAC;AAChD,eAAO,MAAM,yBAAyB,EAAE,MAAW,CAAC;AACpD,eAAO,MAAM,kBAAkB,EAAE,MAAW,CAAC;AAC7C,eAAO,MAAM,oBAAoB,EAAE,MAAW,CAAC;AAC/C,eAAO,MAAM,yBAAyB,EAAE,MAAU,CAAC;AACnD,eAAO,MAAM,0BAA0B,EAAE,MAAa,CAAC;AAOvD,eAAO,MAAM,sBAAsB,GAAI,QAAQ,UAAU,KAAG,OAkB3D,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAoCjF;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,GAAG,MAAM,CAgBnF;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,CAWlE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CASpE;AAED;;GAEG;AACH,wBAAgB,QAAQ,CACpB,IAAI,EAAE,UAAU,EAChB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,MAAM,EACd,WAAW,CAAC,EAAE,MAAM,GACrB,MAAM,CASR;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,UAAU,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CA+C9E;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC;;OAEG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAC3B;;;;;OAKG;IACH,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAC9D;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC1B,OAAO,EAAE,MAAM,EACf,gBAAgB,CAAC,EAAE,OAAO,GAAG,qBAAqB,GACnD,UAAU,CAwEZ"}
package/build/address.js CHANGED
@@ -143,31 +143,43 @@ export function toBech32(data, version, prefix, prefixOpnet) {
143
143
  return version === 0 ? bech32.encode(prefix, words) : bech32m.encode(prefix, words);
144
144
  }
145
145
  /**
146
- * decode address from output script with network, return address if matched
146
+ * decode address from output script with network, return address if matched.
147
+ *
148
+ * Uses fast byte-pattern matching for common script types (P2PKH, P2SH,
149
+ * P2WPKH, P2WSH, P2TR) to avoid constructing payment objects and catching
150
+ * exceptions. Falls back to payment constructors for exotic types.
147
151
  */
148
152
  export function fromOutputScript(output, network) {
149
- // TODO: Network
150
153
  network = network || networks.bitcoin;
151
- try {
152
- return p2pkh({ output: output, network }).address;
154
+ const len = output.length;
155
+ // P2PKH: OP_DUP(0x76) OP_HASH160(0xa9) 0x14 <20-byte hash> OP_EQUALVERIFY(0x88) OP_CHECKSIG(0xac)
156
+ if (len === 25 &&
157
+ output[0] === 0x76 &&
158
+ output[1] === 0xa9 &&
159
+ output[2] === 0x14 &&
160
+ output[23] === 0x88 &&
161
+ output[24] === 0xac) {
162
+ return toBase58Check(output.subarray(3, 23), network.pubKeyHash);
153
163
  }
154
- catch (e) { }
155
- try {
156
- return p2sh({ output: output, network }).address;
164
+ // P2SH: OP_HASH160(0xa9) 0x14 <20-byte hash> OP_EQUAL(0x87)
165
+ if (len === 23 && output[0] === 0xa9 && output[1] === 0x14 && output[22] === 0x87) {
166
+ return toBase58Check(output.subarray(2, 22), network.scriptHash);
157
167
  }
158
- catch (e) { }
159
- try {
160
- return p2wpkh({ output: output, network }).address;
168
+ // P2WPKH: OP_0(0x00) 0x14 <20-byte hash>
169
+ if (len === 22 && output[0] === 0x00 && output[1] === 0x14) {
170
+ return toBech32(output.subarray(2, 22), 0, network.bech32);
161
171
  }
162
- catch (e) { }
163
- try {
164
- return p2wsh({ output: output, network }).address;
172
+ // P2WSH: OP_0(0x00) 0x20 <32-byte hash>
173
+ if (len === 34 && output[0] === 0x00 && output[1] === 0x20) {
174
+ return toBech32(output.subarray(2, 34), 0, network.bech32);
165
175
  }
166
- catch (e) { }
167
- try {
168
- return p2tr({ output: output, network }).address;
176
+ // P2TR: OP_1(0x51) 0x20 <32-byte x-only pubkey>
177
+ if (len === 34 && output[0] === 0x51 && output[1] === 0x20) {
178
+ const words = bech32m.toWords(output.subarray(2, 34));
179
+ words.unshift(1);
180
+ return bech32m.encode(network.bech32, words);
169
181
  }
170
- catch (e) { }
182
+ // Fallback for exotic types
171
183
  try {
172
184
  return toFutureOPNetAddress(output, network);
173
185
  }
@@ -1 +1 @@
1
- {"version":3,"file":"address.js","sourceRoot":"","sources":["../src/address.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"address.js","sourceRoot":"","sources":["../src/address.ts"],"names":[],"mappings":"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"}
@@ -1,20 +1,9 @@
1
1
  /**
2
2
  * Branded type definitions for type-safe primitives.
3
3
  *
4
+ * Re-exported from @btc-vision/ecpair to ensure cross-package type compatibility.
5
+ *
4
6
  * @packageDocumentation
5
7
  */
6
- declare const __brand: unique symbol;
7
- type Brand<T, B extends string> = T & {
8
- readonly [__brand]: B;
9
- };
10
- export type Bytes32 = Brand<Uint8Array, 'Bytes32'>;
11
- export type Bytes20 = Brand<Uint8Array, 'Bytes20'>;
12
- export type PublicKey = Brand<Uint8Array, 'PublicKey'>;
13
- export type XOnlyPublicKey = Brand<Uint8Array, 'XOnlyPublicKey'>;
14
- export type Satoshi = Brand<bigint, 'Satoshi'>;
15
- export type PrivateKey = Brand<Uint8Array, 'PrivateKey'>;
16
- export type Signature = Brand<Uint8Array, 'Signature'>;
17
- export type SchnorrSignature = Brand<Uint8Array, 'SchnorrSignature'>;
18
- export type Script = Brand<Uint8Array, 'Script'>;
19
- export {};
8
+ export type { Brand, Bytes32, Bytes20, PublicKey, XOnlyPublicKey, Satoshi, PrivateKey, Signature, SchnorrSignature, MessageHash, Script, } from '@btc-vision/ecpair';
20
9
  //# sourceMappingURL=branded.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"branded.d.ts","sourceRoot":"","sources":["../src/branded.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,CAAC,MAAM,OAAO,EAAE,OAAO,MAAM,CAAC;AACrC,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC,SAAS,MAAM,IAAI,CAAC,GAAG;IAAE,QAAQ,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;CAAE,CAAC;AAEhE,MAAM,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;AACnD,MAAM,MAAM,OAAO,GAAG,KAAK,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;AACnD,MAAM,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;AACvD,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,UAAU,EAAE,gBAAgB,CAAC,CAAC;AACjE,MAAM,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;AAC/C,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC;AACzD,MAAM,MAAM,SAAS,GAAG,KAAK,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;AACvD,MAAM,MAAM,gBAAgB,GAAG,KAAK,CAAC,UAAU,EAAE,kBAAkB,CAAC,CAAC;AACrE,MAAM,MAAM,MAAM,GAAG,KAAK,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC"}
1
+ {"version":3,"file":"branded.d.ts","sourceRoot":"","sources":["../src/branded.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,YAAY,EACR,KAAK,EACL,OAAO,EACP,OAAO,EACP,SAAS,EACT,cAAc,EACd,OAAO,EACP,UAAU,EACV,SAAS,EACT,gBAAgB,EAChB,WAAW,EACX,MAAM,GACT,MAAM,oBAAoB,CAAC"}
package/build/branded.js CHANGED
@@ -1,7 +1,2 @@
1
- /**
2
- * Branded type definitions for type-safe primitives.
3
- *
4
- * @packageDocumentation
5
- */
6
1
  export {};
7
2
  //# sourceMappingURL=branded.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"branded.js","sourceRoot":"","sources":["../src/branded.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
1
+ {"version":3,"file":"branded.js","sourceRoot":"","sources":["../src/branded.ts"],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/ecc/context.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAIzC;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,UAAU;;IAInB,OAAO;IAIP;;OAEG;IACH,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU;IAMpC;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,GAAG,IAAI,UAAU;IASxB;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,KAAK,IAAI,IAAI;IAIpB;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,aAAa,IAAI,OAAO;CAGlC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAM3D;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,SAAS,IAAI,MAAM,CAElC"}
1
+ {"version":3,"file":"context.d.ts","sourceRoot":"","sources":["../../src/ecc/context.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAIzC;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,UAAU;;IAInB,OAAO;IAIP;;OAEG;IACH,IAAI,GAAG,IAAI,MAAM,CAEhB;IAED;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,UAAU;IAUpC;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,GAAG,IAAI,UAAU;IASxB;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,KAAK,IAAI,IAAI;IAIpB;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,aAAa,IAAI,OAAO;CAGlC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAM3D;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,SAAS,IAAI,MAAM,CAElC"}
@@ -47,6 +47,10 @@ export class EccContext {
47
47
  * ```
48
48
  */
49
49
  static init(lib) {
50
+ // Skip re-verification if same lib is already initialized
51
+ if (EccContext.#instance && EccContext.#instance.#lib === lib) {
52
+ return EccContext.#instance;
53
+ }
50
54
  verifyEcc(lib);
51
55
  EccContext.#instance = new EccContext(lib);
52
56
  return EccContext.#instance;
@@ -152,26 +156,55 @@ export function initEccLib(eccLib) {
152
156
  export function getEccLib() {
153
157
  return EccContext.get().lib;
154
158
  }
155
- const TWEAK_ADD_VECTORS = [
156
- {
157
- pubkey: '79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798',
158
- tweak: 'fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364140',
159
- parity: -1,
160
- result: null,
161
- },
162
- {
163
- pubkey: '1617d38ed8d8657da4d4761e8057bc396ea9e4b9d29776d4be096016dbd2509b',
164
- tweak: 'a8397a935f0dfceba6ba9618f6451ef4d80637abf4e6af2669fbc9de6a8fd2ac',
165
- parity: 1,
166
- result: 'e478f99dab91052ab39a33ea35fd5e6e4933f4d28023cd597c9a1f6760346adf',
167
- },
168
- {
169
- pubkey: '2c0b7cf95324a07d05398b240174dc0c2be444d96b159aa6c7f7b1e668680991',
170
- tweak: '823c3cd2142744b075a87eade7e1b8678ba308d566226a0056ca2b7a76f86b47',
171
- parity: 0,
172
- result: '9534f8dc8c6deda2dc007655981c78b49c5d96c778fbf363462a11ec9dfd948c',
173
- },
174
- ];
159
+ // Lazily decoded test vectors (decoded once on first verification)
160
+ let _tweakVectors;
161
+ let _validPoints;
162
+ let _invalidPoints;
163
+ function getTweakVectors() {
164
+ if (!_tweakVectors) {
165
+ _tweakVectors = [
166
+ {
167
+ pubkey: fromHex('79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798'),
168
+ tweak: fromHex('fffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364140'),
169
+ parity: -1,
170
+ result: null,
171
+ },
172
+ {
173
+ pubkey: fromHex('1617d38ed8d8657da4d4761e8057bc396ea9e4b9d29776d4be096016dbd2509b'),
174
+ tweak: fromHex('a8397a935f0dfceba6ba9618f6451ef4d80637abf4e6af2669fbc9de6a8fd2ac'),
175
+ parity: 1,
176
+ result: fromHex('e478f99dab91052ab39a33ea35fd5e6e4933f4d28023cd597c9a1f6760346adf'),
177
+ },
178
+ {
179
+ pubkey: fromHex('2c0b7cf95324a07d05398b240174dc0c2be444d96b159aa6c7f7b1e668680991'),
180
+ tweak: fromHex('823c3cd2142744b075a87eade7e1b8678ba308d566226a0056ca2b7a76f86b47'),
181
+ parity: 0,
182
+ result: fromHex('9534f8dc8c6deda2dc007655981c78b49c5d96c778fbf363462a11ec9dfd948c'),
183
+ },
184
+ ];
185
+ }
186
+ return _tweakVectors;
187
+ }
188
+ function getValidPoints() {
189
+ if (!_validPoints) {
190
+ _validPoints = [
191
+ fromHex('79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798'),
192
+ fromHex('fffffffffffffffffffffffffffffffffffffffffffffffffffffffeeffffc2e'),
193
+ fromHex('f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9'),
194
+ fromHex('0000000000000000000000000000000000000000000000000000000000000001'),
195
+ ];
196
+ }
197
+ return _validPoints;
198
+ }
199
+ function getInvalidPoints() {
200
+ if (!_invalidPoints) {
201
+ _invalidPoints = [
202
+ fromHex('0000000000000000000000000000000000000000000000000000000000000000'),
203
+ fromHex('fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f'),
204
+ ];
205
+ }
206
+ return _invalidPoints;
207
+ }
175
208
  /**
176
209
  * Verifies that the ECC library implementation is correct.
177
210
  * Tests `isXOnlyPoint` and `xOnlyPointAddTweak` with known test vectors.
@@ -183,48 +216,38 @@ function verifyEcc(ecc) {
183
216
  if (typeof ecc.isXOnlyPoint !== 'function') {
184
217
  throw new Error('ECC library missing isXOnlyPoint function');
185
218
  }
186
- // Test isXOnlyPoint with valid points
187
- const validPoints = [
188
- '79be667ef9dcbbac55a06295ce870b07029bfcdb2dce28d959f2815b16f81798',
189
- 'fffffffffffffffffffffffffffffffffffffffffffffffffffffffeeffffc2e',
190
- 'f9308a019258c31049344f85f89d5229b531c845836f99b08601f113bce036f9',
191
- '0000000000000000000000000000000000000000000000000000000000000001',
192
- ];
193
- for (const hex of validPoints) {
194
- if (!ecc.isXOnlyPoint(fromHex(hex))) {
195
- throw new Error(`ECC library isXOnlyPoint failed for valid point: ${hex}`);
219
+ // Test isXOnlyPoint with valid points (pre-decoded)
220
+ for (const point of getValidPoints()) {
221
+ if (!ecc.isXOnlyPoint(point)) {
222
+ throw new Error('ECC library isXOnlyPoint failed for a valid point');
196
223
  }
197
224
  }
198
- // Test isXOnlyPoint with invalid points
199
- const invalidPoints = [
200
- '0000000000000000000000000000000000000000000000000000000000000000',
201
- 'fffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f',
202
- ];
203
- for (const hex of invalidPoints) {
204
- if (ecc.isXOnlyPoint(fromHex(hex))) {
205
- throw new Error(`ECC library isXOnlyPoint should reject invalid point: ${hex}`);
225
+ // Test isXOnlyPoint with invalid points (pre-decoded)
226
+ for (const point of getInvalidPoints()) {
227
+ if (ecc.isXOnlyPoint(point)) {
228
+ throw new Error('ECC library isXOnlyPoint should reject invalid point');
206
229
  }
207
230
  }
208
231
  // Test xOnlyPointAddTweak
209
232
  if (typeof ecc.xOnlyPointAddTweak !== 'function') {
210
233
  throw new Error('ECC library missing xOnlyPointAddTweak function');
211
234
  }
212
- for (const vector of TWEAK_ADD_VECTORS) {
213
- const result = ecc.xOnlyPointAddTweak(fromHex(vector.pubkey), fromHex(vector.tweak));
235
+ for (const vector of getTweakVectors()) {
236
+ const result = ecc.xOnlyPointAddTweak(vector.pubkey, vector.tweak);
214
237
  if (vector.result === null) {
215
238
  if (result !== null) {
216
- throw new Error(`ECC library xOnlyPointAddTweak should return null for: ${vector.pubkey}`);
239
+ throw new Error('ECC library xOnlyPointAddTweak should return null for test vector');
217
240
  }
218
241
  }
219
242
  else {
220
243
  if (result === null) {
221
- throw new Error(`ECC library xOnlyPointAddTweak returned null unexpectedly for: ${vector.pubkey}`);
244
+ throw new Error('ECC library xOnlyPointAddTweak returned null unexpectedly');
222
245
  }
223
246
  if (result.parity !== vector.parity) {
224
- throw new Error(`ECC library xOnlyPointAddTweak parity mismatch for: ${vector.pubkey}`);
247
+ throw new Error('ECC library xOnlyPointAddTweak parity mismatch');
225
248
  }
226
- if (!equals(result.xOnlyPubkey, fromHex(vector.result))) {
227
- throw new Error(`ECC library xOnlyPointAddTweak result mismatch for: ${vector.pubkey}`);
249
+ if (!equals(result.xOnlyPubkey, vector.result)) {
250
+ throw new Error('ECC library xOnlyPointAddTweak result mismatch');
228
251
  }
229
252
  }
230
253
  }
@@ -1 +1 @@
1
- {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/ecc/context.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC;AAGjD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,OAAO,UAAU;IACnB,MAAM,CAAC,SAAS,CAAyB;IAChC,IAAI,CAAS;IAEtB,YAAoB,GAAW;QAC3B,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;IACpB,CAAC;IAED;;OAEG;IACH,IAAI,GAAG;QACH,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAED;;;;;;;;;;;;;;;OAeG;IACH,MAAM,CAAC,IAAI,CAAC,GAAW;QACnB,SAAS,CAAC,GAAG,CAAC,CAAC;QACf,UAAU,CAAC,SAAS,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,CAAC;QAC3C,OAAO,UAAU,CAAC,SAAS,CAAC;IAChC,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,GAAG;QACN,IAAI,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACX,4EAA4E,CAC/E,CAAC;QACN,CAAC;QACD,OAAO,UAAU,CAAC,SAAS,CAAC;IAChC,CAAC;IAED;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,KAAK;QACR,UAAU,CAAC,SAAS,GAAG,SAAS,CAAC;IACrC,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,aAAa;QAChB,OAAO,UAAU,CAAC,SAAS,KAAK,SAAS,CAAC;IAC9C,CAAC;CACJ;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,UAAU,CAAC,MAA0B;IACjD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACvB,UAAU,CAAC,KAAK,EAAE,CAAC;QACnB,OAAO;IACX,CAAC;IACD,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAC5B,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,SAAS;IACrB,OAAO,UAAU,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC;AAChC,CAAC;AAaD,MAAM,iBAAiB,GAAqB;IACxC;QACI,MAAM,EAAE,kEAAkE;QAC1E,KAAK,EAAE,kEAAkE;QACzE,MAAM,EAAE,CAAC,CAAC;QACV,MAAM,EAAE,IAAI;KACf;IACD;QACI,MAAM,EAAE,kEAAkE;QAC1E,KAAK,EAAE,kEAAkE;QACzE,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,kEAAkE;KAC7E;IACD;QACI,MAAM,EAAE,kEAAkE;QAC1E,KAAK,EAAE,kEAAkE;QACzE,MAAM,EAAE,CAAC;QACT,MAAM,EAAE,kEAAkE;KAC7E;CACJ,CAAC;AAEF;;;;;;GAMG;AACH,SAAS,SAAS,CAAC,GAAW;IAC1B,IAAI,OAAO,GAAG,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;QACzC,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IACjE,CAAC;IAED,sCAAsC;IACtC,MAAM,WAAW,GAAG;QAChB,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;QAClE,kEAAkE;KACrE,CAAC;IAEF,KAAK,MAAM,GAAG,IAAI,WAAW,EAAE,CAAC;QAC5B,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAClC,MAAM,IAAI,KAAK,CAAC,oDAAoD,GAAG,EAAE,CAAC,CAAC;QAC/E,CAAC;IACL,CAAC;IAED,wCAAwC;IACxC,MAAM,aAAa,GAAG;QAClB,kEAAkE;QAClE,kEAAkE;KACrE,CAAC;IAEF,KAAK,MAAM,GAAG,IAAI,aAAa,EAAE,CAAC;QAC9B,IAAI,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACjC,MAAM,IAAI,KAAK,CAAC,yDAAyD,GAAG,EAAE,CAAC,CAAC;QACpF,CAAC;IACL,CAAC;IAED,0BAA0B;IAC1B,IAAI,OAAO,GAAG,CAAC,kBAAkB,KAAK,UAAU,EAAE,CAAC;QAC/C,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACvE,CAAC;IAED,KAAK,MAAM,MAAM,IAAI,iBAAiB,EAAE,CAAC;QACrC,MAAM,MAAM,GAAG,GAAG,CAAC,kBAAkB,CACjC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAmB,EACxC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAY,CACnC,CAAC;QAEF,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;YACzB,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CACX,0DAA0D,MAAM,CAAC,MAAM,EAAE,CAC5E,CAAC;YACN,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBAClB,MAAM,IAAI,KAAK,CACX,kEAAkE,MAAM,CAAC,MAAM,EAAE,CACpF,CAAC;YACN,CAAC;YACD,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClC,MAAM,IAAI,KAAK,CACX,uDAAuD,MAAM,CAAC,MAAM,EAAE,CACzE,CAAC;YACN,CAAC;YACD,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;gBACtD,MAAM,IAAI,KAAK,CACX,uDAAuD,MAAM,CAAC,MAAM,EAAE,CACzE,CAAC;YACN,CAAC;QACL,CAAC;IACL,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"context.js","sourceRoot":"","sources":["../../src/ecc/context.ts"],"names":[],"mappings":"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"}
package/build/index.d.ts CHANGED
@@ -14,7 +14,8 @@ export * as script from './script.js';
14
14
  export { Block } from './block.js';
15
15
  /** @hidden */
16
16
  export * from './crypto.js';
17
- export * from './psbt.js';
17
+ export { Psbt, PsbtCache, PsbtSigner, PsbtFinalizer, PsbtTransaction, transactionFromBuffer, getFinalScripts, prepareFinalScripts, } from './psbt.js';
18
+ export type { TransactionInput, PsbtTxInput, TransactionOutput, PsbtTxOutput, ValidateSigFunction, PsbtBaseExtended, PsbtOptsOptional, PsbtOpts, PsbtInputExtended, PsbtOutputExtended, PsbtOutputExtendedScript, HDSigner, HDSignerAsync, SignerAlternative, Signer, SignerAsync, TaprootHashCheckSigner, PsbtCacheInterface, TxCacheNumberKey, ScriptType, AllScriptType, GetScriptReturn, FinalScriptsFunc, FinalTaprootScriptsFunc, } from './psbt.js';
18
19
  /** @hidden */
19
20
  export { opcodes } from './opcodes.js';
20
21
  export { Transaction } from './transaction.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/build/index.js CHANGED
@@ -14,7 +14,7 @@ export * as script from './script.js';
14
14
  export { Block } from './block.js';
15
15
  /** @hidden */
16
16
  export * from './crypto.js';
17
- export * from './psbt.js';
17
+ export { Psbt, PsbtCache, PsbtSigner, PsbtFinalizer, PsbtTransaction, transactionFromBuffer, getFinalScripts, prepareFinalScripts, } from './psbt.js';
18
18
  /** @hidden */
19
19
  export { opcodes } from './opcodes.js';
20
20
  export { Transaction } from './transaction.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAC;AAChD,qBAAqB;AACrB,OAAO,EACH,YAAY,EACZ,YAAY,EACZ,QAAQ,EACR,iBAAiB,EACjB,kBAAkB,EAClB,SAAS,EACT,WAAW,EACX,cAAc,EACd,eAAe,GAClB,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,QAAQ,MAAM,eAAe,CAAC;AAC1C,OAAO,KAAK,QAAQ,MAAM,qBAAqB,CAAC;AAChD,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AAEtC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,cAAc;AACd,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc;AACd,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAI/C,cAAc;AACd,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAErE,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AA0ClD,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,OAAO,EACH,KAAK,EACL,OAAO,EACP,KAAK,EACL,MAAM,EACN,MAAM,EACN,OAAO,EACP,MAAM,EACN,KAAK,EACL,OAAO,EACP,WAAW,EACX,KAAK,EACL,GAAG,EACH,QAAQ,EACR,MAAM,EACN,UAAU,EACV,gBAAgB,EAChB,OAAO,GACV,MAAM,eAAe,CAAC;AACvB,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,OAAO,EACH,OAAO,EACP,mBAAmB,EACnB,YAAY,GAEf,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,oBAAoB,EAAE,MAAM,YAAY,CAAC;AAalD,OAAO,EACH,YAAY,EACZ,kBAAkB,EAClB,WAAW,EACX,QAAQ,EACR,SAAS,EACT,SAAS,EACT,OAAO,EACP,gBAAgB,EAChB,SAAS,EACT,oBAAoB,EACpB,gBAAgB,EAChB,SAAS,EACT,SAAS,EACT,SAAS,GACZ,MAAM,YAAY,CAAC;AAGpB,OAAO,EACH,YAAY,EACZ,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,WAAW,EACX,SAAS,EACT,QAAQ,EACR,YAAY,EACZ,cAAc,GACjB,CAAC;AAEF,+CAA+C;AAC/C,MAAM,CAAC,MAAM,MAAM,GAAG;IAClB,YAAY;IACZ,eAAe;IACf,iBAAiB;IACjB,kBAAkB;IAClB,WAAW;IACX,SAAS;IACT,QAAQ;IACR,YAAY;IACZ,cAAc;CACR,CAAC;AAEX,gCAAgC;AAChC,OAAO,KAAK,OAAO,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EACH,iBAAiB,EACjB,cAAc,EACd,aAAa,EACb,iBAAiB,EACjB,gBAAgB,GACnB,MAAM,oBAAoB,CAAC;AAU5B,MAAM,OAAO,GAAG;IACZ,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,MAAM;IACN,MAAM;IACN,WAAW;CACd,CAAC;AAEF,eAAe,OAAO,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -120,6 +120,17 @@ export interface Opcodes {
120
120
  OP_INVALIDOPCODE: number;
121
121
  }
122
122
  export declare const opcodes: Opcodes;
123
+ /**
124
+ * Returns the reverse mapping from opcode number to opcode name.
125
+ * Lazily computed on first call.
126
+ */
127
+ export declare function getReverseOps(): {
128
+ [key: number]: string;
129
+ };
130
+ /**
131
+ * @deprecated Use {@link getReverseOps}() for lazy initialization.
132
+ * This eagerly-initialized alias exists for backward compatibility.
133
+ */
123
134
  export declare const REVERSE_OPS: {
124
135
  [key: number]: string;
125
136
  };
@@ -1 +1 @@
1
- {"version":3,"file":"opcodes.d.ts","sourceRoot":"","sources":["../src/opcodes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"opcodes.d.ts","sourceRoot":"","sources":["../src/opcodes.ts"],"names":[],"mappings":"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"}
package/build/opcodes.js CHANGED
@@ -119,9 +119,24 @@ export const opcodes = {
119
119
  OP_PUBKEY: 254,
120
120
  OP_INVALIDOPCODE: 255,
121
121
  };
122
- export const REVERSE_OPS = {};
123
- for (const op of Object.keys(opcodes)) {
124
- const code = opcodes[op];
125
- REVERSE_OPS[code] = op;
122
+ let _reverseOps;
123
+ /**
124
+ * Returns the reverse mapping from opcode number to opcode name.
125
+ * Lazily computed on first call.
126
+ */
127
+ export function getReverseOps() {
128
+ if (!_reverseOps) {
129
+ _reverseOps = {};
130
+ for (const op of Object.keys(opcodes)) {
131
+ const code = opcodes[op];
132
+ _reverseOps[code] = op;
133
+ }
134
+ }
135
+ return _reverseOps;
126
136
  }
137
+ /**
138
+ * @deprecated Use {@link getReverseOps}() for lazy initialization.
139
+ * This eagerly-initialized alias exists for backward compatibility.
140
+ */
141
+ export const REVERSE_OPS = getReverseOps();
127
142
  //# sourceMappingURL=opcodes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"opcodes.js","sourceRoot":"","sources":["../src/opcodes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"opcodes.js","sourceRoot":"","sources":["../src/opcodes.ts"],"names":[],"mappings":"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"}