@btc-vision/bitcoin 7.0.0-alpha.0 → 7.0.0-alpha.10

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 (369) hide show
  1. package/README.md +455 -155
  2. package/browser/address.d.ts +6 -2
  3. package/browser/address.d.ts.map +1 -1
  4. package/browser/block.d.ts.map +1 -1
  5. package/browser/branded.d.ts +3 -14
  6. package/browser/branded.d.ts.map +1 -1
  7. package/browser/chunks/psbt-parallel-BBFlkmiv.js +10717 -0
  8. package/browser/crypto.d.ts +1 -1
  9. package/browser/ecc/context.d.ts +25 -24
  10. package/browser/ecc/context.d.ts.map +1 -1
  11. package/browser/ecc/index.d.ts +1 -1
  12. package/browser/ecc/index.d.ts.map +1 -1
  13. package/browser/ecc/types.d.ts +10 -123
  14. package/browser/ecc/types.d.ts.map +1 -1
  15. package/browser/env.d.ts +13 -0
  16. package/browser/env.d.ts.map +1 -0
  17. package/browser/index.d.ts +7 -7
  18. package/browser/index.d.ts.map +1 -1
  19. package/browser/index.js +2497 -11686
  20. package/browser/io/BinaryReader.d.ts +15 -15
  21. package/browser/io/BinaryReader.d.ts.map +1 -1
  22. package/browser/io/BinaryWriter.d.ts +17 -17
  23. package/browser/io/BinaryWriter.d.ts.map +1 -1
  24. package/browser/io/hex.d.ts.map +1 -1
  25. package/browser/io/index.d.ts +0 -1
  26. package/browser/io/index.d.ts.map +1 -1
  27. package/browser/opcodes.d.ts +11 -0
  28. package/browser/opcodes.d.ts.map +1 -1
  29. package/browser/payments/bip341.d.ts +1 -1
  30. package/browser/payments/bip341.d.ts.map +1 -1
  31. package/browser/payments/embed.d.ts +1 -1
  32. package/browser/payments/embed.d.ts.map +1 -1
  33. package/browser/payments/p2ms.d.ts.map +1 -1
  34. package/browser/payments/p2op.d.ts +1 -1
  35. package/browser/payments/p2op.d.ts.map +1 -1
  36. package/browser/payments/p2pk.d.ts +1 -1
  37. package/browser/payments/p2pk.d.ts.map +1 -1
  38. package/browser/payments/p2pkh.d.ts +1 -1
  39. package/browser/payments/p2pkh.d.ts.map +1 -1
  40. package/browser/payments/p2sh.d.ts.map +1 -1
  41. package/browser/payments/p2tr.d.ts +2 -2
  42. package/browser/payments/p2tr.d.ts.map +1 -1
  43. package/browser/payments/p2wpkh.d.ts +1 -1
  44. package/browser/payments/p2wpkh.d.ts.map +1 -1
  45. package/browser/payments/p2wsh.d.ts.map +1 -1
  46. package/browser/payments/types.d.ts +1 -1
  47. package/browser/payments/types.d.ts.map +1 -1
  48. package/browser/psbt/PsbtCache.d.ts +54 -0
  49. package/browser/psbt/PsbtCache.d.ts.map +1 -0
  50. package/browser/psbt/PsbtFinalizer.d.ts +21 -0
  51. package/browser/psbt/PsbtFinalizer.d.ts.map +1 -0
  52. package/browser/psbt/PsbtSigner.d.ts +32 -0
  53. package/browser/psbt/PsbtSigner.d.ts.map +1 -0
  54. package/browser/psbt/PsbtTransaction.d.ts +25 -0
  55. package/browser/psbt/PsbtTransaction.d.ts.map +1 -0
  56. package/browser/psbt/bip371.d.ts.map +1 -1
  57. package/browser/psbt/types.d.ts +5 -71
  58. package/browser/psbt/types.d.ts.map +1 -1
  59. package/browser/psbt/validation.d.ts +1 -1
  60. package/browser/psbt/validation.d.ts.map +1 -1
  61. package/browser/psbt.d.ts +26 -40
  62. package/browser/psbt.d.ts.map +1 -1
  63. package/browser/script.d.ts.map +1 -1
  64. package/browser/transaction.d.ts +4 -4
  65. package/browser/transaction.d.ts.map +1 -1
  66. package/browser/types.d.ts +5 -3
  67. package/browser/types.d.ts.map +1 -1
  68. package/browser/workers/WorkerSigningPool.d.ts +24 -17
  69. package/browser/workers/WorkerSigningPool.d.ts.map +1 -1
  70. package/browser/workers/WorkerSigningPool.node.d.ts +19 -12
  71. package/browser/workers/WorkerSigningPool.node.d.ts.map +1 -1
  72. package/browser/workers/WorkerSigningPool.sequential.d.ts +67 -0
  73. package/browser/workers/WorkerSigningPool.sequential.d.ts.map +1 -0
  74. package/browser/workers/WorkerSigningPool.worklet.d.ts +64 -0
  75. package/browser/workers/WorkerSigningPool.worklet.d.ts.map +1 -0
  76. package/browser/workers/index.browser.d.ts +16 -0
  77. package/browser/workers/index.browser.d.ts.map +1 -0
  78. package/browser/workers/index.d.ts +4 -64
  79. package/browser/workers/index.d.ts.map +1 -1
  80. package/browser/workers/index.js +28 -0
  81. package/browser/workers/index.node.d.ts +17 -0
  82. package/browser/workers/index.node.d.ts.map +1 -0
  83. package/browser/workers/index.react-native.d.ts +28 -0
  84. package/browser/workers/index.react-native.d.ts.map +1 -0
  85. package/browser/workers/index.shared.d.ts +15 -0
  86. package/browser/workers/index.shared.d.ts.map +1 -0
  87. package/browser/workers/psbt-parallel.d.ts +2 -3
  88. package/browser/workers/psbt-parallel.d.ts.map +1 -1
  89. package/browser/workers/types.d.ts +17 -0
  90. package/browser/workers/types.d.ts.map +1 -1
  91. package/build/address.d.ts +6 -2
  92. package/build/address.d.ts.map +1 -1
  93. package/build/address.js +32 -19
  94. package/build/address.js.map +1 -1
  95. package/build/bech32utils.js.map +1 -1
  96. package/build/block.d.ts.map +1 -1
  97. package/build/block.js +2 -4
  98. package/build/block.js.map +1 -1
  99. package/build/branded.d.ts +3 -14
  100. package/build/branded.d.ts.map +1 -1
  101. package/build/branded.js +0 -5
  102. package/build/branded.js.map +1 -1
  103. package/build/crypto.d.ts +1 -1
  104. package/build/ecc/context.d.ts +25 -24
  105. package/build/ecc/context.d.ts.map +1 -1
  106. package/build/ecc/context.js +29 -101
  107. package/build/ecc/context.js.map +1 -1
  108. package/build/ecc/index.d.ts +1 -1
  109. package/build/ecc/index.d.ts.map +1 -1
  110. package/build/ecc/types.d.ts +7 -126
  111. package/build/ecc/types.d.ts.map +1 -1
  112. package/build/ecc/types.js +4 -1
  113. package/build/ecc/types.js.map +1 -1
  114. package/build/env.d.ts +13 -0
  115. package/build/env.d.ts.map +1 -0
  116. package/build/env.js +198 -0
  117. package/build/env.js.map +1 -0
  118. package/build/index.d.ts +8 -7
  119. package/build/index.d.ts.map +1 -1
  120. package/build/index.js +9 -7
  121. package/build/index.js.map +1 -1
  122. package/build/io/BinaryReader.d.ts +15 -15
  123. package/build/io/BinaryReader.d.ts.map +1 -1
  124. package/build/io/BinaryReader.js +17 -17
  125. package/build/io/BinaryReader.js.map +1 -1
  126. package/build/io/BinaryWriter.d.ts +17 -17
  127. package/build/io/BinaryWriter.d.ts.map +1 -1
  128. package/build/io/BinaryWriter.js +39 -39
  129. package/build/io/BinaryWriter.js.map +1 -1
  130. package/build/io/hex.d.ts.map +1 -1
  131. package/build/io/hex.js +2 -1
  132. package/build/io/hex.js.map +1 -1
  133. package/build/io/index.d.ts +0 -1
  134. package/build/io/index.d.ts.map +1 -1
  135. package/build/io/index.js +0 -2
  136. package/build/io/index.js.map +1 -1
  137. package/build/opcodes.d.ts +11 -0
  138. package/build/opcodes.d.ts.map +1 -1
  139. package/build/opcodes.js +19 -4
  140. package/build/opcodes.js.map +1 -1
  141. package/build/payments/bip341.d.ts +1 -2
  142. package/build/payments/bip341.d.ts.map +1 -1
  143. package/build/payments/bip341.js +1 -2
  144. package/build/payments/bip341.js.map +1 -1
  145. package/build/payments/embed.d.ts +1 -1
  146. package/build/payments/embed.d.ts.map +1 -1
  147. package/build/payments/embed.js +14 -14
  148. package/build/payments/embed.js.map +1 -1
  149. package/build/payments/p2ms.d.ts.map +1 -1
  150. package/build/payments/p2ms.js +21 -21
  151. package/build/payments/p2ms.js.map +1 -1
  152. package/build/payments/p2op.d.ts +1 -1
  153. package/build/payments/p2op.d.ts.map +1 -1
  154. package/build/payments/p2op.js +18 -18
  155. package/build/payments/p2op.js.map +1 -1
  156. package/build/payments/p2pk.d.ts +1 -1
  157. package/build/payments/p2pk.d.ts.map +1 -1
  158. package/build/payments/p2pk.js +17 -17
  159. package/build/payments/p2pk.js.map +1 -1
  160. package/build/payments/p2pkh.d.ts +1 -1
  161. package/build/payments/p2pkh.d.ts.map +1 -1
  162. package/build/payments/p2pkh.js +20 -20
  163. package/build/payments/p2pkh.js.map +1 -1
  164. package/build/payments/p2sh.d.ts.map +1 -1
  165. package/build/payments/p2sh.js +22 -20
  166. package/build/payments/p2sh.js.map +1 -1
  167. package/build/payments/p2tr.d.ts +2 -2
  168. package/build/payments/p2tr.d.ts.map +1 -1
  169. package/build/payments/p2tr.js +25 -26
  170. package/build/payments/p2tr.js.map +1 -1
  171. package/build/payments/p2wpkh.d.ts +1 -1
  172. package/build/payments/p2wpkh.d.ts.map +1 -1
  173. package/build/payments/p2wpkh.js +20 -20
  174. package/build/payments/p2wpkh.js.map +1 -1
  175. package/build/payments/p2wsh.d.ts.map +1 -1
  176. package/build/payments/p2wsh.js +22 -22
  177. package/build/payments/p2wsh.js.map +1 -1
  178. package/build/payments/types.d.ts +1 -1
  179. package/build/payments/types.d.ts.map +1 -1
  180. package/build/psbt/PsbtCache.d.ts +54 -0
  181. package/build/psbt/PsbtCache.d.ts.map +1 -0
  182. package/build/psbt/PsbtCache.js +249 -0
  183. package/build/psbt/PsbtCache.js.map +1 -0
  184. package/build/psbt/PsbtFinalizer.d.ts +21 -0
  185. package/build/psbt/PsbtFinalizer.d.ts.map +1 -0
  186. package/build/psbt/PsbtFinalizer.js +157 -0
  187. package/build/psbt/PsbtFinalizer.js.map +1 -0
  188. package/build/psbt/PsbtSigner.d.ts +32 -0
  189. package/build/psbt/PsbtSigner.d.ts.map +1 -0
  190. package/build/psbt/PsbtSigner.js +192 -0
  191. package/build/psbt/PsbtSigner.js.map +1 -0
  192. package/build/psbt/PsbtTransaction.d.ts +25 -0
  193. package/build/psbt/PsbtTransaction.d.ts.map +1 -0
  194. package/build/psbt/PsbtTransaction.js +61 -0
  195. package/build/psbt/PsbtTransaction.js.map +1 -0
  196. package/build/psbt/bip371.d.ts.map +1 -1
  197. package/build/psbt/bip371.js +6 -2
  198. package/build/psbt/bip371.js.map +1 -1
  199. package/build/psbt/psbtutils.js +1 -1
  200. package/build/psbt/psbtutils.js.map +1 -1
  201. package/build/psbt/types.d.ts +5 -71
  202. package/build/psbt/types.d.ts.map +1 -1
  203. package/build/psbt/validation.d.ts +1 -1
  204. package/build/psbt/validation.d.ts.map +1 -1
  205. package/build/psbt/validation.js +1 -1
  206. package/build/psbt/validation.js.map +1 -1
  207. package/build/psbt.d.ts +26 -40
  208. package/build/psbt.d.ts.map +1 -1
  209. package/build/psbt.js +180 -808
  210. package/build/psbt.js.map +1 -1
  211. package/build/script.d.ts.map +1 -1
  212. package/build/script.js +4 -4
  213. package/build/script.js.map +1 -1
  214. package/build/transaction.d.ts +4 -4
  215. package/build/transaction.d.ts.map +1 -1
  216. package/build/transaction.js +6 -5
  217. package/build/transaction.js.map +1 -1
  218. package/build/tsconfig.build.tsbuildinfo +1 -1
  219. package/build/types.d.ts +5 -3
  220. package/build/types.d.ts.map +1 -1
  221. package/build/types.js +14 -25
  222. package/build/types.js.map +1 -1
  223. package/build/workers/WorkerSigningPool.d.ts +24 -17
  224. package/build/workers/WorkerSigningPool.d.ts.map +1 -1
  225. package/build/workers/WorkerSigningPool.js +36 -25
  226. package/build/workers/WorkerSigningPool.js.map +1 -1
  227. package/build/workers/WorkerSigningPool.node.d.ts +19 -12
  228. package/build/workers/WorkerSigningPool.node.d.ts.map +1 -1
  229. package/build/workers/WorkerSigningPool.node.js +60 -28
  230. package/build/workers/WorkerSigningPool.node.js.map +1 -1
  231. package/build/workers/WorkerSigningPool.sequential.d.ts +76 -0
  232. package/build/workers/WorkerSigningPool.sequential.d.ts.map +1 -0
  233. package/build/workers/WorkerSigningPool.sequential.js +160 -0
  234. package/build/workers/WorkerSigningPool.sequential.js.map +1 -0
  235. package/build/workers/WorkerSigningPool.worklet.d.ts +79 -0
  236. package/build/workers/WorkerSigningPool.worklet.d.ts.map +1 -0
  237. package/build/workers/WorkerSigningPool.worklet.js +390 -0
  238. package/build/workers/WorkerSigningPool.worklet.js.map +1 -0
  239. package/build/workers/index.browser.d.ts +24 -0
  240. package/build/workers/index.browser.d.ts.map +1 -0
  241. package/build/workers/index.browser.js +30 -0
  242. package/build/workers/index.browser.js.map +1 -0
  243. package/build/workers/index.d.ts +6 -18
  244. package/build/workers/index.d.ts.map +1 -1
  245. package/build/workers/index.js +12 -14
  246. package/build/workers/index.js.map +1 -1
  247. package/build/workers/index.node.d.ts +38 -0
  248. package/build/workers/index.node.d.ts.map +1 -0
  249. package/build/workers/index.node.js +45 -0
  250. package/build/workers/index.node.js.map +1 -0
  251. package/build/workers/index.react-native.d.ts +28 -0
  252. package/build/workers/index.react-native.d.ts.map +1 -0
  253. package/build/workers/index.react-native.js +67 -0
  254. package/build/workers/index.react-native.js.map +1 -0
  255. package/build/workers/index.shared.d.ts +15 -0
  256. package/build/workers/index.shared.d.ts.map +1 -0
  257. package/build/workers/index.shared.js +20 -0
  258. package/build/workers/index.shared.js.map +1 -0
  259. package/build/workers/psbt-parallel.d.ts +2 -3
  260. package/build/workers/psbt-parallel.d.ts.map +1 -1
  261. package/build/workers/psbt-parallel.js +4 -4
  262. package/build/workers/psbt-parallel.js.map +1 -1
  263. package/build/workers/types.d.ts +17 -0
  264. package/build/workers/types.d.ts.map +1 -1
  265. package/build/workers/types.js.map +1 -1
  266. package/package.json +48 -9
  267. package/src/address.ts +53 -21
  268. package/src/bech32utils.ts +3 -3
  269. package/src/block.ts +17 -10
  270. package/src/branded.ts +15 -13
  271. package/src/crypto.ts +1 -1
  272. package/src/ecc/context.ts +36 -136
  273. package/src/ecc/index.ts +2 -2
  274. package/src/ecc/types.ts +7 -145
  275. package/src/env.ts +239 -0
  276. package/src/index.ts +57 -22
  277. package/src/io/BinaryReader.ts +18 -18
  278. package/src/io/BinaryWriter.ts +43 -43
  279. package/src/io/hex.ts +2 -1
  280. package/src/io/index.ts +0 -3
  281. package/src/opcodes.ts +21 -4
  282. package/src/payments/bip341.ts +5 -7
  283. package/src/payments/embed.ts +19 -19
  284. package/src/payments/p2ms.ts +34 -27
  285. package/src/payments/p2op.ts +22 -22
  286. package/src/payments/p2pk.ts +22 -22
  287. package/src/payments/p2pkh.ts +28 -28
  288. package/src/payments/p2sh.ts +33 -30
  289. package/src/payments/p2tr.ts +40 -40
  290. package/src/payments/p2wpkh.ts +30 -30
  291. package/src/payments/p2wsh.ts +29 -29
  292. package/src/payments/types.ts +1 -1
  293. package/src/psbt/PsbtCache.ts +325 -0
  294. package/src/psbt/PsbtFinalizer.ts +213 -0
  295. package/src/psbt/PsbtSigner.ts +302 -0
  296. package/src/psbt/PsbtTransaction.ts +82 -0
  297. package/src/psbt/bip371.ts +7 -3
  298. package/src/psbt/psbtutils.ts +1 -1
  299. package/src/psbt/types.ts +5 -94
  300. package/src/psbt/validation.ts +5 -12
  301. package/src/psbt.ts +376 -1201
  302. package/src/script.ts +6 -9
  303. package/src/transaction.ts +19 -15
  304. package/src/types.ts +33 -45
  305. package/src/workers/WorkerSigningPool.node.ts +72 -36
  306. package/src/workers/WorkerSigningPool.sequential.ts +191 -0
  307. package/src/workers/WorkerSigningPool.ts +48 -39
  308. package/src/workers/WorkerSigningPool.worklet.ts +522 -0
  309. package/src/workers/index.browser.ts +34 -0
  310. package/src/workers/index.node.ts +50 -0
  311. package/src/workers/index.react-native.ts +110 -0
  312. package/src/workers/index.shared.ts +58 -0
  313. package/src/workers/index.ts +14 -65
  314. package/src/workers/psbt-parallel.ts +8 -13
  315. package/src/workers/types.ts +26 -1
  316. package/test/address.spec.ts +2 -2
  317. package/test/bitcoin.core.spec.ts +5 -2
  318. package/test/browser/payments.spec.ts +151 -0
  319. package/test/browser/psbt.spec.ts +1510 -0
  320. package/test/browser/script.spec.ts +223 -0
  321. package/test/browser/setup.ts +13 -0
  322. package/test/browser/workers-signing.spec.ts +537 -0
  323. package/test/crypto.spec.ts +2 -2
  324. package/test/env.spec.ts +418 -0
  325. package/test/fixtures/core/base58_encode_decode.json +12 -48
  326. package/test/fixtures/core/base58_keys_invalid.json +50 -150
  327. package/test/fixtures/core/sighash.json +1 -3
  328. package/test/fixtures/core/tx_valid.json +133 -501
  329. package/test/fixtures/embed.json +3 -11
  330. package/test/fixtures/p2ms.json +21 -91
  331. package/test/fixtures/p2pk.json +5 -24
  332. package/test/fixtures/p2pkh.json +7 -36
  333. package/test/fixtures/p2sh.json +8 -54
  334. package/test/fixtures/p2tr.json +2 -6
  335. package/test/fixtures/p2wpkh.json +7 -36
  336. package/test/fixtures/p2wsh.json +14 -59
  337. package/test/fixtures/psbt.json +2 -6
  338. package/test/fixtures/script.json +12 -48
  339. package/test/integration/addresses.spec.ts +11 -5
  340. package/test/integration/bip32.spec.ts +1 -1
  341. package/test/integration/cltv.spec.ts +10 -6
  342. package/test/integration/csv.spec.ts +10 -9
  343. package/test/integration/payments.spec.ts +8 -4
  344. package/test/integration/taproot.spec.ts +26 -6
  345. package/test/integration/transactions.spec.ts +22 -8
  346. package/test/payments.spec.ts +1 -1
  347. package/test/payments.utils.ts +1 -1
  348. package/test/psbt.spec.ts +250 -64
  349. package/test/script_signature.spec.ts +1 -1
  350. package/test/transaction.spec.ts +18 -5
  351. package/test/tsconfig.json +6 -20
  352. package/test/workers-pool.spec.ts +65 -23
  353. package/test/workers-sequential.spec.ts +669 -0
  354. package/test/workers-signing.spec.ts +7 -3
  355. package/test/workers-worklet.spec.ts +500 -0
  356. package/test/workers.spec.ts +6 -7
  357. package/typedoc.json +39 -0
  358. package/vite.config.browser.ts +31 -6
  359. package/vitest.config.browser.ts +68 -0
  360. package/browser/ecpair.d.ts +0 -99
  361. package/browser/io/MemoryPool.d.ts +0 -220
  362. package/browser/io/MemoryPool.d.ts.map +0 -1
  363. package/build/io/MemoryPool.d.ts +0 -220
  364. package/build/io/MemoryPool.d.ts.map +0 -1
  365. package/build/io/MemoryPool.js +0 -309
  366. package/build/io/MemoryPool.js.map +0 -1
  367. package/src/ecpair.d.ts +0 -99
  368. package/src/io/MemoryPool.ts +0 -343
  369. package/test/taproot-cache.spec.ts +0 -694
