xpi-ts 0.2.13 → 0.2.15

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 (277) hide show
  1. package/dist/cjs/lib/bitcore/address.js +75 -74
  2. package/dist/cjs/lib/bitcore/block/block.js +124 -126
  3. package/dist/cjs/lib/bitcore/block/blockheader.js +142 -208
  4. package/dist/cjs/lib/bitcore/block/index.js +3 -1
  5. package/dist/cjs/lib/bitcore/block/merkleblock.js +301 -0
  6. package/dist/cjs/lib/bitcore/crypto/bn.js +18 -22
  7. package/dist/cjs/lib/bitcore/crypto/ecdsa.js +50 -49
  8. package/dist/cjs/lib/bitcore/crypto/hash.js +25 -22
  9. package/dist/cjs/lib/bitcore/crypto/musig2.js +86 -92
  10. package/dist/cjs/lib/bitcore/crypto/point.js +42 -35
  11. package/dist/cjs/lib/bitcore/crypto/random.js +3 -2
  12. package/dist/cjs/lib/bitcore/crypto/schnorr.js +46 -55
  13. package/dist/cjs/lib/bitcore/crypto/signature.js +67 -55
  14. package/dist/cjs/lib/bitcore/crypto/sigtype.js +1 -1
  15. package/dist/cjs/lib/bitcore/encoding/base58.js +5 -4
  16. package/dist/cjs/lib/bitcore/encoding/base58check.js +14 -57
  17. package/dist/cjs/lib/bitcore/encoding/bufferreader.js +17 -17
  18. package/dist/cjs/lib/bitcore/encoding/bufferwriter.js +22 -26
  19. package/dist/cjs/lib/bitcore/encoding/varint.js +12 -11
  20. package/dist/cjs/lib/bitcore/errors.js +1 -0
  21. package/dist/cjs/lib/bitcore/hdprivatekey.js +74 -66
  22. package/dist/cjs/lib/bitcore/hdpublickey.js +96 -116
  23. package/dist/cjs/lib/bitcore/index.js +165 -172
  24. package/dist/cjs/lib/bitcore/message.js +36 -35
  25. package/dist/cjs/lib/bitcore/mnemonic/mnemonic.js +4 -3
  26. package/dist/cjs/lib/bitcore/mnemonic/pbkdf2.js +6 -5
  27. package/dist/cjs/lib/bitcore/mnemonic/words/french.js +2053 -0
  28. package/dist/cjs/lib/bitcore/mnemonic/words/index.js +2 -0
  29. package/dist/cjs/lib/bitcore/musig2/session.js +26 -25
  30. package/dist/cjs/lib/bitcore/musig2/signer.js +17 -16
  31. package/dist/cjs/lib/bitcore/networks.js +4 -3
  32. package/dist/cjs/lib/bitcore/opcode.js +11 -7
  33. package/dist/cjs/lib/bitcore/privatekey.js +42 -42
  34. package/dist/cjs/lib/bitcore/publickey.js +61 -57
  35. package/dist/cjs/lib/bitcore/script/interpreter/condition-stack.js +41 -0
  36. package/dist/cjs/lib/bitcore/script/interpreter/index.js +25 -0
  37. package/dist/cjs/lib/bitcore/script/interpreter/interpreter.js +1362 -0
  38. package/dist/cjs/lib/bitcore/script/interpreter/script-num.js +200 -0
  39. package/dist/cjs/lib/bitcore/script/interpreter/types.js +96 -0
  40. package/dist/cjs/lib/bitcore/{taproot.js → script/taproot.js} +107 -95
  41. package/dist/cjs/lib/bitcore/script.js +163 -104
  42. package/dist/cjs/lib/bitcore/taproot/musig2.js +51 -42
  43. package/dist/cjs/lib/bitcore/transaction/index.js +21 -21
  44. package/dist/cjs/lib/bitcore/transaction/input/multisig.js +10 -0
  45. package/dist/cjs/lib/bitcore/transaction/input/multisigscripthash.js +10 -0
  46. package/dist/cjs/lib/bitcore/transaction/input/publickey.js +10 -0
  47. package/dist/cjs/lib/bitcore/transaction/input/publickeyhash.js +10 -0
  48. package/dist/cjs/lib/bitcore/transaction/input/taproot.js +20 -0
  49. package/dist/cjs/lib/bitcore/transaction/input.js +145 -166
  50. package/dist/cjs/lib/bitcore/transaction/outpoint.js +89 -0
  51. package/dist/cjs/lib/bitcore/transaction/output.js +13 -8
  52. package/dist/cjs/lib/bitcore/transaction/sighash.js +96 -96
  53. package/dist/cjs/lib/bitcore/transaction/signature.js +39 -40
  54. package/dist/cjs/lib/bitcore/transaction/transaction.js +130 -118
  55. package/dist/cjs/lib/bitcore/transaction/unspentoutput.js +27 -23
  56. package/dist/cjs/lib/bitcore/util/bits.js +33 -0
  57. package/dist/cjs/lib/bitcore/util/buffer.js +29 -18
  58. package/dist/cjs/lib/bitcore/util/js.js +0 -3
  59. package/dist/cjs/lib/bitcore/util/merkle.js +53 -0
  60. package/dist/cjs/lib/bitcore/util/preconditions.js +8 -7
  61. package/dist/cjs/lib/bitcore/xaddress.js +27 -23
  62. package/dist/cjs/lib/{bitcore/taproot/nft.js → nft.js} +98 -29
  63. package/dist/cjs/lib/rank/index.js +28 -27
  64. package/dist/cjs/lib/rank/script.js +2 -1
  65. package/dist/cjs/lib/rank/transaction.js +2 -1
  66. package/dist/cjs/utils/string.js +6 -5
  67. package/dist/esm/lib/bitcore/address.js +42 -41
  68. package/dist/esm/lib/bitcore/block/block.js +126 -128
  69. package/dist/esm/lib/bitcore/block/blockheader.js +141 -207
  70. package/dist/esm/lib/bitcore/block/index.js +1 -0
  71. package/dist/esm/lib/bitcore/block/merkleblock.js +295 -0
  72. package/dist/esm/lib/bitcore/crypto/bn.js +18 -22
  73. package/dist/esm/lib/bitcore/crypto/ecdsa.js +25 -24
  74. package/dist/esm/lib/bitcore/crypto/hash.js +25 -22
  75. package/dist/esm/lib/bitcore/crypto/musig2.js +60 -66
  76. package/dist/esm/lib/bitcore/crypto/point.js +22 -15
  77. package/dist/esm/lib/bitcore/crypto/random.js +3 -2
  78. package/dist/esm/lib/bitcore/crypto/schnorr.js +35 -44
  79. package/dist/esm/lib/bitcore/crypto/signature.js +61 -49
  80. package/dist/esm/lib/bitcore/crypto/sigtype.js +1 -1
  81. package/dist/esm/lib/bitcore/encoding/base58.js +5 -4
  82. package/dist/esm/lib/bitcore/encoding/base58check.js +11 -57
  83. package/dist/esm/lib/bitcore/encoding/bufferreader.js +7 -7
  84. package/dist/esm/lib/bitcore/encoding/bufferwriter.js +18 -21
  85. package/dist/esm/lib/bitcore/encoding/varint.js +7 -6
  86. package/dist/esm/lib/bitcore/errors.js +1 -0
  87. package/dist/esm/lib/bitcore/hdprivatekey.js +47 -39
  88. package/dist/esm/lib/bitcore/hdpublickey.js +77 -97
  89. package/dist/esm/lib/bitcore/index.js +42 -45
  90. package/dist/esm/lib/bitcore/message.js +16 -15
  91. package/dist/esm/lib/bitcore/mnemonic/mnemonic.js +4 -3
  92. package/dist/esm/lib/bitcore/mnemonic/pbkdf2.js +5 -4
  93. package/dist/esm/lib/bitcore/mnemonic/words/french.js +2050 -0
  94. package/dist/esm/lib/bitcore/mnemonic/words/index.js +2 -0
  95. package/dist/esm/lib/bitcore/musig2/session.js +17 -16
  96. package/dist/esm/lib/bitcore/musig2/signer.js +19 -18
  97. package/dist/esm/lib/bitcore/networks.js +4 -3
  98. package/dist/esm/lib/bitcore/opcode.js +9 -5
  99. package/dist/esm/lib/bitcore/privatekey.js +25 -25
  100. package/dist/esm/lib/bitcore/publickey.js +46 -42
  101. package/dist/esm/lib/bitcore/script/interpreter/condition-stack.js +37 -0
  102. package/dist/esm/lib/bitcore/script/interpreter/index.js +4 -0
  103. package/dist/esm/lib/bitcore/script/interpreter/interpreter.js +1356 -0
  104. package/dist/esm/lib/bitcore/script/interpreter/script-num.js +195 -0
  105. package/dist/esm/lib/bitcore/script/interpreter/types.js +93 -0
  106. package/dist/esm/lib/bitcore/{taproot.js → script/taproot.js} +92 -81
  107. package/dist/esm/lib/bitcore/script.js +163 -102
  108. package/dist/esm/lib/bitcore/taproot/musig2.js +36 -27
  109. package/dist/esm/lib/bitcore/transaction/index.js +6 -6
  110. package/dist/esm/lib/bitcore/transaction/input/multisig.js +6 -0
  111. package/dist/esm/lib/bitcore/transaction/input/multisigscripthash.js +6 -0
  112. package/dist/esm/lib/bitcore/transaction/input/publickey.js +6 -0
  113. package/dist/esm/lib/bitcore/transaction/input/publickeyhash.js +6 -0
  114. package/dist/esm/lib/bitcore/transaction/input/taproot.js +16 -0
  115. package/dist/esm/lib/bitcore/transaction/input.js +55 -76
  116. package/dist/esm/lib/bitcore/transaction/outpoint.js +85 -0
  117. package/dist/esm/lib/bitcore/transaction/output.js +13 -8
  118. package/dist/esm/lib/bitcore/transaction/sighash.js +22 -22
  119. package/dist/esm/lib/bitcore/transaction/signature.js +16 -17
  120. package/dist/esm/lib/bitcore/transaction/transaction.js +58 -46
  121. package/dist/esm/lib/bitcore/transaction/unspentoutput.js +15 -11
  122. package/dist/esm/lib/bitcore/util/bits.js +27 -0
  123. package/dist/esm/lib/bitcore/util/buffer.js +20 -9
  124. package/dist/esm/lib/bitcore/util/js.js +0 -3
  125. package/dist/esm/lib/bitcore/util/merkle.js +47 -0
  126. package/dist/esm/lib/bitcore/util/preconditions.js +3 -2
  127. package/dist/esm/lib/bitcore/xaddress.js +16 -12
  128. package/dist/esm/lib/{bitcore/taproot/nft.js → nft.js} +97 -28
  129. package/dist/esm/lib/rank/index.js +15 -14
  130. package/dist/esm/lib/rank/script.js +1 -0
  131. package/dist/esm/lib/rank/transaction.js +1 -0
  132. package/dist/esm/utils/string.js +1 -0
  133. package/dist/types/lib/bitcore/address.d.ts +4 -3
  134. package/dist/types/lib/bitcore/address.d.ts.map +1 -1
  135. package/dist/types/lib/bitcore/block/block.d.ts +11 -19
  136. package/dist/types/lib/bitcore/block/block.d.ts.map +1 -1
  137. package/dist/types/lib/bitcore/block/blockheader.d.ts +30 -32
  138. package/dist/types/lib/bitcore/block/blockheader.d.ts.map +1 -1
  139. package/dist/types/lib/bitcore/block/index.d.ts +2 -0
  140. package/dist/types/lib/bitcore/block/index.d.ts.map +1 -1
  141. package/dist/types/lib/bitcore/block/merkleblock.d.ts +53 -0
  142. package/dist/types/lib/bitcore/block/merkleblock.d.ts.map +1 -0
  143. package/dist/types/lib/bitcore/crypto/bn.d.ts +2 -2
  144. package/dist/types/lib/bitcore/crypto/bn.d.ts.map +1 -1
  145. package/dist/types/lib/bitcore/crypto/ecdsa.d.ts +5 -4
  146. package/dist/types/lib/bitcore/crypto/ecdsa.d.ts.map +1 -1
  147. package/dist/types/lib/bitcore/crypto/hash.d.ts +3 -1
  148. package/dist/types/lib/bitcore/crypto/hash.d.ts.map +1 -1
  149. package/dist/types/lib/bitcore/crypto/musig2.d.ts +22 -30
  150. package/dist/types/lib/bitcore/crypto/musig2.d.ts.map +1 -1
  151. package/dist/types/lib/bitcore/crypto/point.d.ts +8 -3
  152. package/dist/types/lib/bitcore/crypto/point.d.ts.map +1 -1
  153. package/dist/types/lib/bitcore/crypto/random.d.ts +1 -0
  154. package/dist/types/lib/bitcore/crypto/random.d.ts.map +1 -1
  155. package/dist/types/lib/bitcore/crypto/schnorr.d.ts +5 -4
  156. package/dist/types/lib/bitcore/crypto/schnorr.d.ts.map +1 -1
  157. package/dist/types/lib/bitcore/crypto/signature.d.ts +4 -1
  158. package/dist/types/lib/bitcore/crypto/signature.d.ts.map +1 -1
  159. package/dist/types/lib/bitcore/crypto/sigtype.d.ts +1 -0
  160. package/dist/types/lib/bitcore/crypto/sigtype.d.ts.map +1 -1
  161. package/dist/types/lib/bitcore/encoding/base58.d.ts +1 -0
  162. package/dist/types/lib/bitcore/encoding/base58.d.ts.map +1 -1
  163. package/dist/types/lib/bitcore/encoding/base58check.d.ts +1 -2
  164. package/dist/types/lib/bitcore/encoding/base58check.d.ts.map +1 -1
  165. package/dist/types/lib/bitcore/encoding/bufferreader.d.ts +2 -1
  166. package/dist/types/lib/bitcore/encoding/bufferreader.d.ts.map +1 -1
  167. package/dist/types/lib/bitcore/encoding/bufferwriter.d.ts +2 -2
  168. package/dist/types/lib/bitcore/encoding/bufferwriter.d.ts.map +1 -1
  169. package/dist/types/lib/bitcore/encoding/varint.d.ts +3 -2
  170. package/dist/types/lib/bitcore/encoding/varint.d.ts.map +1 -1
  171. package/dist/types/lib/bitcore/errors.d.ts +3 -0
  172. package/dist/types/lib/bitcore/errors.d.ts.map +1 -1
  173. package/dist/types/lib/bitcore/hdprivatekey.d.ts +5 -4
  174. package/dist/types/lib/bitcore/hdprivatekey.d.ts.map +1 -1
  175. package/dist/types/lib/bitcore/hdpublickey.d.ts +4 -3
  176. package/dist/types/lib/bitcore/hdpublickey.d.ts.map +1 -1
  177. package/dist/types/lib/bitcore/index.d.ts +55 -60
  178. package/dist/types/lib/bitcore/index.d.ts.map +1 -1
  179. package/dist/types/lib/bitcore/message.d.ts +7 -4
  180. package/dist/types/lib/bitcore/message.d.ts.map +1 -1
  181. package/dist/types/lib/bitcore/mnemonic/mnemonic.d.ts +2 -0
  182. package/dist/types/lib/bitcore/mnemonic/mnemonic.d.ts.map +1 -1
  183. package/dist/types/lib/bitcore/mnemonic/pbkdf2.d.ts +1 -0
  184. package/dist/types/lib/bitcore/mnemonic/pbkdf2.d.ts.map +1 -1
  185. package/dist/types/lib/bitcore/mnemonic/words/french.d.ts +2 -0
  186. package/dist/types/lib/bitcore/mnemonic/words/french.d.ts.map +1 -0
  187. package/dist/types/lib/bitcore/mnemonic/words/index.d.ts +1 -0
  188. package/dist/types/lib/bitcore/mnemonic/words/index.d.ts.map +1 -1
  189. package/dist/types/lib/bitcore/musig2/session.d.ts +8 -7
  190. package/dist/types/lib/bitcore/musig2/session.d.ts.map +1 -1
  191. package/dist/types/lib/bitcore/musig2/signer.d.ts +10 -9
  192. package/dist/types/lib/bitcore/musig2/signer.d.ts.map +1 -1
  193. package/dist/types/lib/bitcore/networks.d.ts +1 -0
  194. package/dist/types/lib/bitcore/networks.d.ts.map +1 -1
  195. package/dist/types/lib/bitcore/opcode.d.ts +5 -0
  196. package/dist/types/lib/bitcore/opcode.d.ts.map +1 -1
  197. package/dist/types/lib/bitcore/privatekey.d.ts +5 -4
  198. package/dist/types/lib/bitcore/privatekey.d.ts.map +1 -1
  199. package/dist/types/lib/bitcore/publickey.d.ts +13 -6
  200. package/dist/types/lib/bitcore/publickey.d.ts.map +1 -1
  201. package/dist/types/lib/bitcore/{chunk.d.ts → script/chunk.d.ts} +1 -0
  202. package/dist/types/lib/bitcore/script/chunk.d.ts.map +1 -0
  203. package/dist/types/lib/bitcore/script/interpreter/condition-stack.d.ts +11 -0
  204. package/dist/types/lib/bitcore/script/interpreter/condition-stack.d.ts.map +1 -0
  205. package/dist/types/lib/bitcore/script/interpreter/index.d.ts +5 -0
  206. package/dist/types/lib/bitcore/script/interpreter/index.d.ts.map +1 -0
  207. package/dist/types/lib/bitcore/script/interpreter/interpreter.d.ts +21 -0
  208. package/dist/types/lib/bitcore/script/interpreter/interpreter.d.ts.map +1 -0
  209. package/dist/types/lib/bitcore/script/interpreter/script-num.d.ts +35 -0
  210. package/dist/types/lib/bitcore/script/interpreter/script-num.d.ts.map +1 -0
  211. package/dist/types/lib/bitcore/script/interpreter/types.d.ts +101 -0
  212. package/dist/types/lib/bitcore/script/interpreter/types.d.ts.map +1 -0
  213. package/dist/types/lib/bitcore/{taproot.d.ts → script/taproot.d.ts} +20 -7
  214. package/dist/types/lib/bitcore/script/taproot.d.ts.map +1 -0
  215. package/dist/types/lib/bitcore/script.d.ts +12 -11
  216. package/dist/types/lib/bitcore/script.d.ts.map +1 -1
  217. package/dist/types/lib/bitcore/taproot/musig2.d.ts +17 -16
  218. package/dist/types/lib/bitcore/taproot/musig2.d.ts.map +1 -1
  219. package/dist/types/lib/bitcore/transaction/index.d.ts +11 -11
  220. package/dist/types/lib/bitcore/transaction/index.d.ts.map +1 -1
  221. package/dist/types/lib/bitcore/transaction/input/multisig.d.ts +5 -0
  222. package/dist/types/lib/bitcore/transaction/input/multisig.d.ts.map +1 -0
  223. package/dist/types/lib/bitcore/transaction/input/multisigscripthash.d.ts +5 -0
  224. package/dist/types/lib/bitcore/transaction/input/multisigscripthash.d.ts.map +1 -0
  225. package/dist/types/lib/bitcore/transaction/input/publickey.d.ts +5 -0
  226. package/dist/types/lib/bitcore/transaction/input/publickey.d.ts.map +1 -0
  227. package/dist/types/lib/bitcore/transaction/input/publickeyhash.d.ts +6 -0
  228. package/dist/types/lib/bitcore/transaction/input/publickeyhash.d.ts.map +1 -0
  229. package/dist/types/lib/bitcore/transaction/input/taproot.d.ts +18 -0
  230. package/dist/types/lib/bitcore/transaction/input/taproot.d.ts.map +1 -0
  231. package/dist/types/lib/bitcore/transaction/input.d.ts +27 -35
  232. package/dist/types/lib/bitcore/transaction/input.d.ts.map +1 -1
  233. package/dist/types/lib/bitcore/transaction/outpoint.d.ts +32 -0
  234. package/dist/types/lib/bitcore/transaction/outpoint.d.ts.map +1 -0
  235. package/dist/types/lib/bitcore/transaction/output.d.ts +3 -1
  236. package/dist/types/lib/bitcore/transaction/output.d.ts.map +1 -1
  237. package/dist/types/lib/bitcore/transaction/sighash.d.ts +8 -7
  238. package/dist/types/lib/bitcore/transaction/sighash.d.ts.map +1 -1
  239. package/dist/types/lib/bitcore/transaction/signature.d.ts +3 -2
  240. package/dist/types/lib/bitcore/transaction/signature.d.ts.map +1 -1
  241. package/dist/types/lib/bitcore/transaction/transaction.d.ts +18 -15
  242. package/dist/types/lib/bitcore/transaction/transaction.d.ts.map +1 -1
  243. package/dist/types/lib/bitcore/transaction/unspentoutput.d.ts +9 -7
  244. package/dist/types/lib/bitcore/transaction/unspentoutput.d.ts.map +1 -1
  245. package/dist/types/lib/bitcore/unit.d.ts.map +1 -1
  246. package/dist/types/lib/bitcore/util/base32.d.ts.map +1 -1
  247. package/dist/types/lib/bitcore/util/bits.d.ts +5 -0
  248. package/dist/types/lib/bitcore/util/bits.d.ts.map +1 -0
  249. package/dist/types/lib/bitcore/util/buffer.d.ts +10 -2
  250. package/dist/types/lib/bitcore/util/buffer.d.ts.map +1 -1
  251. package/dist/types/lib/bitcore/util/js.d.ts +0 -1
  252. package/dist/types/lib/bitcore/util/js.d.ts.map +1 -1
  253. package/dist/types/lib/bitcore/util/merkle.d.ts +6 -0
  254. package/dist/types/lib/bitcore/util/merkle.d.ts.map +1 -0
  255. package/dist/types/lib/bitcore/util/preconditions.d.ts.map +1 -1
  256. package/dist/types/lib/bitcore/xaddress.d.ts +1 -0
  257. package/dist/types/lib/bitcore/xaddress.d.ts.map +1 -1
  258. package/dist/types/lib/{bitcore/taproot/nft.d.ts → nft.d.ts} +26 -12
  259. package/dist/types/lib/nft.d.ts.map +1 -0
  260. package/dist/types/lib/rank/index.d.ts +1 -0
  261. package/dist/types/lib/rank/index.d.ts.map +1 -1
  262. package/dist/types/lib/rank/script.d.ts +1 -0
  263. package/dist/types/lib/rank/script.d.ts.map +1 -1
  264. package/dist/types/lib/rank/transaction.d.ts +1 -0
  265. package/dist/types/lib/rank/transaction.d.ts.map +1 -1
  266. package/dist/types/utils/string.d.ts +1 -0
  267. package/dist/types/utils/string.d.ts.map +1 -1
  268. package/package.json +3 -2
  269. package/dist/cjs/lib/bitcore/script/interpreter.js +0 -1757
  270. package/dist/esm/lib/bitcore/script/interpreter.js +0 -1753
  271. package/dist/types/lib/bitcore/chunk.d.ts.map +0 -1
  272. package/dist/types/lib/bitcore/script/interpreter.d.ts +0 -101
  273. package/dist/types/lib/bitcore/script/interpreter.d.ts.map +0 -1
  274. package/dist/types/lib/bitcore/taproot/nft.d.ts.map +0 -1
  275. package/dist/types/lib/bitcore/taproot.d.ts.map +0 -1
  276. /package/dist/cjs/lib/bitcore/{chunk.js → script/chunk.js} +0 -0
  277. /package/dist/esm/lib/bitcore/{chunk.js → script/chunk.js} +0 -0
