@bitgo-beta/abstract-utxo 1.1.1-beta.19 → 1.1.1-beta.1900

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 (829) hide show
  1. package/README.md +76 -0
  2. package/dist/cjs/src/abstractUtxoCoin.d.ts +458 -0
  3. package/dist/cjs/src/abstractUtxoCoin.d.ts.map +1 -0
  4. package/dist/cjs/src/abstractUtxoCoin.js +696 -0
  5. package/dist/cjs/src/address/fixedScript.d.ts +44 -0
  6. package/dist/cjs/src/address/fixedScript.d.ts.map +1 -0
  7. package/dist/cjs/src/address/fixedScript.js +105 -0
  8. package/dist/cjs/src/address/index.d.ts +2 -0
  9. package/dist/cjs/src/address/index.d.ts.map +1 -0
  10. package/dist/cjs/src/address/index.js +8 -0
  11. package/dist/{src → cjs/src}/config.d.ts +1 -0
  12. package/dist/cjs/src/config.d.ts.map +1 -0
  13. package/dist/cjs/src/config.js +14 -0
  14. package/dist/cjs/src/descriptor/NamedDescriptor.d.ts +19 -0
  15. package/dist/cjs/src/descriptor/NamedDescriptor.d.ts.map +1 -0
  16. package/dist/cjs/src/descriptor/NamedDescriptor.js +77 -0
  17. package/dist/cjs/src/descriptor/assertDescriptorWalletAddress.d.ts +5 -0
  18. package/dist/cjs/src/descriptor/assertDescriptorWalletAddress.d.ts.map +1 -0
  19. package/dist/cjs/src/descriptor/assertDescriptorWalletAddress.js +33 -0
  20. package/dist/cjs/src/descriptor/builder/builder.d.ts +12 -0
  21. package/dist/cjs/src/descriptor/builder/builder.d.ts.map +1 -0
  22. package/dist/cjs/src/descriptor/builder/builder.js +37 -0
  23. package/dist/cjs/src/descriptor/builder/index.d.ts +3 -0
  24. package/dist/cjs/src/descriptor/builder/index.d.ts.map +1 -0
  25. package/dist/cjs/src/descriptor/builder/index.js +8 -0
  26. package/dist/cjs/src/descriptor/builder/parse.d.ts +5 -0
  27. package/dist/cjs/src/descriptor/builder/parse.d.ts.map +1 -0
  28. package/dist/cjs/src/descriptor/builder/parse.js +116 -0
  29. package/dist/cjs/src/descriptor/createWallet/createDescriptorWallet.d.ts +20 -0
  30. package/dist/cjs/src/descriptor/createWallet/createDescriptorWallet.d.ts.map +1 -0
  31. package/dist/cjs/src/descriptor/createWallet/createDescriptorWallet.js +41 -0
  32. package/dist/cjs/src/descriptor/createWallet/createDescriptors.d.ts +12 -0
  33. package/dist/cjs/src/descriptor/createWallet/createDescriptors.d.ts.map +1 -0
  34. package/dist/cjs/src/descriptor/createWallet/createDescriptors.js +33 -0
  35. package/dist/cjs/src/descriptor/createWallet/index.d.ts +3 -0
  36. package/dist/cjs/src/descriptor/createWallet/index.d.ts.map +1 -0
  37. package/dist/cjs/src/descriptor/createWallet/index.js +19 -0
  38. package/dist/cjs/src/descriptor/descriptorWallet.d.ts +19 -0
  39. package/dist/cjs/src/descriptor/descriptorWallet.d.ts.map +1 -0
  40. package/dist/cjs/src/descriptor/descriptorWallet.js +54 -0
  41. package/dist/cjs/src/descriptor/index.d.ts +8 -0
  42. package/dist/cjs/src/descriptor/index.d.ts.map +1 -0
  43. package/dist/cjs/src/descriptor/index.js +53 -0
  44. package/dist/cjs/src/descriptor/validatePolicy.d.ts +22 -0
  45. package/dist/cjs/src/descriptor/validatePolicy.d.ts.map +1 -0
  46. package/dist/cjs/src/descriptor/validatePolicy.js +92 -0
  47. package/dist/cjs/src/impl/bch/bch.d.ts +22 -0
  48. package/dist/cjs/src/impl/bch/bch.d.ts.map +1 -0
  49. package/dist/cjs/src/impl/bch/bch.js +43 -0
  50. package/dist/cjs/src/impl/bch/index.d.ts +3 -0
  51. package/dist/cjs/src/impl/bch/index.d.ts.map +1 -0
  52. package/dist/cjs/src/impl/bch/index.js +19 -0
  53. package/dist/cjs/src/impl/bch/tbch.d.ts +12 -0
  54. package/dist/cjs/src/impl/bch/tbch.d.ts.map +1 -0
  55. package/dist/cjs/src/impl/bch/tbch.js +15 -0
  56. package/dist/cjs/src/impl/bcha/bcha.d.ts +9 -0
  57. package/dist/cjs/src/impl/bcha/bcha.d.ts.map +1 -0
  58. package/dist/cjs/src/impl/bcha/bcha.js +15 -0
  59. package/dist/cjs/src/impl/bcha/index.d.ts +3 -0
  60. package/dist/cjs/src/impl/bcha/index.d.ts.map +1 -0
  61. package/dist/cjs/src/impl/bcha/index.js +19 -0
  62. package/dist/cjs/src/impl/bcha/tbcha.d.ts +12 -0
  63. package/dist/cjs/src/impl/bcha/tbcha.d.ts.map +1 -0
  64. package/dist/cjs/src/impl/bcha/tbcha.js +15 -0
  65. package/dist/cjs/src/impl/bsv/bsv.d.ts +9 -0
  66. package/dist/cjs/src/impl/bsv/bsv.d.ts.map +1 -0
  67. package/dist/cjs/src/impl/bsv/bsv.js +15 -0
  68. package/dist/cjs/src/impl/bsv/index.d.ts +3 -0
  69. package/dist/cjs/src/impl/bsv/index.d.ts.map +1 -0
  70. package/dist/cjs/src/impl/bsv/index.js +19 -0
  71. package/dist/cjs/src/impl/bsv/tbsv.d.ts +12 -0
  72. package/dist/cjs/src/impl/bsv/tbsv.d.ts.map +1 -0
  73. package/dist/cjs/src/impl/bsv/tbsv.js +15 -0
  74. package/dist/cjs/src/impl/btc/btc.d.ts +15 -0
  75. package/dist/cjs/src/impl/btc/btc.d.ts.map +1 -0
  76. package/dist/cjs/src/impl/btc/btc.js +22 -0
  77. package/dist/cjs/src/impl/btc/index.d.ts +7 -0
  78. package/dist/cjs/src/impl/btc/index.d.ts.map +1 -0
  79. package/dist/cjs/src/impl/btc/index.js +23 -0
  80. package/dist/cjs/src/impl/btc/inscriptionBuilder.d.ts +61 -0
  81. package/dist/cjs/src/impl/btc/inscriptionBuilder.d.ts.map +1 -0
  82. package/dist/cjs/src/impl/btc/inscriptionBuilder.js +171 -0
  83. package/dist/cjs/src/impl/btc/tbtc.d.ts +12 -0
  84. package/dist/cjs/src/impl/btc/tbtc.d.ts.map +1 -0
  85. package/dist/cjs/src/impl/btc/tbtc.js +15 -0
  86. package/dist/cjs/src/impl/btc/tbtc4.d.ts +12 -0
  87. package/dist/cjs/src/impl/btc/tbtc4.d.ts.map +1 -0
  88. package/dist/cjs/src/impl/btc/tbtc4.js +15 -0
  89. package/dist/cjs/src/impl/btc/tbtcbgsig.d.ts +12 -0
  90. package/dist/cjs/src/impl/btc/tbtcbgsig.d.ts.map +1 -0
  91. package/dist/cjs/src/impl/btc/tbtcbgsig.js +15 -0
  92. package/dist/cjs/src/impl/btc/tbtcsig.d.ts +12 -0
  93. package/dist/cjs/src/impl/btc/tbtcsig.d.ts.map +1 -0
  94. package/dist/cjs/src/impl/btc/tbtcsig.js +15 -0
  95. package/dist/cjs/src/impl/btg/btg.d.ts +9 -0
  96. package/dist/cjs/src/impl/btg/btg.d.ts.map +1 -0
  97. package/dist/cjs/src/impl/btg/btg.js +15 -0
  98. package/dist/cjs/src/impl/btg/index.d.ts +2 -0
  99. package/dist/cjs/src/impl/btg/index.d.ts.map +1 -0
  100. package/dist/cjs/src/impl/btg/index.js +18 -0
  101. package/dist/cjs/src/impl/dash/dash.d.ts +9 -0
  102. package/dist/cjs/src/impl/dash/dash.d.ts.map +1 -0
  103. package/dist/cjs/src/impl/dash/dash.js +15 -0
  104. package/dist/cjs/src/impl/dash/index.d.ts +3 -0
  105. package/dist/cjs/src/impl/dash/index.d.ts.map +1 -0
  106. package/dist/cjs/src/impl/dash/index.js +19 -0
  107. package/dist/cjs/src/impl/dash/tdash.d.ts +12 -0
  108. package/dist/cjs/src/impl/dash/tdash.d.ts.map +1 -0
  109. package/dist/cjs/src/impl/dash/tdash.js +15 -0
  110. package/dist/cjs/src/impl/doge/doge.d.ts +35 -0
  111. package/dist/cjs/src/impl/doge/doge.d.ts.map +1 -0
  112. package/dist/cjs/src/impl/doge/doge.js +79 -0
  113. package/dist/cjs/src/impl/doge/index.d.ts +3 -0
  114. package/dist/cjs/src/impl/doge/index.d.ts.map +1 -0
  115. package/dist/cjs/src/impl/doge/index.js +19 -0
  116. package/dist/cjs/src/impl/doge/tdoge.d.ts +12 -0
  117. package/dist/cjs/src/impl/doge/tdoge.d.ts.map +1 -0
  118. package/dist/cjs/src/impl/doge/tdoge.js +15 -0
  119. package/dist/cjs/src/impl/index.d.ts +10 -0
  120. package/dist/cjs/src/impl/index.d.ts.map +1 -0
  121. package/dist/cjs/src/impl/index.js +46 -0
  122. package/dist/cjs/src/impl/ltc/index.d.ts +3 -0
  123. package/dist/cjs/src/impl/ltc/index.d.ts.map +1 -0
  124. package/dist/cjs/src/impl/ltc/index.js +19 -0
  125. package/dist/cjs/src/impl/ltc/ltc.d.ts +8 -0
  126. package/dist/cjs/src/impl/ltc/ltc.d.ts.map +1 -0
  127. package/dist/cjs/src/impl/ltc/ltc.js +15 -0
  128. package/dist/cjs/src/impl/ltc/tltc.d.ts +8 -0
  129. package/dist/cjs/src/impl/ltc/tltc.d.ts.map +1 -0
  130. package/dist/cjs/src/impl/ltc/tltc.js +15 -0
  131. package/dist/cjs/src/impl/zec/index.d.ts +3 -0
  132. package/dist/cjs/src/impl/zec/index.d.ts.map +1 -0
  133. package/dist/cjs/src/impl/zec/index.js +19 -0
  134. package/dist/cjs/src/impl/zec/tzec.d.ts +9 -0
  135. package/dist/cjs/src/impl/zec/tzec.d.ts.map +1 -0
  136. package/dist/cjs/src/impl/zec/tzec.js +15 -0
  137. package/dist/cjs/src/impl/zec/zec.d.ts +12 -0
  138. package/dist/cjs/src/impl/zec/zec.d.ts.map +1 -0
  139. package/dist/cjs/src/impl/zec/zec.js +15 -0
  140. package/dist/cjs/src/index.d.ts +23 -0
  141. package/dist/cjs/src/index.d.ts.map +1 -0
  142. package/dist/cjs/src/index.js +62 -0
  143. package/dist/cjs/src/keychains.d.ts +56 -0
  144. package/dist/cjs/src/keychains.d.ts.map +1 -0
  145. package/dist/cjs/src/keychains.js +144 -0
  146. package/dist/cjs/src/names.d.ts +36 -0
  147. package/dist/cjs/src/names.d.ts.map +1 -0
  148. package/dist/cjs/src/names.js +231 -0
  149. package/dist/cjs/src/offlineVault/OfflineVaultHalfSigned.d.ts +9 -0
  150. package/dist/cjs/src/offlineVault/OfflineVaultHalfSigned.d.ts.map +1 -0
  151. package/dist/cjs/src/offlineVault/OfflineVaultHalfSigned.js +23 -0
  152. package/dist/cjs/src/offlineVault/OfflineVaultSignable.d.ts +46 -0
  153. package/dist/cjs/src/offlineVault/OfflineVaultSignable.d.ts.map +1 -0
  154. package/dist/cjs/src/offlineVault/OfflineVaultSignable.js +55 -0
  155. package/dist/cjs/src/offlineVault/TransactionExplanation.d.ts +16 -0
  156. package/dist/cjs/src/offlineVault/TransactionExplanation.d.ts.map +1 -0
  157. package/dist/cjs/src/offlineVault/TransactionExplanation.js +15 -0
  158. package/dist/cjs/src/offlineVault/descriptor/index.d.ts +2 -0
  159. package/dist/cjs/src/offlineVault/descriptor/index.d.ts.map +1 -0
  160. package/dist/cjs/src/offlineVault/descriptor/index.js +18 -0
  161. package/dist/cjs/src/offlineVault/descriptor/transaction.d.ts +39 -0
  162. package/dist/cjs/src/offlineVault/descriptor/transaction.d.ts.map +1 -0
  163. package/dist/cjs/src/offlineVault/descriptor/transaction.js +80 -0
  164. package/dist/cjs/src/offlineVault/index.d.ts +6 -0
  165. package/dist/cjs/src/offlineVault/index.d.ts.map +1 -0
  166. package/dist/cjs/src/offlineVault/index.js +44 -0
  167. package/dist/{src → cjs/src}/recovery/RecoveryProvider.d.ts +6 -7
  168. package/dist/cjs/src/recovery/RecoveryProvider.d.ts.map +1 -0
  169. package/dist/cjs/src/recovery/RecoveryProvider.js +22 -0
  170. package/dist/cjs/src/recovery/backupKeyRecovery.d.ts +158 -0
  171. package/dist/cjs/src/recovery/backupKeyRecovery.d.ts.map +1 -0
  172. package/dist/cjs/src/recovery/backupKeyRecovery.js +411 -0
  173. package/dist/{src → cjs/src}/recovery/baseApi.d.ts +3 -6
  174. package/dist/cjs/src/recovery/baseApi.d.ts.map +1 -0
  175. package/dist/cjs/src/recovery/baseApi.js +73 -0
  176. package/dist/{src → cjs/src}/recovery/coingeckoApi.d.ts +0 -3
  177. package/dist/cjs/src/recovery/coingeckoApi.d.ts.map +1 -0
  178. package/dist/cjs/src/recovery/coingeckoApi.js +44 -0
  179. package/dist/{src → cjs/src}/recovery/crossChainRecovery.d.ts +30 -30
  180. package/dist/cjs/src/recovery/crossChainRecovery.d.ts.map +1 -0
  181. package/dist/cjs/src/recovery/crossChainRecovery.js +299 -0
  182. package/dist/{src → cjs/src}/recovery/index.d.ts +0 -1
  183. package/dist/cjs/src/recovery/index.d.ts.map +1 -0
  184. package/dist/{src → cjs/src}/recovery/index.js +6 -3
  185. package/dist/cjs/src/recovery/mempoolApi.d.ts.map +1 -0
  186. package/dist/cjs/src/recovery/mempoolApi.js +36 -0
  187. package/dist/cjs/src/recovery/psbt.d.ts +62 -0
  188. package/dist/cjs/src/recovery/psbt.d.ts.map +1 -0
  189. package/dist/cjs/src/recovery/psbt.js +153 -0
  190. package/dist/cjs/src/tnumber.d.ts +4 -0
  191. package/dist/cjs/src/tnumber.d.ts.map +1 -0
  192. package/dist/cjs/src/tnumber.js +12 -0
  193. package/dist/cjs/src/transaction/bip322.d.ts +27 -0
  194. package/dist/cjs/src/transaction/bip322.d.ts.map +1 -0
  195. package/dist/cjs/src/transaction/bip322.js +139 -0
  196. package/dist/cjs/src/transaction/common/verifyPayGoAmount.d.ts +2 -0
  197. package/dist/cjs/src/transaction/common/verifyPayGoAmount.d.ts.map +1 -0
  198. package/dist/cjs/src/transaction/common/verifyPayGoAmount.js +3 -0
  199. package/dist/cjs/src/transaction/decode.d.ts +13 -0
  200. package/dist/cjs/src/transaction/decode.d.ts.map +1 -0
  201. package/dist/cjs/src/transaction/decode.js +88 -0
  202. package/dist/cjs/src/transaction/descriptor/explainPsbt.d.ts +5 -0
  203. package/dist/cjs/src/transaction/descriptor/explainPsbt.d.ts.map +1 -0
  204. package/dist/cjs/src/transaction/descriptor/explainPsbt.js +45 -0
  205. package/dist/cjs/src/transaction/descriptor/index.d.ts +7 -0
  206. package/dist/cjs/src/transaction/descriptor/index.d.ts.map +1 -0
  207. package/dist/cjs/src/transaction/descriptor/index.js +14 -0
  208. package/dist/cjs/src/transaction/descriptor/parse.d.ts +19 -0
  209. package/dist/cjs/src/transaction/descriptor/parse.d.ts.map +1 -0
  210. package/dist/cjs/src/transaction/descriptor/parse.js +90 -0
  211. package/dist/cjs/src/transaction/descriptor/parseToAmountType.d.ts +14 -0
  212. package/dist/cjs/src/transaction/descriptor/parseToAmountType.d.ts.map +1 -0
  213. package/dist/cjs/src/transaction/descriptor/parseToAmountType.js +60 -0
  214. package/dist/cjs/src/transaction/descriptor/recipient.d.ts +5 -0
  215. package/dist/cjs/src/transaction/descriptor/recipient.d.ts.map +1 -0
  216. package/dist/cjs/src/transaction/descriptor/recipient.js +3 -0
  217. package/dist/cjs/src/transaction/descriptor/signPsbt.d.ts +24 -0
  218. package/dist/cjs/src/transaction/descriptor/signPsbt.d.ts.map +1 -0
  219. package/dist/cjs/src/transaction/descriptor/signPsbt.js +44 -0
  220. package/dist/cjs/src/transaction/descriptor/verifyTransaction.d.ts +37 -0
  221. package/dist/cjs/src/transaction/descriptor/verifyTransaction.d.ts.map +1 -0
  222. package/dist/cjs/src/transaction/descriptor/verifyTransaction.js +81 -0
  223. package/dist/cjs/src/transaction/explainTransaction.d.ts +21 -0
  224. package/dist/cjs/src/transaction/explainTransaction.d.ts.map +1 -0
  225. package/dist/cjs/src/transaction/explainTransaction.js +90 -0
  226. package/dist/cjs/src/transaction/fetchInputs.d.ts +27 -0
  227. package/dist/cjs/src/transaction/fetchInputs.d.ts.map +1 -0
  228. package/dist/cjs/src/transaction/fetchInputs.js +111 -0
  229. package/dist/cjs/src/transaction/fixedScript/SigningError.d.ts +24 -0
  230. package/dist/cjs/src/transaction/fixedScript/SigningError.d.ts.map +1 -0
  231. package/dist/cjs/src/transaction/fixedScript/SigningError.js +32 -0
  232. package/dist/cjs/src/transaction/fixedScript/explainPsbtWasm.d.ts +41 -0
  233. package/dist/cjs/src/transaction/fixedScript/explainPsbtWasm.d.ts.map +1 -0
  234. package/dist/cjs/src/transaction/fixedScript/explainPsbtWasm.js +120 -0
  235. package/dist/cjs/src/transaction/fixedScript/explainTransaction.d.ts +80 -0
  236. package/dist/cjs/src/transaction/fixedScript/explainTransaction.d.ts.map +1 -0
  237. package/dist/cjs/src/transaction/fixedScript/explainTransaction.js +346 -0
  238. package/dist/cjs/src/transaction/fixedScript/index.d.ts +10 -0
  239. package/dist/cjs/src/transaction/fixedScript/index.d.ts.map +1 -0
  240. package/dist/cjs/src/transaction/fixedScript/index.js +34 -0
  241. package/dist/cjs/src/transaction/fixedScript/musig2.d.ts +4 -0
  242. package/dist/cjs/src/transaction/fixedScript/musig2.d.ts.map +1 -0
  243. package/dist/cjs/src/transaction/fixedScript/musig2.js +3 -0
  244. package/dist/cjs/src/transaction/fixedScript/parseOutput.d.ts +28 -0
  245. package/dist/cjs/src/transaction/fixedScript/parseOutput.d.ts.map +1 -0
  246. package/dist/cjs/src/transaction/fixedScript/parseOutput.js +216 -0
  247. package/dist/cjs/src/transaction/fixedScript/parseTransaction.d.ts +8 -0
  248. package/dist/cjs/src/transaction/fixedScript/parseTransaction.d.ts.map +1 -0
  249. package/dist/cjs/src/transaction/fixedScript/parseTransaction.js +227 -0
  250. package/dist/cjs/src/transaction/fixedScript/replayProtection.d.ts +10 -0
  251. package/dist/cjs/src/transaction/fixedScript/replayProtection.d.ts.map +1 -0
  252. package/dist/cjs/src/transaction/fixedScript/replayProtection.js +44 -0
  253. package/dist/cjs/src/transaction/fixedScript/signLegacyTransaction.d.ts +32 -0
  254. package/dist/cjs/src/transaction/fixedScript/signLegacyTransaction.d.ts.map +1 -0
  255. package/dist/cjs/src/transaction/fixedScript/signLegacyTransaction.js +156 -0
  256. package/dist/cjs/src/transaction/fixedScript/signPsbtUtxolib.d.ts +20 -0
  257. package/dist/cjs/src/transaction/fixedScript/signPsbtUtxolib.d.ts.map +1 -0
  258. package/dist/cjs/src/transaction/fixedScript/signPsbtUtxolib.js +157 -0
  259. package/dist/cjs/src/transaction/fixedScript/signPsbtWasm.d.ts +17 -0
  260. package/dist/cjs/src/transaction/fixedScript/signPsbtWasm.d.ts.map +1 -0
  261. package/dist/cjs/src/transaction/fixedScript/signPsbtWasm.js +105 -0
  262. package/dist/cjs/src/transaction/fixedScript/signTransaction.d.ts +27 -0
  263. package/dist/cjs/src/transaction/fixedScript/signTransaction.d.ts.map +1 -0
  264. package/dist/cjs/src/transaction/fixedScript/signTransaction.js +77 -0
  265. package/dist/cjs/src/transaction/fixedScript/verifyTransaction.d.ts +21 -0
  266. package/dist/cjs/src/transaction/fixedScript/verifyTransaction.d.ts.map +1 -0
  267. package/dist/cjs/src/transaction/fixedScript/verifyTransaction.js +199 -0
  268. package/dist/cjs/src/transaction/getPayGoVerificationPubkey.d.ts +9 -0
  269. package/dist/cjs/src/transaction/getPayGoVerificationPubkey.d.ts.map +1 -0
  270. package/dist/cjs/src/transaction/getPayGoVerificationPubkey.js +20 -0
  271. package/dist/cjs/src/transaction/index.d.ts +10 -0
  272. package/dist/cjs/src/transaction/index.d.ts.map +1 -0
  273. package/dist/cjs/src/transaction/index.js +54 -0
  274. package/dist/cjs/src/transaction/outputDifference.d.ts +44 -0
  275. package/dist/cjs/src/transaction/outputDifference.d.ts.map +1 -0
  276. package/dist/cjs/src/transaction/outputDifference.js +51 -0
  277. package/dist/cjs/src/transaction/parseTransaction.d.ts +4 -0
  278. package/dist/cjs/src/transaction/parseTransaction.d.ts.map +1 -0
  279. package/dist/cjs/src/transaction/parseTransaction.js +48 -0
  280. package/dist/cjs/src/transaction/recipient.d.ts +34 -0
  281. package/dist/cjs/src/transaction/recipient.d.ts.map +1 -0
  282. package/dist/cjs/src/transaction/recipient.js +69 -0
  283. package/dist/cjs/src/transaction/signTransaction.d.ts +6 -0
  284. package/dist/cjs/src/transaction/signTransaction.d.ts.map +1 -0
  285. package/dist/cjs/src/transaction/signTransaction.js +114 -0
  286. package/dist/cjs/src/transaction/types.d.ts +50 -0
  287. package/dist/cjs/src/transaction/types.d.ts.map +1 -0
  288. package/dist/cjs/src/transaction/types.js +7 -0
  289. package/dist/cjs/src/transaction/verifyTransaction.d.ts +4 -0
  290. package/dist/cjs/src/transaction/verifyTransaction.d.ts.map +1 -0
  291. package/dist/cjs/src/transaction/verifyTransaction.js +50 -0
  292. package/dist/cjs/src/unspent.d.ts +55 -0
  293. package/dist/cjs/src/unspent.d.ts.map +1 -0
  294. package/dist/cjs/src/unspent.js +12 -0
  295. package/dist/cjs/src/verifyKey.d.ts +21 -0
  296. package/dist/cjs/src/verifyKey.d.ts.map +1 -0
  297. package/dist/cjs/src/verifyKey.js +108 -0
  298. package/dist/cjs/src/wallet.d.ts +15 -0
  299. package/dist/cjs/src/wallet.d.ts.map +1 -0
  300. package/dist/cjs/src/wallet.js +8 -0
  301. package/dist/cjs/src/wasmUtil.d.ts +34 -0
  302. package/dist/cjs/src/wasmUtil.d.ts.map +1 -0
  303. package/dist/cjs/src/wasmUtil.js +95 -0
  304. package/dist/cjs/test/integration/impl/bch/bch.d.ts +2 -0
  305. package/dist/cjs/test/integration/impl/bch/bch.d.ts.map +1 -0
  306. package/dist/cjs/test/integration/impl/bch/bch.js +76 -0
  307. package/dist/cjs/test/unit/address.d.ts +2 -0
  308. package/dist/cjs/test/unit/address.d.ts.map +1 -0
  309. package/dist/cjs/test/unit/address.js +152 -0
  310. package/dist/cjs/test/unit/bip322.d.ts +2 -0
  311. package/dist/cjs/test/unit/bip322.d.ts.map +1 -0
  312. package/dist/cjs/test/unit/bip322.js +410 -0
  313. package/dist/cjs/test/unit/buildSignSendLegacyFormat.d.ts +2 -0
  314. package/dist/cjs/test/unit/buildSignSendLegacyFormat.d.ts.map +1 -0
  315. package/dist/cjs/test/unit/buildSignSendLegacyFormat.js +99 -0
  316. package/dist/cjs/test/unit/coins.d.ts +2 -0
  317. package/dist/cjs/test/unit/coins.d.ts.map +1 -0
  318. package/dist/cjs/test/unit/coins.js +119 -0
  319. package/dist/cjs/test/unit/customChangeWallet.d.ts +2 -0
  320. package/dist/cjs/test/unit/customChangeWallet.d.ts.map +1 -0
  321. package/dist/cjs/test/unit/customChangeWallet.js +215 -0
  322. package/dist/cjs/test/unit/customChangeWalletFixtures.d.ts +2 -0
  323. package/dist/cjs/test/unit/customChangeWalletFixtures.d.ts.map +1 -0
  324. package/dist/cjs/test/unit/customChangeWalletFixtures.js +53 -0
  325. package/dist/cjs/test/unit/customSigner.d.ts +2 -0
  326. package/dist/cjs/test/unit/customSigner.d.ts.map +1 -0
  327. package/dist/cjs/test/unit/customSigner.js +99 -0
  328. package/dist/cjs/test/unit/descriptor/NamedDescriptor.d.ts +2 -0
  329. package/dist/cjs/test/unit/descriptor/NamedDescriptor.d.ts.map +1 -0
  330. package/dist/cjs/test/unit/descriptor/NamedDescriptor.js +51 -0
  331. package/dist/cjs/test/unit/descriptor/builder.d.ts +2 -0
  332. package/dist/cjs/test/unit/descriptor/builder.d.ts.map +1 -0
  333. package/dist/cjs/test/unit/descriptor/builder.js +78 -0
  334. package/dist/cjs/test/unit/descriptor/createWallet/createDescriptors.d.ts +2 -0
  335. package/dist/cjs/test/unit/descriptor/createWallet/createDescriptors.d.ts.map +1 -0
  336. package/dist/cjs/test/unit/descriptor/createWallet/createDescriptors.js +53 -0
  337. package/dist/cjs/test/unit/descriptor/descriptorWallet.d.ts +2 -0
  338. package/dist/cjs/test/unit/descriptor/descriptorWallet.d.ts.map +1 -0
  339. package/dist/cjs/test/unit/descriptor/descriptorWallet.js +62 -0
  340. package/dist/cjs/test/unit/descriptorAddress.d.ts +3 -0
  341. package/dist/cjs/test/unit/descriptorAddress.d.ts.map +1 -0
  342. package/dist/cjs/test/unit/descriptorAddress.js +103 -0
  343. package/dist/cjs/test/unit/explainTransaction.d.ts +2 -0
  344. package/dist/cjs/test/unit/explainTransaction.d.ts.map +1 -0
  345. package/dist/cjs/test/unit/explainTransaction.js +97 -0
  346. package/dist/cjs/test/unit/fixtures/bip322/fixtures.d.ts +15 -0
  347. package/dist/cjs/test/unit/fixtures/bip322/fixtures.d.ts.map +1 -0
  348. package/dist/cjs/test/unit/fixtures/bip322/fixtures.js +51 -0
  349. package/dist/cjs/test/unit/fixtures/psbtHexProof.d.ts +4 -0
  350. package/dist/cjs/test/unit/fixtures/psbtHexProof.d.ts.map +1 -0
  351. package/dist/cjs/test/unit/fixtures/psbtHexProof.js +9 -0
  352. package/dist/cjs/test/unit/impl/bch/unit/bch.d.ts +2 -0
  353. package/dist/cjs/test/unit/impl/bch/unit/bch.d.ts.map +1 -0
  354. package/dist/cjs/test/unit/impl/bch/unit/bch.js +71 -0
  355. package/dist/cjs/test/unit/impl/bcha/unit/index.d.ts +2 -0
  356. package/dist/cjs/test/unit/impl/bcha/unit/index.d.ts.map +1 -0
  357. package/dist/cjs/test/unit/impl/bcha/unit/index.js +41 -0
  358. package/dist/cjs/test/unit/impl/bsv/unit/index.d.ts +2 -0
  359. package/dist/cjs/test/unit/impl/bsv/unit/index.d.ts.map +1 -0
  360. package/dist/cjs/test/unit/impl/bsv/unit/index.js +34 -0
  361. package/dist/cjs/test/unit/impl/btg/unit/index.d.ts +2 -0
  362. package/dist/cjs/test/unit/impl/btg/unit/index.d.ts.map +1 -0
  363. package/dist/cjs/test/unit/impl/btg/unit/index.js +33 -0
  364. package/dist/cjs/test/unit/impl/dash/unit/index.d.ts +2 -0
  365. package/dist/cjs/test/unit/impl/dash/unit/index.d.ts.map +1 -0
  366. package/dist/cjs/test/unit/impl/dash/unit/index.js +34 -0
  367. package/dist/cjs/test/unit/impl/doge/unit/index.d.ts +2 -0
  368. package/dist/cjs/test/unit/impl/doge/unit/index.d.ts.map +1 -0
  369. package/dist/cjs/test/unit/impl/doge/unit/index.js +34 -0
  370. package/dist/cjs/test/unit/impl/zec/unit/index.d.ts +2 -0
  371. package/dist/cjs/test/unit/impl/zec/unit/index.d.ts.map +1 -0
  372. package/dist/cjs/test/unit/impl/zec/unit/index.js +30 -0
  373. package/dist/cjs/test/unit/keySignatures.d.ts +2 -0
  374. package/dist/cjs/test/unit/keySignatures.d.ts.map +1 -0
  375. package/dist/cjs/test/unit/keySignatures.js +54 -0
  376. package/dist/cjs/test/unit/keychains.d.ts +2 -0
  377. package/dist/cjs/test/unit/keychains.d.ts.map +1 -0
  378. package/dist/cjs/test/unit/keychains.js +87 -0
  379. package/dist/cjs/test/unit/offlineVault/halfSigned.d.ts +2 -0
  380. package/dist/cjs/test/unit/offlineVault/halfSigned.d.ts.map +1 -0
  381. package/dist/cjs/test/unit/offlineVault/halfSigned.js +124 -0
  382. package/dist/cjs/test/unit/parseTransaction.d.ts +2 -0
  383. package/dist/cjs/test/unit/parseTransaction.d.ts.map +1 -0
  384. package/dist/cjs/test/unit/parseTransaction.js +125 -0
  385. package/dist/cjs/test/unit/postProcessPrebuild.d.ts +2 -0
  386. package/dist/cjs/test/unit/postProcessPrebuild.d.ts.map +1 -0
  387. package/dist/cjs/test/unit/postProcessPrebuild.js +65 -0
  388. package/dist/cjs/test/unit/prebuildAndSign.d.ts +2 -0
  389. package/dist/cjs/test/unit/prebuildAndSign.d.ts.map +1 -0
  390. package/dist/cjs/test/unit/prebuildAndSign.js +249 -0
  391. package/dist/cjs/test/unit/recovery/backupKeyRecovery.d.ts +2 -0
  392. package/dist/cjs/test/unit/recovery/backupKeyRecovery.d.ts.map +1 -0
  393. package/dist/cjs/test/unit/recovery/backupKeyRecovery.js +136 -0
  394. package/dist/cjs/test/unit/recovery/backupKeyRecoveryUnspentGathering.d.ts +2 -0
  395. package/dist/cjs/test/unit/recovery/backupKeyRecoveryUnspentGathering.d.ts.map +1 -0
  396. package/dist/cjs/test/unit/recovery/backupKeyRecoveryUnspentGathering.js +144 -0
  397. package/dist/cjs/test/unit/recovery/crossChainRecovery.d.ts +2 -0
  398. package/dist/cjs/test/unit/recovery/crossChainRecovery.d.ts.map +1 -0
  399. package/dist/cjs/test/unit/recovery/crossChainRecovery.js +297 -0
  400. package/dist/cjs/test/unit/recovery/formatBackupKeyRecoveryResult.d.ts +2 -0
  401. package/dist/cjs/test/unit/recovery/formatBackupKeyRecoveryResult.d.ts.map +1 -0
  402. package/dist/cjs/test/unit/recovery/formatBackupKeyRecoveryResult.js +189 -0
  403. package/dist/cjs/test/unit/recovery/mock.d.ts +37 -0
  404. package/dist/cjs/test/unit/recovery/mock.d.ts.map +1 -0
  405. package/dist/cjs/test/unit/recovery/mock.js +111 -0
  406. package/dist/cjs/test/unit/signTransaction.d.ts +2 -0
  407. package/dist/cjs/test/unit/signTransaction.d.ts.map +1 -0
  408. package/dist/cjs/test/unit/signTransaction.js +245 -0
  409. package/dist/cjs/test/unit/testSpoofTransaction.d.ts +2 -0
  410. package/dist/cjs/test/unit/testSpoofTransaction.d.ts.map +1 -0
  411. package/dist/cjs/test/unit/testSpoofTransaction.js +114 -0
  412. package/dist/cjs/test/unit/transaction/descriptor/explainPsbt.d.ts +2 -0
  413. package/dist/cjs/test/unit/transaction/descriptor/explainPsbt.d.ts.map +1 -0
  414. package/dist/cjs/test/unit/transaction/descriptor/explainPsbt.js +64 -0
  415. package/dist/cjs/test/unit/transaction/descriptor/fixtures.utils.d.ts +6 -0
  416. package/dist/cjs/test/unit/transaction/descriptor/fixtures.utils.d.ts.map +1 -0
  417. package/dist/cjs/test/unit/transaction/descriptor/fixtures.utils.js +51 -0
  418. package/dist/cjs/test/unit/transaction/descriptor/parse.d.ts +2 -0
  419. package/dist/cjs/test/unit/transaction/descriptor/parse.d.ts.map +1 -0
  420. package/dist/cjs/test/unit/transaction/descriptor/parse.js +138 -0
  421. package/dist/cjs/test/unit/transaction/descriptor/sign.d.ts +2 -0
  422. package/dist/cjs/test/unit/transaction/descriptor/sign.d.ts.map +1 -0
  423. package/dist/cjs/test/unit/transaction/descriptor/sign.js +76 -0
  424. package/dist/cjs/test/unit/transaction/descriptor/validatePolicy.d.ts +2 -0
  425. package/dist/cjs/test/unit/transaction/descriptor/validatePolicy.d.ts.map +1 -0
  426. package/dist/cjs/test/unit/transaction/descriptor/validatePolicy.js +81 -0
  427. package/dist/cjs/test/unit/transaction/fixedScript/explainPsbt.d.ts +2 -0
  428. package/dist/cjs/test/unit/transaction/fixedScript/explainPsbt.d.ts.map +1 -0
  429. package/dist/cjs/test/unit/transaction/fixedScript/explainPsbt.js +193 -0
  430. package/dist/cjs/test/unit/transaction/fixedScript/parsePsbt.d.ts +2 -0
  431. package/dist/cjs/test/unit/transaction/fixedScript/parsePsbt.d.ts.map +1 -0
  432. package/dist/cjs/test/unit/transaction/fixedScript/parsePsbt.js +287 -0
  433. package/dist/cjs/test/unit/transaction/fixedScript/replayProtection.d.ts +2 -0
  434. package/dist/cjs/test/unit/transaction/fixedScript/replayProtection.d.ts.map +1 -0
  435. package/dist/cjs/test/unit/transaction/fixedScript/replayProtection.js +60 -0
  436. package/dist/cjs/test/unit/transaction/fixedScript/signPsbt.d.ts +2 -0
  437. package/dist/cjs/test/unit/transaction/fixedScript/signPsbt.d.ts.map +1 -0
  438. package/dist/cjs/test/unit/transaction/fixedScript/signPsbt.js +154 -0
  439. package/dist/cjs/test/unit/transaction/outputDifference.d.ts +2 -0
  440. package/dist/cjs/test/unit/transaction/outputDifference.d.ts.map +1 -0
  441. package/dist/cjs/test/unit/transaction/outputDifference.js +117 -0
  442. package/dist/cjs/test/unit/transaction.d.ts +2 -0
  443. package/dist/cjs/test/unit/transaction.d.ts.map +1 -0
  444. package/dist/cjs/test/unit/transaction.js +308 -0
  445. package/dist/cjs/test/unit/txFormat.d.ts +30 -0
  446. package/dist/cjs/test/unit/txFormat.d.ts.map +1 -0
  447. package/dist/cjs/test/unit/txFormat.js +161 -0
  448. package/dist/cjs/test/unit/util/address.d.ts +13 -0
  449. package/dist/cjs/test/unit/util/address.d.ts.map +1 -0
  450. package/dist/cjs/test/unit/util/address.js +15 -0
  451. package/dist/cjs/test/unit/util/assert.d.ts +3 -0
  452. package/dist/cjs/test/unit/util/assert.d.ts.map +1 -0
  453. package/dist/cjs/test/unit/util/assert.js +24 -0
  454. package/dist/cjs/test/unit/util/fixtures.d.ts +13 -0
  455. package/dist/cjs/test/unit/util/fixtures.d.ts.map +1 -0
  456. package/dist/cjs/test/unit/util/fixtures.js +105 -0
  457. package/dist/cjs/test/unit/util/index.d.ts +11 -0
  458. package/dist/cjs/test/unit/util/index.d.ts.map +1 -0
  459. package/dist/cjs/test/unit/util/index.js +27 -0
  460. package/dist/cjs/test/unit/util/keychains.d.ts +55 -0
  461. package/dist/cjs/test/unit/util/keychains.d.ts.map +1 -0
  462. package/dist/cjs/test/unit/util/keychains.js +122 -0
  463. package/dist/cjs/test/unit/util/nockBitGo.d.ts +10 -0
  464. package/dist/cjs/test/unit/util/nockBitGo.d.ts.map +1 -0
  465. package/dist/cjs/test/unit/util/nockBitGo.js +27 -0
  466. package/dist/cjs/test/unit/util/nockIndexerAPI.d.ts +8 -0
  467. package/dist/cjs/test/unit/util/nockIndexerAPI.d.ts.map +1 -0
  468. package/dist/cjs/test/unit/util/nockIndexerAPI.js +23 -0
  469. package/dist/cjs/test/unit/util/psbt.d.ts +19 -0
  470. package/dist/cjs/test/unit/util/psbt.d.ts.map +1 -0
  471. package/dist/cjs/test/unit/util/psbt.js +21 -0
  472. package/dist/cjs/test/unit/util/transaction.d.ts +28 -0
  473. package/dist/cjs/test/unit/util/transaction.d.ts.map +1 -0
  474. package/dist/cjs/test/unit/util/transaction.js +131 -0
  475. package/dist/cjs/test/unit/util/unspents.d.ts +71 -0
  476. package/dist/cjs/test/unit/util/unspents.d.ts.map +1 -0
  477. package/dist/cjs/test/unit/util/unspents.js +224 -0
  478. package/dist/cjs/test/unit/util/utxoCoins.d.ts +30 -0
  479. package/dist/cjs/test/unit/util/utxoCoins.d.ts.map +1 -0
  480. package/dist/cjs/test/unit/util/utxoCoins.js +175 -0
  481. package/dist/cjs/test/unit/util/wallet.d.ts +4 -0
  482. package/dist/cjs/test/unit/util/wallet.d.ts.map +1 -0
  483. package/dist/cjs/test/unit/util/wallet.js +9 -0
  484. package/dist/cjs/test/unit/verifyTransaction.d.ts +2 -0
  485. package/dist/cjs/test/unit/verifyTransaction.d.ts.map +1 -0
  486. package/dist/cjs/test/unit/verifyTransaction.js +327 -0
  487. package/dist/cjs/test/unit/wallet.d.ts +2 -0
  488. package/dist/cjs/test/unit/wallet.d.ts.map +1 -0
  489. package/dist/cjs/test/unit/wallet.js +251 -0
  490. package/dist/cjs/tsconfig.tsbuildinfo +1 -0
  491. package/dist/esm/abstractUtxoCoin.d.ts +458 -0
  492. package/dist/esm/abstractUtxoCoin.d.ts.map +1 -0
  493. package/dist/esm/abstractUtxoCoin.js +655 -0
  494. package/dist/esm/address/fixedScript.d.ts +44 -0
  495. package/dist/esm/address/fixedScript.d.ts.map +1 -0
  496. package/dist/esm/address/fixedScript.js +97 -0
  497. package/dist/esm/address/index.d.ts +2 -0
  498. package/dist/esm/address/index.d.ts.map +1 -0
  499. package/dist/esm/address/index.js +2 -0
  500. package/dist/esm/config.d.ts +9 -0
  501. package/dist/{src → esm}/config.d.ts.map +1 -1
  502. package/dist/esm/config.js +11 -0
  503. package/dist/esm/descriptor/NamedDescriptor.d.ts +19 -0
  504. package/dist/esm/descriptor/NamedDescriptor.d.ts.map +1 -0
  505. package/dist/esm/descriptor/NamedDescriptor.js +37 -0
  506. package/dist/esm/descriptor/assertDescriptorWalletAddress.d.ts +5 -0
  507. package/dist/esm/descriptor/assertDescriptorWalletAddress.d.ts.map +1 -0
  508. package/dist/esm/descriptor/assertDescriptorWalletAddress.js +27 -0
  509. package/dist/esm/descriptor/builder/builder.d.ts +12 -0
  510. package/dist/esm/descriptor/builder/builder.d.ts.map +1 -0
  511. package/dist/esm/descriptor/builder/builder.js +34 -0
  512. package/dist/esm/descriptor/builder/index.d.ts +3 -0
  513. package/dist/esm/descriptor/builder/index.d.ts.map +1 -0
  514. package/dist/esm/descriptor/builder/index.js +3 -0
  515. package/dist/esm/descriptor/builder/parse.d.ts +5 -0
  516. package/dist/esm/descriptor/builder/parse.d.ts.map +1 -0
  517. package/dist/esm/descriptor/builder/parse.js +112 -0
  518. package/dist/esm/descriptor/createWallet/createDescriptorWallet.d.ts +20 -0
  519. package/dist/esm/descriptor/createWallet/createDescriptorWallet.d.ts.map +1 -0
  520. package/dist/esm/descriptor/createWallet/createDescriptorWallet.js +37 -0
  521. package/dist/esm/descriptor/createWallet/createDescriptors.d.ts +12 -0
  522. package/dist/esm/descriptor/createWallet/createDescriptors.d.ts.map +1 -0
  523. package/dist/esm/descriptor/createWallet/createDescriptors.js +29 -0
  524. package/dist/esm/descriptor/createWallet/index.d.ts +3 -0
  525. package/dist/esm/descriptor/createWallet/index.d.ts.map +1 -0
  526. package/dist/esm/descriptor/createWallet/index.js +3 -0
  527. package/dist/esm/descriptor/descriptorWallet.d.ts +19 -0
  528. package/dist/esm/descriptor/descriptorWallet.d.ts.map +1 -0
  529. package/dist/esm/descriptor/descriptorWallet.js +16 -0
  530. package/dist/esm/descriptor/index.d.ts +8 -0
  531. package/dist/esm/descriptor/index.d.ts.map +1 -0
  532. package/dist/esm/descriptor/index.js +7 -0
  533. package/dist/esm/descriptor/validatePolicy.d.ts +22 -0
  534. package/dist/esm/descriptor/validatePolicy.d.ts.map +1 -0
  535. package/dist/esm/descriptor/validatePolicy.js +80 -0
  536. package/dist/esm/impl/bch/bch.d.ts +22 -0
  537. package/dist/esm/impl/bch/bch.d.ts.map +1 -0
  538. package/dist/esm/impl/bch/bch.js +39 -0
  539. package/dist/esm/impl/bch/index.d.ts +3 -0
  540. package/dist/esm/impl/bch/index.d.ts.map +1 -0
  541. package/dist/esm/impl/bch/index.js +3 -0
  542. package/dist/esm/impl/bch/tbch.d.ts +12 -0
  543. package/dist/esm/impl/bch/tbch.d.ts.map +1 -0
  544. package/dist/esm/impl/bch/tbch.js +11 -0
  545. package/dist/esm/impl/bcha/bcha.d.ts +9 -0
  546. package/dist/esm/impl/bcha/bcha.d.ts.map +1 -0
  547. package/dist/esm/impl/bcha/bcha.js +11 -0
  548. package/dist/esm/impl/bcha/index.d.ts +3 -0
  549. package/dist/esm/impl/bcha/index.d.ts.map +1 -0
  550. package/dist/esm/impl/bcha/index.js +3 -0
  551. package/dist/esm/impl/bcha/tbcha.d.ts +12 -0
  552. package/dist/esm/impl/bcha/tbcha.d.ts.map +1 -0
  553. package/dist/esm/impl/bcha/tbcha.js +11 -0
  554. package/dist/esm/impl/bsv/bsv.d.ts +9 -0
  555. package/dist/esm/impl/bsv/bsv.d.ts.map +1 -0
  556. package/dist/esm/impl/bsv/bsv.js +11 -0
  557. package/dist/esm/impl/bsv/index.d.ts +3 -0
  558. package/dist/esm/impl/bsv/index.d.ts.map +1 -0
  559. package/dist/esm/impl/bsv/index.js +3 -0
  560. package/dist/esm/impl/bsv/tbsv.d.ts +12 -0
  561. package/dist/esm/impl/bsv/tbsv.d.ts.map +1 -0
  562. package/dist/esm/impl/bsv/tbsv.js +11 -0
  563. package/dist/esm/impl/btc/btc.d.ts +15 -0
  564. package/dist/esm/impl/btc/btc.d.ts.map +1 -0
  565. package/dist/esm/impl/btc/btc.js +18 -0
  566. package/dist/esm/impl/btc/index.d.ts +7 -0
  567. package/dist/esm/impl/btc/index.d.ts.map +1 -0
  568. package/dist/esm/impl/btc/index.js +7 -0
  569. package/dist/esm/impl/btc/inscriptionBuilder.d.ts +61 -0
  570. package/dist/esm/impl/btc/inscriptionBuilder.d.ts.map +1 -0
  571. package/dist/esm/impl/btc/inscriptionBuilder.js +164 -0
  572. package/dist/esm/impl/btc/tbtc.d.ts +12 -0
  573. package/dist/esm/impl/btc/tbtc.d.ts.map +1 -0
  574. package/dist/esm/impl/btc/tbtc.js +11 -0
  575. package/dist/esm/impl/btc/tbtc4.d.ts +12 -0
  576. package/dist/esm/impl/btc/tbtc4.d.ts.map +1 -0
  577. package/dist/esm/impl/btc/tbtc4.js +11 -0
  578. package/dist/esm/impl/btc/tbtcbgsig.d.ts +12 -0
  579. package/dist/esm/impl/btc/tbtcbgsig.d.ts.map +1 -0
  580. package/dist/esm/impl/btc/tbtcbgsig.js +11 -0
  581. package/dist/esm/impl/btc/tbtcsig.d.ts +12 -0
  582. package/dist/esm/impl/btc/tbtcsig.d.ts.map +1 -0
  583. package/dist/esm/impl/btc/tbtcsig.js +11 -0
  584. package/dist/esm/impl/btg/btg.d.ts +9 -0
  585. package/dist/esm/impl/btg/btg.d.ts.map +1 -0
  586. package/dist/esm/impl/btg/btg.js +11 -0
  587. package/dist/esm/impl/btg/index.d.ts +2 -0
  588. package/dist/esm/impl/btg/index.d.ts.map +1 -0
  589. package/dist/esm/impl/btg/index.js +2 -0
  590. package/dist/esm/impl/dash/dash.d.ts +9 -0
  591. package/dist/esm/impl/dash/dash.d.ts.map +1 -0
  592. package/dist/esm/impl/dash/dash.js +11 -0
  593. package/dist/esm/impl/dash/index.d.ts +3 -0
  594. package/dist/esm/impl/dash/index.d.ts.map +1 -0
  595. package/dist/esm/impl/dash/index.js +3 -0
  596. package/dist/esm/impl/dash/tdash.d.ts +12 -0
  597. package/dist/esm/impl/dash/tdash.d.ts.map +1 -0
  598. package/dist/esm/impl/dash/tdash.js +11 -0
  599. package/dist/esm/impl/doge/doge.d.ts +35 -0
  600. package/dist/esm/impl/doge/doge.d.ts.map +1 -0
  601. package/dist/esm/impl/doge/doge.js +75 -0
  602. package/dist/esm/impl/doge/index.d.ts +3 -0
  603. package/dist/esm/impl/doge/index.d.ts.map +1 -0
  604. package/dist/esm/impl/doge/index.js +3 -0
  605. package/dist/esm/impl/doge/tdoge.d.ts +12 -0
  606. package/dist/esm/impl/doge/tdoge.d.ts.map +1 -0
  607. package/dist/esm/impl/doge/tdoge.js +11 -0
  608. package/dist/esm/impl/index.d.ts +10 -0
  609. package/dist/esm/impl/index.d.ts.map +1 -0
  610. package/dist/esm/impl/index.js +10 -0
  611. package/dist/esm/impl/ltc/index.d.ts +3 -0
  612. package/dist/esm/impl/ltc/index.d.ts.map +1 -0
  613. package/dist/esm/impl/ltc/index.js +3 -0
  614. package/dist/esm/impl/ltc/ltc.d.ts +8 -0
  615. package/dist/esm/impl/ltc/ltc.d.ts.map +1 -0
  616. package/dist/esm/impl/ltc/ltc.js +11 -0
  617. package/dist/esm/impl/ltc/tltc.d.ts +8 -0
  618. package/dist/esm/impl/ltc/tltc.d.ts.map +1 -0
  619. package/dist/esm/impl/ltc/tltc.js +11 -0
  620. package/dist/esm/impl/zec/index.d.ts +3 -0
  621. package/dist/esm/impl/zec/index.d.ts.map +1 -0
  622. package/dist/esm/impl/zec/index.js +3 -0
  623. package/dist/esm/impl/zec/tzec.d.ts +9 -0
  624. package/dist/esm/impl/zec/tzec.d.ts.map +1 -0
  625. package/dist/esm/impl/zec/tzec.js +11 -0
  626. package/dist/esm/impl/zec/zec.d.ts +12 -0
  627. package/dist/esm/impl/zec/zec.d.ts.map +1 -0
  628. package/dist/esm/impl/zec/zec.js +11 -0
  629. package/dist/esm/index.d.ts +23 -0
  630. package/dist/esm/index.d.ts.map +1 -0
  631. package/dist/esm/index.js +23 -0
  632. package/dist/esm/keychains.d.ts +56 -0
  633. package/dist/esm/keychains.d.ts.map +1 -0
  634. package/dist/esm/keychains.js +99 -0
  635. package/dist/esm/names.d.ts +36 -0
  636. package/dist/esm/names.d.ts.map +1 -0
  637. package/dist/esm/names.js +184 -0
  638. package/dist/esm/offlineVault/OfflineVaultHalfSigned.d.ts +9 -0
  639. package/dist/esm/offlineVault/OfflineVaultHalfSigned.d.ts.map +1 -0
  640. package/dist/esm/offlineVault/OfflineVaultHalfSigned.js +20 -0
  641. package/dist/esm/offlineVault/OfflineVaultSignable.d.ts +46 -0
  642. package/dist/esm/offlineVault/OfflineVaultSignable.d.ts.map +1 -0
  643. package/dist/esm/offlineVault/OfflineVaultSignable.js +18 -0
  644. package/dist/esm/offlineVault/TransactionExplanation.d.ts +16 -0
  645. package/dist/esm/offlineVault/TransactionExplanation.d.ts.map +1 -0
  646. package/dist/esm/offlineVault/TransactionExplanation.js +12 -0
  647. package/dist/esm/offlineVault/descriptor/index.d.ts +2 -0
  648. package/dist/esm/offlineVault/descriptor/index.d.ts.map +1 -0
  649. package/dist/esm/offlineVault/descriptor/index.js +2 -0
  650. package/dist/esm/offlineVault/descriptor/transaction.d.ts +39 -0
  651. package/dist/esm/offlineVault/descriptor/transaction.d.ts.map +1 -0
  652. package/dist/esm/offlineVault/descriptor/transaction.js +41 -0
  653. package/dist/esm/offlineVault/index.d.ts +6 -0
  654. package/dist/esm/offlineVault/index.d.ts.map +1 -0
  655. package/dist/esm/offlineVault/index.js +4 -0
  656. package/dist/esm/recovery/RecoveryProvider.d.ts +20 -0
  657. package/dist/esm/recovery/RecoveryProvider.d.ts.map +1 -0
  658. package/dist/esm/recovery/RecoveryProvider.js +19 -0
  659. package/dist/esm/recovery/backupKeyRecovery.d.ts +158 -0
  660. package/dist/esm/recovery/backupKeyRecovery.d.ts.map +1 -0
  661. package/dist/esm/recovery/backupKeyRecovery.js +400 -0
  662. package/dist/esm/recovery/baseApi.d.ts +24 -0
  663. package/dist/esm/recovery/baseApi.d.ts.map +1 -0
  664. package/dist/esm/recovery/baseApi.js +64 -0
  665. package/dist/esm/recovery/coingeckoApi.d.ts +6 -0
  666. package/dist/esm/recovery/coingeckoApi.d.ts.map +1 -0
  667. package/dist/esm/recovery/coingeckoApi.js +40 -0
  668. package/dist/esm/recovery/crossChainRecovery.d.ts +97 -0
  669. package/dist/esm/recovery/crossChainRecovery.d.ts.map +1 -0
  670. package/dist/esm/recovery/crossChainRecovery.js +292 -0
  671. package/dist/esm/recovery/index.d.ts +7 -0
  672. package/dist/{src → esm}/recovery/index.d.ts.map +1 -1
  673. package/dist/esm/recovery/index.js +7 -0
  674. package/dist/esm/recovery/mempoolApi.d.ts +7 -0
  675. package/dist/{src → esm}/recovery/mempoolApi.d.ts.map +1 -1
  676. package/dist/esm/recovery/mempoolApi.js +29 -0
  677. package/dist/esm/recovery/psbt.d.ts +62 -0
  678. package/dist/esm/recovery/psbt.d.ts.map +1 -0
  679. package/dist/esm/recovery/psbt.js +145 -0
  680. package/dist/esm/tnumber.d.ts +4 -0
  681. package/dist/esm/tnumber.d.ts.map +1 -0
  682. package/dist/esm/tnumber.js +9 -0
  683. package/dist/esm/transaction/bip322.d.ts +27 -0
  684. package/dist/esm/transaction/bip322.d.ts.map +1 -0
  685. package/dist/esm/transaction/bip322.js +100 -0
  686. package/dist/esm/transaction/common/verifyPayGoAmount.d.ts +1 -0
  687. package/dist/esm/transaction/common/verifyPayGoAmount.d.ts.map +1 -0
  688. package/dist/esm/transaction/common/verifyPayGoAmount.js +1 -0
  689. package/dist/esm/transaction/decode.d.ts +13 -0
  690. package/dist/esm/transaction/decode.d.ts.map +1 -0
  691. package/dist/esm/transaction/decode.js +49 -0
  692. package/dist/esm/transaction/descriptor/explainPsbt.d.ts +5 -0
  693. package/dist/esm/transaction/descriptor/explainPsbt.d.ts.map +1 -0
  694. package/dist/esm/transaction/descriptor/explainPsbt.js +42 -0
  695. package/dist/esm/transaction/descriptor/index.d.ts +7 -0
  696. package/dist/esm/transaction/descriptor/index.d.ts.map +1 -0
  697. package/dist/esm/transaction/descriptor/index.js +6 -0
  698. package/dist/esm/transaction/descriptor/parse.d.ts +19 -0
  699. package/dist/esm/transaction/descriptor/parse.d.ts.map +1 -0
  700. package/dist/esm/transaction/descriptor/parse.js +86 -0
  701. package/dist/esm/transaction/descriptor/parseToAmountType.d.ts +14 -0
  702. package/dist/esm/transaction/descriptor/parseToAmountType.d.ts.map +1 -0
  703. package/dist/esm/transaction/descriptor/parseToAmountType.js +55 -0
  704. package/dist/esm/transaction/descriptor/recipient.d.ts +5 -0
  705. package/dist/esm/transaction/descriptor/recipient.d.ts.map +1 -0
  706. package/dist/esm/transaction/descriptor/recipient.js +2 -0
  707. package/dist/esm/transaction/descriptor/signPsbt.d.ts +24 -0
  708. package/dist/esm/transaction/descriptor/signPsbt.d.ts.map +1 -0
  709. package/dist/esm/transaction/descriptor/signPsbt.js +39 -0
  710. package/dist/esm/transaction/descriptor/verifyTransaction.d.ts +37 -0
  711. package/dist/esm/transaction/descriptor/verifyTransaction.d.ts.map +1 -0
  712. package/dist/esm/transaction/descriptor/verifyTransaction.js +71 -0
  713. package/dist/esm/transaction/explainTransaction.d.ts +21 -0
  714. package/dist/esm/transaction/explainTransaction.d.ts.map +1 -0
  715. package/dist/esm/transaction/explainTransaction.js +54 -0
  716. package/dist/esm/transaction/fetchInputs.d.ts +27 -0
  717. package/dist/esm/transaction/fetchInputs.d.ts.map +1 -0
  718. package/dist/esm/transaction/fetchInputs.js +74 -0
  719. package/dist/esm/transaction/fixedScript/SigningError.d.ts +24 -0
  720. package/dist/esm/transaction/fixedScript/SigningError.d.ts.map +1 -0
  721. package/dist/esm/transaction/fixedScript/SigningError.js +26 -0
  722. package/dist/esm/transaction/fixedScript/explainPsbtWasm.d.ts +41 -0
  723. package/dist/esm/transaction/fixedScript/explainPsbtWasm.d.ts.map +1 -0
  724. package/dist/esm/transaction/fixedScript/explainPsbtWasm.js +115 -0
  725. package/dist/esm/transaction/fixedScript/explainTransaction.d.ts +80 -0
  726. package/dist/esm/transaction/fixedScript/explainTransaction.d.ts.map +1 -0
  727. package/dist/esm/transaction/fixedScript/explainTransaction.js +309 -0
  728. package/dist/esm/transaction/fixedScript/index.d.ts +10 -0
  729. package/dist/esm/transaction/fixedScript/index.d.ts.map +1 -0
  730. package/dist/esm/transaction/fixedScript/index.js +9 -0
  731. package/dist/esm/transaction/fixedScript/musig2.d.ts +4 -0
  732. package/dist/esm/transaction/fixedScript/musig2.d.ts.map +1 -0
  733. package/dist/esm/transaction/fixedScript/musig2.js +2 -0
  734. package/dist/esm/transaction/fixedScript/parseOutput.d.ts +28 -0
  735. package/dist/esm/transaction/fixedScript/parseOutput.d.ts.map +1 -0
  736. package/dist/esm/transaction/fixedScript/parseOutput.js +209 -0
  737. package/dist/esm/transaction/fixedScript/parseTransaction.d.ts +8 -0
  738. package/dist/esm/transaction/fixedScript/parseTransaction.d.ts.map +1 -0
  739. package/dist/esm/transaction/fixedScript/parseTransaction.js +221 -0
  740. package/dist/esm/transaction/fixedScript/replayProtection.d.ts +10 -0
  741. package/dist/esm/transaction/fixedScript/replayProtection.d.ts.map +1 -0
  742. package/dist/esm/transaction/fixedScript/replayProtection.js +38 -0
  743. package/dist/esm/transaction/fixedScript/signLegacyTransaction.d.ts +32 -0
  744. package/dist/esm/transaction/fixedScript/signLegacyTransaction.d.ts.map +1 -0
  745. package/dist/esm/transaction/fixedScript/signLegacyTransaction.js +116 -0
  746. package/dist/esm/transaction/fixedScript/signPsbtUtxolib.d.ts +20 -0
  747. package/dist/esm/transaction/fixedScript/signPsbtUtxolib.d.ts.map +1 -0
  748. package/dist/esm/transaction/fixedScript/signPsbtUtxolib.js +117 -0
  749. package/dist/esm/transaction/fixedScript/signPsbtWasm.d.ts +17 -0
  750. package/dist/esm/transaction/fixedScript/signPsbtWasm.d.ts.map +1 -0
  751. package/dist/esm/transaction/fixedScript/signPsbtWasm.js +98 -0
  752. package/dist/esm/transaction/fixedScript/signTransaction.d.ts +27 -0
  753. package/dist/esm/transaction/fixedScript/signTransaction.d.ts.map +1 -0
  754. package/dist/esm/transaction/fixedScript/signTransaction.js +70 -0
  755. package/dist/esm/transaction/fixedScript/verifyTransaction.d.ts +21 -0
  756. package/dist/esm/transaction/fixedScript/verifyTransaction.d.ts.map +1 -0
  757. package/dist/esm/transaction/fixedScript/verifyTransaction.js +160 -0
  758. package/dist/esm/transaction/getPayGoVerificationPubkey.d.ts +9 -0
  759. package/dist/esm/transaction/getPayGoVerificationPubkey.d.ts.map +1 -0
  760. package/dist/esm/transaction/getPayGoVerificationPubkey.js +17 -0
  761. package/dist/esm/transaction/index.d.ts +10 -0
  762. package/dist/esm/transaction/index.d.ts.map +1 -0
  763. package/dist/esm/transaction/index.js +10 -0
  764. package/dist/esm/transaction/outputDifference.d.ts +44 -0
  765. package/dist/esm/transaction/outputDifference.d.ts.map +1 -0
  766. package/dist/esm/transaction/outputDifference.js +45 -0
  767. package/dist/esm/transaction/parseTransaction.d.ts +4 -0
  768. package/dist/esm/transaction/parseTransaction.d.ts.map +1 -0
  769. package/dist/esm/transaction/parseTransaction.js +12 -0
  770. package/dist/esm/transaction/recipient.d.ts +34 -0
  771. package/dist/esm/transaction/recipient.d.ts.map +1 -0
  772. package/dist/esm/transaction/recipient.js +61 -0
  773. package/dist/esm/transaction/signTransaction.d.ts +6 -0
  774. package/dist/esm/transaction/signTransaction.d.ts.map +1 -0
  775. package/dist/esm/transaction/signTransaction.js +75 -0
  776. package/dist/esm/transaction/types.d.ts +50 -0
  777. package/dist/esm/transaction/types.d.ts.map +1 -0
  778. package/dist/esm/transaction/types.js +4 -0
  779. package/dist/esm/transaction/verifyTransaction.d.ts +4 -0
  780. package/dist/esm/transaction/verifyTransaction.d.ts.map +1 -0
  781. package/dist/esm/transaction/verifyTransaction.js +14 -0
  782. package/dist/esm/unspent.d.ts +55 -0
  783. package/dist/esm/unspent.d.ts.map +1 -0
  784. package/dist/esm/unspent.js +8 -0
  785. package/dist/esm/verifyKey.d.ts +21 -0
  786. package/dist/esm/verifyKey.d.ts.map +1 -0
  787. package/dist/esm/verifyKey.js +100 -0
  788. package/dist/esm/wallet.d.ts +15 -0
  789. package/dist/esm/wallet.d.ts.map +1 -0
  790. package/dist/esm/wallet.js +5 -0
  791. package/dist/esm/wasmUtil.d.ts +34 -0
  792. package/dist/esm/wasmUtil.d.ts.map +1 -0
  793. package/dist/esm/wasmUtil.js +54 -0
  794. package/package.json +47 -19
  795. package/.eslintignore +0 -5
  796. package/CHANGELOG.md +0 -106
  797. package/dist/src/abstractUtxoCoin.d.ts +0 -383
  798. package/dist/src/abstractUtxoCoin.d.ts.map +0 -1
  799. package/dist/src/abstractUtxoCoin.js +0 -960
  800. package/dist/src/config.js +0 -13
  801. package/dist/src/index.d.ts +0 -6
  802. package/dist/src/index.d.ts.map +0 -1
  803. package/dist/src/index.js +0 -18
  804. package/dist/src/parseOutput.d.ts +0 -22
  805. package/dist/src/parseOutput.d.ts.map +0 -1
  806. package/dist/src/parseOutput.js +0 -169
  807. package/dist/src/recovery/RecoveryProvider.d.ts.map +0 -1
  808. package/dist/src/recovery/RecoveryProvider.js +0 -24
  809. package/dist/src/recovery/backupKeyRecovery.d.ts +0 -59
  810. package/dist/src/recovery/backupKeyRecovery.d.ts.map +0 -1
  811. package/dist/src/recovery/backupKeyRecovery.js +0 -290
  812. package/dist/src/recovery/baseApi.d.ts.map +0 -1
  813. package/dist/src/recovery/baseApi.js +0 -73
  814. package/dist/src/recovery/coingeckoApi.d.ts.map +0 -1
  815. package/dist/src/recovery/coingeckoApi.js +0 -47
  816. package/dist/src/recovery/crossChainRecovery.d.ts.map +0 -1
  817. package/dist/src/recovery/crossChainRecovery.js +0 -338
  818. package/dist/src/recovery/mempoolApi.js +0 -33
  819. package/dist/src/recovery/smartbitApi.d.ts +0 -11
  820. package/dist/src/recovery/smartbitApi.d.ts.map +0 -1
  821. package/dist/src/recovery/smartbitApi.js +0 -36
  822. package/dist/src/replayProtection.d.ts +0 -4
  823. package/dist/src/replayProtection.d.ts.map +0 -1
  824. package/dist/src/replayProtection.js +0 -21
  825. package/dist/src/sign.d.ts +0 -31
  826. package/dist/src/sign.d.ts.map +0 -1
  827. package/dist/src/sign.js +0 -104
  828. package/dist/tsconfig.tsbuildinfo +0 -7600
  829. /package/dist/{src → cjs/src}/recovery/mempoolApi.d.ts +0 -0