@@ -0,0 +1,64 @@
1
+ import { ParallelSignerKeyPair, ParallelSigningResult, SigningTask, WorkerPoolConfig } from './types.js';
2
+ /**
3
+ * Worklet-based parallel signing pool for React Native.
4
+ *
5
+ * Mirrors the API of WorkerSigningPool (browser) but uses
6
+ * `react-native-worklets` runtimes instead of Web Workers.
7
+ * `runOnRuntime()` returns a Promise directly — no postMessage protocol.
8
+ *
9
+ * @example
10
+ * ```typescript
11
+ * import { WorkletSigningPool } from '@btc-vision/bitcoin/workers';
12
+ *
13
+ * const pool = WorkletSigningPool.getInstance();
14
+ * pool.preserveWorkers();
15
+ *
16
+ * const result = await pool.signBatch(tasks, keyPair);
17
+ * await pool.shutdown();
18
+ * ```
19
+ */
20
+ export declare class WorkletSigningPool {
21
+ #private;
22
+ private constructor();
23
+ /** Number of active runtimes. */
24
+ get workerCount(): number;
25
+ /** Idle runtimes (all non-tainted). */
26
+ get idleWorkerCount(): number;
27
+ /** Busy runtimes — always 0 outside of signBatch. */
28
+ get busyWorkerCount(): number;
29
+ /** Whether runtimes are preserved between batches. */
30
+ get isPreservingWorkers(): boolean;
31
+ /**
32
+ * Gets the singleton pool instance.
33
+ *
34
+ * @param config - Optional configuration (only used on first call)
35
+ */
36
+ static getInstance(config?: WorkerPoolConfig): WorkletSigningPool;
37
+ /** Resets the singleton instance (for testing). */
38
+ static resetInstance(): void;
39
+ /** Enable runtime preservation between signing batches. */
40
+ preserveWorkers(): void;
41
+ /** Disable runtime preservation. */
42
+ releaseWorkers(): void;
43
+ /**
44
+ * Initializes the worklet pool.
45
+ *
46
+ * Dynamically imports `react-native-worklets`, creates N runtimes,
47
+ * and injects the ECC bundle into each via eval.
48
+ *
49
+ * @throws If `react-native-worklets` is not installed or eval fails
50
+ */
51
+ initialize(): Promise<void>;
52
+ /**
53
+ * Signs a batch of tasks in parallel across worklet runtimes.
54
+ *
55
+ * SECURITY: Private keys are cloned per-runtime and zeroed both
56
+ * inside the worklet and in the main thread finally block.
57
+ */
58
+ signBatch(tasks: readonly SigningTask[], keyPair: ParallelSignerKeyPair): Promise<ParallelSigningResult>;
59
+ /** Shuts down all runtimes. */
60
+ shutdown(): Promise<void>;
61
+ [Symbol.dispose](): void;
62
+ [Symbol.asyncDispose](): Promise<void>;
63
+ }
64
+ //# sourceMappingURL=WorkerSigningPool.worklet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WorkerSigningPool.worklet.d.ts","sourceRoot":"","sources":["../../src/workers/WorkerSigningPool.worklet.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACR,qBAAqB,EACrB,qBAAqB,EAErB,WAAW,EACX,gBAAgB,EACnB,MAAM,YAAY,CAAC;AAuCpB;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,kBAAkB;;IAmB3B,OAAO;IAKP,iCAAiC;IACjC,IAAW,WAAW,IAAI,MAAM,CAE/B;IAED,uCAAuC;IACvC,IAAW,eAAe,IAAI,MAAM,CAEnC;IAED,qDAAqD;IACrD,IAAW,eAAe,IAAI,MAAM,CAEnC;IAED,sDAAsD;IACtD,IAAW,mBAAmB,IAAI,OAAO,CAExC;IAED;;;;OAIG;WACW,WAAW,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,kBAAkB;IAOxE,mDAAmD;WACrC,aAAa,IAAI,IAAI;IAOnC,2DAA2D;IACpD,eAAe,IAAI,IAAI;IAI9B,oCAAoC;IAC7B,cAAc,IAAI,IAAI;IAI7B;;;;;;;OAOG;IACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IA2CxC;;;;;OAKG;IACU,SAAS,CAClB,KAAK,EAAE,SAAS,WAAW,EAAE,EAC7B,OAAO,EAAE,qBAAqB,GAC/B,OAAO,CAAC,qBAAqB,CAAC;IAqFjC,+BAA+B;IAElB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAe/B,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI;IAIlB,CAAC,MAAM,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC;CA0MtD"}
@@ -0,0 +1,16 @@
1
+ import { WorkerPoolConfig, SigningPoolLike } from './types.js';
2
+ export * from './index.shared.js';
3
+ /**
4
+ * Detects the runtime environment.
5
+ *
6
+ * @returns Always 'browser' in this entry point.
7
+ */
8
+ export declare function detectRuntime(): 'node' | 'browser' | 'react-native' | 'unknown';
9
+ /**
10
+ * Creates a signing pool for the browser runtime using Web Workers.
11
+ *
12
+ * @param config - Optional pool configuration
13
+ * @returns A promise resolving to the initialized signing pool
14
+ */
15
+ export declare function createSigningPool(config?: WorkerPoolConfig): Promise<SigningPoolLike>;
16
+ //# sourceMappingURL=index.browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.browser.d.ts","sourceRoot":"","sources":["../../src/workers/index.browser.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEpE,cAAc,mBAAmB,CAAC;AAElC;;;;GAIG;AACH,wBAAgB,aAAa,IAAI,MAAM,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CAE/E;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,CAK3F"}
@@ -1,62 +1,11 @@
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
- */
48
- 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
- export { WorkerSigningPool, getSigningPool } from './WorkerSigningPool.js';
50
- export { generateWorkerCode, createWorkerBlobUrl, revokeWorkerBlobUrl } from './signing-worker.js';
51
- export { ECC_BUNDLE, ECC_BUNDLE_SIZE } from './ecc-bundle.js';
52
- export { type NodeWorkerPoolConfig } from './WorkerSigningPool.node.js';
53
- export { signPsbtParallel, prepareSigningTasks, applySignaturesToPsbt, type ParallelSignOptions, type PsbtParallelKeyPair, } from './psbt-parallel.js';
1
+ import { WorkerPoolConfig, SigningPoolLike } from './types.js';
2
+ export * from './index.shared.js';
54
3
  /**
55
4
  * Detects the runtime environment and returns the appropriate signing pool.
56
5
  *
57
6
  * @returns 'node' for Node.js, 'browser' for browsers, 'unknown' otherwise
58
7
  */