@@ -0,0 +1,35 @@
1
+ import type { Buffer } from 'buffer/';
2
+ export declare class ScriptNumError extends Error {
3
+ constructor(message: string);
4
+ }
5
+ export declare class ScriptNum {
6
+ private static readonly INT64_MAX;
7
+ private static readonly INT64_MIN_EXCLUSIVE;
8
+ readonly value: bigint;
9
+ constructor(value: bigint);
10
+ static fromBuffer(buf: Buffer, requireMinimal?: boolean, maxSize?: number): ScriptNum;
11
+ static isMinimallyEncoded(buf: Buffer, maxSize?: number): boolean;
12
+ static minimallyEncode(data: Buffer): Buffer;
13
+ private static decode;
14
+ toBuffer(): Buffer;
15
+ static serialize(value: bigint): Buffer;
16
+ toNumber(): number;
17
+ add(other: ScriptNum): ScriptNum;
18
+ sub(other: ScriptNum): ScriptNum;
19
+ negate(): ScriptNum;
20
+ abs(): ScriptNum;
21
+ div(other: ScriptNum): ScriptNum;
22
+ mod(other: ScriptNum): ScriptNum;
23
+ mulpow2(shift: ScriptNum): ScriptNum;
24
+ bitwiseAnd(mask: bigint): ScriptNum;
25
+ isZero(): boolean;
26
+ isNegative(): boolean;
27
+ lt(other: ScriptNum | bigint): boolean;
28
+ gt(other: ScriptNum | bigint): boolean;
29
+ lte(other: ScriptNum | bigint): boolean;
30
+ gte(other: ScriptNum | bigint): boolean;
31
+ eq(other: ScriptNum | bigint): boolean;
32
+ neq(other: ScriptNum | bigint): boolean;
33
+ private static checkOverflow;
34
+ }
35
+ //# sourceMappingURL=script-num.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"script-num.d.ts","sourceRoot":"","sources":["../../../../../../lib/bitcore/script/interpreter/script-num.ts"],"names":[],"mappings":"AAqBA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAMrC,qBAAa,cAAe,SAAQ,KAAK;gBAC3B,OAAO,EAAE,MAAM;CAI5B;AAYD,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAmB;IACpD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,mBAAmB,CAAoB;IAG/D,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;gBAEV,KAAK,EAAE,MAAM;IAazB,MAAM,CAAC,UAAU,CACf,GAAG,EAAE,MAAM,EACX,cAAc,GAAE,OAAc,EAC9B,OAAO,GAAE,MAAmC,GAC3C,SAAS;IAsBZ,MAAM,CAAC,kBAAkB,CACvB,GAAG,EAAE,MAAM,EACX,OAAO,GAAE,MAAmC,GAC3C,OAAO;IA0BV,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAuC5C,OAAO,CAAC,MAAM,CAAC,MAAM;IAwBrB,QAAQ,IAAI,MAAM;IAUlB,MAAM,CAAC,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM;IA6BvC,QAAQ,IAAI,MAAM;IAmBlB,GAAG,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS;IAWhC,GAAG,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS;IAOhC,MAAM,IAAI,SAAS;IAKnB,GAAG,IAAI,SAAS;IAKhB,GAAG,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS;IAKhC,GAAG,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS;IAYhC,OAAO,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS;IA2BpC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS;IAMnC,MAAM,IAAI,OAAO;IAIjB,UAAU,IAAI,OAAO;IAIrB,EAAE,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,GAAG,OAAO;IAKtC,EAAE,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,GAAG,OAAO;IAKtC,GAAG,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,GAAG,OAAO;IAKvC,GAAG,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,GAAG,OAAO;IAKvC,EAAE,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,GAAG,OAAO;IAKtC,GAAG,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,GAAG,OAAO;IAYvC,OAAO,CAAC,MAAM,CAAC,aAAa;CAK7B"}
@@ -0,0 +1,101 @@
1
+ import type { Buffer } from 'buffer/';
2
+ export declare const MAX_SCRIPT_ELEMENT_SIZE = 520;
3
+ export declare const MAX_OPS_PER_SCRIPT = 400;
4
+ export declare const MAX_PUBKEYS_PER_MULTISIG = 20;
5
+ export declare const MAX_SCRIPT_SIZE = 10000;
6
+ export declare const MAX_STACK_SIZE = 1000;
7
+ export declare const MAX_NUM2BIN_SIZE = 68;
8
+ export declare const LOCKTIME_THRESHOLD = 500000000;
9
+ export declare const SCRIPTNUM_MAX_ELEMENT_SIZE = 8;
10
+ export declare enum ScriptFlags {
11
+ VERIFY_NONE = 0,
12
+ TAPROOT_KEY_SPEND_PATH = 1,
13
+ DISABLE_TAPROOT_SIGHASH_LOTUS = 2,
14
+ VERIFY_DISCOURAGE_UPGRADABLE_NOPS = 128,
15
+ VERIFY_CLEANSTACK = 256,
16
+ VERIFY_MINIMALIF = 8192,
17
+ ENABLE_SIGHASH_FORKID = 65536,
18
+ ENABLE_REPLAY_PROTECTION = 131072,
19
+ VERIFY_INPUT_SIGCHECKS = 4194304
20
+ }
21
+ export declare const STANDARD_SCRIPT_VERIFY_FLAGS: number;
22
+ export declare enum ScriptError {
23
+ OK = "OK",
24
+ UNKNOWN = "UNKNOWN",
25
+ EVAL_FALSE = "EVAL_FALSE",
26
+ OP_RETURN = "OP_RETURN",
27
+ SCRIPT_SIZE = "SCRIPT_SIZE",
28
+ PUSH_SIZE = "PUSH_SIZE",
29
+ OP_COUNT = "OP_COUNT",
30
+ STACK_SIZE = "STACK_SIZE",
31
+ SIG_COUNT = "SIG_COUNT",
32
+ PUBKEY_COUNT = "PUBKEY_COUNT",
33
+ INPUT_SIGCHECKS = "INPUT_SIGCHECKS",
34
+ INVALID_OPERAND_SIZE = "INVALID_OPERAND_SIZE",
35
+ INVALID_NUMBER_RANGE = "INVALID_NUMBER_RANGE",
36
+ IMPOSSIBLE_ENCODING = "IMPOSSIBLE_ENCODING",
37
+ INVALID_SPLIT_RANGE = "INVALID_SPLIT_RANGE",
38
+ INVALID_BIT_COUNT = "INVALID_BIT_COUNT",
39
+ VERIFY = "VERIFY",
40
+ EQUALVERIFY = "EQUALVERIFY",
41
+ CHECKMULTISIGVERIFY = "CHECKMULTISIGVERIFY",
42
+ CHECKSIGVERIFY = "CHECKSIGVERIFY",
43
+ CHECKDATASIGVERIFY = "CHECKDATASIGVERIFY",
44
+ NUMEQUALVERIFY = "NUMEQUALVERIFY",
45
+ BAD_OPCODE = "BAD_OPCODE",
46
+ DISABLED_OPCODE = "DISABLED_OPCODE",
47
+ INVALID_STACK_OPERATION = "INVALID_STACK_OPERATION",
48
+ INVALID_ALTSTACK_OPERATION = "INVALID_ALTSTACK_OPERATION",
49
+ UNBALANCED_CONDITIONAL = "UNBALANCED_CONDITIONAL",
50
+ DIV_BY_ZERO = "DIV_BY_ZERO",
51
+ MOD_BY_ZERO = "MOD_BY_ZERO",
52
+ INVALID_BITFIELD_SIZE = "INVALID_BITFIELD_SIZE",
53
+ INVALID_BIT_RANGE = "INVALID_BIT_RANGE",
54
+ NEGATIVE_LOCKTIME = "NEGATIVE_LOCKTIME",
55
+ UNSATISFIED_LOCKTIME = "UNSATISFIED_LOCKTIME",
56
+ SIG_HASHTYPE = "SIG_HASHTYPE",
57
+ SIG_DER = "SIG_DER",
58
+ MINIMALDATA = "MINIMALDATA",
59
+ SIG_PUSHONLY = "SIG_PUSHONLY",
60
+ SIG_HIGH_S = "SIG_HIGH_S",
61
+ PUBKEYTYPE = "PUBKEYTYPE",
62
+ CLEANSTACK = "CLEANSTACK",
63
+ MINIMALIF = "MINIMALIF",
64
+ SIG_NULLFAIL = "SIG_NULLFAIL",
65
+ SIG_BADLENGTH = "SIG_BADLENGTH",
66
+ SIG_NONSCHNORR = "SIG_NONSCHNORR",
67
+ DISCOURAGE_UPGRADABLE_NOPS = "DISCOURAGE_UPGRADABLE_NOPS",
68
+ ILLEGAL_FORKID = "ILLEGAL_FORKID",
69
+ MUST_USE_FORKID = "MUST_USE_FORKID",
70
+ INVALID_NUM2BIN_SIZE = "INVALID_NUM2BIN_SIZE",
71
+ INVALID_OP_SCRIPTTYPE = "INVALID_OP_SCRIPTTYPE",
72
+ SCRIPTTYPE_INVALID_TYPE = "SCRIPTTYPE_INVALID_TYPE",
73
+ SCRIPTTYPE_MALFORMED_SCRIPT = "SCRIPTTYPE_MALFORMED_SCRIPT",
74
+ TAPROOT_KEY_SPEND_MUST_USE_LOTUS_SIGHASH = "TAPROOT_KEY_SPEND_MUST_USE_LOTUS_SIGHASH",
75
+ TAPROOT_KEY_SPEND_MUST_USE_SCHNORR_SIG = "TAPROOT_KEY_SPEND_MUST_USE_SCHNORR_SIG",
76
+ TAPROOT_VERIFY_SIGNATURE_FAILED = "TAPROOT_VERIFY_SIGNATURE_FAILED",
77
+ TAPROOT_ANNEX_NOT_SUPPORTED = "TAPROOT_ANNEX_NOT_SUPPORTED",
78
+ TAPROOT_WRONG_CONTROL_SIZE = "TAPROOT_WRONG_CONTROL_SIZE",
79
+ TAPROOT_VERIFY_COMMITMENT_FAILED = "TAPROOT_VERIFY_COMMITMENT_FAILED",
80
+ TAPROOT_LEAF_VERSION_NOT_SUPPORTED = "TAPROOT_LEAF_VERSION_NOT_SUPPORTED",
81
+ TAPROOT_PHASEOUT = "TAPROOT_PHASEOUT"
82
+ }
83
+ export interface ScriptResult {
84
+ success: boolean;
85
+ error: ScriptError;
86
+ }
87
+ export interface ScriptExecutionMetrics {
88
+ sigChecks: number;
89
+ }
90
+ export interface ScriptExecutionData {
91
+ codeseparatorPos: number;
92
+ executedScriptHash: Buffer;
93
+ }
94
+ export interface SignatureChecker {
95
+ verifySignature(signature: Buffer, publicKey: Buffer, sighash: Buffer): boolean;
96
+ checkSignature(signature: Buffer, publicKey: Buffer, execdata: ScriptExecutionData | undefined, scriptCode: Buffer, flags: number): boolean;
97
+ checkLockTime(lockTime: bigint): boolean;
98
+ checkSequence(sequence: bigint): boolean;
99
+ }
100
+ export declare const NULL_SIGNATURE_CHECKER: SignatureChecker;
101
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../lib/bitcore/script/interpreter/types.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
- import { PublicKey } from './publickey.js';
2
- import { PrivateKey } from './privatekey.js';
3
- import { Script } from './script.js';
1
+ import { PublicKey } from '../publickey';
2
+ import { PrivateKey } from '../privatekey';
3
+ import { Script } from '../script';
4
+ import type { Buffer } from 'buffer/';
4
5
  export interface TapLeafNode {
5
6
  script: Script | Buffer;
6
7
  leafVersion?: number;
@@ -28,10 +29,18 @@ export declare const TAPROOT_CONTROL_MAX_NODE_COUNT = 128;
28
29
  export declare const TAPROOT_CONTROL_MAX_SIZE: number;
29
30
  export declare const TAPROOT_SCRIPTTYPE = 81;
30
31
  export declare const TAPROOT_INTRO_SIZE = 3;
32
+ export declare const PUBKEY_COMPRESSED_SIZE = 33;
33
+ export declare const PUBKEY_UNCOMPRESSED_SIZE = 65;
34
+ export declare const PUBKEY_XCOORD_SIZE = 32;
35
+ export declare const SHA256_HASH_SIZE = 32;
36
+ export declare const TAPROOT_STATE_PUSH_SIZE = 32;
31
37
  export declare const TAPROOT_SIZE_WITHOUT_STATE: number;
32
38
  export declare const TAPROOT_SIZE_WITH_STATE: number;
33
39
  export declare const TAPROOT_SIGHASH_TYPE: number;
34
40
  export declare const TAPROOT_ANNEX_TAG = 80;
41
+ export declare const TAPROOT_TAG_TAPLEAF = "TapLeaf";
42
+ export declare const TAPROOT_TAG_TAPBRANCH = "TapBranch";
43
+ export declare const TAPROOT_TAG_TAPTWEAK = "TapTweak";
35
44
  export declare function taggedHash(tag: string, data: Buffer): Buffer;
36
45
  export declare function calculateTapTweak(internalPubKey: PublicKey, merkleRoot?: Buffer): Buffer;
37
46
  export declare function calculateTapLeaf(script: Script | Buffer, leafVersion?: number): Buffer;
@@ -42,12 +51,15 @@ export declare function isTapLeafNode(node: TapNode): node is TapLeafNode;
42
51
  export declare function isTapBranchNode(node: TapNode): node is TapBranchNode;
43
52
  export declare function buildTapTree(tree: TapNode): TapTreeBuildResult;
44
53
  export declare function createControlBlock(internalPubKey: PublicKey, leafIndex: number, tree: TapNode): Buffer;
45
- export declare function verifyTaprootCommitment(commitmentPubKey: PublicKey, internalPubKey: PublicKey, merkleRoot: Buffer): boolean;
46
- export declare function isPayToTaproot(script: Script): boolean;
54
+ export declare function applyTweakToPublicKey(internalPubKey: PublicKey, tweak: Buffer): PublicKey;
55
+ export declare function verifyTaprootCommitment(controlBlock: Buffer, commitment: Buffer, script: Script): {
56
+ tapleafHash: Buffer;
57
+ success: boolean;
58
+ };
47
59
  export declare function extractTaprootCommitment(script: Script): PublicKey;
48
60
  export declare function extractTaprootState(script: Script): Buffer | null;
49
- export declare function buildPayToTaproot(commitment: PublicKey, state?: Buffer): Script;
50
- export declare function buildKeyPathTaproot(internalPubKey: PublicKey, state?: Buffer): Script;
61
+ export declare function buildPayToTaproot(_commitment: PublicKey, _state?: Buffer): Script;
62
+ export declare function buildKeyPathTaproot(internalPubKey: PublicKey): Script;
51
63
  export declare function buildScriptPathTaproot(internalPubKey: PublicKey, tree: TapNode, state?: Buffer): {
52
64
  script: Script;
53
65
  commitment: PublicKey;
@@ -55,6 +67,7 @@ export declare function buildScriptPathTaproot(internalPubKey: PublicKey, tree:
55
67
  leaves: TapLeaf[];
56
68
  };
57
69
  export declare function verifyTaprootScriptPath(internalPubKey: Buffer, script: Script, commitmentPubKey: Buffer, leafVersion: number, merklePath: Buffer[], parity: number): boolean;
70
+ export declare function verifyTaprootScriptPathFromControlBlock(controlBlock: Buffer, commitment: Buffer, script: Script): boolean;
58
71
  export interface TaprootVerifyResult {
59
72
  success: boolean;
60
73
  error?: string;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taproot.d.ts","sourceRoot":"","sources":["../../../../../lib/bitcore/script/taproot.ts"],"names":[],"mappings":"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"}
@@ -3,23 +3,26 @@ import { PublicKey } from './publickey.js';
3
3
  import { Address } from './address.js';
4
4
  import { Network, type NetworkName } from './networks.js';
5
5
  import { Signature } from './crypto/signature.js';
6
- import { Chunk } from './chunk.js';
6
+ import { Chunk } from './script/chunk.js';
7
+ import type { Buffer } from 'buffer/';
7
8
  export interface ScriptData {
8
9
  chunks: Chunk[];
9
10
  _network?: Network;
10
11
  }
11
- export type ScriptInput = Buffer | string | ScriptData | PublicKey | Address;
12
+ export type ScriptInput = Buffer | string | ScriptData | Address;
12
13
  export type ScriptType = 'p2pk' | 'p2pkh' | 'p2sh' | 'p2tr-commitment' | 'p2tr-state' | 'other';
13
14
  export declare class Script {
14
15
  chunks: Chunk[];
15
16
  _network?: Network;
16
17
  constructor(from?: ScriptInput);
17
18
  set(obj: ScriptData): Script;
19
+ static empty(): Script;
18
20
  static fromBuffer(buffer: Buffer): Script;
19
21
  static fromString(str: string): Script;
20
22
  static fromASM(str: string): Script;
21
23
  static fromHex(str: string): Script;
22
24
  static fromAddress(address: Address | string): Script;
25
+ static fromPayload(scriptType: ScriptType, payload: string | Buffer): Script;
23
26
  static buildMultisigOut(publicKeys: PublicKey[], threshold: number, opts?: {
24
27
  noSorting?: boolean;
25
28
  }): Script;
@@ -37,29 +40,29 @@ export declare class Script {
37
40
  checkBits?: Uint8Array;
38
41
  signingMethod?: 'ecdsa' | 'schnorr';
39
42
  }): Script;
40
- static buildWitnessMultisigOutFromScript(script: Script): Script;
41
43
  static buildPublicKeyOut(pubkey: PublicKey): Script;
42
44
  static buildDataOut(data: string | Buffer, encoding?: string): Script;
43
45
  static buildPublicKeyIn(signature: Signature | Buffer, sigtype: number): Script;
44
46
  static buildPublicKeyHashIn(publicKey: PublicKey, signature: Signature | Buffer, sigtype: number): Script;
45
- static buildPayToTaproot(commitment: PublicKey | Buffer, state?: Buffer): Script;
47
+ static buildTaprootOut(commitment: PublicKey | Buffer, state?: Buffer): Script;
46
48
  add(chunk: Opcode | Buffer | number): Script;
49
+ addTaprootState(state: Buffer): Script;
47
50
  toBuffer(): Buffer;
48
51
  toString(): string;
49
- toP2PKH(): string;
50
- toP2SH(): string;
51
52
  toASM(): string;
52
53
  toHex(): string;
53
54
  inspect(): string;
54
55
  private _chunkToString;
55
- isPayToPublicKeyHash(): boolean;
56
56
  isPublicKeyHashOut(): boolean;
57
- isPayToScriptHash(): boolean;
58
57
  isScriptHashOut(): boolean;
59
- isPayToTaproot(): boolean;
60
58
  isTaprootOut(): boolean;
61
59
  isTaprootIn(): boolean;
62
60
  getData(): Buffer;
61
+ getPayload(): {
62
+ type: ScriptType;
63
+ payload: Buffer;
64
+ payloadHex: string;
65
+ };
63
66
  getAddressInfo(): Address | null;
64
67
  private _getOutputAddressInfo;
65
68
  private _getInputAddressInfo;
@@ -110,6 +113,4 @@ export declare const ScriptTypes: {
110
113
  MULTISIG_IN: string;
111
114
  DATA_OUT: string;
112
115
  };
113
- export declare function toAddress(script: Script, network: Network | NetworkName): Address;
114
- export declare function empty(): Script;
115
116
  //# sourceMappingURL=script.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"script.d.ts","sourceRoot":"","sources":["../../../../lib/bitcore/script.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"script.d.ts","sourceRoot":"","sources":["../../../../lib/bitcore/script.ts"],"names":[],"mappings":"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"}
@@ -1,30 +1,31 @@
1
- import { PublicKey } from '../publickey.js';
2
- import { PrivateKey } from '../privatekey.js';
3
- import { Address } from '../address.js';
4
- import { Script } from '../script.js';
5
- import { type NetworkName } from '../networks.js';
6
- import { BN, Point } from '../crypto/index.js';
7
- import { type MuSigKeyAggContext, type MuSigNonce, type MuSigAggregatedNonce } from '../crypto/musig2.js';
8
- import { type TapNode, type TapLeaf } from '../taproot.js';
9
- export interface MuSigTaprootKeyResult {
1
+ import { PublicKey } from '../publickey';
2
+ import { PrivateKey } from '../privatekey';
3
+ import { Address } from '../address';
4
+ import { Script } from '../script';
5
+ import { type NetworkName } from '../networks';
6
+ import { BN, Point } from '../crypto/index';
7
+ import { type MuSig2KeyAggContext, type MuSig2Nonce, type MuSig2AggregatedNonce } from '../crypto/musig2';
8
+ import { type TapNode, type TapLeaf } from '../script/taproot';
9
+ import type { Buffer } from 'buffer/';
10
+ export interface MuSig2TaprootKeyResult {
10
11
  aggregatedPubKey: PublicKey;
11
12
  commitment: PublicKey;
12
13
  script: Script;
13
- keyAggContext: MuSigKeyAggContext;
14
+ keyAggContext: MuSig2KeyAggContext;
14
15
  merkleRoot: Buffer;
15
16
  tweak: Buffer;
16
17
  }
17
- export declare function buildMuSigTaprootKey(signerPubKeys: PublicKey[], state?: Buffer): MuSigTaprootKeyResult;
18
- export declare function buildMuSigTaprootKeyWithScripts(signerPubKeys: PublicKey[], scriptTree: TapNode, state?: Buffer): MuSigTaprootKeyResult & {
18
+ export declare function buildMuSig2TaprootKey(signerPubKeys: PublicKey[]): MuSig2TaprootKeyResult;
19
+ export declare function buildMuSig2TaprootKeyWithScripts(signerPubKeys: PublicKey[], scriptTree: TapNode, state: Buffer): MuSig2TaprootKeyResult & {
19
20
  leaves: TapLeaf[];
20
21
  };
21
- export declare function signTaprootKeyPathWithMuSig2(secretNonce: MuSigNonce, privateKey: PrivateKey, keyAggContext: MuSigKeyAggContext, signerIndex: number, aggregatedNonce: MuSigAggregatedNonce, message: Buffer, tweak: Buffer): BN;
22
- export declare function verifyTaprootKeyPathMuSigPartial(partialSig: BN, publicNonce: [Point, Point], publicKey: PublicKey, keyAggContext: MuSigKeyAggContext, signerIndex: number, aggregatedNonce: MuSigAggregatedNonce, message: Buffer, tweak: Buffer): boolean;
22
+ export declare function signTaprootKeyPathWithMuSig2(secretNonce: MuSig2Nonce, privateKey: PrivateKey, keyAggContext: MuSig2KeyAggContext, signerIndex: number, aggregatedNonce: MuSig2AggregatedNonce, message: Buffer, tweak: Buffer): BN;
23
+ export declare function verifyTaprootKeyPathMuSigPartial(partialSig: BN, publicNonce: [Point, Point], publicKey: PublicKey, keyAggContext: MuSig2KeyAggContext, signerIndex: number, aggregatedNonce: MuSig2AggregatedNonce, message: Buffer, tweak: Buffer): boolean;
23
24
  export declare function isMuSigTaprootOutput(script: Script): boolean;
24
- export declare function createMuSigTaprootAddress(signerPubKeys: PublicKey[], network?: NetworkName, state?: Buffer): {
25
+ export declare function createMuSigTaprootAddress(signerPubKeys: PublicKey[], network?: NetworkName): {
25
26
  address: Address;
26
27
  script: Script;
27
28
  commitment: PublicKey;
28
- keyAggContext: MuSigKeyAggContext;
29
+ keyAggContext: MuSig2KeyAggContext;
29
30
  };
30
31
  //# sourceMappingURL=musig2.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"musig2.d.ts","sourceRoot":"","sources":["../../../../../lib/bitcore/taproot/musig2.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAC7C,OAAO,EAAE,OAAO,EAAE,MAAM,eAAe,CAAA;AACvC,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,EAAE,EAAE,EAAE,KAAK,EAAQ,MAAM,oBAAoB,CAAA;AACpD,OAAO,EAIL,KAAK,kBAAkB,EACvB,KAAK,UAAU,EACf,KAAK,oBAAoB,EAG1B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAML,KAAK,OAAO,EACZ,KAAK,OAAO,EACb,MAAM,eAAe,CAAA;AAKtB,MAAM,WAAW,qBAAqB;IAEpC,gBAAgB,EAAE,SAAS,CAAA;IAG3B,UAAU,EAAE,SAAS,CAAA;IAGrB,MAAM,EAAE,MAAM,CAAA;IAGd,aAAa,EAAE,kBAAkB,CAAA;IAGjC,UAAU,EAAE,MAAM,CAAA;IAGlB,KAAK,EAAE,MAAM,CAAA;CACd;AAmCD,wBAAgB,oBAAoB,CAClC,aAAa,EAAE,SAAS,EAAE,EAC1B,KAAK,CAAC,EAAE,MAAM,GACb,qBAAqB,CAyBvB;AAqCD,wBAAgB,+BAA+B,CAC7C,aAAa,EAAE,SAAS,EAAE,EAC1B,UAAU,EAAE,OAAO,EACnB,KAAK,CAAC,EAAE,MAAM,GACb,qBAAqB,GAAG;IAAE,MAAM,EAAE,OAAO,EAAE,CAAA;CAAE,CAwB/C;AAyBD,wBAAgB,4BAA4B,CAC1C,WAAW,EAAE,UAAU,EACvB,UAAU,EAAE,UAAU,EACtB,aAAa,EAAE,kBAAkB,EACjC,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,oBAAoB,EACrC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,EAAE,CA0DJ;AAkBD,wBAAgB,gCAAgC,CAC9C,UAAU,EAAE,EAAE,EACd,WAAW,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,EAC3B,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,kBAAkB,EACjC,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,oBAAoB,EACrC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,OAAO,CAmDT;AAYD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAG5D;AAUD,wBAAgB,yBAAyB,CACvC,aAAa,EAAE,SAAS,EAAE,EAC1B,OAAO,CAAC,EAAE,WAAW,EACrB,KAAK,CAAC,EAAE,MAAM,GACb;IACD,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,SAAS,CAAA;IACrB,aAAa,EAAE,kBAAkB,CAAA;CAClC,CA2BA"}
1
+ {"version":3,"file":"musig2.d.ts","sourceRoot":"","sources":["../../../../../lib/bitcore/taproot/musig2.ts"],"names":[],"mappings":"AAsBA,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAA;AACxC,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAA;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAA;AACpC,OAAO,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AAClC,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,aAAa,CAAA;AAE9C,OAAO,EAAE,EAAE,EAAE,KAAK,EAAQ,MAAM,iBAAiB,CAAA;AACjD,OAAO,EAML,KAAK,mBAAmB,EACxB,KAAK,WAAW,EAChB,KAAK,qBAAqB,EAC3B,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAML,KAAK,OAAO,EACZ,KAAK,OAAO,EACb,MAAM,mBAAmB,CAAA;AAC1B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAKrC,MAAM,WAAW,sBAAsB;IAErC,gBAAgB,EAAE,SAAS,CAAA;IAG3B,UAAU,EAAE,SAAS,CAAA;IAGrB,MAAM,EAAE,MAAM,CAAA;IAGd,aAAa,EAAE,mBAAmB,CAAA;IAGlC,UAAU,EAAE,MAAM,CAAA;IAGlB,KAAK,EAAE,MAAM,CAAA;CACd;AAmCD,wBAAgB,qBAAqB,CACnC,aAAa,EAAE,SAAS,EAAE,GACzB,sBAAsB,CAyBxB;AAqCD,wBAAgB,gCAAgC,CAC9C,aAAa,EAAE,SAAS,EAAE,EAC1B,UAAU,EAAE,OAAO,EACnB,KAAK,EAAE,MAAM,GACZ,sBAAsB,GAAG;IAAE,MAAM,EAAE,OAAO,EAAE,CAAA;CAAE,CAwBhD;AAyBD,wBAAgB,4BAA4B,CAC1C,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,UAAU,EACtB,aAAa,EAAE,mBAAmB,EAClC,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,qBAAqB,EACtC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,EAAE,CA6DJ;AAkBD,wBAAgB,gCAAgC,CAC9C,UAAU,EAAE,EAAE,EACd,WAAW,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,EAC3B,SAAS,EAAE,SAAS,EACpB,aAAa,EAAE,mBAAmB,EAClC,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,qBAAqB,EACtC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,GACZ,OAAO,CAsDT;AAYD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAG5D;AASD,wBAAgB,yBAAyB,CACvC,aAAa,EAAE,SAAS,EAAE,EAC1B,OAAO,CAAC,EAAE,WAAW,GACpB;IACD,OAAO,EAAE,OAAO,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,SAAS,CAAA;IACrB,aAAa,EAAE,mBAAmB,CAAA;CACnC,CA2BA"}
@@ -1,12 +1,12 @@
1
- export { Input, MultisigInput, MultisigScriptHashInput, PublicKeyInput, PublicKeyHashInput, TaprootInput, MuSigTaprootInput, } from './input.js';
2
- export { Output } from './output.js';
3
- export { UnspentOutput } from './unspentoutput.js';
4
- export { sighash, sign, verify } from './sighash.js';
5
- export { TransactionSignature } from './signature.js';
6
- export { Transaction } from './transaction.js';
7
- export type { InputData, InputObject } from './input.js';
8
- export type { OutputData, OutputObject } from './output.js';
9
- export type { UnspentOutputData, UnspentOutputObject } from './unspentoutput.js';
10
- export type { TransactionSignatureData, TransactionSignatureObject, } from './signature.js';
11
- export type { TransactionData, TransactionObject } from './transaction.js';
1
+ export { Input, MultisigInput, MultisigScriptHashInput, PublicKeyInput, PublicKeyHashInput, TaprootInput, MuSig2TaprootInput, } from './input';
2
+ export { Output } from './output';
3
+ export { UnspentOutput } from './unspentoutput';
4
+ export { sighash, sign, verify } from './sighash';
5
+ export { TransactionSignature } from './signature';
6
+ export { Transaction } from './transaction';
7
+ export type { InputData, InputObject } from './input';
8
+ export type { OutputData, OutputObject } from './output';
9
+ export type { UnspentOutputData, UnspentOutputObject } from './unspentoutput';
10
+ export type { TransactionSignatureData, TransactionSignatureObject, } from './signature';
11
+ export type { TransactionData, TransactionObject } from './transaction';
12
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../lib/bitcore/transaction/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,aAAa,EACb,uBAAuB,EACvB,cAAc,EACd,kBAAkB,EAClB,YAAY,EACZ,iBAAiB,GAClB,MAAM,YAAY,CAAA;AACnB,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AACpC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAA;AAE9C,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AACxD,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC3D,YAAY,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAA;AAChF,YAAY,EACV,wBAAwB,EACxB,0BAA0B,GAC3B,MAAM,gBAAgB,CAAA;AACvB,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../lib/bitcore/transaction/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,EACL,aAAa,EACb,uBAAuB,EACvB,cAAc,EACd,kBAAkB,EAClB,YAAY,EACZ,kBAAkB,GACnB,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAC/C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,WAAW,CAAA;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAA;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAA;AAE3C,YAAY,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AACrD,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,UAAU,CAAA;AACxD,YAAY,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAA;AAC7E,YAAY,EACV,wBAAwB,EACxB,0BAA0B,GAC3B,MAAM,aAAa,CAAA;AACpB,YAAY,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAA"}
@@ -0,0 +1,5 @@
1
+ import { Input, type InputData } from '../input';
2
+ export declare class MultisigInput extends Input {
3
+ constructor(data?: InputData);
4
+ }
5
+ //# sourceMappingURL=multisig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multisig.d.ts","sourceRoot":"","sources":["../../../../../../lib/bitcore/transaction/input/multisig.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAE,KAAK,SAAS,EAAE,MAAM,UAAU,CAAA;AAKhD,qBAAa,aAAc,SAAQ,KAAK;gBAC1B,IAAI,CAAC,EAAE,SAAS;CAG7B"}
@@ -0,0 +1,5 @@
1
+ import { Input, type InputData } from '../input';
2
+ export declare class MultisigScriptHashInput extends Input {
3
+ constructor(data?: InputData);
4
+ }
5
+ //# sourceMappingURL=multisigscripthash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multisigscripthash.d.ts","sourceRoot":"","sources":["../../../../../../lib/bitcore/transaction/input/multisigscripthash.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAE,KAAK,SAAS,EAAE,MAAM,UAAU,CAAA;AAKhD,qBAAa,uBAAwB,SAAQ,KAAK;gBACpC,IAAI,CAAC,EAAE,SAAS;CAG7B"}
@@ -0,0 +1,5 @@
1
+ import { Input, type InputData } from '../input';
2
+ export declare class PublicKeyInput extends Input {
3
+ constructor(data?: InputData);
4
+ }
5
+ //# sourceMappingURL=publickey.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publickey.d.ts","sourceRoot":"","sources":["../../../../../../lib/bitcore/transaction/input/publickey.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAE,KAAK,SAAS,EAAE,MAAM,UAAU,CAAA;AAKhD,qBAAa,cAAe,SAAQ,KAAK;gBAC3B,IAAI,CAAC,EAAE,SAAS;CAG7B"}
@@ -0,0 +1,6 @@
1
+ import { Input, type InputData } from '../input';
2
+ export type PublicKeyHashInputData = InputData;
3
+ export declare class PublicKeyHashInput extends Input {
4
+ constructor(data?: InputData);
5
+ }
6
+ //# sourceMappingURL=publickeyhash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publickeyhash.d.ts","sourceRoot":"","sources":["../../../../../../lib/bitcore/transaction/input/publickeyhash.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,EAAE,KAAK,SAAS,EAAE,MAAM,UAAU,CAAA;AAKhD,MAAM,MAAM,sBAAsB,GAAG,SAAS,CAAA;AAK9C,qBAAa,kBAAmB,SAAQ,KAAK;gBAC/B,IAAI,CAAC,EAAE,SAAS;CAG7B"}
@@ -0,0 +1,18 @@
1
+ import { Script } from '../../script';
2
+ import { PublicKey } from '../../publickey';
3
+ import { Input, type InputData } from '../input';
4
+ import type { Buffer } from 'buffer/';
5
+ export interface TaprootInputData extends InputData {
6
+ internalPubKey?: PublicKey;
7
+ merkleRoot?: Buffer;
8
+ controlBlock?: Buffer;
9
+ tapScript?: Script;
10
+ }
11
+ export declare class TaprootInput extends Input {
12
+ internalPubKey?: PublicKey;
13
+ merkleRoot?: Buffer;
14
+ controlBlock?: Buffer;
15
+ tapScript?: Script;
16
+ constructor(data?: TaprootInputData);
17
+ }
18
+ //# sourceMappingURL=taproot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"taproot.d.ts","sourceRoot":"","sources":["../../../../../../lib/bitcore/transaction/input/taproot.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAA;AAC3C,OAAO,EAAE,KAAK,EAAE,KAAK,SAAS,EAAE,MAAM,UAAU,CAAA;AAChD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAKrC,MAAM,WAAW,gBAAiB,SAAQ,SAAS;IAEjD,cAAc,CAAC,EAAE,SAAS,CAAA;IAE1B,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB,SAAS,CAAC,EAAE,MAAM,CAAA;CACnB;AAKD,qBAAa,YAAa,SAAQ,KAAK;IAErC,cAAc,CAAC,EAAE,SAAS,CAAA;IAE1B,UAAU,CAAC,EAAE,MAAM,CAAA;IAEnB,YAAY,CAAC,EAAE,MAAM,CAAA;IAErB,SAAS,CAAC,EAAE,MAAM,CAAA;gBAEN,IAAI,CAAC,EAAE,gBAAgB;CASpC"}
@@ -1,15 +1,16 @@
1
- import { BufferWriter } from '../encoding/bufferwriter.js';
2
- import { BufferReader } from '../encoding/bufferreader.js';
3
- import { Script } from '../script.js';
4
- import { BN } from '../crypto/bn.js';
5
- import { Output } from './output.js';
6
- import { PrivateKey } from '../privatekey.js';
7
- import { PublicKey } from '../publickey.js';
8
- import { SignatureSigningMethod } from '../crypto/signature.js';
9
- import { TransactionSignature } from './signature.js';
10
- import { Transaction } from './transaction.js';
11
- import type { MuSigKeyAggContext, MuSigAggregatedNonce } from '../crypto/musig2.js';
12
- import { Point } from '../crypto/point.js';
1
+ import { BufferWriter } from '../encoding/bufferwriter';
2
+ import { BufferReader } from '../encoding/bufferreader';
3
+ import { Script } from '../script';
4
+ import { BN } from '../crypto';
5
+ import { Output } from './output';
6
+ import { PrivateKey } from '../privatekey';
7
+ import { PublicKey } from '../publickey';
8
+ import { Point } from '../crypto/point';
9
+ import { SignatureSigningMethod } from '../crypto/signature';
10
+ import { TransactionSignature } from './signature';
11
+ import { Transaction } from './transaction';
12
+ import type { MuSig2KeyAggContext, MuSig2AggregatedNonce } from '../crypto/musig2';
13
+ import type { Buffer } from 'buffer/';
13
14
  export interface InputData {
14
15
  prevTxId?: Buffer | string;
15
16
  outputIndex?: number;
@@ -32,20 +33,11 @@ export declare class Input {
32
33
  static readonly DEFAULT_SEQNUMBER = 4294967295;
33
34
  static readonly DEFAULT_LOCKTIME_SEQNUMBER = 4294967294;
34
35
  static readonly DEFAULT_RBF_SEQNUMBER = 4294967293;
35
- static readonly SEQUENCE_LOCKTIME_TYPE_FLAG = 4194304;
36
- static readonly SEQUENCE_LOCKTIME_DISABLE_FLAG = 2147483648;
36
+ static readonly SEQUENCE_LOCKTIME_DISABLE_FLAG: number;
37
+ static readonly SEQUENCE_LOCKTIME_TYPE_FLAG: number;
37
38
  static readonly SEQUENCE_LOCKTIME_MASK = 65535;
38
39
  static readonly SEQUENCE_LOCKTIME_GRANULARITY = 512;
39
40
  static readonly SEQUENCE_BLOCKDIFF_LIMIT = 65535;
40
- static PublicKey: typeof PublicKeyInput;
41
- static PublicKeyHash: typeof PublicKeyHashInput;
42
- static Multisig: typeof MultisigInput;
43
- static MultisigScriptHash: typeof MultisigScriptHashInput;
44
- static Taproot: typeof TaprootInput;
45
- static MuSigTaproot: typeof MuSigTaprootInput;
46
- static P2PKH: typeof PublicKeyHashInput;
47
- static P2SH: typeof MultisigScriptHashInput;
48
- static P2TR: typeof TaprootInput;
49
41
  prevTxId: Buffer;
50
42
  outputIndex: number;
51
43
  sequenceNumber: number;
@@ -68,7 +60,7 @@ export declare class Input {
68
60
  getRelativeLockTimeInBlocks(): number;
69
61
  getRelativeLockTimeInSeconds(): number;
70
62
  toObject(): InputObject;
71
- toJSON: () => InputObject;
63
+ toJSON(): InputObject;
72
64
  static fromBufferReader(br: BufferReader): Input;
73
65
  toBuffer(): Buffer;
74
66
  toBufferWriter(writer?: BufferWriter): BufferWriter;
@@ -162,17 +154,17 @@ export declare class PublicKeyHashInput extends Input {
162
154
  _estimateSize(): number;
163
155
  }
164
156
  export interface TaprootInputData extends InputData {
165
- internalPubKey?: PublicKey;
166
- merkleRoot?: Buffer;
157
+ internalPubKey: PublicKey;
158
+ merkleRoot: Buffer;
167
159
  controlBlock?: Buffer;
168
160
  tapScript?: Script;
169
161
  }
170
162
  export declare class TaprootInput extends Input {
171
- internalPubKey?: PublicKey;
163
+ internalPubKey: PublicKey;
172
164
  merkleRoot?: Buffer;
173
165
  controlBlock?: Buffer;
174
166
  tapScript?: Script;
175
- constructor(params?: TaprootInputData);
167
+ constructor(params: TaprootInputData);
176
168
  hasScriptTree(): boolean;
177
169
  isKeyPathOnly(): boolean;
178
170
  getSignatures(transaction: Transaction, privateKey: PrivateKey, index: number, sigtype?: number, hashData?: unknown, signingMethod?: 'ecdsa' | 'schnorr'): TransactionSignature[];
@@ -184,23 +176,23 @@ export declare class TaprootInput extends Input {
184
176
  isFullySigned(): boolean;
185
177
  _estimateSize(): number;
186
178
  }
187
- export declare class MuSigTaprootInput extends TaprootInput {
188
- keyAggContext?: MuSigKeyAggContext;
179
+ export declare class MuSig2TaprootInput extends TaprootInput {
180
+ keyAggContext?: MuSig2KeyAggContext;
189
181
  publicNonces?: Map<number, [Point, Point]>;
190
- aggregatedNonce?: MuSigAggregatedNonce;
182
+ aggregatedNonce?: MuSig2AggregatedNonce;
191
183
  partialSignatures?: Map<number, BN>;
192
184
  mySignerIndex?: number;
193
- constructor(params?: TaprootInputData & {
194
- keyAggContext?: MuSigKeyAggContext;
185
+ constructor(params: TaprootInputData & {
186
+ keyAggContext?: MuSig2KeyAggContext;
195
187
  mySignerIndex?: number;
196
188
  });
197
- initMuSigSession(keyAggContext: MuSigKeyAggContext, mySignerIndex: number): this;
189
+ initMuSig2Session(keyAggContext: MuSig2KeyAggContext, mySignerIndex: number): this;
198
190
  addPublicNonce(signerIndex: number, publicNonce: [Point, Point]): this;
199
191
  hasAllNonces(): boolean;
200
192
  aggregateNonces(): this;
201
193
  addPartialSignature(signerIndex: number, partialSig: BN): this;
202
194
  hasAllPartialSignatures(): boolean;
203
- finalizeMuSigSignature(transaction: Transaction, message: Buffer): this;
195
+ finalizeMuSig2Signature(transaction: Transaction, message: Buffer): this;
204
196
  isFullySigned(): boolean;
205
197
  }
206
198
  //# sourceMappingURL=input.d.ts.map