@bsv/sdk 1.0.29 → 1.0.31

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 (329) hide show
  1. package/dist/cjs/mod.js +25 -0
  2. package/dist/cjs/mod.js.map +1 -0
  3. package/dist/cjs/package.json +49 -0
  4. package/dist/cjs/src/compat/BSM.js +77 -0
  5. package/dist/cjs/src/compat/BSM.js.map +1 -0
  6. package/dist/cjs/src/compat/ECIES.js +512 -0
  7. package/dist/cjs/src/compat/ECIES.js.map +1 -0
  8. package/dist/cjs/src/compat/HD.js +344 -0
  9. package/dist/cjs/src/compat/HD.js.map +1 -0
  10. package/dist/cjs/src/compat/Mnemonic.js +298 -0
  11. package/dist/cjs/src/compat/Mnemonic.js.map +1 -0
  12. package/dist/cjs/src/compat/bip-39-wordlist-en.js +2057 -0
  13. package/dist/cjs/src/compat/bip-39-wordlist-en.js.map +1 -0
  14. package/dist/cjs/src/compat/index.js +37 -0
  15. package/dist/cjs/src/compat/index.js.map +1 -0
  16. package/dist/cjs/src/messages/EncryptedMessage.js +69 -0
  17. package/dist/cjs/src/messages/EncryptedMessage.js.map +1 -0
  18. package/dist/cjs/src/messages/SignedMessage.js +85 -0
  19. package/dist/cjs/src/messages/SignedMessage.js.map +1 -0
  20. package/dist/cjs/src/messages/index.js +29 -0
  21. package/dist/cjs/src/messages/index.js.map +1 -0
  22. package/dist/cjs/src/primitives/AESGCM.js +384 -0
  23. package/dist/cjs/src/primitives/AESGCM.js.map +1 -0
  24. package/dist/cjs/src/primitives/BasePoint.js +19 -0
  25. package/dist/cjs/src/primitives/BasePoint.js.map +1 -0
  26. package/dist/cjs/src/primitives/BigNumber.js +4272 -0
  27. package/dist/cjs/src/primitives/BigNumber.js.map +1 -0
  28. package/dist/cjs/src/primitives/Curve.js +1126 -0
  29. package/dist/cjs/src/primitives/Curve.js.map +1 -0
  30. package/dist/cjs/src/primitives/DRBG.js +99 -0
  31. package/dist/cjs/src/primitives/DRBG.js.map +1 -0
  32. package/dist/cjs/src/primitives/ECDSA.js +169 -0
  33. package/dist/cjs/src/primitives/ECDSA.js.map +1 -0
  34. package/dist/cjs/src/primitives/Hash.js +1387 -0
  35. package/dist/cjs/src/primitives/Hash.js.map +1 -0
  36. package/dist/cjs/src/primitives/JacobianPoint.js +400 -0
  37. package/dist/cjs/src/primitives/JacobianPoint.js.map +1 -0
  38. package/dist/cjs/src/primitives/K256.js +111 -0
  39. package/dist/cjs/src/primitives/K256.js.map +1 -0
  40. package/dist/cjs/src/primitives/Mersenne.js +118 -0
  41. package/dist/cjs/src/primitives/Mersenne.js.map +1 -0
  42. package/dist/cjs/src/primitives/MontgomoryMethod.js +150 -0
  43. package/dist/cjs/src/primitives/MontgomoryMethod.js.map +1 -0
  44. package/dist/cjs/src/primitives/Point.js +819 -0
  45. package/dist/cjs/src/primitives/Point.js.map +1 -0
  46. package/dist/cjs/src/primitives/PrivateKey.js +246 -0
  47. package/dist/cjs/src/primitives/PrivateKey.js.map +1 -0
  48. package/dist/cjs/src/primitives/PublicKey.js +168 -0
  49. package/dist/cjs/src/primitives/PublicKey.js.map +1 -0
  50. package/dist/cjs/src/primitives/Random.js +57 -0
  51. package/dist/cjs/src/primitives/Random.js.map +1 -0
  52. package/dist/cjs/src/primitives/ReductionContext.js +490 -0
  53. package/dist/cjs/src/primitives/ReductionContext.js.map +1 -0
  54. package/dist/cjs/src/primitives/Signature.js +357 -0
  55. package/dist/cjs/src/primitives/Signature.js.map +1 -0
  56. package/dist/cjs/src/primitives/SymmetricKey.js +82 -0
  57. package/dist/cjs/src/primitives/SymmetricKey.js.map +1 -0
  58. package/dist/cjs/src/primitives/TransactionSignature.js +172 -0
  59. package/dist/cjs/src/primitives/TransactionSignature.js.map +1 -0
  60. package/dist/cjs/src/primitives/index.js +51 -0
  61. package/dist/cjs/src/primitives/index.js.map +1 -0
  62. package/dist/cjs/src/primitives/utils.js +624 -0
  63. package/dist/cjs/src/primitives/utils.js.map +1 -0
  64. package/dist/cjs/src/script/LockingScript.js +35 -0
  65. package/dist/cjs/src/script/LockingScript.js.map +1 -0
  66. package/dist/cjs/src/script/OP.js +207 -0
  67. package/dist/cjs/src/script/OP.js.map +1 -0
  68. package/dist/cjs/src/script/Script.js +435 -0
  69. package/dist/cjs/src/script/Script.js.map +1 -0
  70. package/dist/cjs/src/script/ScriptChunk.js +3 -0
  71. package/dist/cjs/src/script/ScriptChunk.js.map +1 -0
  72. package/dist/cjs/src/script/ScriptTemplate.js +3 -0
  73. package/dist/cjs/src/script/ScriptTemplate.js.map +1 -0
  74. package/dist/cjs/src/script/Spend.js +1252 -0
  75. package/dist/cjs/src/script/Spend.js.map +1 -0
  76. package/dist/cjs/src/script/UnlockingScript.js +35 -0
  77. package/dist/cjs/src/script/UnlockingScript.js.map +1 -0
  78. package/dist/cjs/src/script/index.js +32 -0
  79. package/dist/cjs/src/script/index.js.map +1 -0
  80. package/dist/cjs/src/script/templates/P2PKH.js +120 -0
  81. package/dist/cjs/src/script/templates/P2PKH.js.map +1 -0
  82. package/dist/cjs/src/script/templates/RPuzzle.js +125 -0
  83. package/dist/cjs/src/script/templates/RPuzzle.js.map +1 -0
  84. package/dist/cjs/src/script/templates/index.js +11 -0
  85. package/dist/cjs/src/script/templates/index.js.map +1 -0
  86. package/dist/cjs/src/transaction/Broadcaster.js +3 -0
  87. package/dist/cjs/src/transaction/Broadcaster.js.map +1 -0
  88. package/dist/cjs/src/transaction/ChainTracker.js +3 -0
  89. package/dist/cjs/src/transaction/ChainTracker.js.map +1 -0
  90. package/dist/cjs/src/transaction/FeeModel.js +3 -0
  91. package/dist/cjs/src/transaction/FeeModel.js.map +1 -0
  92. package/dist/cjs/src/transaction/MerklePath.js +239 -0
  93. package/dist/cjs/src/transaction/MerklePath.js.map +1 -0
  94. package/dist/cjs/src/transaction/Transaction.js +616 -0
  95. package/dist/cjs/src/transaction/Transaction.js.map +1 -0
  96. package/dist/cjs/src/transaction/TransactionInput.js +3 -0
  97. package/dist/cjs/src/transaction/TransactionInput.js.map +1 -0
  98. package/dist/cjs/src/transaction/TransactionOutput.js +3 -0
  99. package/dist/cjs/src/transaction/TransactionOutput.js.map +1 -0
  100. package/dist/cjs/src/transaction/broadcasters/ARC.js +112 -0
  101. package/dist/cjs/src/transaction/broadcasters/ARC.js.map +1 -0
  102. package/dist/cjs/src/transaction/broadcasters/index.js +9 -0
  103. package/dist/cjs/src/transaction/broadcasters/index.js.map +1 -0
  104. package/dist/cjs/src/transaction/fee-models/SatoshisPerKilobyte.js +69 -0
  105. package/dist/cjs/src/transaction/fee-models/SatoshisPerKilobyte.js.map +1 -0
  106. package/dist/cjs/src/transaction/fee-models/index.js +9 -0
  107. package/dist/cjs/src/transaction/fee-models/index.js.map +1 -0
  108. package/dist/cjs/src/transaction/index.js +11 -0
  109. package/dist/cjs/src/transaction/index.js.map +1 -0
  110. package/dist/cjs/tsconfig.cjs.tsbuildinfo +1 -0
  111. package/dist/esm/mod.js +9 -0
  112. package/dist/esm/mod.js.map +1 -0
  113. package/dist/esm/src/compat/BSM.js +45 -0
  114. package/dist/esm/src/compat/BSM.js.map +1 -0
  115. package/dist/esm/src/compat/ECIES.js +483 -0
  116. package/dist/esm/src/compat/ECIES.js.map +1 -0
  117. package/dist/esm/src/compat/HD.js +322 -0
  118. package/dist/esm/src/compat/HD.js.map +1 -0
  119. package/dist/esm/src/compat/Mnemonic.js +272 -0
  120. package/dist/esm/src/compat/Mnemonic.js.map +1 -0
  121. package/dist/esm/src/compat/bip-39-wordlist-en.js +2054 -0
  122. package/dist/esm/src/compat/bip-39-wordlist-en.js.map +1 -0
  123. package/dist/esm/src/compat/index.js +5 -0
  124. package/dist/esm/src/compat/index.js.map +1 -0
  125. package/dist/esm/src/messages/EncryptedMessage.js +61 -0
  126. package/dist/esm/src/messages/EncryptedMessage.js.map +1 -0
  127. package/dist/esm/src/messages/SignedMessage.js +77 -0
  128. package/dist/esm/src/messages/SignedMessage.js.map +1 -0
  129. package/dist/esm/src/messages/index.js +3 -0
  130. package/dist/esm/src/messages/index.js.map +1 -0
  131. package/dist/esm/src/primitives/AESGCM.js +371 -0
  132. package/dist/esm/src/primitives/AESGCM.js.map +1 -0
  133. package/dist/esm/src/primitives/BasePoint.js +16 -0
  134. package/dist/esm/src/primitives/BasePoint.js.map +1 -0
  135. package/dist/esm/src/primitives/BigNumber.js +4307 -0
  136. package/dist/esm/src/primitives/BigNumber.js.map +1 -0
  137. package/dist/esm/src/primitives/Curve.js +1141 -0
  138. package/dist/esm/src/primitives/Curve.js.map +1 -0
  139. package/dist/esm/src/primitives/DRBG.js +98 -0
  140. package/dist/esm/src/primitives/DRBG.js.map +1 -0
  141. package/dist/esm/src/primitives/ECDSA.js +161 -0
  142. package/dist/esm/src/primitives/ECDSA.js.map +1 -0
  143. package/dist/esm/src/primitives/Hash.js +1391 -0
  144. package/dist/esm/src/primitives/Hash.js.map +1 -0
  145. package/dist/esm/src/primitives/JacobianPoint.js +398 -0
  146. package/dist/esm/src/primitives/JacobianPoint.js.map +1 -0
  147. package/dist/esm/src/primitives/K256.js +105 -0
  148. package/dist/esm/src/primitives/K256.js.map +1 -0
  149. package/dist/esm/src/primitives/Mersenne.js +117 -0
  150. package/dist/esm/src/primitives/Mersenne.js.map +1 -0
  151. package/dist/esm/src/primitives/MontgomoryMethod.js +149 -0
  152. package/dist/esm/src/primitives/MontgomoryMethod.js.map +1 -0
  153. package/dist/esm/src/primitives/Point.js +816 -0
  154. package/dist/esm/src/primitives/Point.js.map +1 -0
  155. package/dist/esm/src/primitives/PrivateKey.js +240 -0
  156. package/dist/esm/src/primitives/PrivateKey.js.map +1 -0
  157. package/dist/esm/src/primitives/PublicKey.js +162 -0
  158. package/dist/esm/src/primitives/PublicKey.js.map +1 -0
  159. package/dist/esm/src/primitives/Random.js +56 -0
  160. package/dist/esm/src/primitives/Random.js.map +1 -0
  161. package/dist/esm/src/primitives/ReductionContext.js +486 -0
  162. package/dist/esm/src/primitives/ReductionContext.js.map +1 -0
  163. package/dist/esm/src/primitives/Signature.js +360 -0
  164. package/dist/esm/src/primitives/Signature.js.map +1 -0
  165. package/dist/esm/src/primitives/SymmetricKey.js +76 -0
  166. package/dist/esm/src/primitives/SymmetricKey.js.map +1 -0
  167. package/dist/esm/src/primitives/TransactionSignature.js +144 -0
  168. package/dist/esm/src/primitives/TransactionSignature.js.map +1 -0
  169. package/dist/esm/src/primitives/index.js +13 -0
  170. package/dist/esm/src/primitives/index.js.map +1 -0
  171. package/dist/esm/src/primitives/utils.js +609 -0
  172. package/dist/esm/src/primitives/utils.js.map +1 -0
  173. package/dist/esm/src/script/LockingScript.js +29 -0
  174. package/dist/esm/src/script/LockingScript.js.map +1 -0
  175. package/dist/esm/src/script/OP.js +205 -0
  176. package/dist/esm/src/script/OP.js.map +1 -0
  177. package/dist/esm/src/script/Script.js +430 -0
  178. package/dist/esm/src/script/Script.js.map +1 -0
  179. package/dist/esm/src/script/ScriptChunk.js +2 -0
  180. package/dist/esm/src/script/ScriptChunk.js.map +1 -0
  181. package/dist/esm/src/script/ScriptTemplate.js +2 -0
  182. package/dist/esm/src/script/ScriptTemplate.js.map +1 -0
  183. package/dist/esm/src/script/Spend.js +1240 -0
  184. package/dist/esm/src/script/Spend.js.map +1 -0
  185. package/dist/esm/src/script/UnlockingScript.js +29 -0
  186. package/dist/esm/src/script/UnlockingScript.js.map +1 -0
  187. package/dist/esm/src/script/index.js +7 -0
  188. package/dist/esm/src/script/index.js.map +1 -0
  189. package/dist/esm/src/script/templates/P2PKH.js +113 -0
  190. package/dist/esm/src/script/templates/P2PKH.js.map +1 -0
  191. package/dist/esm/src/script/templates/RPuzzle.js +119 -0
  192. package/dist/esm/src/script/templates/RPuzzle.js.map +1 -0
  193. package/dist/esm/src/script/templates/index.js +3 -0
  194. package/dist/esm/src/script/templates/index.js.map +1 -0
  195. package/dist/esm/src/transaction/Broadcaster.js +2 -0
  196. package/dist/esm/src/transaction/Broadcaster.js.map +1 -0
  197. package/dist/esm/src/transaction/ChainTracker.js +2 -0
  198. package/dist/esm/src/transaction/ChainTracker.js.map +1 -0
  199. package/dist/esm/src/transaction/FeeModel.js +2 -0
  200. package/dist/esm/src/transaction/FeeModel.js.map +1 -0
  201. package/dist/esm/src/transaction/MerklePath.js +237 -0
  202. package/dist/esm/src/transaction/MerklePath.js.map +1 -0
  203. package/dist/esm/src/transaction/Transaction.js +617 -0
  204. package/dist/esm/src/transaction/Transaction.js.map +1 -0
  205. package/dist/esm/src/transaction/TransactionInput.js +2 -0
  206. package/dist/esm/src/transaction/TransactionInput.js.map +1 -0
  207. package/dist/esm/src/transaction/TransactionOutput.js +2 -0
  208. package/dist/esm/src/transaction/TransactionOutput.js.map +1 -0
  209. package/dist/esm/src/transaction/broadcasters/ARC.js +111 -0
  210. package/dist/esm/src/transaction/broadcasters/ARC.js.map +1 -0
  211. package/dist/esm/src/transaction/broadcasters/index.js +2 -0
  212. package/dist/esm/src/transaction/broadcasters/index.js.map +1 -0
  213. package/dist/esm/src/transaction/fee-models/SatoshisPerKilobyte.js +71 -0
  214. package/dist/esm/src/transaction/fee-models/SatoshisPerKilobyte.js.map +1 -0
  215. package/dist/esm/src/transaction/fee-models/index.js +2 -0
  216. package/dist/esm/src/transaction/fee-models/index.js.map +1 -0
  217. package/dist/esm/src/transaction/index.js +3 -0
  218. package/dist/esm/src/transaction/index.js.map +1 -0
  219. package/dist/esm/tsconfig.esm.tsbuildinfo +1 -0
  220. package/dist/types/mod.d.ts +9 -0
  221. package/dist/types/mod.d.ts.map +1 -0
  222. package/dist/types/src/compat/BSM.d.ts +28 -0
  223. package/dist/types/src/compat/BSM.d.ts.map +1 -0
  224. package/dist/types/src/compat/ECIES.d.ts +62 -0
  225. package/dist/types/src/compat/ECIES.d.ts.map +1 -0
  226. package/dist/types/src/compat/HD.d.ts +131 -0
  227. package/dist/types/src/compat/HD.d.ts.map +1 -0
  228. package/dist/types/src/compat/Mnemonic.d.ts +132 -0
  229. package/dist/types/src/compat/Mnemonic.d.ts.map +1 -0
  230. package/dist/types/src/compat/bip-39-wordlist-en.d.ts +5 -0
  231. package/dist/types/src/compat/bip-39-wordlist-en.d.ts.map +1 -0
  232. package/dist/types/src/compat/index.d.ts +5 -0
  233. package/dist/types/src/compat/index.d.ts.map +1 -0
  234. package/dist/types/src/messages/EncryptedMessage.d.ts +20 -0
  235. package/dist/types/src/messages/EncryptedMessage.d.ts.map +1 -0
  236. package/dist/types/src/messages/SignedMessage.d.ts +21 -0
  237. package/dist/types/src/messages/SignedMessage.d.ts.map +1 -0
  238. package/dist/types/src/messages/index.d.ts +3 -0
  239. package/dist/types/src/messages/index.d.ts.map +1 -0
  240. package/dist/types/src/primitives/AESGCM.d.ts +14 -0
  241. package/dist/types/src/primitives/AESGCM.d.ts.map +1 -0
  242. package/dist/types/src/primitives/BasePoint.d.ts +22 -0
  243. package/dist/types/src/primitives/BasePoint.d.ts.map +1 -0
  244. package/dist/types/src/primitives/BigNumber.d.ts +1895 -0
  245. package/dist/types/src/primitives/BigNumber.d.ts.map +1 -0
  246. package/dist/types/src/primitives/Curve.d.ts +55 -0
  247. package/dist/types/src/primitives/Curve.d.ts.map +1 -0
  248. package/dist/types/src/primitives/DRBG.d.ts +54 -0
  249. package/dist/types/src/primitives/DRBG.d.ts.map +1 -0
  250. package/dist/types/src/primitives/ECDSA.d.ts +39 -0
  251. package/dist/types/src/primitives/ECDSA.d.ts.map +1 -0
  252. package/dist/types/src/primitives/Hash.d.ts +450 -0
  253. package/dist/types/src/primitives/Hash.d.ts.map +1 -0
  254. package/dist/types/src/primitives/JacobianPoint.d.ts +164 -0
  255. package/dist/types/src/primitives/JacobianPoint.d.ts.map +1 -0
  256. package/dist/types/src/primitives/K256.d.ts +53 -0
  257. package/dist/types/src/primitives/K256.d.ts.map +1 -0
  258. package/dist/types/src/primitives/Mersenne.d.ts +72 -0
  259. package/dist/types/src/primitives/Mersenne.d.ts.map +1 -0
  260. package/dist/types/src/primitives/MontgomoryMethod.d.ts +96 -0
  261. package/dist/types/src/primitives/MontgomoryMethod.d.ts.map +1 -0
  262. package/dist/types/src/primitives/Point.d.ts +303 -0
  263. package/dist/types/src/primitives/Point.d.ts.map +1 -0
  264. package/dist/types/src/primitives/PrivateKey.d.ts +174 -0
  265. package/dist/types/src/primitives/PrivateKey.d.ts.map +1 -0
  266. package/dist/types/src/primitives/PublicKey.d.ts +120 -0
  267. package/dist/types/src/primitives/PublicKey.d.ts.map +1 -0
  268. package/dist/types/src/primitives/Random.d.ts +14 -0
  269. package/dist/types/src/primitives/Random.d.ts.map +1 -0
  270. package/dist/types/src/primitives/ReductionContext.d.ts +308 -0
  271. package/dist/types/src/primitives/ReductionContext.d.ts.map +1 -0
  272. package/dist/types/src/primitives/Signature.d.ts +162 -0
  273. package/dist/types/src/primitives/Signature.d.ts.map +1 -0
  274. package/dist/types/src/primitives/SymmetricKey.d.ts +55 -0
  275. package/dist/types/src/primitives/SymmetricKey.d.ts.map +1 -0
  276. package/dist/types/src/primitives/TransactionSignature.d.ts +36 -0
  277. package/dist/types/src/primitives/TransactionSignature.d.ts.map +1 -0
  278. package/dist/types/src/primitives/index.d.ts +13 -0
  279. package/dist/types/src/primitives/index.d.ts.map +1 -0
  280. package/dist/types/src/primitives/utils.d.ts +124 -0
  281. package/dist/types/src/primitives/utils.d.ts.map +1 -0
  282. package/dist/types/src/script/LockingScript.d.ts +25 -0
  283. package/dist/types/src/script/LockingScript.d.ts.map +1 -0
  284. package/dist/types/src/script/OP.d.ts +193 -0
  285. package/dist/types/src/script/OP.d.ts.map +1 -0
  286. package/dist/types/src/script/Script.d.ts +148 -0
  287. package/dist/types/src/script/Script.d.ts.map +1 -0
  288. package/dist/types/src/script/ScriptChunk.d.ts +8 -0
  289. package/dist/types/src/script/ScriptChunk.d.ts.map +1 -0
  290. package/dist/types/src/script/ScriptTemplate.d.ts +33 -0
  291. package/dist/types/src/script/ScriptTemplate.d.ts.map +1 -0
  292. package/dist/types/src/script/Spend.d.ts +103 -0
  293. package/dist/types/src/script/Spend.d.ts.map +1 -0
  294. package/dist/types/src/script/UnlockingScript.d.ts +25 -0
  295. package/dist/types/src/script/UnlockingScript.d.ts.map +1 -0
  296. package/dist/types/src/script/index.d.ts +8 -0
  297. package/dist/types/src/script/index.d.ts.map +1 -0
  298. package/dist/types/src/script/templates/P2PKH.d.ts +40 -0
  299. package/dist/types/src/script/templates/P2PKH.d.ts.map +1 -0
  300. package/dist/types/src/script/templates/RPuzzle.d.ts +47 -0
  301. package/dist/types/src/script/templates/RPuzzle.d.ts.map +1 -0
  302. package/dist/types/src/script/templates/index.d.ts +3 -0
  303. package/dist/types/src/script/templates/index.d.ts.map +1 -0
  304. package/dist/types/src/transaction/Broadcaster.d.ts +39 -0
  305. package/dist/types/src/transaction/Broadcaster.d.ts.map +1 -0
  306. package/dist/types/src/transaction/ChainTracker.d.ts +23 -0
  307. package/dist/types/src/transaction/ChainTracker.d.ts.map +1 -0
  308. package/dist/types/src/transaction/FeeModel.d.ts +12 -0
  309. package/dist/types/src/transaction/FeeModel.d.ts.map +1 -0
  310. package/dist/types/src/transaction/MerklePath.d.ts +91 -0
  311. package/dist/types/src/transaction/MerklePath.d.ts.map +1 -0
  312. package/dist/types/src/transaction/Transaction.d.ts +215 -0
  313. package/dist/types/src/transaction/Transaction.d.ts.map +1 -0
  314. package/dist/types/src/transaction/TransactionInput.d.ts +63 -0
  315. package/dist/types/src/transaction/TransactionInput.d.ts.map +1 -0
  316. package/dist/types/src/transaction/TransactionOutput.d.ts +36 -0
  317. package/dist/types/src/transaction/TransactionOutput.d.ts.map +1 -0
  318. package/dist/types/src/transaction/broadcasters/ARC.d.ts +28 -0
  319. package/dist/types/src/transaction/broadcasters/ARC.d.ts.map +1 -0
  320. package/dist/types/src/transaction/broadcasters/index.d.ts +2 -0
  321. package/dist/types/src/transaction/broadcasters/index.d.ts.map +1 -0
  322. package/dist/types/src/transaction/fee-models/SatoshisPerKilobyte.d.ts +26 -0
  323. package/dist/types/src/transaction/fee-models/SatoshisPerKilobyte.d.ts.map +1 -0
  324. package/dist/types/src/transaction/fee-models/index.d.ts +2 -0
  325. package/dist/types/src/transaction/fee-models/index.d.ts.map +1 -0
  326. package/dist/types/src/transaction/index.d.ts +7 -0
  327. package/dist/types/src/transaction/index.d.ts.map +1 -0
  328. package/dist/types/tsconfig.types.tsbuildinfo +1 -0
  329. package/package.json +1 -1