59
- export declare function detectRuntime(): 'node' | 'browser' | 'unknown';
8
+ export declare function detectRuntime(): 'node' | 'browser' | 'react-native' | 'unknown';
60
9
  /**
61
10
  * Creates a signing pool appropriate for the current runtime.
62
11
  *
@@ -78,14 +27,5 @@ export declare function detectRuntime(): 'node' | 'browser' | 'unknown';
78
27
  * await pool.shutdown();
79
28
  * ```
80
29
  */
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>;
83
- preserveWorkers: () => void;
84
- releaseWorkers: () => void;
85
- shutdown: () => Promise<void>;
86
- workerCount: number;
87
- idleWorkerCount: number;
88
- busyWorkerCount: number;
89
- isPreservingWorkers: boolean;
90
- }>;
30
+ export declare function createSigningPool(config?: WorkerPoolConfig): Promise<SigningPoolLike>;
91
31
  //# sourceMappingURL=index.d.ts.map
@@ -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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEpE,cAAc,mBAAmB,CAAC;AAElC;;;;GAIG;AACH,wBAAgB,aAAa,IAAI,MAAM,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CAW/E;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,CAqB3F"}
@@ -0,0 +1,28 @@
1
+ import { b6 as g, b7 as b, am as l, aq as c, b8 as S, ar as k, b9 as p, ba as u, az as P, bb as W, bc as E, bd as B, be as C, aQ as d, bf as f, aX as m } from "../chunks/psbt-parallel-BBFlkmiv.js";
2
+ function n() {
3
+ return "browser";
4
+ }
5
+ async function o(e) {
6
+ const { WorkerSigningPool: r } = await import("../chunks/psbt-parallel-BBFlkmiv.js").then((s) => s.bg), a = r.getInstance(e);
7
+ return await a.initialize(), a;
8
+ }
9
+ export {
10
+ g as ECC_BUNDLE,
11
+ b as ECC_BUNDLE_SIZE,
12
+ l as SignatureType,
13
+ c as WorkerSigningPool,
14
+ S as WorkerState,
15
+ k as applySignaturesToPsbt,
16
+ o as createSigningPool,
17
+ p as createWorkerBlobUrl,
18
+ n as detectRuntime,
19
+ u as generateWorkerCode,
20
+ P as getSigningPool,
21
+ W as isBatchResult,
22
+ E as isSigningError,
23
+ B as isSigningResult,
24
+ C as isWorkerReady,
25
+ d as prepareSigningTasks,
26
+ f as revokeWorkerBlobUrl,
27
+ m as signPsbtParallel
28
+ };
@@ -0,0 +1,17 @@
1
+ import { WorkerPoolConfig, SigningPoolLike } from './types.js';
2
+ export * from './index.shared.js';
3
+ export { NodeWorkerSigningPool, type NodeWorkerPoolConfig } from './WorkerSigningPool.node.js';
4
+ /**
5
+ * Detects the runtime environment.
6
+ *
7
+ * @returns Always 'node' in this entry point.
8
+ */
9
+ export declare function detectRuntime(): 'node' | 'browser' | 'react-native' | 'unknown';
10
+ /**
11
+ * Creates a signing pool for the Node.js runtime using worker_threads.
12
+ *
13
+ * @param config - Optional pool configuration
14
+ * @returns A promise resolving to the initialized signing pool
15
+ */
16
+ export declare function createSigningPool(config?: WorkerPoolConfig): Promise<SigningPoolLike>;
17
+ //# 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;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAEpE,cAAc,mBAAmB,CAAC;AAGlC,OAAO,EAAE,qBAAqB,EAAE,KAAK,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAE/F;;;;GAIG;AACH,wBAAgB,aAAa,IAAI,MAAM,GAAG,SAAS,GAAG,cAAc,GAAG,SAAS,CAE/E;AAED;;;;;GAKG;AACH,wBAAsB,iBAAiB,CAAC,MAAM,CAAC,EAAE,gBAAgB,GAAG,OAAO,CAAC,eAAe,CAAC,CAK3F"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * React Native entry point for the workers module.
3
+ *
4
+ * Provides the same public API as the browser/Node.js workers module
5
+ * but uses WorkletSigningPool (parallel via react-native-worklets)
6
+ * when available, falling back to SequentialSigningPool (main-thread).
7
+ *
8
+ * @packageDocumentation
9
+ */
10
+ 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, type SigningPoolLike, WorkerState, type PooledWorker, } from './types.js';
11
+ export { SequentialSigningPool } from './WorkerSigningPool.sequential.js';
12
+ export { WorkletSigningPool } from './WorkerSigningPool.worklet.js';
13
+ export { SequentialSigningPool as WorkerSigningPool } from './WorkerSigningPool.sequential.js';
14
+ export { signPsbtParallel, prepareSigningTasks, applySignaturesToPsbt, type ParallelSignOptions, type PsbtParallelKeyPair, } from './psbt-parallel.js';
15
+ /**
16
+ * Detects the runtime environment.
17
+ *
18
+ * @returns Always 'react-native' in this entry point.
19
+ */
20
+ export declare function detectRuntime(): 'node' | 'browser' | 'react-native' | 'unknown';
21
+ /**
22
+ * Creates a signing pool appropriate for the React Native runtime.
23
+ *
24
+ * Tries to use WorkletSigningPool (parallel via react-native-worklets).
25
+ * Falls back to SequentialSigningPool if worklets are not installed.
26
+ */
27
+ export declare function createSigningPool(config?: import('./types.js').WorkerPoolConfig): Promise<import('./types.js').SigningPoolLike>;
28
+ //# sourceMappingURL=index.react-native.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.react-native.d.ts","sourceRoot":"","sources":["../../src/workers/index.react-native.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;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,KAAK,eAAe,EACpB,WAAW,EACX,KAAK,YAAY,GACpB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAG1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AAGpE,OAAO,EAAE,qBAAqB,IAAI,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAG/F,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,cAAc,GAAG,SAAS,CAE/E;AAQD;;;;;GAKG;AACH,wBAAsB,iBAAiB,CACnC,MAAM,CAAC,EAAE,OAAO,YAAY,EAAE,gBAAgB,GAC/C,OAAO,CAAC,OAAO,YAAY,EAAE,eAAe,CAAC,CA2B/C"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Shared worker module exports.
3
+ *
4
+ * Contains all platform-agnostic exports used by browser, Node.js, and generic
5
+ * entry points. Platform-specific entry points re-export from this module and
6
+ * add their own `detectRuntime` and `createSigningPool` implementations.
7
+ *
8
+ * @packageDocumentation
9
+ */
10
+ 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, type SigningPoolLike, WorkerState, type PooledWorker, } from './types.js';
11
+ export { WorkerSigningPool, getSigningPool } from './WorkerSigningPool.js';
12
+ export { generateWorkerCode, createWorkerBlobUrl, revokeWorkerBlobUrl } from './signing-worker.js';
13
+ export { ECC_BUNDLE, ECC_BUNDLE_SIZE } from './ecc-bundle.js';
14
+ export { signPsbtParallel, prepareSigningTasks, applySignaturesToPsbt, type ParallelSignOptions, type PsbtParallelKeyPair, } from './psbt-parallel.js';
15
+ //# sourceMappingURL=index.shared.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.shared.d.ts","sourceRoot":"","sources":["../../src/workers/index.shared.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;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,KAAK,eAAe,EACpB,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"}
@@ -1,6 +1,5 @@
1
1
  import { Psbt } from '../psbt.js';