package/README.md CHANGED
@@ -1 +1,77 @@
1
1
  # BitGo abstract-utxo
2
+
3
+ This module provides the foundational `AbstractUtxoCoin` class and concrete implementations for Bitcoin and Bitcoin-like UTXO-based cryptocurrencies within the BitGo platform.
4
+
5
+ ## Overview
6
+
7
+ The `AbstractUtxoCoin` class serves as the base implementation for all UTXO-based coins, providing common functionality for transaction building, signing, verification, and recovery operations. Each supported cryptocurrency extends this class to provide coin-specific behavior while leveraging the shared UTXO infrastructure.
8
+
9
+ ## Supported Coins
10
+
11
+ Concrete implementations are provided in the `src/impl/` directory:
12
+
13
+ - **btc/** - Bitcoin (BTC) and Bitcoin testnet variants
14
+ - **bch/** - Bitcoin Cash (BCH)
15
+ - **bcha/** - Bitcoin Cash ABC (BCHA)
16
+ - **bsv/** - Bitcoin SV (BSV)
17
+ - **btg/** - Bitcoin Gold (BTG)
18
+ - **ltc/** - Litecoin (LTC)
19
+ - **dash/** - Dash (DASH)
20
+ - **doge/** - Dogecoin (DOGE)
21
+ - **zec/** - Zcash (ZEC)
22
+
23
+ ## Key Features
24
+
25
+ ### Transaction Operations
26
+ - **Building & Signing**: Support for both legacy and PSBT transaction formats
27
+ - **Multi-signature**: 2-of-3 multisig with various script types (P2SH, P2WSH, P2SH-P2WSH, P2TR-MuSig2)
28
+ - **Verification**: Comprehensive transaction intent verification before signing
29
+ - **Explanation**: Decode and explain transaction details (inputs, outputs, fees)
30
+
31
+ ### Wallet Types
32
+ - **Fixed Script Wallets**: Traditional HD wallets with deterministic address generation
33
+ - **Descriptor Wallets**: Modern wallet format using output script descriptors
34
+ - **Distributed Custody**: Support for enterprise custody configurations
35
+
36
+ ### Address Management
37
+ - Address validation and derivation verification
38
+ - Support for multiple address formats (base58, bech32, cashaddr for BCH)
39
+ - Chain/index-based address generation for fixed script wallets
40
+
41
+ ### Recovery Operations
42
+ - **Backup Key Recovery**: Recover funds using backup key when BitGo is unavailable
43
+ - **Cross-Chain Recovery**: Recover coins sent to wrong chain (e.g., BTC sent to LTC address)
44
+ - **V1 Wallet Recovery**: Support for legacy V1 wallet recovery
45
+
46
+ ### Advanced Features
47
+ - BIP322 message signing support
48
+ - MuSig2 for Taproot multisig
49
+ - Replay protection for chain splits
50
+ - Custom change address handling
51
+ - RBF (Replace-by-Fee) transaction support
52
+
53
+ ## Development Setup
54
+
55
+ ### VSCode Configuration
56
+
57
+ For an optimal development experience in VSCode, configure the Mocha Test Explorer with the following settings in `.vscode/settings.json`:
58
+
59
+ ```json
60
+ {
61
+ "mochaExplorer.files": "test/**/*.ts",
62
+ "mochaExplorer.nodeArgv": ["--import", "tsx"],
63
+ "mochaExplorer.logpanel": true
64
+ }
65
+ ```
66
+
67
+ This configuration enables:
68
+ - **Test Discovery**: Automatically finds all TypeScript test files in the `test/` directory
69
+ - **TypeScript Support**: Uses `tsx` for running TypeScript tests without compilation
70
+ - **Log Panel**: Displays test output for easier debugging
71
+
72
+ ### Running Tests
73
+
74
+ With the Mocha Test Explorer configured, you can:
75
+ - View and run individual tests or test suites from the VSCode Test Explorer panel
76
+ - Set breakpoints and debug tests directly in the editor
77
+ - Monitor test output in the integrated log panel
@@ -0,0 +1,458 @@
1
+ import * as utxolib from '@bitgo-beta/utxo-lib';
2
+ import { fixedScriptWallet } from '@bitgo/wasm-utxo';
3
+ import { bitgo } from '@bitgo-beta/utxo-lib';
4
+ import { AddressCoinSpecific, BaseCoin, BitGoBase, CreateAddressFormat, ExtraPrebuildParamsOptions, HalfSignedUtxoTransaction, IBaseCoin, IRequestTracer, IWallet, KeychainsTriplet, MultisigType, ParseTransactionOptions as BaseParseTransactionOptions, PrecreateBitGoOptions, PresignTransactionOptions, RequestTracer, SignedTransaction, SignTransactionOptions as BaseSignTransactionOptions, SupplementGenerateWalletOptions, TransactionParams as BaseTransactionParams, TransactionPrebuild as BaseTransactionPrebuild, Triple, VerificationOptions, VerifyAddressOptions as BaseVerifyAddressOptions, VerifyTransactionOptions as BaseVerifyTransactionOptions, Wallet } from '@bitgo-beta/sdk-core';
5
+ import { backupKeyRecovery, CrossChainRecoverySigned, CrossChainRecoveryUnsigned, RecoverParams, RecoveryProvider, v1BackupKeyRecovery, V1RecoverParams, v1Sweep, V1SweepParams } from './recovery';
6
+ import { DecodedTransaction } from './transaction';
7
+ import type { TransactionExplanation } from './transaction/fixedScript/explainTransaction';
8
+ import { Musig2Participant } from './transaction/fixedScript/musig2';
9
+ import { UtxoCoinName, UtxoCoinNameMainnet } from './names';
10
+ import { ParsedTransaction, SdkBackend } from './transaction/types';
11
+ import { UtxoKeychain } from './keychains';
12
+ import { UtxoWallet } from './wallet';
13
+ import type { Unspent } from './unspent';
14
+ import ScriptType2Of3 = utxolib.bitgo.outputScripts.ScriptType2Of3;
15
+ export type TxFormat = 'legacy' | 'psbt' | 'psbt-lite';
16
+ export declare class ErrorDeprecatedTxFormat extends Error {
17
+ constructor(txFormat: TxFormat);
18
+ }
19
+ type UtxoCustomSigningFunction<TNumber extends number | bigint> = {
20
+ (params: {
21
+ coin: IBaseCoin;
22
+ txPrebuild: TransactionPrebuild<TNumber>;
23
+ pubs?: string[];
24
+ /**
25
+ * signingStep flag becomes applicable when both of the following conditions are met:
26
+ * 1) When the external express signer is activated
27
+ * 2) When the PSBT includes at least one taprootKeyPathSpend input.
28
+ *
29
+ * The signing process of a taprootKeyPathSpend input is a 4-step sequence:
30
+ * i) user nonce generation - signerNonce - this is the first call to external express signer signTransaction
31
+ * ii) bitgo nonce generation - cosignerNonce - this is the first and only call to local signTransaction
32
+ * iii) user signature - signerSignature - this is the second call to external express signer signTransaction
33
+ * iv) bitgo signature - not in signTransaction method’s scope
34
+ *
35
+ * In the absence of this flag, the aforementioned first three sequence is executed in a single signTransaction call.
36
+ *
37
+ * NOTE: We make a strong assumption that the external express signer and its caller uses sticky sessions,
38
+ * since PSBTs are cached in step 1 to be used in step 3 for MuSig2 user secure nonce access.
39
+ */
40
+ signingStep?: 'signerNonce' | 'signerSignature' | 'cosignerNonce';
41
+ }): Promise<SignedTransaction>;
42
+ };
43
+ export type { DecodedTransaction } from './transaction/types';
44
+ export type RootWalletKeys = bitgo.RootWalletKeys;
45
+ export type UtxoCoinSpecific = AddressCoinSpecific | DescriptorAddressCoinSpecific;
46
+ export interface VerifyAddressOptions<TCoinSpecific extends UtxoCoinSpecific> extends BaseVerifyAddressOptions {
47
+ chain?: number;
48
+ index: number;
49
+ coinSpecific?: TCoinSpecific;
50
+ }
51
+ export type Bip322Message = {
52
+ address: string;
53
+ message: string;
54
+ };
55
+ export interface TransactionInfo<TNumber extends number | bigint = number> {
56
+ /** Maps txid to txhex. Required for offline signing. */
57
+ txHexes?: Record<string, string>;
58
+ changeAddresses?: string[];
59
+ /** psbt does not require unspents. */
60
+ unspents?: Unspent<TNumber>[];
61
+ }
62
+ export interface ExplainTransactionOptions<TNumber extends number | bigint = number> {
63
+ txHex: string;
64
+ txInfo?: TransactionInfo<TNumber>;
65
+ feeInfo?: string;
66
+ pubs?: Triple<string>;
67
+ customChangeXpubs?: Triple<string>;
68
+ decodeWith?: SdkBackend;
69
+ }
70
+ export interface DecoratedExplainTransactionOptions<TNumber extends number | bigint = number> extends ExplainTransactionOptions<TNumber> {
71
+ changeInfo?: {
72
+ address: string;
73
+ chain: number;
74
+ index: number;
75
+ }[];
76
+ }
77
+ export type UtxoNetwork = utxolib.Network;
78
+ export interface TransactionPrebuild<TNumber extends number | bigint = number> extends BaseTransactionPrebuild {
79
+ txInfo?: TransactionInfo<TNumber>;
80
+ blockHeight?: number;
81
+ decodeWith?: SdkBackend;
82
+ }
83
+ export interface TransactionParams extends BaseTransactionParams {
84
+ walletPassphrase?: string;
85
+ allowExternalChangeAddress?: boolean;
86
+ changeAddress?: string;
87
+ rbfTxIds?: string[];
88
+ }
89
+ export interface ParseTransactionOptions<TNumber extends number | bigint = number> extends BaseParseTransactionOptions {
90
+ txParams: TransactionParams;
91
+ txPrebuild: TransactionPrebuild<TNumber>;
92
+ wallet: UtxoWallet;
93
+ verification?: VerificationOptions;
94
+ reqId?: IRequestTracer;
95
+ }
96
+ export interface GenerateAddressOptions {
97
+ addressType?: ScriptType2Of3;
98
+ threshold?: number;
99
+ chain?: number;
100
+ index?: number;
101
+ segwit?: boolean;
102
+ bech32?: boolean;
103
+ }
104
+ export interface GenerateFixedScriptAddressOptions extends GenerateAddressOptions {
105
+ format?: CreateAddressFormat;
106
+ keychains: {
107
+ pub: string;
108
+ aspKeyId?: string;
109
+ }[];
110
+ }
111
+ export interface AddressDetails {
112
+ address: string;
113
+ chain: number;
114
+ index: number;
115
+ coin: string;
116
+ coinSpecific: AddressCoinSpecific | DescriptorAddressCoinSpecific;
117
+ addressType?: string;
118
+ }
119
+ export interface DescriptorAddressCoinSpecific extends AddressCoinSpecific {
120
+ descriptorName: string;
121
+ descriptorChecksum: string;
122
+ }
123
+ type UtxoBaseSignTransactionOptions<TNumber extends number | bigint = number> = BaseSignTransactionOptions & {
124
+ /** Transaction prebuild from bitgo server */
125
+ txPrebuild: {
126
+ /**
127
+ * walletId is required in following 2 scenarios.
128
+ * 1. External signer express mode is used.
129
+ * 2. bitgo MuSig2 nonce is requested
130
+ */
131
+ walletId?: string;
132
+ txHex: string;
133
+ txInfo?: TransactionInfo<TNumber>;
134
+ decodeWith?: SdkBackend;
135
+ };
136
+ /** xpubs triple for wallet (user, backup, bitgo). Required only when txPrebuild.txHex is not a PSBT */
137
+ pubs?: Triple<string>;
138
+ /** xpub for cosigner (defaults to bitgo) */
139
+ cosignerPub?: string;
140
+ /**
141
+ * When true, creates full-signed transaction without placeholder signatures.
142
+ * When false, creates half-signed transaction with placeholder signatures.
143
+ */
144
+ isLastSignature?: boolean;
145
+ /**
146
+ * If true, allows signing a non-segwit input with a witnessUtxo instead requiring a previous
147
+ * transaction (nonWitnessUtxo)
148
+ */
149
+ allowNonSegwitSigningWithoutPrevTx?: boolean;
150
+ /**
151
+ * When true, the signed transaction will be converted from PSBT to legacy format before returning.
152
+ * Set automatically by presignTransaction() when the caller explicitly requested txFormat: 'legacy'.
153
+ */
154
+ returnLegacyFormat?: boolean;
155
+ wallet?: UtxoWallet;
156
+ /**
157
+ * When true (default), extract finalized PSBT to legacy transaction format.
158
+ * When false, return finalized PSBT. Useful for testing to keep transactions in PSBT format.
159
+ */
160
+ extractTransaction?: boolean;
161
+ };
162
+ export type SignTransactionOptions<TNumber extends number | bigint = number> = UtxoBaseSignTransactionOptions<TNumber> & ({
163
+ prv: string;
164
+ signingStep?: 'signerNonce' | 'signerSignature';
165
+ } | {
166
+ signingStep: 'cosignerNonce';
167
+ });
168
+ export interface MultiSigAddress {
169
+ outputScript: Buffer;
170
+ redeemScript?: Buffer;
171
+ witnessScript?: Buffer;
172
+ address: string;
173
+ }
174
+ export interface RecoverFromWrongChainOptions {
175
+ txid: string;
176
+ recoveryAddress: string;
177
+ wallet: string;
178
+ walletPassphrase?: string;
179
+ xprv?: string;
180
+ apiKey?: string;
181
+ /** @deprecated */
182
+ coin?: AbstractUtxoCoin;
183
+ recoveryCoin?: AbstractUtxoCoin;
184
+ signed?: boolean;
185
+ }
186
+ export interface VerifyKeySignaturesOptions {
187
+ userKeychain: {
188
+ pub?: string;
189
+ };
190
+ keychainToVerify: {
191
+ pub?: string;
192
+ };
193
+ keySignature: string;
194
+ }
195
+ export interface VerifyUserPublicKeyOptions {
196
+ userKeychain?: UtxoKeychain;
197
+ disableNetworking: boolean;
198
+ txParams: TransactionParams;
199
+ }
200
+ export interface VerifyTransactionOptions<TNumber extends number | bigint = number> extends BaseVerifyTransactionOptions {
201
+ txPrebuild: TransactionPrebuild<TNumber>;
202
+ txParams: TransactionParams;
203
+ wallet: UtxoWallet;
204
+ }
205
+ export interface SignPsbtRequest {
206
+ psbt: string;
207
+ }
208
+ export interface SignPsbtResponse {
209
+ psbt: string;
210
+ }
211
+ export declare abstract class AbstractUtxoCoin extends BaseCoin implements Musig2Participant<utxolib.bitgo.UtxoPsbt>, Musig2Participant<fixedScriptWallet.BitGoPsbt> {
212
+ abstract name: UtxoCoinName;
213
+ /**
214
+ * Returns whether this coin is a mainnet coin.
215
+ * Default implementation uses the name property.
216
+ * Can be overridden by subclasses.
217
+ */
218
+ protected isMainnet(): boolean;
219
+ readonly amountType: 'number' | 'bigint';
220
+ protected supportedTxFormats: {
221
+ psbt: boolean;
222
+ legacy: boolean;
223
+ };
224
+ protected constructor(bitgo: BitGoBase, amountType?: 'number' | 'bigint');
225
+ get defaultSdkBackend(): SdkBackend;
226
+ /**
227
+ * @deprecated - will be removed when we drop support for utxolib
228
+ * Use `name` property instead.
229
+ */
230
+ get network(): utxolib.Network;
231
+ getChain(): UtxoCoinName;
232
+ getFamily(): UtxoCoinNameMainnet;
233
+ getFullName(): string;
234
+ /** Indicates whether the coin supports a block target */
235
+ supportsBlockTarget(): boolean;
236
+ sweepWithSendMany(): boolean;
237
+ /** @deprecated */
238
+ static get validAddressTypes(): ScriptType2Of3[];
239
+ /**
240
+ * Returns the factor between the base unit and its smallest subdivison
241
+ * @return {number}
242
+ */
243
+ getBaseFactor(): number;
244
+ /**
245
+ * Check if an address is valid
246
+ * @param address
247
+ * @param param
248
+ */
249
+ isValidAddress(address: string, param?: {
250
+ anyFormat: boolean;
251
+ } | /* legacy parameter */ boolean): boolean;
252
+ /**
253
+ * Return boolean indicating whether input is valid public key for the coin.
254
+ *
255
+ * @param {String} pub the pub to be checked
256
+ * @returns {Boolean} is it valid?
257
+ */
258
+ isValidPub(pub: string): boolean;
259
+ /**
260
+ * This is called before crafting the HTTP request to the BitGo API.
261
+ * It converts the recipient address `scriptPubKey:...` to { script: string } | { address: string }.
262
+ */
263
+ preprocessBuildParams(params: Record<string, any>): Record<string, any>;
264
+ /**
265
+ * Get the latest block height
266
+ * @param reqId
267
+ */
268
+ getLatestBlockHeight(reqId?: RequestTracer): Promise<number>;
269
+ checkRecipient(recipient: {
270
+ address: string;
271
+ amount: number | string;
272
+ }): void;
273
+ /**
274
+ * Run custom coin logic after a transaction prebuild has been received from BitGo
275
+ * @param prebuild
276
+ */
277
+ postProcessPrebuild<TNumber extends number | bigint>(prebuild: TransactionPrebuild<TNumber>): Promise<TransactionPrebuild<TNumber>>;
278
+ /**
279
+ * @deprecated - will be removed when we drop support for utxolib
280
+ * Determine an address' type based on its witness and redeem script presence
281
+ * @param addressDetails
282
+ */
283
+ static inferAddressType(addressDetails: {
284
+ chain: number;
285
+ }): ScriptType2Of3 | null;
286
+ createTransactionFromHex<TNumber extends number | bigint = number>(hex: string): utxolib.bitgo.UtxoTransaction<TNumber>;
287
+ decodeTransaction<TNumber extends number | bigint>(input: Buffer | string, decodeWith?: SdkBackend): DecodedTransaction<TNumber>;
288
+ decodeTransactionAsPsbt(input: Buffer | string): utxolib.bitgo.UtxoPsbt | fixedScriptWallet.BitGoPsbt;
289
+ decodeTransactionFromPrebuild<TNumber extends number | bigint>(prebuild: {
290
+ txHex?: string;
291
+ txBase64?: string;
292
+ decodeWith?: string;
293
+ }): DecodedTransaction<TNumber>;
294
+ /**
295
+ * Extract and fill transaction details such as internal/change spend, external spend (explicit vs. implicit), etc.
296
+ * @param params
297
+ * @returns {*}
298
+ */
299
+ parseTransaction<TNumber extends number | bigint = number>(params: ParseTransactionOptions<TNumber>): Promise<ParsedTransaction<TNumber>>;
300
+ /**
301
+ * @deprecated - use function verifyUserPublicKey instead
302
+ */
303
+ protected verifyUserPublicKey(params: VerifyUserPublicKeyOptions): boolean;
304
+ /**
305
+ * @deprecated - use function verifyKeySignature instead
306
+ */
307
+ verifyKeySignature(params: VerifyKeySignaturesOptions): boolean;
308
+ /**
309
+ * Verify that a transaction prebuild complies with the original intention
310
+ *
311
+ * @param params
312
+ * @param params.txParams params object passed to send
313
+ * @param params.txPrebuild prebuild object returned by server
314
+ * @param params.txPrebuild.txHex prebuilt transaction's txHex form
315
+ * @param params.wallet Wallet object to obtain keys to verify against
316
+ * @param params.verification Object specifying some verification parameters
317
+ * @param params.verification.disableNetworking Disallow fetching any data from the internet for verification purposes
318
+ * @param params.verification.keychains Pass keychains manually rather than fetching them by id
319
+ * @param params.verification.addresses Address details to pass in for out-of-band verification
320
+ * @returns {boolean} True if verification passes
321
+ * @throws {TxIntentMismatchError} if transaction validation fails
322
+ * @throws {TxIntentMismatchRecipientError} if transaction recipients don't match user intent
323
+ */
324
+ verifyTransaction<TNumber extends number | bigint = number>(params: VerifyTransactionOptions<TNumber>): Promise<boolean>;
325
+ /**
326
+ * Make sure an address is valid and throw an error if it's not.
327
+ * @param params.address The address string on the network
328
+ * @param params.addressType
329
+ * @param params.keychains Keychain objects with xpubs
330
+ * @param params.coinSpecific Coin-specific details for the address such as a witness script
331
+ * @param params.chain Derivation chain
332
+ * @param params.index Derivation index
333
+ * @throws {InvalidAddressError}
334
+ * @throws {InvalidAddressDerivationPropertyError}
335
+ * @throws {UnexpectedAddressError}
336
+ */
337
+ isWalletAddress(params: VerifyAddressOptions<UtxoCoinSpecific>, wallet?: IWallet): Promise<boolean>;
338
+ /**
339
+ * @param addressType
340
+ * @returns true iff coin supports spending from unspentType
341
+ */
342
+ supportsAddressType(addressType: ScriptType2Of3): boolean;
343
+ /** inherited doc */
344
+ getDefaultMultisigType(): MultisigType;
345
+ /**
346
+ * @param chain
347
+ * @return true iff coin supports spending from chain
348
+ */
349
+ supportsAddressChain(chain: number): boolean;
350
+ keyIdsForSigning(): number[];
351
+ /**
352
+ * @returns input psbt added with deterministic MuSig2 nonce for bitgo key for each MuSig2 inputs.
353
+ * @param psbt all MuSig2 inputs should contain user MuSig2 nonce
354
+ * @param walletId
355
+ */
356
+ getMusig2Nonces(psbt: utxolib.bitgo.UtxoPsbt, walletId: string): Promise<utxolib.bitgo.UtxoPsbt>;
357
+ getMusig2Nonces(psbt: fixedScriptWallet.BitGoPsbt, walletId: string): Promise<fixedScriptWallet.BitGoPsbt>;
358
+ getMusig2Nonces<T extends utxolib.bitgo.UtxoPsbt | fixedScriptWallet.BitGoPsbt>(psbt: T, walletId: string): Promise<T>;
359
+ /**
360
+ * @deprecated Use getMusig2Nonces instead
361
+ * @returns input psbt added with deterministic MuSig2 nonce for bitgo key for each MuSig2 inputs.
362
+ * @param psbtHex all MuSig2 inputs should contain user MuSig2 nonce
363
+ * @param walletId
364
+ */
365
+ signPsbt(psbtHex: string, walletId: string): Promise<SignPsbtResponse>;
366
+ /**
367
+ * @returns input psbt added with deterministic MuSig2 nonce for bitgo key for each MuSig2 inputs from OVC.
368
+ * @param ovcJson JSON object provided by OVC with fields psbtHex and walletId
369
+ */
370
+ signPsbtFromOVC(ovcJson: Record<string, unknown>): Promise<Record<string, unknown>>;
371
+ /**
372
+ * Assemble keychain and half-sign prebuilt transaction
373
+ * @param params - {@see SignTransactionOptions}
374
+ * @returns {Promise<SignedTransaction | HalfSignedUtxoTransaction>}
375
+ */
376
+ signTransaction<TNumber extends number | bigint = number>(params: SignTransactionOptions<TNumber>): Promise<SignedTransaction | HalfSignedUtxoTransaction>;
377
+ /**
378
+ * Sign a transaction with a custom signing function. Example use case is express external signer
379
+ * @param customSigningFunction custom signing function that returns a single signed transaction
380
+ * @param signTransactionParams parameters for custom signing function. Includes txPrebuild and pubs
381
+ *
382
+ * @returns signed transaction as hex string
383
+ */
384
+ signWithCustomSigningFunction<TNumber extends number | bigint>(customSigningFunction: UtxoCustomSigningFunction<TNumber>, signTransactionParams: {
385
+ txPrebuild: TransactionPrebuild<TNumber>;
386
+ pubs: string[];
387
+ }): Promise<SignedTransaction>;
388
+ /**
389
+ * @param unspent
390
+ * @returns {boolean}
391
+ */
392
+ isBitGoTaintedUnspent<TNumber extends number | bigint>(unspent: Unspent<TNumber>): boolean;
393
+ /**
394
+ * Decompose a raw psbt/transaction into useful information, such as the total amounts,
395
+ * change amounts, and transaction outputs.
396
+ * @param params
397
+ */
398
+ explainTransaction<TNumber extends number | bigint = number>(params: ExplainTransactionOptions<TNumber>, wallet?: IWallet): Promise<TransactionExplanation>;
399
+ /**
400
+ * @deprecated - use {@see backupKeyRecovery}
401
+ * Builds a funds recovery transaction without BitGo
402
+ * @param params - {@see backupKeyRecovery}
403
+ */
404
+ recover(params: RecoverParams): ReturnType<typeof backupKeyRecovery>;
405
+ recoverV1(params: V1RecoverParams): ReturnType<typeof v1BackupKeyRecovery>;
406
+ sweepV1(params: V1SweepParams): ReturnType<typeof v1Sweep>;
407
+ /**
408
+ * Recover coin that was sent to wrong chain
409
+ * @param params
410
+ * @param params.txid The txid of the faulty transaction
411
+ * @param params.recoveryAddress address to send recovered funds to
412
+ * @param params.wallet the wallet that received the funds
413
+ * @param params.recoveryCoin the coin type of the wallet that received the funds
414
+ * @param params.signed return a half-signed transaction (default=true)
415
+ * @param params.walletPassphrase the wallet passphrase
416
+ * @param params.xprv the unencrypted xprv (used instead of wallet passphrase)
417
+ * @param params.apiKey for utxo coins other than [BTC,TBTC] this is a Block Chair api key
418
+ * @returns {*}
419
+ */
420
+ recoverFromWrongChain<TNumber extends number | bigint = number>(params: RecoverFromWrongChainOptions): Promise<CrossChainRecoverySigned<TNumber> | CrossChainRecoveryUnsigned<TNumber>>;
421
+ /**
422
+ * Generate bip32 key pair
423
+ *
424
+ * @param seed
425
+ * @returns {Object} object with generated pub and prv
426
+ */
427
+ generateKeyPair(seed: Buffer): {
428
+ pub: string;
429
+ prv: string;
430
+ };
431
+ /**
432
+ * Determines the default transaction format based on wallet properties and network
433
+ * @param wallet - The wallet to check
434
+ * @param requestedFormat - Optional explicitly requested format
435
+ * @returns The transaction format to use, or undefined if no default applies
436
+ */
437
+ getDefaultTxFormat(wallet: Wallet, requestedFormat?: TxFormat): TxFormat;
438
+ getExtraPrebuildParams(buildParams: ExtraPrebuildParamsOptions & {
439
+ wallet: Wallet;
440
+ }): Promise<{
441
+ txFormat?: TxFormat;
442
+ changeAddressType?: ScriptType2Of3[] | ScriptType2Of3;
443
+ allowedInputScriptTypes?: ScriptType2Of3[];
444
+ }>;
445
+ preCreateBitGo(params: PrecreateBitGoOptions): void;
446
+ presignTransaction(params: PresignTransactionOptions): Promise<any>;
447
+ supplementGenerateWallet(walletParams: SupplementGenerateWalletOptions, keychains: KeychainsTriplet): Promise<any>;
448
+ transactionDataAllowed(): boolean;
449
+ valuelessTransferAllowed(): boolean;
450
+ getRecoveryProvider(apiToken?: string): RecoveryProvider;
451
+ /** @inheritDoc */
452
+ auditDecryptedKey({ multiSigType, publicKey, prv, }: {
453
+ multiSigType: MultisigType;
454
+ publicKey: string;
455
+ prv: string;
456
+ }): void;
457
+ }
458
+ //# sourceMappingURL=abstractUtxoCoin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"abstractUtxoCoin.d.ts","sourceRoot":"","sources":["../../../src/abstractUtxoCoin.ts"],"names":[],"mappings":"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"}