xpi-ts 0.2.22 → 0.2.24

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 (172) hide show
  1. package/dist/cjs/lib/bitcore/crypto/point.js +2 -2
  2. package/dist/cjs/lib/bitcore/index.js +162 -162
  3. package/dist/esm/lib/bitcore/crypto/point.js +2 -2
  4. package/dist/esm/lib/bitcore/index.js +42 -42
  5. package/dist/types/index.d.ts +5 -0
  6. package/dist/types/index.d.ts.map +1 -1
  7. package/dist/types/lib/bitcore/address.d.ts +116 -0
  8. package/dist/types/lib/bitcore/address.d.ts.map +1 -1
  9. package/dist/types/lib/bitcore/block/block.d.ts +214 -0
  10. package/dist/types/lib/bitcore/block/block.d.ts.map +1 -1
  11. package/dist/types/lib/bitcore/block/blockheader.d.ts +220 -0
  12. package/dist/types/lib/bitcore/block/blockheader.d.ts.map +1 -1
  13. package/dist/types/lib/bitcore/block/merkleblock.d.ts +206 -0
  14. package/dist/types/lib/bitcore/block/merkleblock.d.ts.map +1 -1
  15. package/dist/types/lib/bitcore/crypto/bn.d.ts +224 -0
  16. package/dist/types/lib/bitcore/crypto/bn.d.ts.map +1 -1
  17. package/dist/types/lib/bitcore/crypto/ecdsa.d.ts +122 -0
  18. package/dist/types/lib/bitcore/crypto/ecdsa.d.ts.map +1 -1
  19. package/dist/types/lib/bitcore/crypto/hash.d.ts +56 -0
  20. package/dist/types/lib/bitcore/crypto/hash.d.ts.map +1 -1
  21. package/dist/types/lib/bitcore/crypto/index.d.ts +4 -0
  22. package/dist/types/lib/bitcore/crypto/index.d.ts.map +1 -1
  23. package/dist/types/lib/bitcore/crypto/musig2.d.ts +282 -0
  24. package/dist/types/lib/bitcore/crypto/musig2.d.ts.map +1 -1
  25. package/dist/types/lib/bitcore/crypto/point.d.ts +87 -0
  26. package/dist/types/lib/bitcore/crypto/point.d.ts.map +1 -1
  27. package/dist/types/lib/bitcore/crypto/random.d.ts +48 -0
  28. package/dist/types/lib/bitcore/crypto/random.d.ts.map +1 -1
  29. package/dist/types/lib/bitcore/crypto/schnorr.d.ts +203 -0
  30. package/dist/types/lib/bitcore/crypto/schnorr.d.ts.map +1 -1
  31. package/dist/types/lib/bitcore/crypto/signature.d.ts +452 -0
  32. package/dist/types/lib/bitcore/crypto/signature.d.ts.map +1 -1
  33. package/dist/types/lib/bitcore/crypto/sigtype.d.ts +46 -0
  34. package/dist/types/lib/bitcore/crypto/sigtype.d.ts.map +1 -1
  35. package/dist/types/lib/bitcore/encoding/base58.d.ts +68 -0
  36. package/dist/types/lib/bitcore/encoding/base58.d.ts.map +1 -1
  37. package/dist/types/lib/bitcore/encoding/base58check.d.ts +58 -0
  38. package/dist/types/lib/bitcore/encoding/base58check.d.ts.map +1 -1
  39. package/dist/types/lib/bitcore/encoding/bufferreader.d.ts +112 -0
  40. package/dist/types/lib/bitcore/encoding/bufferreader.d.ts.map +1 -1
  41. package/dist/types/lib/bitcore/encoding/bufferwriter.d.ts +144 -0
  42. package/dist/types/lib/bitcore/encoding/bufferwriter.d.ts.map +1 -1
  43. package/dist/types/lib/bitcore/encoding/varint.d.ts +86 -0
  44. package/dist/types/lib/bitcore/encoding/varint.d.ts.map +1 -1
  45. package/dist/types/lib/bitcore/errors.d.ts +4 -0
  46. package/dist/types/lib/bitcore/errors.d.ts.map +1 -1
  47. package/dist/types/lib/bitcore/hdprivatekey.d.ts +59 -0
  48. package/dist/types/lib/bitcore/hdprivatekey.d.ts.map +1 -1
  49. package/dist/types/lib/bitcore/hdpublickey.d.ts +145 -0
  50. package/dist/types/lib/bitcore/hdpublickey.d.ts.map +1 -1
  51. package/dist/types/lib/bitcore/index.d.ts +58 -54
  52. package/dist/types/lib/bitcore/index.d.ts.map +1 -1
  53. package/dist/types/lib/bitcore/message.d.ts +63 -0
  54. package/dist/types/lib/bitcore/message.d.ts.map +1 -1
  55. package/dist/types/lib/bitcore/mnemonic/errors.d.ts +4 -0
  56. package/dist/types/lib/bitcore/mnemonic/errors.d.ts.map +1 -1
  57. package/dist/types/lib/bitcore/mnemonic/index.d.ts +4 -0
  58. package/dist/types/lib/bitcore/mnemonic/index.d.ts.map +1 -1
  59. package/dist/types/lib/bitcore/mnemonic/mnemonic.d.ts +106 -0
  60. package/dist/types/lib/bitcore/mnemonic/mnemonic.d.ts.map +1 -1
  61. package/dist/types/lib/bitcore/mnemonic/pbkdf2.d.ts +13 -0
  62. package/dist/types/lib/bitcore/mnemonic/pbkdf2.d.ts.map +1 -1
  63. package/dist/types/lib/bitcore/mnemonic/words/english.d.ts +4 -0
  64. package/dist/types/lib/bitcore/mnemonic/words/english.d.ts.map +1 -1
  65. package/dist/types/lib/bitcore/mnemonic/words/french.d.ts +5 -0
  66. package/dist/types/lib/bitcore/mnemonic/words/french.d.ts.map +1 -1
  67. package/dist/types/lib/bitcore/mnemonic/words/index.d.ts +4 -0
  68. package/dist/types/lib/bitcore/mnemonic/words/index.d.ts.map +1 -1
  69. package/dist/types/lib/bitcore/musig2/index.d.ts +14 -0
  70. package/dist/types/lib/bitcore/musig2/index.d.ts.map +1 -1
  71. package/dist/types/lib/bitcore/musig2/session.d.ts +254 -0
  72. package/dist/types/lib/bitcore/musig2/session.d.ts.map +1 -1
  73. package/dist/types/lib/bitcore/musig2/signer.d.ts +212 -0
  74. package/dist/types/lib/bitcore/musig2/signer.d.ts.map +1 -1
  75. package/dist/types/lib/bitcore/networks.d.ts +17 -0
  76. package/dist/types/lib/bitcore/networks.d.ts.map +1 -1
  77. package/dist/types/lib/bitcore/opcode.d.ts +151 -0
  78. package/dist/types/lib/bitcore/opcode.d.ts.map +1 -1
  79. package/dist/types/lib/bitcore/privatekey.d.ts +80 -0
  80. package/dist/types/lib/bitcore/privatekey.d.ts.map +1 -1
  81. package/dist/types/lib/bitcore/publickey.d.ts +195 -0
  82. package/dist/types/lib/bitcore/publickey.d.ts.map +1 -1
  83. package/dist/types/lib/bitcore/script/chunk.d.ts +51 -0
  84. package/dist/types/lib/bitcore/script/chunk.d.ts.map +1 -1
  85. package/dist/types/lib/bitcore/script/interpreter/condition-stack.d.ts +60 -0
  86. package/dist/types/lib/bitcore/script/interpreter/condition-stack.d.ts.map +1 -1
  87. package/dist/types/lib/bitcore/script/interpreter/index.d.ts +23 -0
  88. package/dist/types/lib/bitcore/script/interpreter/index.d.ts.map +1 -1
  89. package/dist/types/lib/bitcore/script/interpreter/interpreter.d.ts +86 -0
  90. package/dist/types/lib/bitcore/script/interpreter/interpreter.d.ts.map +1 -1
  91. package/dist/types/lib/bitcore/script/interpreter/script-num.d.ts +115 -0
  92. package/dist/types/lib/bitcore/script/interpreter/script-num.d.ts.map +1 -1
  93. package/dist/types/lib/bitcore/script/interpreter/types.d.ts +119 -0
  94. package/dist/types/lib/bitcore/script/interpreter/types.d.ts.map +1 -1
  95. package/dist/types/lib/bitcore/script/taproot.d.ts +297 -0
  96. package/dist/types/lib/bitcore/script/taproot.d.ts.map +1 -1
  97. package/dist/types/lib/bitcore/script.d.ts +510 -0
  98. package/dist/types/lib/bitcore/script.d.ts.map +1 -1
  99. package/dist/types/lib/bitcore/taproot/musig2.d.ts +153 -0
  100. package/dist/types/lib/bitcore/taproot/musig2.d.ts.map +1 -1
  101. package/dist/types/lib/bitcore/transaction/input/multisig.d.ts +8 -0
  102. package/dist/types/lib/bitcore/transaction/input/multisig.d.ts.map +1 -1
  103. package/dist/types/lib/bitcore/transaction/input/multisigscripthash.d.ts +8 -0
  104. package/dist/types/lib/bitcore/transaction/input/multisigscripthash.d.ts.map +1 -1
  105. package/dist/types/lib/bitcore/transaction/input/publickey.d.ts +8 -0
  106. package/dist/types/lib/bitcore/transaction/input/publickey.d.ts.map +1 -1
  107. package/dist/types/lib/bitcore/transaction/input/publickeyhash.d.ts +14 -0
  108. package/dist/types/lib/bitcore/transaction/input/publickeyhash.d.ts.map +1 -1
  109. package/dist/types/lib/bitcore/transaction/input/taproot.d.ts +22 -0
  110. package/dist/types/lib/bitcore/transaction/input/taproot.d.ts.map +1 -1
  111. package/dist/types/lib/bitcore/transaction/input.d.ts +418 -0
  112. package/dist/types/lib/bitcore/transaction/input.d.ts.map +1 -1
  113. package/dist/types/lib/bitcore/transaction/outpoint.d.ts +110 -0
  114. package/dist/types/lib/bitcore/transaction/outpoint.d.ts.map +1 -1
  115. package/dist/types/lib/bitcore/transaction/output.d.ts +83 -0
  116. package/dist/types/lib/bitcore/transaction/output.d.ts.map +1 -1
  117. package/dist/types/lib/bitcore/transaction/sighash.d.ts +69 -0
  118. package/dist/types/lib/bitcore/transaction/sighash.d.ts.map +1 -1
  119. package/dist/types/lib/bitcore/transaction/signature.d.ts +98 -0
  120. package/dist/types/lib/bitcore/transaction/signature.d.ts.map +1 -1
  121. package/dist/types/lib/bitcore/transaction/transaction.d.ts +379 -0
  122. package/dist/types/lib/bitcore/transaction/transaction.d.ts.map +1 -1
  123. package/dist/types/lib/bitcore/transaction/unspentoutput.d.ts +61 -0
  124. package/dist/types/lib/bitcore/transaction/unspentoutput.d.ts.map +1 -1
  125. package/dist/types/lib/bitcore/unit.d.ts +140 -0
  126. package/dist/types/lib/bitcore/unit.d.ts.map +1 -1
  127. package/dist/types/lib/bitcore/uri.d.ts +34 -0
  128. package/dist/types/lib/bitcore/uri.d.ts.map +1 -1
  129. package/dist/types/lib/bitcore/util/base32.d.ts +55 -0
  130. package/dist/types/lib/bitcore/util/base32.d.ts.map +1 -1
  131. package/dist/types/lib/bitcore/util/bits.d.ts +76 -0
  132. package/dist/types/lib/bitcore/util/bits.d.ts.map +1 -1
  133. package/dist/types/lib/bitcore/util/buffer.d.ts +135 -0
  134. package/dist/types/lib/bitcore/util/buffer.d.ts.map +1 -1
  135. package/dist/types/lib/bitcore/util/convertBits.d.ts +15 -0
  136. package/dist/types/lib/bitcore/util/convertBits.d.ts.map +1 -1
  137. package/dist/types/lib/bitcore/util/js.d.ts +19 -0
  138. package/dist/types/lib/bitcore/util/js.d.ts.map +1 -1
  139. package/dist/types/lib/bitcore/util/merkle.d.ts +85 -0
  140. package/dist/types/lib/bitcore/util/merkle.d.ts.map +1 -1
  141. package/dist/types/lib/bitcore/util/preconditions.d.ts +29 -0
  142. package/dist/types/lib/bitcore/util/preconditions.d.ts.map +1 -1
  143. package/dist/types/lib/bitcore/util.d.ts +7 -0
  144. package/dist/types/lib/bitcore/util.d.ts.map +1 -1
  145. package/dist/types/lib/bitcore/xaddress.d.ts +117 -0
  146. package/dist/types/lib/bitcore/xaddress.d.ts.map +1 -1
  147. package/dist/types/lib/lokad.d.ts +292 -0
  148. package/dist/types/lib/lokad.d.ts.map +1 -1
  149. package/dist/types/lib/nft.d.ts +434 -0
  150. package/dist/types/lib/nft.d.ts.map +1 -1
  151. package/dist/types/lib/rank/api.d.ts +13 -0
  152. package/dist/types/lib/rank/api.d.ts.map +1 -1
  153. package/dist/types/lib/rank/index.d.ts +153 -0
  154. package/dist/types/lib/rank/index.d.ts.map +1 -1
  155. package/dist/types/lib/rank/opcode.d.ts +6 -2
  156. package/dist/types/lib/rank/opcode.d.ts.map +1 -1
  157. package/dist/types/lib/rank/script.d.ts +10 -0
  158. package/dist/types/lib/rank/script.d.ts.map +1 -1
  159. package/dist/types/lib/rank/transaction.d.ts +11 -0
  160. package/dist/types/lib/rank/transaction.d.ts.map +1 -1
  161. package/dist/types/lib/rpc.d.ts +176 -0
  162. package/dist/types/lib/rpc.d.ts.map +1 -1
  163. package/dist/types/utils/constants.d.ts +27 -0
  164. package/dist/types/utils/constants.d.ts.map +1 -1
  165. package/dist/types/utils/env.d.ts +15 -0
  166. package/dist/types/utils/env.d.ts.map +1 -1
  167. package/dist/types/utils/string.d.ts +57 -0
  168. package/dist/types/utils/string.d.ts.map +1 -1
  169. package/dist/types/utils/wallet.d.ts +43 -1
  170. package/dist/types/utils/wallet.d.ts.map +1 -1
  171. package/package.json +1 -1
  172. package/tsconfig.types.json +2 -1