@@ -0,0 +1,435 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const OP_js_1 = __importDefault(require("./OP.js"));
7
+ const utils_js_1 = require("../primitives/utils.js");
8
+ const BigNumber_js_1 = __importDefault(require("../primitives/BigNumber.js"));
9
+ /**
10
+ * The Script class represents a script in a Bitcoin SV transaction,
11
+ * encapsulating the functionality to construct, parse, and serialize
12
+ * scripts used in both locking (output) and unlocking (input) scripts.
13
+ *
14
+ * @property {ScriptChunk[]} chunks - An array of script chunks that make up the script.
15
+ */
16
+ class Script {
17
+ /**
18
+ * @method fromASM
19
+ * Static method to construct a Script instance from an ASM (Assembly) formatted string.
20
+ * @param asm - The script in ASM string format.
21
+ * @returns A new Script instance.
22
+ * @example
23
+ * const script = Script.fromASM("OP_DUP OP_HASH160 abcd... OP_EQUALVERIFY OP_CHECKSIG")
24
+ */
25
+ static fromASM(asm) {
26
+ const chunks = [];
27
+ const tokens = asm.split(' ');
28
+ let i = 0;
29
+ while (i < tokens.length) {
30
+ const token = tokens[i];
31
+ let opCode;
32
+ let opCodeNum;
33
+ if (token.startsWith('OP_') && typeof OP_js_1.default[token] !== 'undefined') {
34
+ opCode = token;
35
+ opCodeNum = OP_js_1.default[token];
36
+ }
37
+ // we start with two special cases, 0 and -1, which are handled specially in
38
+ // toASM. see _chunkToString.
39
+ if (token === '0') {
40
+ opCodeNum = 0;
41
+ chunks.push({
42
+ op: opCodeNum
43
+ });
44
+ i = i + 1;
45
+ }
46
+ else if (token === '-1') {
47
+ opCodeNum = OP_js_1.default.OP_1NEGATE;
48
+ chunks.push({
49
+ op: opCodeNum
50
+ });
51
+ i = i + 1;
52
+ }
53
+ else if (opCode === undefined) {
54
+ let hex = tokens[i];
55
+ if (hex.length % 2 !== 0) {
56
+ hex = '0' + hex;
57
+ }
58
+ const arr = (0, utils_js_1.toArray)(hex, 'hex');
59
+ if ((0, utils_js_1.encode)(arr, 'hex') !== hex) {
60
+ throw new Error('invalid hex string in script');
61
+ }
62
+ const len = arr.length;
63
+ if (len >= 0 && len < OP_js_1.default.OP_PUSHDATA1) {
64
+ opCodeNum = len;
65
+ }
66
+ else if (len < Math.pow(2, 8)) {
67
+ opCodeNum = OP_js_1.default.OP_PUSHDATA1;
68
+ }
69
+ else if (len < Math.pow(2, 16)) {
70
+ opCodeNum = OP_js_1.default.OP_PUSHDATA2;
71
+ }
72
+ else if (len < Math.pow(2, 32)) {
73
+ opCodeNum = OP_js_1.default.OP_PUSHDATA4;
74
+ }
75
+ chunks.push({
76
+ data: arr,
77
+ op: opCodeNum
78
+ });
79
+ i = i + 1;
80
+ }
81
+ else if (opCodeNum === OP_js_1.default.OP_PUSHDATA1 ||
82
+ opCodeNum === OP_js_1.default.OP_PUSHDATA2 ||
83
+ opCodeNum === OP_js_1.default.OP_PUSHDATA4) {
84
+ chunks.push({
85
+ data: (0, utils_js_1.toArray)(tokens[i + 2], 'hex'),
86
+ op: opCodeNum
87
+ });
88
+ i = i + 3;
89
+ }
90
+ else {
91
+ chunks.push({
92
+ op: opCodeNum
93
+ });
94
+ i = i + 1;
95
+ }
96
+ }
97
+ return new Script(chunks);
98
+ }
99
+ /**
100
+ * @method fromHex
101
+ * Static method to construct a Script instance from a hexadecimal string.
102
+ * @param hex - The script in hexadecimal format.
103
+ * @returns A new Script instance.
104
+ * @example
105
+ * const script = Script.fromHex("76a9...");
106
+ */
107
+ static fromHex(hex) {
108
+ if (hex.length === 0)
109
+ return Script.fromBinary([]);
110
+ if (hex.length % 2 !== 0)
111
+ throw new Error('There is an uneven number of characters in the string which suggests it is not hex encoded.');
112
+ if (!/^[0-9a-fA-F]+$/.test(hex))
113
+ throw new Error('Some elements in this string are not hex encoded.');
114
+ return Script.fromBinary((0, utils_js_1.toArray)(hex, 'hex'));
115
+ }
116
+ /**
117
+ * @method fromBinary
118
+ * Static method to construct a Script instance from a binary array.
119
+ * @param bin - The script in binary array format.
120
+ * @returns A new Script instance.
121
+ * @example
122
+ * const script = Script.fromBinary([0x76, 0xa9, ...])
123
+ */
124
+ static fromBinary(bin) {
125
+ bin = [...bin];
126
+ const chunks = [];
127
+ const br = new utils_js_1.Reader(bin);
128
+ while (!br.eof()) {
129
+ const op = br.readUInt8();
130
+ let len = 0;
131
+ // eslint-disable-next-line @typescript-eslint/no-shadow
132
+ let data = [];
133
+ if (op > 0 && op < OP_js_1.default.OP_PUSHDATA1) {
134
+ len = op;
135
+ chunks.push({
136
+ data: br.read(len),
137
+ op
138
+ });
139
+ }
140
+ else if (op === OP_js_1.default.OP_PUSHDATA1) {
141
+ try {
142
+ len = br.readUInt8();
143
+ data = br.read(len);
144
+ }
145
+ catch (err) {
146
+ br.read();
147
+ }
148
+ chunks.push({
149
+ data,
150
+ op
151
+ });
152
+ }
153
+ else if (op === OP_js_1.default.OP_PUSHDATA2) {
154
+ try {
155
+ len = br.readUInt16LE();
156
+ data = br.read(len);
157
+ }
158
+ catch (err) {
159
+ br.read();
160
+ }
161
+ chunks.push({
162
+ data,
163
+ op
164
+ });
165
+ }
166
+ else if (op === OP_js_1.default.OP_PUSHDATA4) {
167
+ try {
168
+ len = br.readUInt32LE();
169
+ data = br.read(len);
170
+ }
171
+ catch (err) {
172
+ br.read();
173
+ }
174
+ chunks.push({
175
+ data,
176
+ op
177
+ });
178
+ }
179
+ else {
180
+ chunks.push({
181
+ op
182
+ });
183
+ }
184
+ }
185
+ return new Script(chunks);
186
+ }
187
+ /**
188
+ * @constructor
189
+ * Constructs a new Script object.
190
+ * @param chunks=[] - An array of script chunks to directly initialize the script.
191
+ */
192
+ constructor(chunks = []) {
193
+ this.chunks = chunks;
194
+ }
195
+ /**
196
+ * @method toASM
197
+ * Serializes the script to an ASM formatted string.
198
+ * @returns The script in ASM string format.
199
+ */
200
+ toASM() {
201
+ let str = '';
202
+ for (let i = 0; i < this.chunks.length; i++) {
203
+ const chunk = this.chunks[i];
204
+ str += this._chunkToString(chunk);
205
+ }
206
+ return str.slice(1);
207
+ }
208
+ /**
209
+ * @method toHex
210
+ * Serializes the script to a hexadecimal string.
211
+ * @returns The script in hexadecimal format.
212
+ */
213
+ toHex() {
214
+ return (0, utils_js_1.encode)(this.toBinary(), 'hex');
215
+ }
216
+ /**
217
+ * @method toBinary
218
+ * Serializes the script to a binary array.
219
+ * @returns The script in binary array format.
220
+ */
221
+ toBinary() {
222
+ const writer = new utils_js_1.Writer();
223
+ for (let i = 0; i < this.chunks.length; i++) {
224
+ const chunk = this.chunks[i];
225
+ const op = chunk.op;
226
+ writer.writeUInt8(op);
227
+ if (chunk.data) {
228
+ if (op < OP_js_1.default.OP_PUSHDATA1) {
229
+ writer.write(chunk.data);
230
+ }
231
+ else if (op === OP_js_1.default.OP_PUSHDATA1) {
232
+ writer.writeUInt8(chunk.data.length);
233
+ writer.write(chunk.data);
234
+ }
235
+ else if (op === OP_js_1.default.OP_PUSHDATA2) {
236
+ writer.writeUInt16LE(chunk.data.length);
237
+ writer.write(chunk.data);
238
+ }
239
+ else if (op === OP_js_1.default.OP_PUSHDATA4) {
240
+ writer.writeUInt32LE(chunk.data.length);
241
+ writer.write(chunk.data);
242
+ }
243
+ }
244
+ }
245
+ return writer.toArray();
246
+ }
247
+ /**
248
+ * @method writeScript
249
+ * Appends another script to this script.
250
+ * @param script - The script to append.
251
+ * @returns This script instance for chaining.
252
+ */
253
+ writeScript(script) {
254
+ this.chunks = this.chunks.concat(script.chunks);
255
+ return this;
256
+ }
257
+ /**
258
+ * @method writeOpCode
259
+ * Appends an opcode to the script.
260
+ * @param op - The opcode to append.
261
+ * @returns This script instance for chaining.
262
+ */
263
+ writeOpCode(op) {
264
+ this.chunks.push({ op });
265
+ return this;
266
+ }
267
+ /**
268
+ * @method setChunkOpCode
269
+ * Sets the opcode of a specific chunk in the script.
270
+ * @param i - The index of the chunk.
271
+ * @param op - The opcode to set.
272
+ * @returns This script instance for chaining.
273
+ */
274
+ setChunkOpCode(i, op) {
275
+ this.chunks[i] = { op };
276
+ return this;
277
+ }
278
+ /**
279
+ * @method writeBn
280
+ * Appends a BigNumber to the script as an opcode.
281
+ * @param bn - The BigNumber to append.
282
+ * @returns This script instance for chaining.
283
+ */
284
+ writeBn(bn) {
285
+ if (bn.cmpn(0) === OP_js_1.default.OP_0) {
286
+ this.chunks.push({
287
+ op: OP_js_1.default.OP_0
288
+ });
289
+ }
290
+ else if (bn.cmpn(-1) === 0) {
291
+ this.chunks.push({
292
+ op: OP_js_1.default.OP_1NEGATE
293
+ });
294
+ }
295
+ else if (bn.cmpn(1) >= 0 && bn.cmpn(16) <= 0) {
296
+ // see OP_1 - OP_16
297
+ this.chunks.push({
298
+ op: bn.toNumber() + OP_js_1.default.OP_1 - 1
299
+ });
300
+ }
301
+ else {
302
+ const buf = bn.toSm('little');
303
+ this.writeBin(buf);
304
+ }
305
+ return this;
306
+ }
307
+ /**
308
+ * @method writeBin
309
+ * Appends binary data to the script, determining the appropriate opcode based on length.
310
+ * @param bin - The binary data to append.
311
+ * @returns This script instance for chaining.
312
+ * @throws {Error} Throws an error if the data is too large to be pushed.
313
+ */
314
+ writeBin(bin) {
315
+ let op;
316
+ if (bin.length > 0 && bin.length < OP_js_1.default.OP_PUSHDATA1) {
317
+ op = bin.length;
318
+ }
319
+ else if (bin.length === 0) {
320
+ op = OP_js_1.default.OP_0;
321
+ }
322
+ else if (bin.length < Math.pow(2, 8)) {
323
+ op = OP_js_1.default.OP_PUSHDATA1;
324
+ }
325
+ else if (bin.length < Math.pow(2, 16)) {
326
+ op = OP_js_1.default.OP_PUSHDATA2;
327
+ }
328
+ else if (bin.length < Math.pow(2, 32)) {
329
+ op = OP_js_1.default.OP_PUSHDATA4;
330
+ }
331
+ else {
332
+ throw new Error("You can't push that much data");
333
+ }
334
+ this.chunks.push({
335
+ data: bin,
336
+ op
337
+ });
338
+ return this;
339
+ }
340
+ /**
341
+ * @method writeNumber
342
+ * Appends a number to the script.
343
+ * @param num - The number to append.
344
+ * @returns This script instance for chaining.
345
+ */
346
+ writeNumber(num) {
347
+ this.writeBn(new BigNumber_js_1.default(num));
348
+ return this;
349
+ }
350
+ /**
351
+ * @method removeCodeseparators
352
+ * Removes all OP_CODESEPARATOR opcodes from the script.
353
+ * @returns This script instance for chaining.
354
+ */
355
+ removeCodeseparators() {
356
+ const chunks = [];
357
+ for (let i = 0; i < this.chunks.length; i++) {
358
+ if (this.chunks[i].op !== OP_js_1.default.OP_CODESEPARATOR) {
359
+ chunks.push(this.chunks[i]);
360
+ }
361
+ }
362
+ this.chunks = chunks;
363
+ return this;
364
+ }
365
+ /**
366
+ * Deletes the given item wherever it appears in the current script.
367
+ *
368
+ * @param script - The script containing the item to delete from the current script.
369
+ *
370
+ * @returns This script instance for chaining.
371
+ */
372
+ findAndDelete(script) {
373
+ const buf = script.toHex();
374
+ for (let i = 0; i < this.chunks.length; i++) {
375
+ const script2 = new Script([this.chunks[i]]);
376
+ const buf2 = script2.toHex();
377
+ if (buf === buf2) {
378
+ this.chunks.splice(i, 1);
379
+ }
380
+ }
381
+ return this;
382
+ }
383
+ /**
384
+ * @method isPushOnly
385
+ * Checks if the script contains only push data operations.
386
+ * @returns True if the script is push-only, otherwise false.
387
+ */
388
+ isPushOnly() {
389
+ for (let i = 0; i < this.chunks.length; i++) {
390
+ const chunk = this.chunks[i];
391
+ const opCodeNum = chunk.op;
392
+ if (opCodeNum > OP_js_1.default.OP_16) {
393
+ return false;
394
+ }
395
+ }
396
+ return true;
397
+ }
398
+ /**
399
+ * @method isLockingScript
400
+ * Determines if the script is a locking script.
401
+ * @returns True if the script is a locking script, otherwise false.
402
+ */
403
+ isLockingScript() {
404
+ throw new Error('Not implemented');
405
+ }
406
+ /**
407
+ * @method isUnlockingScript
408
+ * Determines if the script is an unlocking script.
409
+ * @returns True if the script is an unlocking script, otherwise false.
410
+ */
411
+ isUnlockingScript() {
412
+ throw new Error('Not implemented');
413
+ }
414
+ /**
415
+ * @private
416
+ * @method _chunkToString
417
+ * Converts a script chunk to its string representation.
418
+ * @param chunk - The script chunk.
419
+ * @returns The string representation of the chunk.
420
+ */
421
+ _chunkToString(chunk) {
422
+ const op = chunk.op;
423
+ let str = '';
424
+ if (typeof chunk.data === 'undefined') {
425
+ const val = OP_js_1.default[op];
426
+ str = `${str} ${val}`;
427
+ }
428
+ else {
429
+ str = `${str} ${(0, utils_js_1.toHex)(chunk.data)}`;
430
+ }
431
+ return str;
432
+ }
433
+ }
434
+ exports.default = Script;
435
+ //# sourceMappingURL=Script.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Script.js","sourceRoot":"","sources":["../../../../src/script/Script.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=ScriptChunk.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScriptChunk.js","sourceRoot":"","sources":["../../../../src/script/ScriptChunk.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=ScriptTemplate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ScriptTemplate.js","sourceRoot":"","sources":["../../../../src/script/ScriptTemplate.ts"],"names":[],"mappings":""}