2
- import { SigningTask, ParallelSignerKeyPair, ParallelSigningResult, WorkerPoolConfig } from './types.js';
3
- import { WorkerSigningPool } from './WorkerSigningPool.js';
2
+ import { ParallelSignerKeyPair, ParallelSigningResult, SigningPoolLike, SigningTask, WorkerPoolConfig } from './types.js';
4
3
  /**
5
4
  * Options for parallel PSBT signing.
6
5
  */
@@ -64,7 +63,7 @@ export interface PsbtParallelKeyPair extends ParallelSignerKeyPair {
64
63
  * const result = await signPsbtParallel(psbt, keyPair, { workerCount: 4 });
65
64
  * ```
66
65
  */
67
- export declare function signPsbtParallel(psbt: Psbt, keyPair: PsbtParallelKeyPair, poolOrConfig?: WorkerSigningPool | WorkerPoolConfig, options?: ParallelSignOptions): Promise<ParallelSigningResult>;
66
+ export declare function signPsbtParallel(psbt: Psbt, keyPair: PsbtParallelKeyPair, poolOrConfig?: SigningPoolLike | WorkerPoolConfig, options?: ParallelSignOptions): Promise<ParallelSigningResult>;
68
67
  /**
69
68
  * Prepares signing tasks from a PSBT.
70
69
  *
@@ -1 +1 @@
1
- {"version":3,"file":"psbt-parallel.d.ts","sourceRoot":"","sources":["../../src/workers/psbt-parallel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAIH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,KAAK,EACR,WAAW,EACX,qBAAqB,EACrB,qBAAqB,EACrB,gBAAgB,EACnB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAK3D;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC;;;OAGG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAE1C;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC;IAElC;;OAEG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAEvC;;;OAGG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,qBAAqB;IAC9D,yCAAyC;IACzC,QAAQ,CAAC,OAAO,CAAC,EAAE;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;CAChD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAsB,gBAAgB,CAClC,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,mBAAmB,EAC5B,YAAY,CAAC,EAAE,iBAAiB,GAAG,gBAAgB,EACnD,OAAO,GAAE,mBAAwB,GAClC,OAAO,CAAC,qBAAqB,CAAC,CA4ChC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAC/B,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,mBAAmB,EAC5B,OAAO,GAAE,mBAAwB,GAClC,WAAW,EAAE,CA4Bf;AAuED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACjC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,qBAAqB,EAC7B,OAAO,EAAE,mBAAmB,GAC7B,IAAI,CAyCN"}
1
+ {"version":3,"file":"psbt-parallel.d.ts","sourceRoot":"","sources":["../../src/workers/psbt-parallel.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAIH,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAC;AAEvC,OAAO,KAAK,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,eAAe,EAAE,WAAW,EAAE,gBAAgB,EAAG,MAAM,YAAY,CAAC;AAMhI;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC;;;OAGG;IACH,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAE1C;;OAEG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,UAAU,CAAC;IAElC;;OAEG;IACH,QAAQ,CAAC,UAAU,CAAC,EAAE,gBAAgB,CAAC;IAEvC;;;OAGG;IACH,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAoB,SAAQ,qBAAqB;IAC9D,yCAAyC;IACzC,QAAQ,CAAC,OAAO,CAAC,EAAE;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;CAChD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAsB,gBAAgB,CAClC,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,mBAAmB,EAC5B,YAAY,CAAC,EAAE,eAAe,GAAG,gBAAgB,EACjD,OAAO,GAAE,mBAAwB,GAClC,OAAO,CAAC,qBAAqB,CAAC,CA6ChC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAC/B,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,mBAAmB,EAC5B,OAAO,GAAE,mBAAwB,GAClC,WAAW,EAAE,CA4Bf;AAuED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACjC,IAAI,EAAE,IAAI,EACV,MAAM,EAAE,qBAAqB,EAC7B,OAAO,EAAE,mBAAmB,GAC7B,IAAI,CAyCN"}
@@ -347,6 +347,23 @@ export declare const WorkerState: {
347
347
  readonly Terminated: 4;
348
348
  };
349
349
  export type WorkerState = (typeof WorkerState)[keyof typeof WorkerState];
350
+ /**
351
+ * Minimum contract for any signing pool implementation.
352
+ *
353
+ * Implemented by WorkerSigningPool (browser), NodeWorkerSigningPool (Node.js),
354
+ * and SequentialSigningPool (React Native / fallback).
355
+ */
356
+ export interface SigningPoolLike extends Disposable, AsyncDisposable {
357
+ signBatch(tasks: readonly SigningTask[], keyPair: ParallelSignerKeyPair): Promise<ParallelSigningResult>;
358
+ preserveWorkers(): void;
359
+ releaseWorkers(): void;
360
+ initialize(): Promise<void>;
361
+ shutdown(): Promise<void>;
362
+ readonly workerCount: number;
363
+ readonly idleWorkerCount: number;
364
+ readonly busyWorkerCount: number;
365
+ readonly isPreservingWorkers: boolean;
366
+ }
350
367
  /**
351
368
  * Internal worker wrapper for pool management.
352
369
  */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/workers/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/workers/types.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { fromBech32, type Bech32Result } from './bech32utils.js';
1
+ import { type Bech32Result, fromBech32 } from './bech32utils.js';
2
2
  import type { Network } from './networks.js';
3
3
  import { type Bytes20 } from './types.js';
4
4
  export { fromBech32, type Bech32Result };
@@ -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,UAAU,EAAE,KAAK,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAGjE,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAS7C,OAAO,EAA4C,KAAK,OAAO,EAAoC,MAAM,YAAY,CAAC;AAEtH,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,CAuEZ"}
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
@@ -20,7 +20,7 @@ import { p2wpkh } from './payments/p2wpkh.js';
20
20
  import { p2wsh } from './payments/p2wsh.js';
21
21
  import * as bscript from './script.js';
22
22
  import { opcodes } from './script.js';
23
- import { isBytes20, isUInt8, toBytes20, toBytes32 } from './types.js';
23
+ import { isBytes20, isUInt8, toBytes20, toBytes32, } from './types.js';
24
24
  export { fromBech32 };
25
25
  export const FUTURE_SEGWIT_MAX_SIZE = 40;
26
26
  export const FUTURE_SEGWIT_MIN_SIZE = 2;
@@ -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
  }
@@ -229,7 +241,8 @@ export function toOutputScript(address, networkOrOptions) {
229
241
  }
230
242
  else if (decodeBech32.version === 1) {
231
243
  if (decodeBech32.data.length === 32)
232
- return p2tr({ pubkey: decodeBech32.data }).output;
244
+ return p2tr({ pubkey: decodeBech32.data })
245
+ .output;
233
246
  }
234
247
  else if (decodeBech32.version === FUTURE_OPNET_VERSION) {
235
248
  if (!network.bech32Opnet)
@@ -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 +1 @@
1
- {"version":3,"file":"bech32utils.js","sourceRoot":"","sources":["../src/bech32utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAYzC;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,OAAe;IACtC,IAAI,MAAM,CAAC;IACX,IAAI,OAAO,CAAC;IACZ,IAAI,CAAC;QACD,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;IAEd,IAAI,MAAM,EAAE,CAAC;QACT,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,OAAO,KAAK,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,OAAO,GAAG,sBAAsB,CAAC,CAAC;IAC7E,CAAC;SAAM,CAAC;QACJ,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC1B,IAAI,OAAO,KAAK,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,OAAO,GAAG,sBAAsB,CAAC,CAAC;IAC7E,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAErD,OAAO;QACH,OAAO,EAAE,OAAQ;QACjB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,IAAI,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC;KAC7B,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"bech32utils.js","sourceRoot":"","sources":["../src/bech32utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AAYzC;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,OAAe;IACtC,IAAI,MAAM,CAAC;IACX,IAAI,OAAO,CAAC;IACZ,IAAI,CAAC;QACD,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC,CAAA,CAAC;IAEd,IAAI,MAAM,EAAE,CAAC;QACT,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAW,CAAC;QACpC,IAAI,OAAO,KAAK,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,OAAO,GAAG,sBAAsB,CAAC,CAAC;IAC7E,CAAC;SAAM,CAAC;QACJ,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QACjC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAW,CAAC;QACpC,IAAI,OAAO,KAAK,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,OAAO,GAAG,sBAAsB,CAAC,CAAC;IAC7E,CAAC;IAED,MAAM,IAAI,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAErD,OAAO;QACH,OAAO,EAAE,OAAO;QAChB,MAAM,EAAE,MAAM,CAAC,MAAM;QACrB,IAAI,EAAE,IAAI,UAAU,CAAC,IAAI,CAAC;KAC7B,CAAC;AACN,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../src/block.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAO1C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,KAAK;;IACd,2BAA2B;IAC3B,OAAO,EAAE,MAAM,CAAK;IACpB,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAa;IAC/B,iDAAiD;IACjD,UAAU,CAAC,EAAE,OAAO,CAAa;IACjC,kCAAkC;IAClC,SAAS,EAAE,MAAM,CAAK;IACtB,sDAAsD;IACtD,aAAa,CAAC,EAAE,OAAO,CAAa;IACpC,qDAAqD;IACrD,IAAI,EAAE,MAAM,CAAK;IACjB,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAK;IAClB,kDAAkD;IAClD,YAAY,CAAC,EAAE,WAAW,EAAE,CAAa;IAEzC;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,KAAK;IAuC5C;;;;OAIG;IACH,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK;IAIlC;;;;OAIG;IACH,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAY7C;;;;;;OAMG;IACH,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE,WAAW,EAAE,EAAE,UAAU,CAAC,EAAE,OAAO,GAAG,OAAO;IAqBtF;;;OAGG;IACH,gBAAgB,IAAI,OAAO,GAAG,IAAI;IAkBlC;;;OAGG;IACH,gBAAgB,IAAI,OAAO;IAO3B;;;OAGG;IACH,UAAU,IAAI,OAAO;IAIrB;;;;OAIG;IACH,MAAM,IAAI,MAAM;IAMhB;;;;;OAKG;IACH,UAAU,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,YAAY,GAAE,OAAc,GAAG,MAAM;IAUvE;;;OAGG;IACH,OAAO,IAAI,OAAO;IAIlB;;;OAGG;IACH,KAAK,IAAI,MAAM;IAIf;;;OAGG;IACH,UAAU,IAAI,IAAI;IAOlB;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,UAAU;IA4B3C;;;;OAIG;IACH,KAAK,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,MAAM;IAIpC;;;OAGG;IACH,YAAY,IAAI,OAAO;IAQvB;;;OAGG;IACH,gBAAgB,IAAI,OAAO;CAuB9B"}
1
+ {"version":3,"file":"block.d.ts","sourceRoot":"","sources":["../src/block.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAO1C;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,KAAK;;IACd,2BAA2B;IAC3B,OAAO,EAAE,MAAM,CAAK;IACpB,4CAA4C;IAC5C,QAAQ,CAAC,EAAE,OAAO,CAAa;IAC/B,iDAAiD;IACjD,UAAU,CAAC,EAAE,OAAO,CAAa;IACjC,kCAAkC;IAClC,SAAS,EAAE,MAAM,CAAK;IACtB,sDAAsD;IACtD,aAAa,CAAC,EAAE,OAAO,CAAa;IACpC,qDAAqD;IACrD,IAAI,EAAE,MAAM,CAAK;IACjB,mCAAmC;IACnC,KAAK,EAAE,MAAM,CAAK;IAClB,kDAAkD;IAClD,YAAY,CAAC,EAAE,WAAW,EAAE,CAAa;IAEzC;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,KAAK;IAoC5C;;;;OAIG;IACH,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK;IAIlC;;;;OAIG;IACH,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO;IAY7C;;;;;;OAMG;IACH,MAAM,CAAC,mBAAmB,CAAC,YAAY,EAAE,WAAW,EAAE,EAAE,UAAU,CAAC,EAAE,OAAO,GAAG,OAAO;IAqBtF;;;OAGG;IACH,gBAAgB,IAAI,OAAO,GAAG,IAAI;IAkBlC;;;OAGG;IACH,gBAAgB,IAAI,OAAO;IAO3B;;;OAGG;IACH,UAAU,IAAI,OAAO;IAIrB;;;;OAIG;IACH,MAAM,IAAI,MAAM;IAMhB;;;;;OAKG;IACH,UAAU,CAAC,WAAW,CAAC,EAAE,OAAO,EAAE,YAAY,GAAE,OAAc,GAAG,MAAM;IAUvE;;;OAGG;IACH,OAAO,IAAI,OAAO;IAIlB;;;OAGG;IACH,KAAK,IAAI,MAAM;IAIf;;;OAGG;IACH,UAAU,IAAI,IAAI;IAOlB;;;;OAIG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,UAAU;IA4B3C;;;;OAIG;IACH,KAAK,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,MAAM;IAIpC;;;OAGG;IACH,YAAY,IAAI,OAAO;IAQvB;;;OAGG;IACH,gBAAgB,IAAI,OAAO;CAuB9B"}
package/build/block.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as bcrypto from './crypto.js';
2
- import { BinaryReader, BinaryWriter, varuint, equals, fromHex, alloc, compare, toHex, reverse } from './io/index.js';
2
+ import { alloc, BinaryReader, BinaryWriter, compare, equals, fromHex, reverse, toHex, varuint, } from './io/index.js';
3
3
  import { fastMerkleRoot } from './merkle.js';
4
4
  import { Transaction } from './transaction.js';
5
5
  const errorMerkleNoTxes = new TypeError('Cannot compute merkle root for zero transactions');
@@ -140,9 +140,7 @@ export class Block {
140
140
  // There is no rule for the index of the output, so use filter to find it.
141
141
  // The root is prepended with 0xaa21a9ed so check for 0x6a24aa21a9ed
142
142
  // If multiple commits are found, the output with highest index is assumed.
143
- const witnessCommits = this.transactions[0].outs
144
- .filter((out) => equals(out.script.subarray(0, 6), WITNESS_COMMIT_PREFIX))
145
- .map((out) => out.script.subarray(6, 38));
143
+ const witnessCommits = this.transactions[0].outs.filter((out) => equals(out.script.subarray(0, 6), WITNESS_COMMIT_PREFIX)).map((out) => out.script.subarray(6, 38));
146
144
  if (witnessCommits.length === 0)
147
145
  return null;
148
146
  // Use the commit with the highest output (should only be one though)
@@ -1 +1 @@
1
- {"version":3,"file":"block.js","sourceRoot":"","sources":["../src/block.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"block.js","sourceRoot":"","sources":["../src/block.ts"],"names":[],"mappings":"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"}