@@ -1 +1 @@
1
- {"version":3,"file":"mnemonic.d.ts","sourceRoot":"","sources":["../../../../../lib/bitcore/mnemonic/mnemonic.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAK1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAerC,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;AAuB/D,qBAAa,QAAQ;IACnB,SAAgB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClC,SAAgB,MAAM,EAAE,MAAM,CAAA;gBAElB,IAAI,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE;IAuDrD,MAAM,CAAC,KAAK;;;MAAQ;IAcpB,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO;IAmC9D,MAAM,CAAC,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO;IAexE,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS;IAoB9D,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM;IAiBnC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,QAAQ;IAuB5D,cAAc,CACZ,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,OAAO,GAAG,WAAW,GAC9B,YAAY;IAUf,QAAQ,IAAI,MAAM;IASlB,OAAO,IAAI,MAAM;IAWjB,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM;IAYzD,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM;IAiCrE,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;CAiBjD;AAED,eAAe,QAAQ,CAAA"}
1
+ {"version":3,"file":"mnemonic.d.ts","sourceRoot":"","sources":["../../../../../lib/bitcore/mnemonic/mnemonic.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAOH,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAA;AACjD,OAAO,EAAE,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAA;AAK1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAYrC;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;AAE/D;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,QAAQ;IACnB,SAAgB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClC,SAAgB,MAAM,EAAE,MAAM,CAAA;gBAElB,IAAI,CAAC,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE;IAuDrD,MAAM,CAAC,KAAK;;;MAAQ;IAEpB;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,OAAO;IA4B9D;;;;;;OAMG;IACH,MAAM,CAAC,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,OAAO;IASxE;;;;;OAKG;IACH,MAAM,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS;IAc9D;;;;;OAKG;IACH,MAAM,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM;IAUnC;;;;;;OAMG;IACH,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,GAAG,QAAQ;IAc5D;;;;;;;;OAQG;IACH,cAAc,CACZ,UAAU,CAAC,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,OAAO,GAAG,WAAW,GAC9B,YAAY;IAKf;;;;OAIG;IACH,QAAQ,IAAI,MAAM;IAIlB;;;;OAIG;IACH,OAAO,IAAI,MAAM;IAIjB;;;;;;OAMG;IACH,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM;IAKzD;;;;;;OAMG;IACH,MAAM,CAAC,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM;IA0BrE;;;;;;OAMG;IACH,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;CAiBjD;AAED,eAAe,QAAQ,CAAA"}
@@ -1,3 +1,16 @@
1
+ /**
2
+ * PBKDF2 implementation for mnemonic seed generation
3
+ * Migrated from @abcpros/bitcore-mnemonic with ESM support and TypeScript
4
+ *
5
+ * Uses @noble/hashes for browser compatibility
6
+ */
1
7
  import type { Buffer } from 'buffer/';
8
+ /**
9
+ * PBKDF2 implementation using SHA512
10
+ * Uses @noble/hashes for browser compatibility
11
+ *
12
+ * Credit to: https://github.com/stayradiated/pbkdf2-sha512
13
+ * Copyright (c) 2014, JP Richardson Copyright (c) 2010-2011 Intalio Pte, All Rights Reserved
14
+ */
2
15
  export declare function pbkdf2(key: string | Buffer, salt: string | Buffer, iterations: number, dkLen: number): Buffer;
3
16
  //# sourceMappingURL=pbkdf2.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pbkdf2.d.ts","sourceRoot":"","sources":["../../../../../lib/bitcore/mnemonic/pbkdf2.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AASrC,wBAAgB,MAAM,CACpB,GAAG,EAAE,MAAM,GAAG,MAAM,EACpB,IAAI,EAAE,MAAM,GAAG,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,GACZ,MAAM,CA+BR"}
1
+ {"version":3,"file":"pbkdf2.d.ts","sourceRoot":"","sources":["../../../../../lib/bitcore/mnemonic/pbkdf2.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,SAAS,CAAA;AAErC;;;;;;GAMG;AACH,wBAAgB,MAAM,CACpB,GAAG,EAAE,MAAM,GAAG,MAAM,EACpB,IAAI,EAAE,MAAM,GAAG,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,GACZ,MAAM,CA+BR"}
@@ -1,2 +1,6 @@
1
+ /**
2
+ * English word list for BIP39 mnemonic generation
3
+ * Migrated from @abcpros/bitcore-mnemonic with ESM support and TypeScript
4
+ */
1
5
  export declare const english: string[];
2
6
  //# sourceMappingURL=english.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"english.d.ts","sourceRoot":"","sources":["../../../../../../lib/bitcore/mnemonic/words/english.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,OAAO,UAigEnB,CAAA"}
1
+ {"version":3,"file":"english.d.ts","sourceRoot":"","sources":["../../../../../../lib/bitcore/mnemonic/words/english.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAO,MAAM,OAAO,UAigEnB,CAAA"}
@@ -1,2 +1,7 @@
1
+ /**
2
+ * French word list for BIP39 mnemonic generation
3
+ * Source: https://github.com/bitcoin/bips/blob/master/bip-0039/french.txt
4
+ * Credits: @Kirvx @NicolasDorier @ecdsa @EricLarch
5
+ */
1
6
  export declare const french: string[];
2
7
  //# sourceMappingURL=french.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"french.d.ts","sourceRoot":"","sources":["../../../../../../lib/bitcore/mnemonic/words/french.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,MAAM,UAigElB,CAAA"}
1
+ {"version":3,"file":"french.d.ts","sourceRoot":"","sources":["../../../../../../lib/bitcore/mnemonic/words/french.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAO,MAAM,MAAM,UAigElB,CAAA"}
@@ -1,3 +1,7 @@
1
+ /**
2
+ * Word lists for BIP39 mnemonic generation
3
+ * Migrated from @abcpros/bitcore-mnemonic with ESM support and TypeScript
4
+ */
1
5
  export declare const Words: {
2
6
  ENGLISH: string[];
3
7
  FRENCH: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../lib/bitcore/mnemonic/words/index.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,KAAK;;;CAQjB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../lib/bitcore/mnemonic/words/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,eAAO,MAAM,KAAK;;;CAQjB,CAAA"}
@@ -1,3 +1,17 @@
1
+ /**
2
+ * Copyright 2025 The Lotusia Stewardship
3
+ * Github: https://github.com/LotusiaStewardship
4
+ * License: MIT
5
+ */
6
+ /**
7
+ * MuSig2 High-Level API
8
+ *
9
+ * This module provides simplified, developer-friendly wrappers for common
10
+ * MuSig2 operations, making it easier for new developers to implement
11
+ * multi-signature functionality.
12
+ *
13
+ * @module MuSig2
14
+ */
1
15
  export { MuSig2Signer, createMuSig2Signer, type MuSig2SignerConfig, type MuSig2PrepareResult, type MuSig2SignResult, type MuSig2TaprootSignResult, } from './signer.js';
2
16
  export { MuSigSessionManager, MuSigSessionPhase, type MuSigSession, } from './session.js';
3
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../lib/bitcore/musig2/index.ts"],"names":[],"mappings":"AAgBA,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,GAC7B,MAAM,aAAa,CAAA;AAEpB,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,KAAK,YAAY,GAClB,MAAM,cAAc,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../lib/bitcore/musig2/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;;GAQG;AAEH,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,KAAK,kBAAkB,EACvB,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,uBAAuB,GAC7B,MAAM,aAAa,CAAA;AAEpB,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,KAAK,YAAY,GAClB,MAAM,cAAc,CAAA"}
@@ -1,57 +1,223 @@
1
+ /**
2
+ * Copyright 2025 The Lotusia Stewardship
3
+ * Github: https://github.com/LotusiaStewardship
4
+ * License: MIT
5
+ */
6
+ /**
7
+ * MuSig2 Session Management
8
+ *
9
+ * Provides stateful session management for multi-party MuSig2 signing.
10
+ * Handles nonce exchange, partial signature collection, and finalization.
11
+ *
12
+ * This is a general-purpose session manager that can be used for any
13
+ * MuSig2 signing scenario, not just Taproot transactions.
14
+ *
15
+ * @module MuSig2Session
16
+ */
1
17
  import { PublicKey } from '../publickey';
2
18
  import { PrivateKey } from '../privatekey';
3
19
  import { Point, BN, Signature } from '../crypto/index';
4
20
  import { type MuSig2KeyAggContext, type MuSig2Nonce, type MuSig2AggregatedNonce } from '../crypto/musig2';
5
21
  import type { Buffer } from 'buffer/';
22
+ /**
23
+ * Session phases in the MuSig2 protocol
24
+ */
6
25
  export declare enum MuSigSessionPhase {
26
+ /** Initial state - session created but not started */
7
27
  INIT = "init",
28
+ /** Round 1 - collecting public nonces from all signers */
8
29
  NONCE_EXCHANGE = "nonce-exchange",
30
+ /** Round 2 - collecting partial signatures from all signers */
9
31
  PARTIAL_SIG_EXCHANGE = "partial-sig-exchange",
32
+ /** Final state - signature has been aggregated */
10
33
  COMPLETE = "complete",
34
+ /** Error state - session aborted due to validation failure */
11
35
  ABORTED = "aborted"
12
36
  }
37
+ /**
38
+ * Result type for session manager operations
39
+ * Enables clean interface between session manager and P2P coordinator
40
+ */
13
41
  export interface SessionManagerResult {
42
+ /** Next phase to transition to (if any) */
14
43
  shouldTransitionTo?: MuSigSessionPhase;
44
+ /** Whether nonces should be revealed to other participants */
15
45
  shouldRevealNonces?: boolean;
46
+ /** Nonces to broadcast (if revealing) */
16
47
  broadcastNonces?: [Point, Point];
48
+ /** Whether partial signature should be created */
17
49
  shouldCreatePartialSig?: boolean;
50
+ /** Whether partial signature should be broadcast */
18
51
  shouldBroadcastPartialSig?: boolean;
52
+ /** Partial signature to broadcast */
19
53
  broadcastPartialSig?: BN;
54
+ /** Whether signature should be finalized */
20
55
  shouldFinalize?: boolean;
56
+ /** Final aggregated signature */
21
57
  finalSignature?: Signature;
58
+ /** Error message if operation failed */
22
59
  error?: string;
23
60
  }
61
+ /**
62
+ * MuSig2 Signing Session
63
+ *
64
+ * Represents a single multi-party signing session with all necessary state.
65
+ */
24
66
  export interface MuSigSession {
67
+ /** Unique session identifier */
25
68
  sessionId: string;
69
+ /** All participating signers' public keys (in order) */
26
70
  signers: PublicKey[];
71
+ /** Index of this signer in the signers array */
27
72
  myIndex: number;
73
+ /** Key aggregation context (computed once) */
28
74
  keyAggContext: MuSig2KeyAggContext;
75
+ /** Message to be signed */
29
76
  message: Buffer;
77
+ /** Optional: Session metadata */
30
78
  metadata?: Record<string, unknown>;
79
+ /** This signer's secret nonce (NEVER share!) */
31
80
  mySecretNonce?: MuSig2Nonce;
81
+ /** This signer's public nonce */
32
82
  myPublicNonce?: [Point, Point];
83
+ /** Received public nonces from other signers (index -> nonce) */
33
84
  receivedPublicNonces: Map<number, [Point, Point]>;
85
+ /** Aggregated nonce (computed when all public nonces received) */
34
86
  aggregatedNonce?: MuSig2AggregatedNonce;
87
+ /** This signer's partial signature */
35
88
  myPartialSig?: BN;
89
+ /** Received partial signatures from other signers (index -> sig) */
36
90
  receivedPartialSigs: Map<number, BN>;
91
+ /** Final aggregated signature (if complete) */
37
92
  finalSignature?: Signature;
93
+ /** Current phase of the session */
38
94
  phase: MuSigSessionPhase;
95
+ /** Creation timestamp */
39
96
  createdAt: number;
97
+ /** Last updated timestamp */
40
98
  updatedAt: number;
99
+ /** Optional: Abort reason if phase is ABORTED */
41
100
  abortReason?: string;
101
+ /** Election method used for coordinator selection */
42
102
  electionMethod?: string;
103
+ /** Index of elected coordinator in sorted signers array */
43
104
  coordinatorIndex?: number;
105
+ /** Election proof hash for verification */
44
106
  electionProof?: string;
107
+ /** Backup coordinator priority list */
45
108
  backupCoordinators?: number[];
46
109
  }
110
+ /**
111
+ * MuSig2 Session Manager
112
+ *
113
+ * Manages the lifecycle of MuSig2 signing sessions including:
114
+ * - Session creation and initialization
115
+ * - Nonce generation and exchange
116
+ * - Partial signature creation and collection
117
+ * - Signature aggregation and finalization
118
+ * - Validation and error handling
119
+ */
47
120
  export declare class MuSigSessionManager {
121
+ /**
122
+ * Create a new MuSig2 signing session
123
+ *
124
+ * @param signers - All participating signers' public keys (in order)
125
+ * @param myPrivateKey - This signer's private key
126
+ * @param message - Message to be signed
127
+ * @param metadata - Optional session metadata
128
+ * @returns Initialized session
129
+ * @throws Error if signers array is empty or doesn't contain myPrivateKey's public key
130
+ */
48
131
  createSession(signers: PublicKey[], myPrivateKey: PrivateKey, message: Buffer, metadata?: Record<string, unknown>): MuSigSession;
132
+ /**
133
+ * Generate and store public nonces for this signer
134
+ *
135
+ * This begins Round 1 of the MuSig2 protocol. The returned public nonces
136
+ * must be shared with all other signers.
137
+ *
138
+ * 🔒 PRODUCTION SECURITY: This method automatically adds 32 bytes of random
139
+ * entropy to nonce generation for defense-in-depth. The underlying nonce
140
+ * generation uses RFC6979 deterministic generation, and this random layer
141
+ * provides additional protection against implementation bugs or hardware failures.
142
+ *
143
+ * If you need deterministic nonces (e.g., for testing with known vectors),
144
+ * pass BufferUtil.alloc(32) as extraInput to disable the random layer.
145
+ *
146
+ * WARNING: Do not call this multiple times for the same session!
147
+ * Nonce reuse reveals the private key!
148
+ *
149
+ * @param session - The signing session
150
+ * @param privateKey - This signer's private key
151
+ * @param extraInput - Optional extra randomness. If not provided, 32 random bytes are automatically added for production security.
152
+ * @returns Public nonces to share with other signers
153
+ * @throws Error if session is not in INIT phase or nonces already generated
154
+ *
155
+ * @example Production usage (automatic randomness)
156
+ * ```typescript
157
+ * const nonces = manager.generateNonces(session, privateKey)
158
+ * // Automatically includes 32 random bytes for security
159
+ * ```
160
+ *
161
+ * @example Testing with deterministic nonces
162
+ * ```typescript
163
+ * const nonces = manager.generateNonces(session, privateKey, BufferUtil.alloc(32))
164
+ * // Uses only RFC6979 deterministic generation (reproducible)
165
+ * ```
166
+ */
49
167
  generateNonces(session: MuSigSession, privateKey: PrivateKey, extraInput?: Buffer): [Point, Point];
168
+ /**
169
+ * Receive and validate a public nonce from another signer
170
+ *
171
+ * @param session - The signing session
172
+ * @param signerIndex - Index of the signer who sent this nonce
173
+ * @param publicNonce - The public nonce to receive
174
+ * @throws Error if validation fails or duplicate nonce received
175
+ */
50
176
  receiveNonces(session: MuSigSession, signerIndex: number, publicNonces: [Point, Point]): void;
177
+ /**
178
+ * Create this signer's partial signature
179
+ *
180
+ * This begins Round 2 of the MuSig2 protocol. Can only be called after
181
+ * all nonces have been collected and aggregated.
182
+ *
183
+ * @param session - The signing session
184
+ * @param privateKey - This signer's private key
185
+ * @returns Partial signature to share with other signers
186
+ * @throws Error if not ready to sign
187
+ */
51
188
  createPartialSignature(session: MuSigSession, privateKey: PrivateKey): BN;
189
+ /**
190
+ * Receive and verify a partial signature from another signer
191
+ *
192
+ * @param session - The signing session
193
+ * @param signerIndex - Index of the signer who sent this signature
194
+ * @param partialSig - The partial signature to receive
195
+ * @throws Error if validation fails or duplicate signature received
196
+ */
52
197
  receivePartialSignature(session: MuSigSession, signerIndex: number, partialSig: BN): void;
198
+ /**
199
+ * Get the final aggregated signature
200
+ *
201
+ * Can only be called after all partial signatures have been collected.
202
+ *
203
+ * @param session - The signing session
204
+ * @returns The final Schnorr signature
205
+ * @throws Error if signature not yet finalized
206
+ */
53
207
  getFinalSignature(session: MuSigSession): Signature;
208
+ /**
209
+ * Abort a session with an error reason
210
+ *
211
+ * @param session - The signing session
212
+ * @param reason - Reason for abortion
213
+ */
54
214
  abortSession(session: MuSigSession, reason: string): void;
215
+ /**
216
+ * Get session status summary
217
+ *
218
+ * @param session - The signing session
219
+ * @returns Human-readable status information
220
+ */
55
221
  getSessionStatus(session: MuSigSession): {
56
222
  phase: MuSigSessionPhase;
57
223
  noncesCollected: number;
@@ -62,19 +228,107 @@ export declare class MuSigSessionManager {
62
228
  isAborted: boolean;
63
229
  abortReason?: string;
64
230
  };
231
+ /**
232
+ * Generate a unique session ID with entropy
233
+ *
234
+ * Session IDs now include:
235
+ * - All signer public keys (sorted)
236
+ * - Message being signed
237
+ * - Creation timestamp
238
+ * - Random entropy (16 bytes)
239
+ *
240
+ * This prevents session ID collisions when signing the same message
241
+ * with the same signers multiple times.
242
+ *
243
+ * @param signers - Sorted list of signer public keys
244
+ * @param message - Message to be signed
245
+ * @param createdAt - Creation timestamp (defaults to Date.now())
246
+ * @param entropy - Random entropy (defaults to 16 random bytes)
247
+ * @returns Unique session ID (32 hex characters)
248
+ */
65
249
  private _generateSessionId;
250
+ /**
251
+ * Regenerate session ID with new entropy
252
+ *
253
+ * Used when a session ID collision is detected.
254
+ *
255
+ * @param session - The session to regenerate ID for
256
+ * @returns New unique session ID
257
+ */
66
258
  regenerateSessionId(session: MuSigSession): string;
259
+ /**
260
+ * TESTING ONLY: Manually transition session phase
261
+ *
262
+ * This method is only for testing purposes to simulate phase transitions
263
+ * that would normally be handled by the P2P coordinator's state machine.
264
+ *
265
+ * @param session - The session to transition
266
+ * @param newPhase - The new phase to transition to
267
+ * @internal
268
+ */
67
269
  _transitionPhaseForTesting(session: MuSigSession, newPhase: MuSigSessionPhase): void;
270
+ /**
271
+ * Aggregate all received nonces
272
+ */
68
273
  private _aggregateNonces;
274
+ /**
275
+ * Finalize the signature
276
+ */
69
277
  private _finalizeSignature;
278
+ /**
279
+ * Clear secret nonce from memory
280
+ */
70
281
  private _clearSecretNonce;
282
+ /**
283
+ * Abort the session
284
+ */
71
285
  private _abortSession;
286
+ /**
287
+ * Check if all nonces received from other signers (PUBLIC)
288
+ * Used by P2P coordinator to check completion status
289
+ */
72
290
  hasAllNonces(session: MuSigSession): boolean;
291
+ /**
292
+ * Check if all partial signatures received from other signers (PUBLIC)
293
+ * Used by P2P coordinator to check completion status
294
+ */
73
295
  hasAllPartialSignatures(session: MuSigSession): boolean;
296
+ /**
297
+ * Check if local participant is coordinator
298
+ */
74
299
  isCoordinator(session: MuSigSession): boolean;
300
+ /**
301
+ * Validate MuSig2 BIP327 compliance
302
+ * Ensures the session follows BIP327 specification requirements
303
+ *
304
+ * @param session - The signing session
305
+ * @throws Error if session violates BIP327 requirements
306
+ */
75
307
  validateBIP327Compliance(session: MuSigSession): void;
308
+ /**
309
+ * Check if keys are sorted lexicographically
310
+ * BIP327 requires deterministic key ordering
311
+ *
312
+ * @param signers - Array of public keys
313
+ * @returns True if keys are sorted
314
+ */
76
315
  private areKeysSorted;
316
+ /**
317
+ * Validate MuSig2 round progression
318
+ * Ensures phase transitions follow BIP327 protocol
319
+ *
320
+ * @param session - The signing session
321
+ * @throws Error if phase transition is invalid
322
+ */
77
323
  private validateMuSig2Rounds;
324
+ /**
325
+ * Initiate Round 1 of MuSig2 protocol (DIRECT NONCE EXCHANGE)
326
+ * Validates protocol compliance and prepares for nonce exchange
327
+ *
328
+ * @param session - The signing session
329
+ * @param privateKey - This signer's private key
330
+ * @returns Session manager result with nonce generation instructions
331
+ */
78
332
  initiateRound1(session: MuSigSession, privateKey: PrivateKey): SessionManagerResult;
79
333
  }
80
334
  //# sourceMappingURL=session.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../../../lib/bitcore/musig2/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../../../../lib/bitcore/musig2/session.ts"],"names":[],"mappings":"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"}