@bitgo-beta/abstract-utxo 1.1.1-beta.201 → 1.1.1-beta.2011

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 (841) hide show
  1. package/README.md +76 -0
  2. package/dist/cjs/src/abstractUtxoCoin.d.ts +473 -0
  3. package/dist/cjs/src/abstractUtxoCoin.d.ts.map +1 -0
  4. package/dist/cjs/src/abstractUtxoCoin.js +718 -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 +108 -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/cjs/src/config.d.ts.map +1 -0
  12. package/dist/cjs/src/config.js +14 -0
  13. package/dist/cjs/src/descriptor/NamedDescriptor.d.ts +19 -0
  14. package/dist/cjs/src/descriptor/NamedDescriptor.d.ts.map +1 -0
  15. package/dist/cjs/src/descriptor/NamedDescriptor.js +77 -0
  16. package/dist/cjs/src/descriptor/assertDescriptorWalletAddress.d.ts +5 -0
  17. package/dist/cjs/src/descriptor/assertDescriptorWalletAddress.d.ts.map +1 -0
  18. package/dist/cjs/src/descriptor/assertDescriptorWalletAddress.js +33 -0
  19. package/dist/cjs/src/descriptor/builder/builder.d.ts +12 -0
  20. package/dist/cjs/src/descriptor/builder/builder.d.ts.map +1 -0
  21. package/dist/cjs/src/descriptor/builder/builder.js +37 -0
  22. package/dist/cjs/src/descriptor/builder/index.d.ts +3 -0
  23. package/dist/cjs/src/descriptor/builder/index.d.ts.map +1 -0
  24. package/dist/cjs/src/descriptor/builder/index.js +8 -0
  25. package/dist/cjs/src/descriptor/builder/parse.d.ts +5 -0
  26. package/dist/cjs/src/descriptor/builder/parse.d.ts.map +1 -0
  27. package/dist/cjs/src/descriptor/builder/parse.js +116 -0
  28. package/dist/cjs/src/descriptor/createWallet/createDescriptorWallet.d.ts +20 -0
  29. package/dist/cjs/src/descriptor/createWallet/createDescriptorWallet.d.ts.map +1 -0
  30. package/dist/cjs/src/descriptor/createWallet/createDescriptorWallet.js +41 -0
  31. package/dist/cjs/src/descriptor/createWallet/createDescriptors.d.ts +12 -0
  32. package/dist/cjs/src/descriptor/createWallet/createDescriptors.d.ts.map +1 -0
  33. package/dist/cjs/src/descriptor/createWallet/createDescriptors.js +33 -0
  34. package/dist/cjs/src/descriptor/createWallet/index.d.ts +3 -0
  35. package/dist/cjs/src/descriptor/createWallet/index.d.ts.map +1 -0
  36. package/dist/cjs/src/descriptor/createWallet/index.js +19 -0
  37. package/dist/cjs/src/descriptor/descriptorWallet.d.ts +19 -0
  38. package/dist/cjs/src/descriptor/descriptorWallet.d.ts.map +1 -0
  39. package/dist/cjs/src/descriptor/descriptorWallet.js +54 -0
  40. package/dist/cjs/src/descriptor/index.d.ts +8 -0
  41. package/dist/cjs/src/descriptor/index.d.ts.map +1 -0
  42. package/dist/cjs/src/descriptor/index.js +53 -0
  43. package/dist/cjs/src/descriptor/validatePolicy.d.ts +22 -0
  44. package/dist/cjs/src/descriptor/validatePolicy.d.ts.map +1 -0
  45. package/dist/cjs/src/descriptor/validatePolicy.js +92 -0
  46. package/dist/cjs/src/impl/bch/bch.d.ts +22 -0
  47. package/dist/cjs/src/impl/bch/bch.d.ts.map +1 -0
  48. package/dist/cjs/src/impl/bch/bch.js +43 -0
  49. package/dist/cjs/src/impl/bch/index.d.ts +3 -0
  50. package/dist/cjs/src/impl/bch/index.d.ts.map +1 -0
  51. package/dist/cjs/src/impl/bch/index.js +19 -0
  52. package/dist/cjs/src/impl/bch/tbch.d.ts +12 -0
  53. package/dist/cjs/src/impl/bch/tbch.d.ts.map +1 -0
  54. package/dist/cjs/src/impl/bch/tbch.js +15 -0
  55. package/dist/cjs/src/impl/bcha/bcha.d.ts +9 -0
  56. package/dist/cjs/src/impl/bcha/bcha.d.ts.map +1 -0
  57. package/dist/cjs/src/impl/bcha/bcha.js +15 -0
  58. package/dist/cjs/src/impl/bcha/index.d.ts +3 -0
  59. package/dist/cjs/src/impl/bcha/index.d.ts.map +1 -0
  60. package/dist/cjs/src/impl/bcha/index.js +19 -0
  61. package/dist/cjs/src/impl/bcha/tbcha.d.ts +12 -0
  62. package/dist/cjs/src/impl/bcha/tbcha.d.ts.map +1 -0
  63. package/dist/cjs/src/impl/bcha/tbcha.js +15 -0
  64. package/dist/cjs/src/impl/bsv/bsv.d.ts +9 -0
  65. package/dist/cjs/src/impl/bsv/bsv.d.ts.map +1 -0
  66. package/dist/cjs/src/impl/bsv/bsv.js +15 -0
  67. package/dist/cjs/src/impl/bsv/index.d.ts +3 -0
  68. package/dist/cjs/src/impl/bsv/index.d.ts.map +1 -0
  69. package/dist/cjs/src/impl/bsv/index.js +19 -0
  70. package/dist/cjs/src/impl/bsv/tbsv.d.ts +12 -0
  71. package/dist/cjs/src/impl/bsv/tbsv.d.ts.map +1 -0
  72. package/dist/cjs/src/impl/bsv/tbsv.js +15 -0
  73. package/dist/cjs/src/impl/btc/btc.d.ts +15 -0
  74. package/dist/cjs/src/impl/btc/btc.d.ts.map +1 -0
  75. package/dist/cjs/src/impl/btc/btc.js +22 -0
  76. package/dist/cjs/src/impl/btc/index.d.ts +7 -0
  77. package/dist/cjs/src/impl/btc/index.d.ts.map +1 -0
  78. package/dist/cjs/src/impl/btc/index.js +23 -0
  79. package/dist/cjs/src/impl/btc/inscriptionBuilder.d.ts +61 -0
  80. package/dist/cjs/src/impl/btc/inscriptionBuilder.d.ts.map +1 -0
  81. package/dist/cjs/src/impl/btc/inscriptionBuilder.js +171 -0
  82. package/dist/cjs/src/impl/btc/tbtc.d.ts +12 -0
  83. package/dist/cjs/src/impl/btc/tbtc.d.ts.map +1 -0
  84. package/dist/cjs/src/impl/btc/tbtc.js +15 -0
  85. package/dist/cjs/src/impl/btc/tbtc4.d.ts +12 -0
  86. package/dist/cjs/src/impl/btc/tbtc4.d.ts.map +1 -0
  87. package/dist/cjs/src/impl/btc/tbtc4.js +15 -0
  88. package/dist/cjs/src/impl/btc/tbtcbgsig.d.ts +12 -0
  89. package/dist/cjs/src/impl/btc/tbtcbgsig.d.ts.map +1 -0
  90. package/dist/cjs/src/impl/btc/tbtcbgsig.js +15 -0
  91. package/dist/cjs/src/impl/btc/tbtcsig.d.ts +12 -0
  92. package/dist/cjs/src/impl/btc/tbtcsig.d.ts.map +1 -0
  93. package/dist/cjs/src/impl/btc/tbtcsig.js +15 -0
  94. package/dist/cjs/src/impl/btg/btg.d.ts +9 -0
  95. package/dist/cjs/src/impl/btg/btg.d.ts.map +1 -0
  96. package/dist/cjs/src/impl/btg/btg.js +15 -0
  97. package/dist/cjs/src/impl/btg/index.d.ts +2 -0
  98. package/dist/cjs/src/impl/btg/index.d.ts.map +1 -0
  99. package/dist/cjs/src/impl/btg/index.js +18 -0
  100. package/dist/cjs/src/impl/dash/dash.d.ts +9 -0
  101. package/dist/cjs/src/impl/dash/dash.d.ts.map +1 -0
  102. package/dist/cjs/src/impl/dash/dash.js +15 -0
  103. package/dist/cjs/src/impl/dash/index.d.ts +3 -0
  104. package/dist/cjs/src/impl/dash/index.d.ts.map +1 -0
  105. package/dist/cjs/src/impl/dash/index.js +19 -0
  106. package/dist/cjs/src/impl/dash/tdash.d.ts +12 -0
  107. package/dist/cjs/src/impl/dash/tdash.d.ts.map +1 -0
  108. package/dist/cjs/src/impl/dash/tdash.js +15 -0
  109. package/dist/cjs/src/impl/doge/doge.d.ts +35 -0
  110. package/dist/cjs/src/impl/doge/doge.d.ts.map +1 -0
  111. package/dist/cjs/src/impl/doge/doge.js +79 -0
  112. package/dist/cjs/src/impl/doge/index.d.ts +3 -0
  113. package/dist/cjs/src/impl/doge/index.d.ts.map +1 -0
  114. package/dist/cjs/src/impl/doge/index.js +19 -0
  115. package/dist/cjs/src/impl/doge/tdoge.d.ts +12 -0
  116. package/dist/cjs/src/impl/doge/tdoge.d.ts.map +1 -0
  117. package/dist/cjs/src/impl/doge/tdoge.js +15 -0
  118. package/dist/cjs/src/impl/index.d.ts +10 -0
  119. package/dist/cjs/src/impl/index.d.ts.map +1 -0
  120. package/dist/cjs/src/impl/index.js +46 -0
  121. package/dist/cjs/src/impl/ltc/index.d.ts +3 -0
  122. package/dist/cjs/src/impl/ltc/index.d.ts.map +1 -0
  123. package/dist/cjs/src/impl/ltc/index.js +19 -0
  124. package/dist/cjs/src/impl/ltc/ltc.d.ts +8 -0
  125. package/dist/cjs/src/impl/ltc/ltc.d.ts.map +1 -0
  126. package/dist/cjs/src/impl/ltc/ltc.js +15 -0
  127. package/dist/cjs/src/impl/ltc/tltc.d.ts +8 -0
  128. package/dist/cjs/src/impl/ltc/tltc.d.ts.map +1 -0
  129. package/dist/cjs/src/impl/ltc/tltc.js +15 -0
  130. package/dist/cjs/src/impl/zec/index.d.ts +3 -0
  131. package/dist/cjs/src/impl/zec/index.d.ts.map +1 -0
  132. package/dist/cjs/src/impl/zec/index.js +19 -0
  133. package/dist/cjs/src/impl/zec/tzec.d.ts +9 -0
  134. package/dist/cjs/src/impl/zec/tzec.d.ts.map +1 -0
  135. package/dist/cjs/src/impl/zec/tzec.js +15 -0
  136. package/dist/cjs/src/impl/zec/zec.d.ts +12 -0
  137. package/dist/cjs/src/impl/zec/zec.d.ts.map +1 -0
  138. package/dist/cjs/src/impl/zec/zec.js +15 -0
  139. package/dist/cjs/src/index.d.ts +23 -0
  140. package/dist/cjs/src/index.d.ts.map +1 -0
  141. package/dist/cjs/src/index.js +62 -0
  142. package/dist/cjs/src/keychains.d.ts +56 -0
  143. package/dist/cjs/src/keychains.d.ts.map +1 -0
  144. package/dist/cjs/src/keychains.js +144 -0
  145. package/dist/cjs/src/names.d.ts +36 -0
  146. package/dist/cjs/src/names.d.ts.map +1 -0
  147. package/dist/cjs/src/names.js +231 -0
  148. package/dist/cjs/src/offlineVault/OfflineVaultHalfSigned.d.ts +9 -0
  149. package/dist/cjs/src/offlineVault/OfflineVaultHalfSigned.d.ts.map +1 -0
  150. package/dist/cjs/src/offlineVault/OfflineVaultHalfSigned.js +23 -0
  151. package/dist/cjs/src/offlineVault/OfflineVaultSignable.d.ts +46 -0
  152. package/dist/cjs/src/offlineVault/OfflineVaultSignable.d.ts.map +1 -0
  153. package/dist/cjs/src/offlineVault/OfflineVaultSignable.js +55 -0
  154. package/dist/cjs/src/offlineVault/TransactionExplanation.d.ts +16 -0
  155. package/dist/cjs/src/offlineVault/TransactionExplanation.d.ts.map +1 -0
  156. package/dist/cjs/src/offlineVault/TransactionExplanation.js +15 -0
  157. package/dist/cjs/src/offlineVault/descriptor/index.d.ts +2 -0
  158. package/dist/cjs/src/offlineVault/descriptor/index.d.ts.map +1 -0
  159. package/dist/cjs/src/offlineVault/descriptor/index.js +18 -0
  160. package/dist/cjs/src/offlineVault/descriptor/transaction.d.ts +39 -0
  161. package/dist/cjs/src/offlineVault/descriptor/transaction.d.ts.map +1 -0
  162. package/dist/cjs/src/offlineVault/descriptor/transaction.js +80 -0
  163. package/dist/cjs/src/offlineVault/index.d.ts +6 -0
  164. package/dist/cjs/src/offlineVault/index.d.ts.map +1 -0
  165. package/dist/cjs/src/offlineVault/index.js +44 -0
  166. package/dist/{src → cjs/src}/recovery/RecoveryProvider.d.ts +1 -3
  167. package/dist/cjs/src/recovery/RecoveryProvider.d.ts.map +1 -0
  168. package/dist/cjs/src/recovery/RecoveryProvider.js +22 -0
  169. package/dist/cjs/src/recovery/backupKeyRecovery.d.ts +158 -0
  170. package/dist/cjs/src/recovery/backupKeyRecovery.d.ts.map +1 -0
  171. package/dist/cjs/src/recovery/backupKeyRecovery.js +411 -0
  172. package/dist/{src → cjs/src}/recovery/baseApi.d.ts +3 -6
  173. package/dist/cjs/src/recovery/baseApi.d.ts.map +1 -0
  174. package/dist/cjs/src/recovery/baseApi.js +73 -0
  175. package/dist/{src → cjs/src}/recovery/coingeckoApi.d.ts +0 -3
  176. package/dist/cjs/src/recovery/coingeckoApi.d.ts.map +1 -0
  177. package/dist/cjs/src/recovery/coingeckoApi.js +44 -0
  178. package/dist/{src → cjs/src}/recovery/crossChainRecovery.d.ts +21 -9
  179. package/dist/cjs/src/recovery/crossChainRecovery.d.ts.map +1 -0
  180. package/dist/cjs/src/recovery/crossChainRecovery.js +299 -0
  181. package/dist/{src → cjs/src}/recovery/index.d.ts +0 -1
  182. package/dist/cjs/src/recovery/index.d.ts.map +1 -0
  183. package/dist/{src → cjs/src}/recovery/index.js +6 -3
  184. package/dist/cjs/src/recovery/mempoolApi.d.ts.map +1 -0
  185. package/dist/cjs/src/recovery/mempoolApi.js +36 -0
  186. package/dist/cjs/src/recovery/psbt.d.ts +62 -0
  187. package/dist/cjs/src/recovery/psbt.d.ts.map +1 -0
  188. package/dist/cjs/src/recovery/psbt.js +153 -0
  189. package/dist/cjs/src/tnumber.d.ts +4 -0
  190. package/dist/cjs/src/tnumber.d.ts.map +1 -0
  191. package/dist/cjs/src/tnumber.js +12 -0
  192. package/dist/cjs/src/transaction/bip322.d.ts +27 -0
  193. package/dist/cjs/src/transaction/bip322.d.ts.map +1 -0
  194. package/dist/cjs/src/transaction/bip322.js +139 -0
  195. package/dist/cjs/src/transaction/common/verifyPayGoAmount.d.ts +2 -0
  196. package/dist/cjs/src/transaction/common/verifyPayGoAmount.d.ts.map +1 -0
  197. package/dist/cjs/src/transaction/common/verifyPayGoAmount.js +3 -0
  198. package/dist/cjs/src/transaction/decode.d.ts +25 -0
  199. package/dist/cjs/src/transaction/decode.d.ts.map +1 -0
  200. package/dist/cjs/src/transaction/decode.js +106 -0
  201. package/dist/cjs/src/transaction/descriptor/explainPsbt.d.ts +5 -0
  202. package/dist/cjs/src/transaction/descriptor/explainPsbt.d.ts.map +1 -0
  203. package/dist/cjs/src/transaction/descriptor/explainPsbt.js +45 -0
  204. package/dist/cjs/src/transaction/descriptor/index.d.ts +7 -0
  205. package/dist/cjs/src/transaction/descriptor/index.d.ts.map +1 -0
  206. package/dist/cjs/src/transaction/descriptor/index.js +14 -0
  207. package/dist/cjs/src/transaction/descriptor/parse.d.ts +19 -0
  208. package/dist/cjs/src/transaction/descriptor/parse.d.ts.map +1 -0
  209. package/dist/cjs/src/transaction/descriptor/parse.js +84 -0
  210. package/dist/cjs/src/transaction/descriptor/parseToAmountType.d.ts +14 -0
  211. package/dist/cjs/src/transaction/descriptor/parseToAmountType.d.ts.map +1 -0
  212. package/dist/cjs/src/transaction/descriptor/parseToAmountType.js +60 -0
  213. package/dist/cjs/src/transaction/descriptor/recipient.d.ts +5 -0
  214. package/dist/cjs/src/transaction/descriptor/recipient.d.ts.map +1 -0
  215. package/dist/cjs/src/transaction/descriptor/recipient.js +3 -0
  216. package/dist/cjs/src/transaction/descriptor/signPsbt.d.ts +24 -0
  217. package/dist/cjs/src/transaction/descriptor/signPsbt.d.ts.map +1 -0
  218. package/dist/cjs/src/transaction/descriptor/signPsbt.js +44 -0
  219. package/dist/cjs/src/transaction/descriptor/verifyTransaction.d.ts +37 -0
  220. package/dist/cjs/src/transaction/descriptor/verifyTransaction.d.ts.map +1 -0
  221. package/dist/cjs/src/transaction/descriptor/verifyTransaction.js +80 -0
  222. package/dist/cjs/src/transaction/explainTransaction.d.ts +21 -0
  223. package/dist/cjs/src/transaction/explainTransaction.d.ts.map +1 -0
  224. package/dist/cjs/src/transaction/explainTransaction.js +92 -0
  225. package/dist/cjs/src/transaction/fetchInputs.d.ts +27 -0
  226. package/dist/cjs/src/transaction/fetchInputs.d.ts.map +1 -0
  227. package/dist/cjs/src/transaction/fetchInputs.js +111 -0
  228. package/dist/cjs/src/transaction/fixedScript/SigningError.d.ts +24 -0
  229. package/dist/cjs/src/transaction/fixedScript/SigningError.d.ts.map +1 -0
  230. package/dist/cjs/src/transaction/fixedScript/SigningError.js +32 -0
  231. package/dist/cjs/src/transaction/fixedScript/explainPsbtWasm.d.ts +45 -0
  232. package/dist/cjs/src/transaction/fixedScript/explainPsbtWasm.d.ts.map +1 -0
  233. package/dist/cjs/src/transaction/fixedScript/explainPsbtWasm.js +149 -0
  234. package/dist/cjs/src/transaction/fixedScript/explainTransaction.d.ts +83 -0
  235. package/dist/cjs/src/transaction/fixedScript/explainTransaction.d.ts.map +1 -0
  236. package/dist/cjs/src/transaction/fixedScript/explainTransaction.js +346 -0
  237. package/dist/cjs/src/transaction/fixedScript/index.d.ts +10 -0
  238. package/dist/cjs/src/transaction/fixedScript/index.d.ts.map +1 -0
  239. package/dist/cjs/src/transaction/fixedScript/index.js +34 -0
  240. package/dist/cjs/src/transaction/fixedScript/musig2.d.ts +4 -0
  241. package/dist/cjs/src/transaction/fixedScript/musig2.d.ts.map +1 -0
  242. package/dist/cjs/src/transaction/fixedScript/musig2.js +3 -0
  243. package/dist/cjs/src/transaction/fixedScript/parseOutput.d.ts +28 -0
  244. package/dist/cjs/src/transaction/fixedScript/parseOutput.d.ts.map +1 -0
  245. package/dist/cjs/src/transaction/fixedScript/parseOutput.js +216 -0
  246. package/dist/cjs/src/transaction/fixedScript/parseTransaction.d.ts +8 -0
  247. package/dist/cjs/src/transaction/fixedScript/parseTransaction.d.ts.map +1 -0
  248. package/dist/cjs/src/transaction/fixedScript/parseTransaction.js +228 -0
  249. package/dist/cjs/src/transaction/fixedScript/replayProtection.d.ts +10 -0
  250. package/dist/cjs/src/transaction/fixedScript/replayProtection.d.ts.map +1 -0
  251. package/dist/cjs/src/transaction/fixedScript/replayProtection.js +44 -0
  252. package/dist/cjs/src/transaction/fixedScript/signLegacyTransaction.d.ts +32 -0
  253. package/dist/cjs/src/transaction/fixedScript/signLegacyTransaction.d.ts.map +1 -0
  254. package/dist/cjs/src/transaction/fixedScript/signLegacyTransaction.js +163 -0
  255. package/dist/cjs/src/transaction/fixedScript/signPsbtUtxolib.d.ts +20 -0
  256. package/dist/cjs/src/transaction/fixedScript/signPsbtUtxolib.d.ts.map +1 -0
  257. package/dist/cjs/src/transaction/fixedScript/signPsbtUtxolib.js +157 -0
  258. package/dist/cjs/src/transaction/fixedScript/signPsbtWasm.d.ts +20 -0
  259. package/dist/cjs/src/transaction/fixedScript/signPsbtWasm.d.ts.map +1 -0
  260. package/dist/cjs/src/transaction/fixedScript/signPsbtWasm.js +116 -0
  261. package/dist/cjs/src/transaction/fixedScript/signTransaction.d.ts +34 -0
  262. package/dist/cjs/src/transaction/fixedScript/signTransaction.d.ts.map +1 -0
  263. package/dist/cjs/src/transaction/fixedScript/signTransaction.js +78 -0
  264. package/dist/cjs/src/transaction/fixedScript/verifyTransaction.d.ts +21 -0
  265. package/dist/cjs/src/transaction/fixedScript/verifyTransaction.d.ts.map +1 -0
  266. package/dist/cjs/src/transaction/fixedScript/verifyTransaction.js +203 -0
  267. package/dist/cjs/src/transaction/getPayGoVerificationPubkey.d.ts +9 -0
  268. package/dist/cjs/src/transaction/getPayGoVerificationPubkey.d.ts.map +1 -0
  269. package/dist/cjs/src/transaction/getPayGoVerificationPubkey.js +20 -0
  270. package/dist/cjs/src/transaction/index.d.ts +10 -0
  271. package/dist/cjs/src/transaction/index.d.ts.map +1 -0
  272. package/dist/cjs/src/transaction/index.js +54 -0
  273. package/dist/cjs/src/transaction/outputDifference.d.ts +44 -0
  274. package/dist/cjs/src/transaction/outputDifference.d.ts.map +1 -0
  275. package/dist/cjs/src/transaction/outputDifference.js +51 -0
  276. package/dist/cjs/src/transaction/parseTransaction.d.ts +4 -0
  277. package/dist/cjs/src/transaction/parseTransaction.d.ts.map +1 -0
  278. package/dist/cjs/src/transaction/parseTransaction.js +48 -0
  279. package/dist/cjs/src/transaction/recipient.d.ts +34 -0
  280. package/dist/cjs/src/transaction/recipient.d.ts.map +1 -0
  281. package/dist/cjs/src/transaction/recipient.js +69 -0
  282. package/dist/cjs/src/transaction/signTransaction.d.ts +6 -0
  283. package/dist/cjs/src/transaction/signTransaction.d.ts.map +1 -0
  284. package/dist/cjs/src/transaction/signTransaction.js +112 -0
  285. package/dist/cjs/src/transaction/types.d.ts +50 -0
  286. package/dist/cjs/src/transaction/types.d.ts.map +1 -0
  287. package/dist/cjs/src/transaction/types.js +7 -0
  288. package/dist/cjs/src/transaction/verifyTransaction.d.ts +4 -0
  289. package/dist/cjs/src/transaction/verifyTransaction.d.ts.map +1 -0
  290. package/dist/cjs/src/transaction/verifyTransaction.js +50 -0
  291. package/dist/cjs/src/unspent.d.ts +59 -0
  292. package/dist/cjs/src/unspent.d.ts.map +1 -0
  293. package/dist/cjs/src/unspent.js +20 -0
  294. package/dist/cjs/src/verifyKey.d.ts +21 -0
  295. package/dist/cjs/src/verifyKey.d.ts.map +1 -0
  296. package/dist/cjs/src/verifyKey.js +108 -0
  297. package/dist/cjs/src/wallet.d.ts +15 -0
  298. package/dist/cjs/src/wallet.d.ts.map +1 -0
  299. package/dist/cjs/src/wallet.js +8 -0
  300. package/dist/cjs/src/wasmUtil.d.ts +34 -0
  301. package/dist/cjs/src/wasmUtil.d.ts.map +1 -0
  302. package/dist/cjs/src/wasmUtil.js +95 -0
  303. package/dist/cjs/test/integration/impl/bch/bch.d.ts +2 -0
  304. package/dist/cjs/test/integration/impl/bch/bch.d.ts.map +1 -0
  305. package/dist/cjs/test/integration/impl/bch/bch.js +76 -0
  306. package/dist/cjs/test/unit/address.d.ts +2 -0
  307. package/dist/cjs/test/unit/address.d.ts.map +1 -0
  308. package/dist/cjs/test/unit/address.js +178 -0
  309. package/dist/cjs/test/unit/bip322.d.ts +2 -0
  310. package/dist/cjs/test/unit/bip322.d.ts.map +1 -0
  311. package/dist/cjs/test/unit/bip322.js +481 -0
  312. package/dist/cjs/test/unit/buildSignSendLegacyFormat.d.ts +2 -0
  313. package/dist/cjs/test/unit/buildSignSendLegacyFormat.d.ts.map +1 -0
  314. package/dist/cjs/test/unit/buildSignSendLegacyFormat.js +99 -0
  315. package/dist/cjs/test/unit/coins.d.ts +2 -0
  316. package/dist/cjs/test/unit/coins.d.ts.map +1 -0
  317. package/dist/cjs/test/unit/coins.js +161 -0
  318. package/dist/cjs/test/unit/customChangeWallet.d.ts +2 -0
  319. package/dist/cjs/test/unit/customChangeWallet.d.ts.map +1 -0
  320. package/dist/cjs/test/unit/customChangeWallet.js +204 -0
  321. package/dist/cjs/test/unit/customChangeWalletFixtures.d.ts +2 -0
  322. package/dist/cjs/test/unit/customChangeWalletFixtures.d.ts.map +1 -0
  323. package/dist/cjs/test/unit/customChangeWalletFixtures.js +53 -0
  324. package/dist/cjs/test/unit/customSigner.d.ts +2 -0
  325. package/dist/cjs/test/unit/customSigner.d.ts.map +1 -0
  326. package/dist/cjs/test/unit/customSigner.js +99 -0
  327. package/dist/cjs/test/unit/descriptor/NamedDescriptor.d.ts +2 -0
  328. package/dist/cjs/test/unit/descriptor/NamedDescriptor.d.ts.map +1 -0
  329. package/dist/cjs/test/unit/descriptor/NamedDescriptor.js +51 -0
  330. package/dist/cjs/test/unit/descriptor/builder.d.ts +2 -0
  331. package/dist/cjs/test/unit/descriptor/builder.d.ts.map +1 -0
  332. package/dist/cjs/test/unit/descriptor/builder.js +78 -0
  333. package/dist/cjs/test/unit/descriptor/createWallet/createDescriptors.d.ts +2 -0
  334. package/dist/cjs/test/unit/descriptor/createWallet/createDescriptors.d.ts.map +1 -0
  335. package/dist/cjs/test/unit/descriptor/createWallet/createDescriptors.js +53 -0
  336. package/dist/cjs/test/unit/descriptor/descriptorWallet.d.ts +2 -0
  337. package/dist/cjs/test/unit/descriptor/descriptorWallet.d.ts.map +1 -0
  338. package/dist/cjs/test/unit/descriptor/descriptorWallet.js +62 -0
  339. package/dist/cjs/test/unit/descriptorAddress.d.ts +3 -0
  340. package/dist/cjs/test/unit/descriptorAddress.d.ts.map +1 -0
  341. package/dist/cjs/test/unit/descriptorAddress.js +103 -0
  342. package/dist/cjs/test/unit/explainTransaction.d.ts +2 -0
  343. package/dist/cjs/test/unit/explainTransaction.d.ts.map +1 -0
  344. package/dist/cjs/test/unit/explainTransaction.js +37 -0
  345. package/dist/cjs/test/unit/fixtures/psbtHexProof.d.ts +4 -0
  346. package/dist/cjs/test/unit/fixtures/psbtHexProof.d.ts.map +1 -0
  347. package/dist/cjs/test/unit/fixtures/psbtHexProof.js +9 -0
  348. package/dist/cjs/test/unit/impl/bch/unit/bch.d.ts +2 -0
  349. package/dist/cjs/test/unit/impl/bch/unit/bch.d.ts.map +1 -0
  350. package/dist/cjs/test/unit/impl/bch/unit/bch.js +71 -0
  351. package/dist/cjs/test/unit/impl/bcha/unit/index.d.ts +2 -0
  352. package/dist/cjs/test/unit/impl/bcha/unit/index.d.ts.map +1 -0
  353. package/dist/cjs/test/unit/impl/bcha/unit/index.js +41 -0
  354. package/dist/cjs/test/unit/impl/bsv/unit/index.d.ts +2 -0
  355. package/dist/cjs/test/unit/impl/bsv/unit/index.d.ts.map +1 -0
  356. package/dist/cjs/test/unit/impl/bsv/unit/index.js +34 -0
  357. package/dist/cjs/test/unit/impl/btg/unit/index.d.ts +2 -0
  358. package/dist/cjs/test/unit/impl/btg/unit/index.d.ts.map +1 -0
  359. package/dist/cjs/test/unit/impl/btg/unit/index.js +33 -0
  360. package/dist/cjs/test/unit/impl/dash/unit/index.d.ts +2 -0
  361. package/dist/cjs/test/unit/impl/dash/unit/index.d.ts.map +1 -0
  362. package/dist/cjs/test/unit/impl/dash/unit/index.js +34 -0
  363. package/dist/cjs/test/unit/impl/doge/unit/index.d.ts +2 -0
  364. package/dist/cjs/test/unit/impl/doge/unit/index.d.ts.map +1 -0
  365. package/dist/cjs/test/unit/impl/doge/unit/index.js +34 -0
  366. package/dist/cjs/test/unit/impl/zec/unit/index.d.ts +2 -0
  367. package/dist/cjs/test/unit/impl/zec/unit/index.d.ts.map +1 -0
  368. package/dist/cjs/test/unit/impl/zec/unit/index.js +30 -0
  369. package/dist/cjs/test/unit/keySignatures.d.ts +2 -0
  370. package/dist/cjs/test/unit/keySignatures.d.ts.map +1 -0
  371. package/dist/cjs/test/unit/keySignatures.js +54 -0
  372. package/dist/cjs/test/unit/keychains.d.ts +2 -0
  373. package/dist/cjs/test/unit/keychains.d.ts.map +1 -0
  374. package/dist/cjs/test/unit/keychains.js +87 -0
  375. package/dist/cjs/test/unit/offlineVault/halfSigned.d.ts +2 -0
  376. package/dist/cjs/test/unit/offlineVault/halfSigned.d.ts.map +1 -0
  377. package/dist/cjs/test/unit/offlineVault/halfSigned.js +124 -0
  378. package/dist/cjs/test/unit/parseTransaction.d.ts +2 -0
  379. package/dist/cjs/test/unit/parseTransaction.d.ts.map +1 -0
  380. package/dist/cjs/test/unit/parseTransaction.js +155 -0
  381. package/dist/cjs/test/unit/pendingApprovalTxHexPsbt.d.ts +2 -0
  382. package/dist/cjs/test/unit/pendingApprovalTxHexPsbt.d.ts.map +1 -0
  383. package/dist/cjs/test/unit/pendingApprovalTxHexPsbt.js +99 -0
  384. package/dist/cjs/test/unit/postProcessPrebuild.d.ts +2 -0
  385. package/dist/cjs/test/unit/postProcessPrebuild.d.ts.map +1 -0
  386. package/dist/cjs/test/unit/postProcessPrebuild.js +65 -0
  387. package/dist/cjs/test/unit/prebuildAndSign.d.ts +2 -0
  388. package/dist/cjs/test/unit/prebuildAndSign.d.ts.map +1 -0
  389. package/dist/cjs/test/unit/prebuildAndSign.js +218 -0
  390. package/dist/cjs/test/unit/recovery/backupKeyRecovery.d.ts +2 -0
  391. package/dist/cjs/test/unit/recovery/backupKeyRecovery.d.ts.map +1 -0
  392. package/dist/cjs/test/unit/recovery/backupKeyRecovery.js +136 -0
  393. package/dist/cjs/test/unit/recovery/backupKeyRecoveryUnspentGathering.d.ts +2 -0
  394. package/dist/cjs/test/unit/recovery/backupKeyRecoveryUnspentGathering.d.ts.map +1 -0
  395. package/dist/cjs/test/unit/recovery/backupKeyRecoveryUnspentGathering.js +144 -0
  396. package/dist/cjs/test/unit/recovery/crossChainRecovery.d.ts +2 -0
  397. package/dist/cjs/test/unit/recovery/crossChainRecovery.d.ts.map +1 -0
  398. package/dist/cjs/test/unit/recovery/crossChainRecovery.js +297 -0
  399. package/dist/cjs/test/unit/recovery/formatBackupKeyRecoveryResult.d.ts +2 -0
  400. package/dist/cjs/test/unit/recovery/formatBackupKeyRecoveryResult.d.ts.map +1 -0
  401. package/dist/cjs/test/unit/recovery/formatBackupKeyRecoveryResult.js +189 -0
  402. package/dist/cjs/test/unit/recovery/mock.d.ts +37 -0
  403. package/dist/cjs/test/unit/recovery/mock.d.ts.map +1 -0
  404. package/dist/cjs/test/unit/recovery/mock.js +111 -0
  405. package/dist/cjs/test/unit/signTransaction.d.ts +2 -0
  406. package/dist/cjs/test/unit/signTransaction.d.ts.map +1 -0
  407. package/dist/cjs/test/unit/signTransaction.js +223 -0
  408. package/dist/cjs/test/unit/testSpoofTransaction.d.ts +2 -0
  409. package/dist/cjs/test/unit/testSpoofTransaction.d.ts.map +1 -0
  410. package/dist/cjs/test/unit/testSpoofTransaction.js +114 -0
  411. package/dist/cjs/test/unit/transaction/descriptor/explainPsbt.d.ts +2 -0
  412. package/dist/cjs/test/unit/transaction/descriptor/explainPsbt.d.ts.map +1 -0
  413. package/dist/cjs/test/unit/transaction/descriptor/explainPsbt.js +64 -0
  414. package/dist/cjs/test/unit/transaction/descriptor/fixtures.utils.d.ts +6 -0
  415. package/dist/cjs/test/unit/transaction/descriptor/fixtures.utils.d.ts.map +1 -0
  416. package/dist/cjs/test/unit/transaction/descriptor/fixtures.utils.js +51 -0
  417. package/dist/cjs/test/unit/transaction/descriptor/parse.d.ts +2 -0
  418. package/dist/cjs/test/unit/transaction/descriptor/parse.d.ts.map +1 -0
  419. package/dist/cjs/test/unit/transaction/descriptor/parse.js +138 -0
  420. package/dist/cjs/test/unit/transaction/descriptor/sign.d.ts +2 -0
  421. package/dist/cjs/test/unit/transaction/descriptor/sign.d.ts.map +1 -0
  422. package/dist/cjs/test/unit/transaction/descriptor/sign.js +76 -0
  423. package/dist/cjs/test/unit/transaction/descriptor/signTransactionE2E.d.ts +2 -0
  424. package/dist/cjs/test/unit/transaction/descriptor/signTransactionE2E.d.ts.map +1 -0
  425. package/dist/cjs/test/unit/transaction/descriptor/signTransactionE2E.js +100 -0
  426. package/dist/cjs/test/unit/transaction/descriptor/signTransactionGuard.d.ts +2 -0
  427. package/dist/cjs/test/unit/transaction/descriptor/signTransactionGuard.d.ts.map +1 -0
  428. package/dist/cjs/test/unit/transaction/descriptor/signTransactionGuard.js +84 -0
  429. package/dist/cjs/test/unit/transaction/descriptor/validatePolicy.d.ts +2 -0
  430. package/dist/cjs/test/unit/transaction/descriptor/validatePolicy.d.ts.map +1 -0
  431. package/dist/cjs/test/unit/transaction/descriptor/validatePolicy.js +81 -0
  432. package/dist/cjs/test/unit/transaction/fixedScript/explainPsbt.d.ts +2 -0
  433. package/dist/cjs/test/unit/transaction/fixedScript/explainPsbt.d.ts.map +1 -0
  434. package/dist/cjs/test/unit/transaction/fixedScript/explainPsbt.js +193 -0
  435. package/dist/cjs/test/unit/transaction/fixedScript/parsePsbt.d.ts +2 -0
  436. package/dist/cjs/test/unit/transaction/fixedScript/parsePsbt.d.ts.map +1 -0
  437. package/dist/cjs/test/unit/transaction/fixedScript/parsePsbt.js +287 -0
  438. package/dist/cjs/test/unit/transaction/fixedScript/replayProtection.d.ts +2 -0
  439. package/dist/cjs/test/unit/transaction/fixedScript/replayProtection.d.ts.map +1 -0
  440. package/dist/cjs/test/unit/transaction/fixedScript/replayProtection.js +60 -0
  441. package/dist/cjs/test/unit/transaction/fixedScript/signPsbt.d.ts +2 -0
  442. package/dist/cjs/test/unit/transaction/fixedScript/signPsbt.d.ts.map +1 -0
  443. package/dist/cjs/test/unit/transaction/fixedScript/signPsbt.js +98 -0
  444. package/dist/cjs/test/unit/transaction/outputDifference.d.ts +2 -0
  445. package/dist/cjs/test/unit/transaction/outputDifference.d.ts.map +1 -0
  446. package/dist/cjs/test/unit/transaction/outputDifference.js +117 -0
  447. package/dist/cjs/test/unit/transaction/recipient.d.ts +2 -0
  448. package/dist/cjs/test/unit/transaction/recipient.d.ts.map +1 -0
  449. package/dist/cjs/test/unit/transaction/recipient.js +52 -0
  450. package/dist/cjs/test/unit/transaction.d.ts +2 -0
  451. package/dist/cjs/test/unit/transaction.d.ts.map +1 -0
  452. package/dist/cjs/test/unit/transaction.js +301 -0
  453. package/dist/cjs/test/unit/txFormat.d.ts +30 -0
  454. package/dist/cjs/test/unit/txFormat.d.ts.map +1 -0
  455. package/dist/cjs/test/unit/txFormat.js +161 -0
  456. package/dist/cjs/test/unit/util/address.d.ts +13 -0
  457. package/dist/cjs/test/unit/util/address.d.ts.map +1 -0
  458. package/dist/cjs/test/unit/util/address.js +15 -0
  459. package/dist/cjs/test/unit/util/assert.d.ts +3 -0
  460. package/dist/cjs/test/unit/util/assert.d.ts.map +1 -0
  461. package/dist/cjs/test/unit/util/assert.js +24 -0
  462. package/dist/cjs/test/unit/util/fixtures.d.ts +13 -0
  463. package/dist/cjs/test/unit/util/fixtures.d.ts.map +1 -0
  464. package/dist/cjs/test/unit/util/fixtures.js +105 -0
  465. package/dist/cjs/test/unit/util/index.d.ts +11 -0
  466. package/dist/cjs/test/unit/util/index.d.ts.map +1 -0
  467. package/dist/cjs/test/unit/util/index.js +27 -0
  468. package/dist/cjs/test/unit/util/keychains.d.ts +55 -0
  469. package/dist/cjs/test/unit/util/keychains.d.ts.map +1 -0
  470. package/dist/cjs/test/unit/util/keychains.js +122 -0
  471. package/dist/cjs/test/unit/util/nockBitGo.d.ts +10 -0
  472. package/dist/cjs/test/unit/util/nockBitGo.d.ts.map +1 -0
  473. package/dist/cjs/test/unit/util/nockBitGo.js +27 -0
  474. package/dist/cjs/test/unit/util/nockIndexerAPI.d.ts +8 -0
  475. package/dist/cjs/test/unit/util/nockIndexerAPI.d.ts.map +1 -0
  476. package/dist/cjs/test/unit/util/nockIndexerAPI.js +23 -0
  477. package/dist/cjs/test/unit/util/psbt.d.ts +19 -0
  478. package/dist/cjs/test/unit/util/psbt.d.ts.map +1 -0
  479. package/dist/cjs/test/unit/util/psbt.js +21 -0
  480. package/dist/cjs/test/unit/util/transaction.d.ts +28 -0
  481. package/dist/cjs/test/unit/util/transaction.d.ts.map +1 -0
  482. package/dist/cjs/test/unit/util/transaction.js +131 -0
  483. package/dist/cjs/test/unit/util/unspents.d.ts +71 -0
  484. package/dist/cjs/test/unit/util/unspents.d.ts.map +1 -0
  485. package/dist/cjs/test/unit/util/unspents.js +224 -0
  486. package/dist/cjs/test/unit/util/utxoCoins.d.ts +30 -0
  487. package/dist/cjs/test/unit/util/utxoCoins.d.ts.map +1 -0
  488. package/dist/cjs/test/unit/util/utxoCoins.js +175 -0
  489. package/dist/cjs/test/unit/util/wallet.d.ts +4 -0
  490. package/dist/cjs/test/unit/util/wallet.d.ts.map +1 -0
  491. package/dist/cjs/test/unit/util/wallet.js +9 -0
  492. package/dist/cjs/test/unit/verifyTransaction.d.ts +2 -0
  493. package/dist/cjs/test/unit/verifyTransaction.d.ts.map +1 -0
  494. package/dist/cjs/test/unit/verifyTransaction.js +327 -0
  495. package/dist/cjs/test/unit/wallet.d.ts +2 -0
  496. package/dist/cjs/test/unit/wallet.d.ts.map +1 -0
  497. package/dist/cjs/test/unit/wallet.js +251 -0
  498. package/dist/cjs/test/unit/webauthn.d.ts +2 -0
  499. package/dist/cjs/test/unit/webauthn.d.ts.map +1 -0
  500. package/dist/cjs/test/unit/webauthn.js +73 -0
  501. package/dist/cjs/tsconfig.tsbuildinfo +1 -0
  502. package/dist/esm/abstractUtxoCoin.d.ts +473 -0
  503. package/dist/esm/abstractUtxoCoin.d.ts.map +1 -0
  504. package/dist/esm/abstractUtxoCoin.js +677 -0
  505. package/dist/esm/address/fixedScript.d.ts +44 -0
  506. package/dist/esm/address/fixedScript.d.ts.map +1 -0
  507. package/dist/esm/address/fixedScript.js +100 -0
  508. package/dist/esm/address/index.d.ts +2 -0
  509. package/dist/esm/address/index.d.ts.map +1 -0
  510. package/dist/esm/address/index.js +2 -0
  511. package/dist/esm/config.d.ts +9 -0
  512. package/dist/esm/config.js +11 -0
  513. package/dist/esm/descriptor/NamedDescriptor.d.ts +19 -0
  514. package/dist/esm/descriptor/NamedDescriptor.d.ts.map +1 -0
  515. package/dist/esm/descriptor/NamedDescriptor.js +37 -0
  516. package/dist/esm/descriptor/assertDescriptorWalletAddress.d.ts +5 -0
  517. package/dist/esm/descriptor/assertDescriptorWalletAddress.d.ts.map +1 -0
  518. package/dist/esm/descriptor/assertDescriptorWalletAddress.js +27 -0
  519. package/dist/esm/descriptor/builder/builder.d.ts +12 -0
  520. package/dist/esm/descriptor/builder/builder.d.ts.map +1 -0
  521. package/dist/esm/descriptor/builder/builder.js +34 -0
  522. package/dist/esm/descriptor/builder/index.d.ts +3 -0
  523. package/dist/esm/descriptor/builder/index.d.ts.map +1 -0
  524. package/dist/esm/descriptor/builder/index.js +3 -0
  525. package/dist/esm/descriptor/builder/parse.d.ts +5 -0
  526. package/dist/esm/descriptor/builder/parse.d.ts.map +1 -0
  527. package/dist/esm/descriptor/builder/parse.js +112 -0
  528. package/dist/esm/descriptor/createWallet/createDescriptorWallet.d.ts +20 -0
  529. package/dist/esm/descriptor/createWallet/createDescriptorWallet.d.ts.map +1 -0
  530. package/dist/esm/descriptor/createWallet/createDescriptorWallet.js +37 -0
  531. package/dist/esm/descriptor/createWallet/createDescriptors.d.ts +12 -0
  532. package/dist/esm/descriptor/createWallet/createDescriptors.d.ts.map +1 -0
  533. package/dist/esm/descriptor/createWallet/createDescriptors.js +29 -0
  534. package/dist/esm/descriptor/createWallet/index.d.ts +3 -0
  535. package/dist/esm/descriptor/createWallet/index.d.ts.map +1 -0
  536. package/dist/esm/descriptor/createWallet/index.js +3 -0
  537. package/dist/esm/descriptor/descriptorWallet.d.ts +19 -0
  538. package/dist/esm/descriptor/descriptorWallet.d.ts.map +1 -0
  539. package/dist/esm/descriptor/descriptorWallet.js +16 -0
  540. package/dist/esm/descriptor/index.d.ts +8 -0
  541. package/dist/esm/descriptor/index.d.ts.map +1 -0
  542. package/dist/esm/descriptor/index.js +7 -0
  543. package/dist/esm/descriptor/validatePolicy.d.ts +22 -0
  544. package/dist/esm/descriptor/validatePolicy.d.ts.map +1 -0
  545. package/dist/esm/descriptor/validatePolicy.js +80 -0
  546. package/dist/esm/impl/bch/bch.d.ts +22 -0
  547. package/dist/esm/impl/bch/bch.d.ts.map +1 -0
  548. package/dist/esm/impl/bch/bch.js +39 -0
  549. package/dist/esm/impl/bch/index.d.ts +3 -0
  550. package/dist/esm/impl/bch/index.d.ts.map +1 -0
  551. package/dist/esm/impl/bch/index.js +3 -0
  552. package/dist/esm/impl/bch/tbch.d.ts +12 -0
  553. package/dist/esm/impl/bch/tbch.d.ts.map +1 -0
  554. package/dist/esm/impl/bch/tbch.js +11 -0
  555. package/dist/esm/impl/bcha/bcha.d.ts +9 -0
  556. package/dist/esm/impl/bcha/bcha.d.ts.map +1 -0
  557. package/dist/esm/impl/bcha/bcha.js +11 -0
  558. package/dist/esm/impl/bcha/index.d.ts +3 -0
  559. package/dist/esm/impl/bcha/index.d.ts.map +1 -0
  560. package/dist/esm/impl/bcha/index.js +3 -0
  561. package/dist/esm/impl/bcha/tbcha.d.ts +12 -0
  562. package/dist/esm/impl/bcha/tbcha.d.ts.map +1 -0
  563. package/dist/esm/impl/bcha/tbcha.js +11 -0
  564. package/dist/esm/impl/bsv/bsv.d.ts +9 -0
  565. package/dist/esm/impl/bsv/bsv.d.ts.map +1 -0
  566. package/dist/esm/impl/bsv/bsv.js +11 -0
  567. package/dist/esm/impl/bsv/index.d.ts +3 -0
  568. package/dist/esm/impl/bsv/index.d.ts.map +1 -0
  569. package/dist/esm/impl/bsv/index.js +3 -0
  570. package/dist/esm/impl/bsv/tbsv.d.ts +12 -0
  571. package/dist/esm/impl/bsv/tbsv.d.ts.map +1 -0
  572. package/dist/esm/impl/bsv/tbsv.js +11 -0
  573. package/dist/esm/impl/btc/btc.d.ts +15 -0
  574. package/dist/esm/impl/btc/btc.d.ts.map +1 -0
  575. package/dist/esm/impl/btc/btc.js +18 -0
  576. package/dist/esm/impl/btc/index.d.ts +7 -0
  577. package/dist/esm/impl/btc/index.d.ts.map +1 -0
  578. package/dist/esm/impl/btc/index.js +7 -0
  579. package/dist/esm/impl/btc/inscriptionBuilder.d.ts +61 -0
  580. package/dist/esm/impl/btc/inscriptionBuilder.d.ts.map +1 -0
  581. package/dist/esm/impl/btc/inscriptionBuilder.js +164 -0
  582. package/dist/esm/impl/btc/tbtc.d.ts +12 -0
  583. package/dist/esm/impl/btc/tbtc.d.ts.map +1 -0
  584. package/dist/esm/impl/btc/tbtc.js +11 -0
  585. package/dist/esm/impl/btc/tbtc4.d.ts +12 -0
  586. package/dist/esm/impl/btc/tbtc4.d.ts.map +1 -0
  587. package/dist/esm/impl/btc/tbtc4.js +11 -0
  588. package/dist/esm/impl/btc/tbtcbgsig.d.ts +12 -0
  589. package/dist/esm/impl/btc/tbtcbgsig.d.ts.map +1 -0
  590. package/dist/esm/impl/btc/tbtcbgsig.js +11 -0
  591. package/dist/esm/impl/btc/tbtcsig.d.ts +12 -0
  592. package/dist/esm/impl/btc/tbtcsig.d.ts.map +1 -0
  593. package/dist/esm/impl/btc/tbtcsig.js +11 -0
  594. package/dist/esm/impl/btg/btg.d.ts +9 -0
  595. package/dist/esm/impl/btg/btg.d.ts.map +1 -0
  596. package/dist/esm/impl/btg/btg.js +11 -0
  597. package/dist/esm/impl/btg/index.d.ts +2 -0
  598. package/dist/esm/impl/btg/index.d.ts.map +1 -0
  599. package/dist/esm/impl/btg/index.js +2 -0
  600. package/dist/esm/impl/dash/dash.d.ts +9 -0
  601. package/dist/esm/impl/dash/dash.d.ts.map +1 -0
  602. package/dist/esm/impl/dash/dash.js +11 -0
  603. package/dist/esm/impl/dash/index.d.ts +3 -0
  604. package/dist/esm/impl/dash/index.d.ts.map +1 -0
  605. package/dist/esm/impl/dash/index.js +3 -0
  606. package/dist/esm/impl/dash/tdash.d.ts +12 -0
  607. package/dist/esm/impl/dash/tdash.d.ts.map +1 -0
  608. package/dist/esm/impl/dash/tdash.js +11 -0
  609. package/dist/esm/impl/doge/doge.d.ts +35 -0
  610. package/dist/esm/impl/doge/doge.d.ts.map +1 -0
  611. package/dist/esm/impl/doge/doge.js +75 -0
  612. package/dist/esm/impl/doge/index.d.ts +3 -0
  613. package/dist/esm/impl/doge/index.d.ts.map +1 -0
  614. package/dist/esm/impl/doge/index.js +3 -0
  615. package/dist/esm/impl/doge/tdoge.d.ts +12 -0
  616. package/dist/esm/impl/doge/tdoge.d.ts.map +1 -0
  617. package/dist/esm/impl/doge/tdoge.js +11 -0
  618. package/dist/esm/impl/index.d.ts +10 -0
  619. package/dist/esm/impl/index.d.ts.map +1 -0
  620. package/dist/esm/impl/index.js +10 -0
  621. package/dist/esm/impl/ltc/index.d.ts +3 -0
  622. package/dist/esm/impl/ltc/index.d.ts.map +1 -0
  623. package/dist/esm/impl/ltc/index.js +3 -0
  624. package/dist/esm/impl/ltc/ltc.d.ts +8 -0
  625. package/dist/esm/impl/ltc/ltc.d.ts.map +1 -0
  626. package/dist/esm/impl/ltc/ltc.js +11 -0
  627. package/dist/esm/impl/ltc/tltc.d.ts +8 -0
  628. package/dist/esm/impl/ltc/tltc.d.ts.map +1 -0
  629. package/dist/esm/impl/ltc/tltc.js +11 -0
  630. package/dist/esm/impl/zec/index.d.ts +3 -0
  631. package/dist/esm/impl/zec/index.d.ts.map +1 -0
  632. package/dist/esm/impl/zec/index.js +3 -0
  633. package/dist/esm/impl/zec/tzec.d.ts +9 -0
  634. package/dist/esm/impl/zec/tzec.d.ts.map +1 -0
  635. package/dist/esm/impl/zec/tzec.js +11 -0
  636. package/dist/esm/impl/zec/zec.d.ts +12 -0
  637. package/dist/esm/impl/zec/zec.d.ts.map +1 -0
  638. package/dist/esm/impl/zec/zec.js +11 -0
  639. package/dist/esm/index.d.ts +23 -0
  640. package/dist/esm/index.d.ts.map +1 -0
  641. package/dist/esm/index.js +23 -0
  642. package/dist/esm/keychains.d.ts +56 -0
  643. package/dist/esm/keychains.d.ts.map +1 -0
  644. package/dist/esm/keychains.js +99 -0
  645. package/dist/esm/names.d.ts +36 -0
  646. package/dist/esm/names.d.ts.map +1 -0
  647. package/dist/esm/names.js +184 -0
  648. package/dist/esm/offlineVault/OfflineVaultHalfSigned.d.ts +9 -0
  649. package/dist/esm/offlineVault/OfflineVaultHalfSigned.d.ts.map +1 -0
  650. package/dist/esm/offlineVault/OfflineVaultHalfSigned.js +20 -0
  651. package/dist/esm/offlineVault/OfflineVaultSignable.d.ts +46 -0
  652. package/dist/esm/offlineVault/OfflineVaultSignable.d.ts.map +1 -0
  653. package/dist/esm/offlineVault/OfflineVaultSignable.js +18 -0
  654. package/dist/esm/offlineVault/TransactionExplanation.d.ts +16 -0
  655. package/dist/esm/offlineVault/TransactionExplanation.d.ts.map +1 -0
  656. package/dist/esm/offlineVault/TransactionExplanation.js +12 -0
  657. package/dist/esm/offlineVault/descriptor/index.d.ts +2 -0
  658. package/dist/esm/offlineVault/descriptor/index.d.ts.map +1 -0
  659. package/dist/esm/offlineVault/descriptor/index.js +2 -0
  660. package/dist/esm/offlineVault/descriptor/transaction.d.ts +39 -0
  661. package/dist/esm/offlineVault/descriptor/transaction.d.ts.map +1 -0
  662. package/dist/esm/offlineVault/descriptor/transaction.js +41 -0
  663. package/dist/esm/offlineVault/index.d.ts +6 -0
  664. package/dist/esm/offlineVault/index.d.ts.map +1 -0
  665. package/dist/esm/offlineVault/index.js +4 -0
  666. package/dist/esm/recovery/RecoveryProvider.d.ts +20 -0
  667. package/dist/esm/recovery/RecoveryProvider.d.ts.map +1 -0
  668. package/dist/esm/recovery/RecoveryProvider.js +19 -0
  669. package/dist/esm/recovery/backupKeyRecovery.d.ts +158 -0
  670. package/dist/esm/recovery/backupKeyRecovery.d.ts.map +1 -0
  671. package/dist/esm/recovery/backupKeyRecovery.js +400 -0
  672. package/dist/esm/recovery/baseApi.d.ts +24 -0
  673. package/dist/esm/recovery/baseApi.d.ts.map +1 -0
  674. package/dist/esm/recovery/baseApi.js +64 -0
  675. package/dist/esm/recovery/coingeckoApi.d.ts +6 -0
  676. package/dist/esm/recovery/coingeckoApi.d.ts.map +1 -0
  677. package/dist/esm/recovery/coingeckoApi.js +40 -0
  678. package/dist/esm/recovery/crossChainRecovery.d.ts +97 -0
  679. package/dist/esm/recovery/crossChainRecovery.d.ts.map +1 -0
  680. package/dist/esm/recovery/crossChainRecovery.js +292 -0
  681. package/dist/esm/recovery/index.d.ts +7 -0
  682. package/dist/{src → esm}/recovery/index.d.ts.map +1 -1
  683. package/dist/esm/recovery/index.js +7 -0
  684. package/dist/esm/recovery/mempoolApi.d.ts +7 -0
  685. package/dist/{src → esm}/recovery/mempoolApi.d.ts.map +1 -1
  686. package/dist/esm/recovery/mempoolApi.js +29 -0
  687. package/dist/esm/recovery/psbt.d.ts +62 -0
  688. package/dist/esm/recovery/psbt.d.ts.map +1 -0
  689. package/dist/esm/recovery/psbt.js +145 -0
  690. package/dist/esm/tnumber.d.ts +4 -0
  691. package/dist/esm/tnumber.d.ts.map +1 -0
  692. package/dist/esm/tnumber.js +9 -0
  693. package/dist/esm/transaction/bip322.d.ts +27 -0
  694. package/dist/esm/transaction/bip322.d.ts.map +1 -0
  695. package/dist/esm/transaction/bip322.js +100 -0
  696. package/dist/esm/transaction/common/verifyPayGoAmount.d.ts +1 -0
  697. package/dist/esm/transaction/common/verifyPayGoAmount.d.ts.map +1 -0
  698. package/dist/esm/transaction/common/verifyPayGoAmount.js +1 -0
  699. package/dist/esm/transaction/decode.d.ts +25 -0
  700. package/dist/esm/transaction/decode.d.ts.map +1 -0
  701. package/dist/esm/transaction/decode.js +66 -0
  702. package/dist/esm/transaction/descriptor/explainPsbt.d.ts +5 -0
  703. package/dist/esm/transaction/descriptor/explainPsbt.d.ts.map +1 -0
  704. package/dist/esm/transaction/descriptor/explainPsbt.js +42 -0
  705. package/dist/esm/transaction/descriptor/index.d.ts +7 -0
  706. package/dist/esm/transaction/descriptor/index.d.ts.map +1 -0
  707. package/dist/esm/transaction/descriptor/index.js +6 -0
  708. package/dist/esm/transaction/descriptor/parse.d.ts +19 -0
  709. package/dist/esm/transaction/descriptor/parse.d.ts.map +1 -0
  710. package/dist/esm/transaction/descriptor/parse.js +80 -0
  711. package/dist/esm/transaction/descriptor/parseToAmountType.d.ts +14 -0
  712. package/dist/esm/transaction/descriptor/parseToAmountType.d.ts.map +1 -0
  713. package/dist/esm/transaction/descriptor/parseToAmountType.js +55 -0
  714. package/dist/esm/transaction/descriptor/recipient.d.ts +5 -0
  715. package/dist/esm/transaction/descriptor/recipient.d.ts.map +1 -0
  716. package/dist/esm/transaction/descriptor/recipient.js +2 -0
  717. package/dist/esm/transaction/descriptor/signPsbt.d.ts +24 -0
  718. package/dist/esm/transaction/descriptor/signPsbt.d.ts.map +1 -0
  719. package/dist/esm/transaction/descriptor/signPsbt.js +39 -0
  720. package/dist/esm/transaction/descriptor/verifyTransaction.d.ts +37 -0
  721. package/dist/esm/transaction/descriptor/verifyTransaction.d.ts.map +1 -0
  722. package/dist/esm/transaction/descriptor/verifyTransaction.js +70 -0
  723. package/dist/esm/transaction/explainTransaction.d.ts +21 -0
  724. package/dist/esm/transaction/explainTransaction.d.ts.map +1 -0
  725. package/dist/esm/transaction/explainTransaction.js +56 -0
  726. package/dist/esm/transaction/fetchInputs.d.ts +27 -0
  727. package/dist/esm/transaction/fetchInputs.d.ts.map +1 -0
  728. package/dist/esm/transaction/fetchInputs.js +74 -0
  729. package/dist/esm/transaction/fixedScript/SigningError.d.ts +24 -0
  730. package/dist/esm/transaction/fixedScript/SigningError.d.ts.map +1 -0
  731. package/dist/esm/transaction/fixedScript/SigningError.js +26 -0
  732. package/dist/esm/transaction/fixedScript/explainPsbtWasm.d.ts +45 -0
  733. package/dist/esm/transaction/fixedScript/explainPsbtWasm.d.ts.map +1 -0
  734. package/dist/esm/transaction/fixedScript/explainPsbtWasm.js +144 -0
  735. package/dist/esm/transaction/fixedScript/explainTransaction.d.ts +83 -0
  736. package/dist/esm/transaction/fixedScript/explainTransaction.d.ts.map +1 -0
  737. package/dist/esm/transaction/fixedScript/explainTransaction.js +309 -0
  738. package/dist/esm/transaction/fixedScript/index.d.ts +10 -0
  739. package/dist/esm/transaction/fixedScript/index.d.ts.map +1 -0
  740. package/dist/esm/transaction/fixedScript/index.js +9 -0
  741. package/dist/esm/transaction/fixedScript/musig2.d.ts +4 -0
  742. package/dist/esm/transaction/fixedScript/musig2.d.ts.map +1 -0
  743. package/dist/esm/transaction/fixedScript/musig2.js +2 -0
  744. package/dist/esm/transaction/fixedScript/parseOutput.d.ts +28 -0
  745. package/dist/esm/transaction/fixedScript/parseOutput.d.ts.map +1 -0
  746. package/dist/esm/transaction/fixedScript/parseOutput.js +209 -0
  747. package/dist/esm/transaction/fixedScript/parseTransaction.d.ts +8 -0
  748. package/dist/esm/transaction/fixedScript/parseTransaction.d.ts.map +1 -0
  749. package/dist/esm/transaction/fixedScript/parseTransaction.js +222 -0
  750. package/dist/esm/transaction/fixedScript/replayProtection.d.ts +10 -0
  751. package/dist/esm/transaction/fixedScript/replayProtection.d.ts.map +1 -0
  752. package/dist/esm/transaction/fixedScript/replayProtection.js +38 -0
  753. package/dist/esm/transaction/fixedScript/signLegacyTransaction.d.ts +32 -0
  754. package/dist/esm/transaction/fixedScript/signLegacyTransaction.d.ts.map +1 -0
  755. package/dist/esm/transaction/fixedScript/signLegacyTransaction.js +123 -0
  756. package/dist/esm/transaction/fixedScript/signPsbtUtxolib.d.ts +20 -0
  757. package/dist/esm/transaction/fixedScript/signPsbtUtxolib.d.ts.map +1 -0
  758. package/dist/esm/transaction/fixedScript/signPsbtUtxolib.js +117 -0
  759. package/dist/esm/transaction/fixedScript/signPsbtWasm.d.ts +20 -0
  760. package/dist/esm/transaction/fixedScript/signPsbtWasm.d.ts.map +1 -0
  761. package/dist/esm/transaction/fixedScript/signPsbtWasm.js +109 -0
  762. package/dist/esm/transaction/fixedScript/signTransaction.d.ts +34 -0
  763. package/dist/esm/transaction/fixedScript/signTransaction.d.ts.map +1 -0
  764. package/dist/esm/transaction/fixedScript/signTransaction.js +71 -0
  765. package/dist/esm/transaction/fixedScript/verifyTransaction.d.ts +21 -0
  766. package/dist/esm/transaction/fixedScript/verifyTransaction.d.ts.map +1 -0
  767. package/dist/esm/transaction/fixedScript/verifyTransaction.js +164 -0
  768. package/dist/esm/transaction/getPayGoVerificationPubkey.d.ts +9 -0
  769. package/dist/esm/transaction/getPayGoVerificationPubkey.d.ts.map +1 -0
  770. package/dist/esm/transaction/getPayGoVerificationPubkey.js +17 -0
  771. package/dist/esm/transaction/index.d.ts +10 -0
  772. package/dist/esm/transaction/index.d.ts.map +1 -0
  773. package/dist/esm/transaction/index.js +10 -0
  774. package/dist/esm/transaction/outputDifference.d.ts +44 -0
  775. package/dist/esm/transaction/outputDifference.d.ts.map +1 -0
  776. package/dist/esm/transaction/outputDifference.js +45 -0
  777. package/dist/esm/transaction/parseTransaction.d.ts +4 -0
  778. package/dist/esm/transaction/parseTransaction.d.ts.map +1 -0
  779. package/dist/esm/transaction/parseTransaction.js +12 -0
  780. package/dist/esm/transaction/recipient.d.ts +34 -0
  781. package/dist/esm/transaction/recipient.d.ts.map +1 -0
  782. package/dist/esm/transaction/recipient.js +61 -0
  783. package/dist/esm/transaction/signTransaction.d.ts +6 -0
  784. package/dist/esm/transaction/signTransaction.d.ts.map +1 -0
  785. package/dist/esm/transaction/signTransaction.js +73 -0
  786. package/dist/esm/transaction/types.d.ts +50 -0
  787. package/dist/esm/transaction/types.d.ts.map +1 -0
  788. package/dist/esm/transaction/types.js +4 -0
  789. package/dist/esm/transaction/verifyTransaction.d.ts +4 -0
  790. package/dist/esm/transaction/verifyTransaction.d.ts.map +1 -0
  791. package/dist/esm/transaction/verifyTransaction.js +14 -0
  792. package/dist/esm/unspent.d.ts +59 -0
  793. package/dist/esm/unspent.d.ts.map +1 -0
  794. package/dist/esm/unspent.js +15 -0
  795. package/dist/esm/verifyKey.d.ts +21 -0
  796. package/dist/esm/verifyKey.d.ts.map +1 -0
  797. package/dist/esm/verifyKey.js +100 -0
  798. package/dist/esm/wallet.d.ts +15 -0
  799. package/dist/esm/wallet.d.ts.map +1 -0
  800. package/dist/esm/wallet.js +5 -0
  801. package/dist/esm/wasmUtil.d.ts +34 -0
  802. package/dist/esm/wasmUtil.d.ts.map +1 -0
  803. package/dist/esm/wasmUtil.js +54 -0
  804. package/package.json +47 -20
  805. package/.eslintignore +0 -5
  806. package/CHANGELOG.md +0 -235
  807. package/dist/src/abstractUtxoCoin.d.ts +0 -392
  808. package/dist/src/abstractUtxoCoin.d.ts.map +0 -1
  809. package/dist/src/abstractUtxoCoin.js +0 -931
  810. package/dist/src/config.js +0 -14
  811. package/dist/src/index.d.ts +0 -6
  812. package/dist/src/index.d.ts.map +0 -1
  813. package/dist/src/index.js +0 -18
  814. package/dist/src/parseOutput.d.ts +0 -22
  815. package/dist/src/parseOutput.d.ts.map +0 -1
  816. package/dist/src/parseOutput.js +0 -181
  817. package/dist/src/recovery/RecoveryProvider.d.ts.map +0 -1
  818. package/dist/src/recovery/RecoveryProvider.js +0 -24
  819. package/dist/src/recovery/backupKeyRecovery.d.ts +0 -62
  820. package/dist/src/recovery/backupKeyRecovery.d.ts.map +0 -1
  821. package/dist/src/recovery/backupKeyRecovery.js +0 -293
  822. package/dist/src/recovery/baseApi.d.ts.map +0 -1
  823. package/dist/src/recovery/baseApi.js +0 -73
  824. package/dist/src/recovery/coingeckoApi.d.ts.map +0 -1
  825. package/dist/src/recovery/coingeckoApi.js +0 -47
  826. package/dist/src/recovery/crossChainRecovery.d.ts.map +0 -1
  827. package/dist/src/recovery/crossChainRecovery.js +0 -294
  828. package/dist/src/recovery/mempoolApi.js +0 -33
  829. package/dist/src/recovery/smartbitApi.d.ts +0 -11
  830. package/dist/src/recovery/smartbitApi.d.ts.map +0 -1
  831. package/dist/src/recovery/smartbitApi.js +0 -36
  832. package/dist/src/replayProtection.d.ts +0 -4
  833. package/dist/src/replayProtection.d.ts.map +0 -1
  834. package/dist/src/replayProtection.js +0 -21
  835. package/dist/src/sign.d.ts +0 -31
  836. package/dist/src/sign.d.ts.map +0 -1
  837. package/dist/src/sign.js +0 -104
  838. package/dist/tsconfig.tsbuildinfo +0 -8021
  839. /package/dist/{src → cjs/src}/config.d.ts +0 -0
  840. /package/dist/{src → cjs/src}/recovery/mempoolApi.d.ts +0 -0
  841. /package/dist/{src → esm}/config.d.ts.map +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"btc.d.ts","sourceRoot":"","sources":["../../../../src/impl/btc/btc.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,SAAS,EACT,gCAAgC,IAAI,oCAAoC,EACxE,MAAM,EACP,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,WAAW,gCAAiC,SAAQ,oCAAoC;IAC5F,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,GAAI,SAAQ,gBAAgB;IACvC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAS;gBAExB,KAAK,EAAE,SAAS;IAI5B,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,GAAG;IAI5C,iBAAiB,IAAI,OAAO;IAI5B,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB;CAG1D"}
@@ -0,0 +1,18 @@
1
+ import { AbstractUtxoCoin } from '../../abstractUtxoCoin';
2
+ import { InscriptionBuilder } from './inscriptionBuilder';
3
+ export class Btc extends AbstractUtxoCoin {
4
+ constructor(bitgo) {
5
+ super(bitgo);
6
+ this.name = 'btc';
7
+ }
8
+ static createInstance(bitgo) {
9
+ return new Btc(bitgo);
10
+ }
11
+ supportsLightning() {
12
+ return true;
13
+ }
14
+ getInscriptionBuilder(wallet) {
15
+ return new InscriptionBuilder(wallet, this);
16
+ }
17
+ }
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnRjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2ltcGwvYnRjL2J0Yy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFNQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUcxRCxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQU0xRCxNQUFNLE9BQU8sR0FBSSxTQUFRLGdCQUFnQjtJQUd2QyxZQUFZLEtBQWdCO1FBQzFCLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUhOLFNBQUksR0FBaUIsS0FBSyxDQUFDO0lBSXBDLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQWdCO1FBQ3BDLE9BQU8sSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVELGlCQUFpQjtRQUNmLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUVELHFCQUFxQixDQUFDLE1BQWM7UUFDbEMsT0FBTyxJQUFJLGtCQUFrQixDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM5QyxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBCaXRHb0Jhc2UsXG4gIFZlcmlmeVJlY292ZXJ5VHJhbnNhY3Rpb25PcHRpb25zIGFzIEJhc2VWZXJpZnlSZWNvdmVyeVRyYW5zYWN0aW9uT3B0aW9ucyxcbiAgV2FsbGV0LFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5cbmltcG9ydCB7IEFic3RyYWN0VXR4b0NvaW4gfSBmcm9tICcuLi8uLi9hYnN0cmFjdFV0eG9Db2luJztcbmltcG9ydCB7IFV0eG9Db2luTmFtZSB9IGZyb20gJy4uLy4uL25hbWVzJztcblxuaW1wb3J0IHsgSW5zY3JpcHRpb25CdWlsZGVyIH0gZnJvbSAnLi9pbnNjcmlwdGlvbkJ1aWxkZXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIFZlcmlmeVJlY292ZXJ5VHJhbnNhY3Rpb25PcHRpb25zIGV4dGVuZHMgQmFzZVZlcmlmeVJlY292ZXJ5VHJhbnNhY3Rpb25PcHRpb25zIHtcbiAgdHJhbnNhY3Rpb25IZXg6IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIEJ0YyBleHRlbmRzIEFic3RyYWN0VXR4b0NvaW4ge1xuICByZWFkb25seSBuYW1lOiBVdHhvQ29pbk5hbWUgPSAnYnRjJztcblxuICBjb25zdHJ1Y3RvcihiaXRnbzogQml0R29CYXNlKSB7XG4gICAgc3VwZXIoYml0Z28pO1xuICB9XG5cbiAgc3RhdGljIGNyZWF0ZUluc3RhbmNlKGJpdGdvOiBCaXRHb0Jhc2UpOiBCdGMge1xuICAgIHJldHVybiBuZXcgQnRjKGJpdGdvKTtcbiAgfVxuXG4gIHN1cHBvcnRzTGlnaHRuaW5nKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgZ2V0SW5zY3JpcHRpb25CdWlsZGVyKHdhbGxldDogV2FsbGV0KTogSW5zY3JpcHRpb25CdWlsZGVyIHtcbiAgICByZXR1cm4gbmV3IEluc2NyaXB0aW9uQnVpbGRlcih3YWxsZXQsIHRoaXMpO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,7 @@
1
+ export * from './btc';
2
+ export * from './tbtc';
3
+ export * from './tbtc4';
4
+ export * from './tbtcsig';
5
+ export * from './tbtcbgsig';
6
+ export * from './inscriptionBuilder';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/impl/btc/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC"}
@@ -0,0 +1,7 @@
1
+ export * from './btc';
2
+ export * from './tbtc';
3
+ export * from './tbtc4';
4
+ export * from './tbtcsig';
5
+ export * from './tbtcbgsig';
6
+ export * from './inscriptionBuilder';
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW1wbC9idGMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxPQUFPLENBQUM7QUFDdEIsY0FBYyxRQUFRLENBQUM7QUFDdkIsY0FBYyxTQUFTLENBQUM7QUFDeEIsY0FBYyxXQUFXLENBQUM7QUFDMUIsY0FBYyxhQUFhLENBQUM7QUFDNUIsY0FBYyxzQkFBc0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYnRjJztcbmV4cG9ydCAqIGZyb20gJy4vdGJ0Yyc7XG5leHBvcnQgKiBmcm9tICcuL3RidGM0JztcbmV4cG9ydCAqIGZyb20gJy4vdGJ0Y3NpZyc7XG5leHBvcnQgKiBmcm9tICcuL3RidGNiZ3NpZyc7XG5leHBvcnQgKiBmcm9tICcuL2luc2NyaXB0aW9uQnVpbGRlcic7XG4iXX0=
@@ -0,0 +1,61 @@
1
+ import { IInscriptionBuilder, IWallet, PrebuildTransactionResult, PreparedInscriptionRevealData, SubmitTransactionResponse } from '@bitgo-beta/sdk-core';
2
+ import { type TapLeafScript } from '@bitgo-beta/utxo-ord';
3
+ import { AbstractUtxoCoin } from '../../abstractUtxoCoin';
4
+ /** Key identifier for signing */
5
+ type SignerKey = 'user' | 'backup' | 'bitgo';
6
+ /** Unspent from wallet API (value may be number or bigint) */
7
+ type WalletUnspentLike = {
8
+ id: string;
9
+ value: number | bigint;
10
+ chain: number;
11
+ index: number;
12
+ };
13
+ export declare class InscriptionBuilder implements IInscriptionBuilder {
14
+ private readonly wallet;
15
+ private readonly coin;
16
+ constructor(wallet: IWallet, coin: AbstractUtxoCoin);
17
+ prepareReveal(inscriptionData: Buffer, contentType: string): Promise<PreparedInscriptionRevealData>;
18
+ private prepareTransferWithExtraInputs;
19
+ /**
20
+ * Build a transaction to send an inscription
21
+ * @param satPoint Satpoint you want to send
22
+ * @param recipient Address you want to send to
23
+ * @param feeRateSatKB Fee rate for transaction
24
+ * @param signer first signer of the transaction
25
+ * @param cosigner second signer of the transaction
26
+ * @param inscriptionConstraints.minChangeOutput (optional) the minimum size of the change output
27
+ * @param inscriptionConstraints.minInscriptionOutput (optional) the minimum number of sats of the output containing the inscription
28
+ * @param inscriptionConstraints.maxInscriptionOutput (optional) the maximum number of sats of the output containing the inscription
29
+ * @param changeAddressType Address type of the change address
30
+ */
31
+ prepareTransfer(satPoint: string, recipient: string, feeRateSatKB: number, { signer, cosigner, inscriptionConstraints, changeAddressType, txFormat, }: {
32
+ signer?: SignerKey;
33
+ cosigner?: SignerKey;
34
+ inscriptionConstraints?: {
35
+ minChangeOutput?: bigint;
36
+ minInscriptionOutput?: bigint;
37
+ maxInscriptionOutput?: bigint;
38
+ };
39
+ changeAddressType?: 'p2sh' | 'p2shP2wsh' | 'p2wsh' | 'p2tr' | 'p2trMusig2';
40
+ txFormat?: 'psbt' | 'legacy';
41
+ }): Promise<PrebuildTransactionResult>;
42
+ /**
43
+ *
44
+ * @param walletPassphrase
45
+ * @param tapLeafScript
46
+ * @param commitAddress
47
+ * @param unsignedCommitTx
48
+ * @param commitTransactionUnspents
49
+ * @param recipientAddress
50
+ * @param inscriptionData
51
+ */
52
+ signAndSendReveal(walletPassphrase: string, tapLeafScript: TapLeafScript, commitAddress: string, unsignedCommitTx: Buffer, commitTransactionUnspents: WalletUnspentLike[], recipientAddress: string, inscriptionData: Buffer): Promise<SubmitTransactionResponse>;
53
+ /**
54
+ * Sign and send a transaction that transfers an inscription
55
+ * @param walletPassphrase passphrase to unlock your keys
56
+ * @param txPrebuild this is the output of `inscription.prepareTransfer`
57
+ */
58
+ signAndSendTransfer(walletPassphrase: string, txPrebuild: PrebuildTransactionResult): Promise<SubmitTransactionResponse>;
59
+ }
60
+ export {};
61
+ //# sourceMappingURL=inscriptionBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inscriptionBuilder.d.ts","sourceRoot":"","sources":["../../../../src/impl/btc/inscriptionBuilder.ts"],"names":[],"mappings":"AAEA,OAAO,EAGL,mBAAmB,EACnB,OAAO,EAEP,yBAAyB,EACzB,6BAA6B,EAC7B,yBAAyB,EAG1B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAYL,KAAK,aAAa,EACnB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAI1D,iCAAiC;AACjC,KAAK,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE7C,8DAA8D;AAC9D,KAAK,iBAAiB,GAAG;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAIF,qBAAa,kBAAmB,YAAW,mBAAmB;IAC5D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAmB;gBAE5B,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB;IAK7C,aAAa,CAAC,eAAe,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,6BAA6B,CAAC;YA0B3F,8BAA8B;IA8E5C;;;;;;;;;;;OAWG;IACG,eAAe,CACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,EACE,MAAe,EACf,QAAkB,EAClB,sBAAsD,EACtD,iBAA2B,EAC3B,QAAiB,GAClB,EAAE;QACD,MAAM,CAAC,EAAE,SAAS,CAAC;QACnB,QAAQ,CAAC,EAAE,SAAS,CAAC;QACrB,sBAAsB,CAAC,EAAE;YACvB,eAAe,CAAC,EAAE,MAAM,CAAC;YACzB,oBAAoB,CAAC,EAAE,MAAM,CAAC;YAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAC;SAC/B,CAAC;QACF,iBAAiB,CAAC,EAAE,MAAM,GAAG,WAAW,GAAG,OAAO,GAAG,MAAM,GAAG,YAAY,CAAC;QAC3E,QAAQ,CAAC,EAAE,MAAM,GAAG,QAAQ,CAAC;KAC9B,GACA,OAAO,CAAC,yBAAyB,CAAC;IAmDrC;;;;;;;;;OASG;IACG,iBAAiB,CACrB,gBAAgB,EAAE,MAAM,EACxB,aAAa,EAAE,aAAa,EAC5B,aAAa,EAAE,MAAM,EACrB,gBAAgB,EAAE,MAAM,EACxB,yBAAyB,EAAE,iBAAiB,EAAE,EAC9C,gBAAgB,EAAE,MAAM,EACxB,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,yBAAyB,CAAC;IAgCrC;;;;OAIG;IACG,mBAAmB,CACvB,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,yBAAyB,GACpC,OAAO,CAAC,yBAAyB,CAAC;CAOtC"}
@@ -0,0 +1,164 @@
1
+ import assert from 'assert';
2
+ import { BaseCoin, KeyIndices, xprvToRawPrv, } from '@bitgo-beta/sdk-core';
3
+ import { createPsbtForSingleInscriptionPassingTransaction, DefaultInscriptionConstraints, inscriptions, parseSatPoint, isSatPoint, ErrorNoLayout, findOutputLayoutForWalletUnspents, MAX_UNSPENTS_FOR_OUTPUT_LAYOUT, } from '@bitgo-beta/utxo-ord';
4
+ import { BIP32, fixedScriptWallet } from '@bitgo/wasm-utxo';
5
+ import { fetchKeychains } from '../../keychains';
6
+ import { toUtxolibBIP32 } from '../../wasmUtil';
7
+ const SUPPLEMENTARY_UNSPENTS_MIN_VALUE_SATS = [0, 20000, 200000];
8
+ export class InscriptionBuilder {
9
+ constructor(wallet, coin) {
10
+ this.wallet = wallet;
11
+ this.coin = coin;
12
+ }
13
+ async prepareReveal(inscriptionData, contentType) {
14
+ const user = await this.wallet.baseCoin.keychains().get({ id: this.wallet.keyIds()[KeyIndices.USER] });
15
+ assert(user.pub);
16
+ const userKey = toUtxolibBIP32(BIP32.fromBase58(user.pub));
17
+ const { key: derivedKey } = BaseCoin.deriveKeyWithSeedBip32(userKey, inscriptionData.toString());
18
+ const result = inscriptions.createInscriptionRevealData(derivedKey.publicKey, contentType, inscriptionData, this.coin.name);
19
+ // Convert TapLeafScript to utxolib format for backwards compatibility
20
+ return {
21
+ address: result.address,
22
+ revealTransactionVSize: result.revealTransactionVSize,
23
+ tapLeafScript: {
24
+ controlBlock: Buffer.from(result.tapLeafScript.controlBlock),
25
+ script: Buffer.from(result.tapLeafScript.script),
26
+ leafVersion: result.tapLeafScript.leafVersion,
27
+ },
28
+ };
29
+ }
30
+ async prepareTransferWithExtraInputs(satPoint, feeRateSatKB, { signer, cosigner, inscriptionConstraints, txFormat, }, walletXpubs, outputs, inscriptionUnspents, supplementaryUnspentsMinValue) {
31
+ let supplementaryUnspents = [];
32
+ if (supplementaryUnspentsMinValue > 0) {
33
+ const response = await this.wallet.unspents({
34
+ minValue: supplementaryUnspentsMinValue,
35
+ });
36
+ // Filter out the inscription unspent from the supplementary unspents
37
+ supplementaryUnspents = response.unspents
38
+ .filter((unspent) => unspent.id !== inscriptionUnspents[0].id)
39
+ .slice(0, MAX_UNSPENTS_FOR_OUTPUT_LAYOUT - 1)
40
+ .map((unspent) => ({
41
+ id: unspent.id,
42
+ value: BigInt(unspent.value),
43
+ chain: unspent.chain,
44
+ index: unspent.index,
45
+ }));
46
+ }
47
+ const psbt = createPsbtForSingleInscriptionPassingTransaction(this.coin.name, {
48
+ walletKeys: walletXpubs,
49
+ signer,
50
+ cosigner,
51
+ }, inscriptionUnspents, satPoint, outputs, { feeRateSatKB, ...inscriptionConstraints }, { supplementaryUnspents });
52
+ if (!psbt) {
53
+ throw new Error('Fee too high for the selected unspent with this fee rate');
54
+ }
55
+ const allUnspents = [...inscriptionUnspents, ...supplementaryUnspents];
56
+ // TODO: Remove the call to this function because it's already called inside the createPsbt function above.
57
+ // Create & use a getFee function inside the created PSBT instead, lack of which necessitates a duplicate call here.
58
+ const outputLayout = findOutputLayoutForWalletUnspents(allUnspents, satPoint, outputs, {
59
+ feeRateSatKB,
60
+ ...inscriptionConstraints,
61
+ });
62
+ if (!outputLayout) {
63
+ throw new Error('Fee too high for the selected unspent with this fee rate');
64
+ }
65
+ return {
66
+ walletId: this.wallet.id(),
67
+ txHex: Buffer.from(psbt.serialize()).toString('hex'),
68
+ txInfo: { unspents: allUnspents },
69
+ feeInfo: { fee: Number(outputLayout.layout.feeOutput), feeString: outputLayout.layout.feeOutput.toString() },
70
+ };
71
+ }
72
+ /**
73
+ * Build a transaction to send an inscription
74
+ * @param satPoint Satpoint you want to send
75
+ * @param recipient Address you want to send to
76
+ * @param feeRateSatKB Fee rate for transaction
77
+ * @param signer first signer of the transaction
78
+ * @param cosigner second signer of the transaction
79
+ * @param inscriptionConstraints.minChangeOutput (optional) the minimum size of the change output
80
+ * @param inscriptionConstraints.minInscriptionOutput (optional) the minimum number of sats of the output containing the inscription
81
+ * @param inscriptionConstraints.maxInscriptionOutput (optional) the maximum number of sats of the output containing the inscription
82
+ * @param changeAddressType Address type of the change address
83
+ */
84
+ async prepareTransfer(satPoint, recipient, feeRateSatKB, { signer = 'user', cosigner = 'bitgo', inscriptionConstraints = DefaultInscriptionConstraints, changeAddressType = 'p2wsh', txFormat = 'psbt', }) {
85
+ assert(isSatPoint(satPoint));
86
+ const keychains = await fetchKeychains(this.coin, this.wallet);
87
+ const walletXpubs = [keychains.user.pub, keychains.backup.pub, keychains.bitgo.pub];
88
+ const parsedSatPoint = parseSatPoint(satPoint);
89
+ const transaction = await this.wallet.getTransaction({ txHash: parsedSatPoint.txid });
90
+ const output = transaction.outputs[parsedSatPoint.vout];
91
+ const unspents = [
92
+ {
93
+ id: `${parsedSatPoint.txid}:${parsedSatPoint.vout}`,
94
+ value: BigInt(output.value),
95
+ chain: output.chain,
96
+ index: output.index,
97
+ },
98
+ ];
99
+ const changeChain = fixedScriptWallet.ChainCode.value(changeAddressType, 'internal');
100
+ const changeAddress = await this.wallet.createAddress({
101
+ chain: changeChain,
102
+ });
103
+ const outputs = {
104
+ inscriptionRecipient: recipient,
105
+ changeOutputs: [
106
+ { chain: changeAddress.chain, index: changeAddress.index },
107
+ { chain: changeAddress.chain, index: changeAddress.index },
108
+ ],
109
+ };
110
+ for (const supplementaryUnspentsMinValue of SUPPLEMENTARY_UNSPENTS_MIN_VALUE_SATS) {
111
+ try {
112
+ return await this.prepareTransferWithExtraInputs(satPoint, feeRateSatKB, { signer, cosigner, inscriptionConstraints, txFormat }, walletXpubs, outputs, unspents, supplementaryUnspentsMinValue);
113
+ }
114
+ catch (error) {
115
+ if (!(error instanceof ErrorNoLayout)) {
116
+ throw error; // Propagate error if it's not an ErrorNoLayout
117
+ } // Otherwise continue trying with higher minValue for supplementary unspents
118
+ }
119
+ }
120
+ throw new Error('Fee too high for the selected unspent with this fee rate'); // Exhausted all tries to supplement
121
+ }
122
+ /**
123
+ *
124
+ * @param walletPassphrase
125
+ * @param tapLeafScript
126
+ * @param commitAddress
127
+ * @param unsignedCommitTx
128
+ * @param commitTransactionUnspents
129
+ * @param recipientAddress
130
+ * @param inscriptionData
131
+ */
132
+ async signAndSendReveal(walletPassphrase, tapLeafScript, commitAddress, unsignedCommitTx, commitTransactionUnspents, recipientAddress, inscriptionData) {
133
+ const userKeychain = await this.wallet.baseCoin.keychains().get({ id: this.wallet.keyIds()[KeyIndices.USER] });
134
+ const xprv = await this.wallet.getUserPrvAsync({ keychain: userKeychain, walletPassphrase });
135
+ const halfSignedCommitTransaction = (await this.wallet.signTransaction({
136
+ prv: xprv,
137
+ txPrebuild: {
138
+ txHex: unsignedCommitTx.toString('hex'),
139
+ txInfo: { unspents: commitTransactionUnspents },
140
+ },
141
+ }));
142
+ const derived = this.coin.deriveKeyWithSeed({ key: xprv, seed: inscriptionData.toString() });
143
+ const prv = xprvToRawPrv(derived.key);
144
+ const fullySignedRevealTransaction = inscriptions.signRevealTransaction(Buffer.from(prv, 'hex'), tapLeafScript, commitAddress, recipientAddress, Buffer.from(halfSignedCommitTransaction.txHex, 'hex'), this.coin.name);
145
+ return this.wallet.submitTransaction({
146
+ halfSigned: {
147
+ txHex: halfSignedCommitTransaction.txHex,
148
+ signedChildPsbt: Buffer.from(fullySignedRevealTransaction).toString('hex'),
149
+ },
150
+ });
151
+ }
152
+ /**
153
+ * Sign and send a transaction that transfers an inscription
154
+ * @param walletPassphrase passphrase to unlock your keys
155
+ * @param txPrebuild this is the output of `inscription.prepareTransfer`
156
+ */
157
+ async signAndSendTransfer(walletPassphrase, txPrebuild) {
158
+ const userKeychain = await this.wallet.baseCoin.keychains().get({ id: this.wallet.keyIds()[KeyIndices.USER] });
159
+ const prv = await this.wallet.getUserPrvAsync({ keychain: userKeychain, walletPassphrase });
160
+ const halfSigned = (await this.wallet.signTransaction({ prv, txPrebuild }));
161
+ return this.wallet.submitTransaction({ halfSigned });
162
+ }
163
+ }
164
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zY3JpcHRpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2ltcGwvYnRjL2luc2NyaXB0aW9uQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLE1BQU0sTUFBTSxRQUFRLENBQUM7QUFFNUIsT0FBTyxFQUNMLFFBQVEsRUFJUixVQUFVLEVBS1YsWUFBWSxHQUNiLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUNMLGdEQUFnRCxFQUNoRCw2QkFBNkIsRUFFN0IsWUFBWSxFQUNaLGFBQWEsRUFDYixVQUFVLEVBQ1YsYUFBYSxFQUNiLGlDQUFpQyxFQUNqQyw4QkFBOEIsR0FJL0IsTUFBTSxzQkFBc0IsQ0FBQztBQUM5QixPQUFPLEVBQUUsS0FBSyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFHNUQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQWFoRCxNQUFNLHFDQUFxQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEtBQU0sRUFBRSxNQUFPLENBQUMsQ0FBQztBQUVuRSxNQUFNLE9BQU8sa0JBQWtCO0lBSTdCLFlBQVksTUFBZSxFQUFFLElBQXNCO1FBQ2pELElBQUksQ0FBQyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO0lBQ25CLENBQUM7SUFFRCxLQUFLLENBQUMsYUFBYSxDQUFDLGVBQXVCLEVBQUUsV0FBbUI7UUFDOUQsTUFBTSxJQUFJLEdBQUcsTUFBTSxJQUFJLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FB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TUFBTSxFQUFFLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMvRyxNQUFNLEdBQUcsR0FBRyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLEVBQUUsUUFBUSxFQUFFLFlBQVksRUFBRSxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7UUFFNUYsTUFBTSxVQUFVLEdBQUcsQ0FBQyxNQUFNLElBQUksQ0FBQyxNQUFNLENBQUMsZUFBZSxDQUFDLEVBQUUsR0FBRyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQThCLENBQUM7UUFDekcsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGlCQUFpQixDQUFDLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBQztJQUN2RCxDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5cbmltcG9ydCB7XG4gIEJhc2VDb2luLFxuICBIYWxmU2lnbmVkVXR4b1RyYW5zYWN0aW9uLFxuICBJSW5zY3JpcHRpb25CdWlsZGVyLFxuICBJV2FsbGV0LFxuICBLZXlJbmRpY2VzLFxuICBQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0LFxuICBQcmVwYXJlZEluc2NyaXB0aW9uUmV2ZWFsRGF0YSxcbiAgU3VibWl0VHJhbnNhY3Rpb25SZXNwb25zZSxcbiAgVHJpcGxlLFxuICB4cHJ2VG9SYXdQcnYsXG59IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7XG4gIGNyZWF0ZVBzYnRGb3JTaW5nbGVJbnNjcmlwdGlvblBhc3NpbmdUcmFuc2FjdGlvbixcbiAgRGVmYXVsdEluc2NyaXB0aW9uQ29uc3RyYWludHMsXG4gIEluc2NyaXB0aW9uT3V0cHV0cyxcbiAgaW5zY3JpcHRpb25zLFxuICBwYXJzZVNhdFBvaW50LFxuICBpc1NhdFBvaW50LFxuICBFcnJvck5vTGF5b3V0LFxuICBmaW5kT3V0cHV0TGF5b3V0Rm9yV2FsbGV0VW5zcGVudHMsXG4gIE1BWF9VTlNQRU5UU19GT1JfT1VUUFVUX0xBWU9VVCxcbiAgU2F0UG9pbnQsXG4gIFdhbGxldFVuc3BlbnQsXG4gIHR5cGUgVGFwTGVhZlNjcmlwdCxcbn0gZnJvbSAnQGJpdGdvLWJldGEvdXR4by1vcmQnO1xuaW1wb3J0IHsgQklQMzIsIGZpeGVkU2NyaXB0V2FsbGV0IH0gZnJvbSAnQGJpdGdvL3dhc20tdXR4byc7XG5cbmltcG9ydCB7IEFic3RyYWN0VXR4b0NvaW4gfSBmcm9tICcuLi8uLi9hYnN0cmFjdFV0eG9Db2luJztcbmltcG9ydCB7IGZldGNoS2V5Y2hhaW5zIH0gZnJvbSAnLi4vLi4va2V5Y2hhaW5zJztcbmltcG9ydCB7IHRvVXR4b2xpYkJJUDMyIH0gZnJvbSAnLi4vLi4vd2FzbVV0aWwnO1xuXG4vKiogS2V5IGlkZW50aWZpZXIgZm9yIHNpZ25pbmcgKi9cbnR5cGUgU2lnbmVyS2V5ID0gJ3VzZXInIHwgJ2JhY2t1cCcgfCAnYml0Z28nO1xuXG4vKiogVW5zcGVudCBmcm9tIHdhbGxldCBBUEkgKHZhbHVlIG1heSBiZSBudW1iZXIgb3IgYmlnaW50KSAqL1xudHlwZSBXYWxsZXRVbnNwZW50TGlrZSA9IHtcbiAgaWQ6IHN0cmluZztcbiAgdmFsdWU6IG51bWJlciB8IGJpZ2ludDtcbiAgY2hhaW46IG51bWJlcjtcbiAgaW5kZXg6IG51bWJlcjtcbn07XG5cbmNvbnN0IFNVUFBMRU1FTlRBUllfVU5TUEVOVFNfTUlOX1ZBTFVFX1NBVFMgPSBbMCwgMjBfMDAwLCAyMDBfMDAwXTtcblxuZXhwb3J0IGNsYXNzIEluc2NyaXB0aW9uQnVpbGRlciBpbXBsZW1lbnRzIElJbnNjcmlwdGlvbkJ1aWxkZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IHdhbGxldDogSVdhbGxldDtcbiAgcHJpdmF0ZSByZWFkb25seSBjb2luOiBBYnN0cmFjdFV0eG9Db2luO1xuXG4gIGNvbnN0cnVjdG9yKHdhbGxldDogSVdhbGxldCwgY29pbjogQWJzdHJhY3RVdHhvQ29pbikge1xuICAgIHRoaXMud2FsbGV0ID0gd2FsbGV0O1xuICAgIHRoaXMuY29pbiA9IGNvaW47XG4gIH1cblxuICBhc3luYyBwcmVwYXJlUmV2ZWFsKGluc2NyaXB0aW9uRGF0YTogQnVmZmVyLCBjb250ZW50VHlwZTogc3RyaW5nKTogUHJvbWlzZTxQcmVwYXJlZEluc2NyaXB0aW9uUmV2ZWFsRGF0YT4ge1xuICAgIGNvbnN0IHVzZXIgPSBhd2FpdCB0aGlzLndhbGxldC5iYXNlQ29pbi5rZXljaGFpbnMoKS5nZXQoeyBpZDogdGhpcy53YWxsZXQua2V5SWRzKClbS2V5SW5kaWNlcy5VU0VSXSB9KTtcbiAgICBhc3NlcnQodXNlci5wdWIpO1xuXG4gICAgY29uc3QgdXNlcktleSA9IHRvVXR4b2xpYkJJUDMyKEJJUDMyLmZyb21CYXNlNTgodXNlci5wdWIpKTtcbiAgICBjb25zdCB7IGtleTogZGVyaXZlZEtleSB9ID0gQmFzZUNvaW4uZGVyaXZlS2V5V2l0aFNlZWRCaXAzMih1c2VyS2V5LCBpbnNjcmlwdGlvbkRhdGEudG9TdHJpbmcoKSk7XG5cbiAgICBjb25zdCByZXN1bHQgPSBpbnNjcmlwdGlvbnMuY3JlYXRlSW5zY3JpcHRpb25SZXZlYWxEYXRhKFxuICAgICAgZGVyaXZlZEtleS5wdWJsaWNLZXksXG4gICAgICBjb250ZW50VHlwZSxcbiAgICAgIGluc2NyaXB0aW9uRGF0YSxcbiAgICAgIHRoaXMuY29pbi5uYW1lXG4gICAgKTtcblxuICAgIC8vIENvbnZlcnQgVGFwTGVhZlNjcmlwdCB0byB1dHhvbGliIGZvcm1hdCBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcbiAgICByZXR1cm4ge1xuICAgICAgYWRkcmVzczogcmVzdWx0LmFkZHJlc3MsXG4gICAgICByZXZlYWxUcmFuc2FjdGlvblZTaXplOiByZXN1bHQucmV2ZWFsVHJhbnNhY3Rpb25WU2l6ZSxcbiAgICAgIHRhcExlYWZTY3JpcHQ6IHtcbiAgICAgICAgY29udHJvbEJsb2NrOiBCdWZmZXIuZnJvbShyZXN1bHQudGFwTGVhZlNjcmlwdC5jb250cm9sQmxvY2spLFxuICAgICAgICBzY3JpcHQ6IEJ1ZmZlci5mcm9tKHJlc3VsdC50YXBMZWFmU2NyaXB0LnNjcmlwdCksXG4gICAgICAgIGxlYWZWZXJzaW9uOiByZXN1bHQudGFwTGVhZlNjcmlwdC5sZWFmVmVyc2lvbixcbiAgICAgIH0sXG4gICAgfTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgcHJlcGFyZVRyYW5zZmVyV2l0aEV4dHJhSW5wdXRzKFxuICAgIHNhdFBvaW50OiBTYXRQb2ludCxcbiAgICBmZWVSYXRlU2F0S0I6IG51bWJlcixcbiAgICB7XG4gICAgICBzaWduZXIsXG4gICAgICBjb3NpZ25lcixcbiAgICAgIGluc2NyaXB0aW9uQ29uc3RyYWludHMsXG4gICAgICB0eEZvcm1hdCxcbiAgICB9OiB7XG4gICAgICBzaWduZXI6IFNpZ25lcktleTtcbiAgICAgIGNvc2lnbmVyOiBTaWduZXJLZXk7XG4gICAgICBpbnNjcmlwdGlvbkNvbnN0cmFpbnRzOiB7XG4gICAgICAgIG1pbkNoYW5nZU91dHB1dD86IGJpZ2ludDtcbiAgICAgICAgbWluSW5zY3JpcHRpb25PdXRwdXQ/OiBiaWdpbnQ7XG4gICAgICAgIG1heEluc2NyaXB0aW9uT3V0cHV0PzogYmlnaW50O1xuICAgICAgfTtcbiAgICAgIHR4Rm9ybWF0PzogJ3BzYnQnIHwgJ2xlZ2FjeSc7XG4gICAgfSxcbiAgICB3YWxsZXRYcHViczogVHJpcGxlPHN0cmluZz4sXG4gICAgb3V0cHV0czogSW5zY3JpcHRpb25PdXRwdXRzLFxuICAgIGluc2NyaXB0aW9uVW5zcGVudHM6IFdhbGxldFVuc3BlbnRbXSxcbiAgICBzdXBwbGVtZW50YXJ5VW5zcGVudHNNaW5WYWx1ZTogbnVtYmVyXG4gICk6IFByb21pc2U8UHJlYnVpbGRUcmFuc2FjdGlvblJlc3VsdD4ge1xuICAgIGxldCBzdXBwbGVtZW50YXJ5VW5zcGVudHM6IFdhbGxldFVuc3BlbnRbXSA9IFtdO1xuICAgIGlmIChzdXBwbGVtZW50YXJ5VW5zcGVudHNNaW5WYWx1ZSA+IDApIHtcbiAgICAgIGNvbnN0IHJlc3BvbnNlID0gYXdhaXQgdGhpcy53YWxsZXQudW5zcGVudHMoe1xuICAgICAgICBtaW5WYWx1ZTogc3VwcGxlbWVudGFyeVVuc3BlbnRzTWluVmFsdWUsXG4gICAgICB9KTtcbiAgICAgIC8vIEZpbHRlciBvdXQgdGhlIGluc2NyaXB0aW9uIHVuc3BlbnQgZnJvbSB0aGUgc3VwcGxlbWVudGFyeSB1bnNwZW50c1xuICAgICAgc3VwcGxlbWVudGFyeVVuc3BlbnRzID0gcmVzcG9uc2UudW5zcGVudHNcbiAgICAgICAgLmZpbHRlcigodW5zcGVudDogeyBpZDogc3RyaW5nIH0pID0+IHVuc3BlbnQuaWQgIT09IGluc2NyaXB0aW9uVW5zcGVudHNbMF0uaWQpXG4gICAgICAgIC5zbGljZSgwLCBNQVhfVU5TUEVOVFNfRk9SX09VVFBVVF9MQVlPVVQgLSAxKVxuICAgICAgICAubWFwKFxuICAgICAgICAgICh1bnNwZW50OiBXYWxsZXRVbnNwZW50TGlrZSk6IFdhbGxldFVuc3BlbnQgPT4gKHtcbiAgICAgICAgICAgIGlkOiB1bnNwZW50LmlkLFxuICAgICAgICAgICAgdmFsdWU6IEJpZ0ludCh1bnNwZW50LnZhbHVlKSxcbiAgICAgICAgICAgIGNoYWluOiB1bnNwZW50LmNoYWluLFxuICAgICAgICAgICAgaW5kZXg6IHVuc3BlbnQuaW5kZXgsXG4gICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBjb25zdCBwc2J0ID0gY3JlYXRlUHNidEZvclNpbmdsZUluc2NyaXB0aW9uUGFzc2luZ1RyYW5zYWN0aW9uKFxuICAgICAgdGhpcy5jb2luLm5hbWUsXG4gICAgICB7XG4gICAgICAgIHdhbGxldEtleXM6IHdhbGxldFhwdWJzLFxuICAgICAgICBzaWduZXIsXG4gICAgICAgIGNvc2lnbmVyLFxuICAgICAgfSxcbiAgICAgIGluc2NyaXB0aW9uVW5zcGVudHMsXG4gICAgICBzYXRQb2ludCxcbiAgICAgIG91dHB1dHMsXG4gICAgICB7IGZlZVJhdGVTYXRLQiwgLi4uaW5zY3JpcHRpb25Db25zdHJhaW50cyB9LFxuICAgICAgeyBzdXBwbGVtZW50YXJ5VW5zcGVudHMgfVxuICAgICk7XG4gICAgaWYgKCFwc2J0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZlZSB0b28gaGlnaCBmb3IgdGhlIHNlbGVjdGVkIHVuc3BlbnQgd2l0aCB0aGlzIGZlZSByYXRlJyk7XG4gICAgfVxuXG4gICAgY29uc3QgYWxsVW5zcGVudHMgPSBbLi4uaW5zY3JpcHRpb25VbnNwZW50cywgLi4uc3VwcGxlbWVudGFyeVVuc3BlbnRzXTtcblxuICAgIC8vIFRPRE86IFJlbW92ZSB0aGUgY2FsbCB0byB0aGlzIGZ1bmN0aW9uIGJlY2F1c2UgaXQncyBhbHJlYWR5IGNhbGxlZCBpbnNpZGUgdGhlIGNyZWF0ZVBzYnQgZnVuY3Rpb24gYWJvdmUuXG4gICAgLy8gQ3JlYXRlICYgdXNlIGEgZ2V0RmVlIGZ1bmN0aW9uIGluc2lkZSB0aGUgY3JlYXRlZCBQU0JUIGluc3RlYWQsIGxhY2sgb2Ygd2hpY2ggbmVjZXNzaXRhdGVzIGEgZHVwbGljYXRlIGNhbGwgaGVyZS5cbiAgICBjb25zdCBvdXRwdXRMYXlvdXQgPSBmaW5kT3V0cHV0TGF5b3V0Rm9yV2FsbGV0VW5zcGVudHMoYWxsVW5zcGVudHMsIHNhdFBvaW50LCBvdXRwdXRzLCB7XG4gICAgICBmZWVSYXRlU2F0S0IsXG4gICAgICAuLi5pbnNjcmlwdGlvbkNvbnN0cmFpbnRzLFxuICAgIH0pO1xuICAgIGlmICghb3V0cHV0TGF5b3V0KSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZlZSB0b28gaGlnaCBmb3IgdGhlIHNlbGVjdGVkIHVuc3BlbnQgd2l0aCB0aGlzIGZlZSByYXRlJyk7XG4gICAgfVxuICAgIHJldHVybiB7XG4gICAgICB3YWxsZXRJZDogdGhpcy53YWxsZXQuaWQoKSxcbiAgICAgIHR4SGV4OiBCdWZmZXIuZnJvbShwc2J0LnNlcmlhbGl6ZSgpKS50b1N0cmluZygnaGV4JyksXG4gICAgICB0eEluZm86IHsgdW5zcGVudHM6IGFsbFVuc3BlbnRzIH0sXG4gICAgICBmZWVJbmZvOiB7IGZlZTogTnVtYmVyKG91dHB1dExheW91dC5sYXlvdXQuZmVlT3V0cHV0KSwgZmVlU3RyaW5nOiBvdXRwdXRMYXlvdXQubGF5b3V0LmZlZU91dHB1dC50b1N0cmluZygpIH0sXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZCBhIHRyYW5zYWN0aW9uIHRvIHNlbmQgYW4gaW5zY3JpcHRpb25cbiAgICogQHBhcmFtIHNhdFBvaW50IFNhdHBvaW50IHlvdSB3YW50IHRvIHNlbmRcbiAgICogQHBhcmFtIHJlY2lwaWVudCBBZGRyZXNzIHlvdSB3YW50IHRvIHNlbmQgdG9cbiAgICogQHBhcmFtIGZlZVJhdGVTYXRLQiBGZWUgcmF0ZSBmb3IgdHJhbnNhY3Rpb25cbiAgICogQHBhcmFtIHNpZ25lciBmaXJzdCBzaWduZXIgb2YgdGhlIHRyYW5zYWN0aW9uXG4gICAqIEBwYXJhbSBjb3NpZ25lciBzZWNvbmQgc2lnbmVyIG9mIHRoZSB0cmFuc2FjdGlvblxuICAgKiBAcGFyYW0gaW5zY3JpcHRpb25Db25zdHJhaW50cy5taW5DaGFuZ2VPdXRwdXQgKG9wdGlvbmFsKSB0aGUgbWluaW11bSBzaXplIG9mIHRoZSBjaGFuZ2Ugb3V0cHV0XG4gICAqIEBwYXJhbSBpbnNjcmlwdGlvbkNvbnN0cmFpbnRzLm1pbkluc2NyaXB0aW9uT3V0cHV0IChvcHRpb25hbCkgdGhlIG1pbmltdW0gbnVtYmVyIG9mIHNhdHMgb2YgdGhlIG91dHB1dCBjb250YWluaW5nIHRoZSBpbnNjcmlwdGlvblxuICAgKiBAcGFyYW0gaW5zY3JpcHRpb25Db25zdHJhaW50cy5tYXhJbnNjcmlwdGlvbk91dHB1dCAob3B0aW9uYWwpIHRoZSBtYXhpbXVtIG51bWJlciBvZiBzYXRzIG9mIHRoZSBvdXRwdXQgY29udGFpbmluZyB0aGUgaW5zY3JpcHRpb25cbiAgICogQHBhcmFtIGNoYW5nZUFkZHJlc3NUeXBlIEFkZHJlc3MgdHlwZSBvZiB0aGUgY2hhbmdlIGFkZHJlc3NcbiAgICovXG4gIGFzeW5jIHByZXBhcmVUcmFuc2ZlcihcbiAgICBzYXRQb2ludDogc3RyaW5nLFxuICAgIHJlY2lwaWVudDogc3RyaW5nLFxuICAgIGZlZVJhdGVTYXRLQjogbnVtYmVyLFxuICAgIHtcbiAgICAgIHNpZ25lciA9ICd1c2VyJyxcbiAgICAgIGNvc2lnbmVyID0gJ2JpdGdvJyxcbiAgICAgIGluc2NyaXB0aW9uQ29uc3RyYWludHMgPSBEZWZhdWx0SW5zY3JpcHRpb25Db25zdHJhaW50cyxcbiAgICAgIGNoYW5nZUFkZHJlc3NUeXBlID0gJ3Ayd3NoJyxcbiAgICAgIHR4Rm9ybWF0ID0gJ3BzYnQnLFxuICAgIH06IHtcbiAgICAgIHNpZ25lcj86IFNpZ25lcktleTtcbiAgICAgIGNvc2lnbmVyPzogU2lnbmVyS2V5O1xuICAgICAgaW5zY3JpcHRpb25Db25zdHJhaW50cz86IHtcbiAgICAgICAgbWluQ2hhbmdlT3V0cHV0PzogYmlnaW50O1xuICAgICAgICBtaW5JbnNjcmlwdGlvbk91dHB1dD86IGJpZ2ludDtcbiAgICAgICAgbWF4SW5zY3JpcHRpb25PdXRwdXQ/OiBiaWdpbnQ7XG4gICAgICB9O1xuICAgICAgY2hhbmdlQWRkcmVzc1R5cGU/OiAncDJzaCcgfCAncDJzaFAyd3NoJyB8ICdwMndzaCcgfCAncDJ0cicgfCAncDJ0ck11c2lnMic7XG4gICAgICB0eEZvcm1hdD86ICdwc2J0JyB8ICdsZWdhY3knO1xuICAgIH1cbiAgKTogUHJvbWlzZTxQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0PiB7XG4gICAgYXNzZXJ0KGlzU2F0UG9pbnQoc2F0UG9pbnQpKTtcblxuICAgIGNvbnN0IGtleWNoYWlucyA9IGF3YWl0IGZldGNoS2V5Y2hhaW5zKHRoaXMuY29pbiwgdGhpcy53YWxsZXQpO1xuICAgIGNvbnN0IHdhbGxldFhwdWJzOiBUcmlwbGU8c3RyaW5nPiA9IFtrZXljaGFpbnMudXNlci5wdWIsIGtleWNoYWlucy5iYWNrdXAucHViLCBrZXljaGFpbnMuYml0Z28ucHViXTtcbiAgICBjb25zdCBwYXJzZWRTYXRQb2ludCA9IHBhcnNlU2F0UG9pbnQoc2F0UG9pbnQpO1xuICAgIGNvbnN0IHRyYW5zYWN0aW9uID0gYXdhaXQgdGhpcy53YWxsZXQuZ2V0VHJhbnNhY3Rpb24oeyB0eEhhc2g6IHBhcnNlZFNhdFBvaW50LnR4aWQgfSk7XG4gICAgY29uc3Qgb3V0cHV0ID0gdHJhbnNhY3Rpb24ub3V0cHV0c1twYXJzZWRTYXRQb2ludC52b3V0XTtcbiAgICBjb25zdCB1bnNwZW50czogV2FsbGV0VW5zcGVudFtdID0gW1xuICAgICAge1xuICAgICAgICBpZDogYCR7cGFyc2VkU2F0UG9pbnQudHhpZH06JHtwYXJzZWRTYXRQb2ludC52b3V0fWAsXG4gICAgICAgIHZhbHVlOiBCaWdJbnQob3V0cHV0LnZhbHVlKSxcbiAgICAgICAgY2hhaW46IG91dHB1dC5jaGFpbixcbiAgICAgICAgaW5kZXg6IG91dHB1dC5pbmRleCxcbiAgICAgIH0sXG4gICAgXTtcblxuICAgIGNvbnN0IGNoYW5nZUNoYWluID0gZml4ZWRTY3JpcHRXYWxsZXQuQ2hhaW5Db2RlLnZhbHVlKGNoYW5nZUFkZHJlc3NUeXBlLCAnaW50ZXJuYWwnKTtcblxuICAgIGNvbnN0IGNoYW5nZUFkZHJlc3MgPSBhd2FpdCB0aGlzLndhbGxldC5jcmVhdGVBZGRyZXNzKHtcbiAgICAgIGNoYWluOiBjaGFuZ2VDaGFpbixcbiAgICB9KTtcbiAgICBjb25zdCBvdXRwdXRzOiBJbnNjcmlwdGlvbk91dHB1dHMgPSB7XG4gICAgICBpbnNjcmlwdGlvblJlY2lwaWVudDogcmVjaXBpZW50LFxuICAgICAgY2hhbmdlT3V0cHV0czogW1xuICAgICAgICB7IGNoYWluOiBjaGFuZ2VBZGRyZXNzLmNoYWluLCBpbmRleDogY2hhbmdlQWRkcmVzcy5pbmRleCB9LFxuICAgICAgICB7IGNoYWluOiBjaGFuZ2VBZGRyZXNzLmNoYWluLCBpbmRleDogY2hhbmdlQWRkcmVzcy5pbmRleCB9LFxuICAgICAgXSxcbiAgICB9O1xuXG4gICAgZm9yIChjb25zdCBzdXBwbGVtZW50YXJ5VW5zcGVudHNNaW5WYWx1ZSBvZiBTVVBQTEVNRU5UQVJZX1VOU1BFTlRTX01JTl9WQUxVRV9TQVRTKSB7XG4gICAgICB0cnkge1xuICAgICAgICByZXR1cm4gYXdhaXQgdGhpcy5wcmVwYXJlVHJhbnNmZXJXaXRoRXh0cmFJbnB1dHMoXG4gICAgICAgICAgc2F0UG9pbnQsXG4gICAgICAgICAgZmVlUmF0ZVNhdEtCLFxuICAgICAgICAgIHsgc2lnbmVyLCBjb3NpZ25lciwgaW5zY3JpcHRpb25Db25zdHJhaW50cywgdHhGb3JtYXQgfSxcbiAgICAgICAgICB3YWxsZXRYcHVicyxcbiAgICAgICAgICBvdXRwdXRzLFxuICAgICAgICAgIHVuc3BlbnRzLFxuICAgICAgICAgIHN1cHBsZW1lbnRhcnlVbnNwZW50c01pblZhbHVlXG4gICAgICAgICk7XG4gICAgICB9IGNhdGNoIChlcnJvcikge1xuICAgICAgICBpZiAoIShlcnJvciBpbnN0YW5jZW9mIEVycm9yTm9MYXlvdXQpKSB7XG4gICAgICAgICAgdGhyb3cgZXJyb3I7IC8vIFByb3BhZ2F0ZSBlcnJvciBpZiBpdCdzIG5vdCBhbiBFcnJvck5vTGF5b3V0XG4gICAgICAgIH0gLy8gT3RoZXJ3aXNlIGNvbnRpbnVlIHRyeWluZyB3aXRoIGhpZ2hlciBtaW5WYWx1ZSBmb3Igc3VwcGxlbWVudGFyeSB1bnNwZW50c1xuICAgICAgfVxuICAgIH1cblxuICAgIHRocm93IG5ldyBFcnJvcignRmVlIHRvbyBoaWdoIGZvciB0aGUgc2VsZWN0ZWQgdW5zcGVudCB3aXRoIHRoaXMgZmVlIHJhdGUnKTsgLy8gRXhoYXVzdGVkIGFsbCB0cmllcyB0byBzdXBwbGVtZW50XG4gIH1cblxuICAvKipcbiAgICpcbiAgICogQHBhcmFtIHdhbGxldFBhc3NwaHJhc2VcbiAgICogQHBhcmFtIHRhcExlYWZTY3JpcHRcbiAgICogQHBhcmFtIGNvbW1pdEFkZHJlc3NcbiAgICogQHBhcmFtIHVuc2lnbmVkQ29tbWl0VHhcbiAgICogQHBhcmFtIGNvbW1pdFRyYW5zYWN0aW9uVW5zcGVudHNcbiAgICogQHBhcmFtIHJlY2lwaWVudEFkZHJlc3NcbiAgICogQHBhcmFtIGluc2NyaXB0aW9uRGF0YVxuICAgKi9cbiAgYXN5bmMgc2lnbkFuZFNlbmRSZXZlYWwoXG4gICAgd2FsbGV0UGFzc3BocmFzZTogc3RyaW5nLFxuICAgIHRhcExlYWZTY3JpcHQ6IFRhcExlYWZTY3JpcHQsXG4gICAgY29tbWl0QWRkcmVzczogc3RyaW5nLFxuICAgIHVuc2lnbmVkQ29tbWl0VHg6IEJ1ZmZlcixcbiAgICBjb21taXRUcmFuc2FjdGlvblVuc3BlbnRzOiBXYWxsZXRVbnNwZW50TGlrZVtdLFxuICAgIHJlY2lwaWVudEFkZHJlc3M6IHN0cmluZyxcbiAgICBpbnNjcmlwdGlvbkRhdGE6IEJ1ZmZlclxuICApOiBQcm9taXNlPFN1Ym1pdFRyYW5zYWN0aW9uUmVzcG9uc2U+IHtcbiAgICBjb25zdCB1c2VyS2V5Y2hhaW4gPSBhd2FpdCB0aGlzLndhbGxldC5iYXNlQ29pbi5rZXljaGFpbnMoKS5nZXQoeyBpZDogdGhpcy53YWxsZXQua2V5SWRzKClbS2V5SW5kaWNlcy5VU0VSXSB9KTtcbiAgICBjb25zdCB4cHJ2ID0gYXdhaXQgdGhpcy53YWxsZXQuZ2V0VXNlclBydkFzeW5jKHsga2V5Y2hhaW46IHVzZXJLZXljaGFpbiwgd2FsbGV0UGFzc3BocmFzZSB9KTtcblxuICAgIGNvbnN0IGhhbGZTaWduZWRDb21taXRUcmFuc2FjdGlvbiA9IChhd2FpdCB0aGlzLndhbGxldC5zaWduVHJhbnNhY3Rpb24oe1xuICAgICAgcHJ2OiB4cHJ2LFxuICAgICAgdHhQcmVidWlsZDoge1xuICAgICAgICB0eEhleDogdW5zaWduZWRDb21taXRUeC50b1N0cmluZygnaGV4JyksXG4gICAgICAgIHR4SW5mbzogeyB1bnNwZW50czogY29tbWl0VHJhbnNhY3Rpb25VbnNwZW50cyB9LFxuICAgICAgfSxcbiAgICB9KSkgYXMgSGFsZlNpZ25lZFV0eG9UcmFuc2FjdGlvbjtcblxuICAgIGNvbnN0IGRlcml2ZWQgPSB0aGlzLmNvaW4uZGVyaXZlS2V5V2l0aFNlZWQoeyBrZXk6IHhwcnYsIHNlZWQ6IGluc2NyaXB0aW9uRGF0YS50b1N0cmluZygpIH0pO1xuICAgIGNvbnN0IHBydiA9IHhwcnZUb1Jhd1BydihkZXJpdmVkLmtleSk7XG5cbiAgICBjb25zdCBmdWxseVNpZ25lZFJldmVhbFRyYW5zYWN0aW9uID0gaW5zY3JpcHRpb25zLnNpZ25SZXZlYWxUcmFuc2FjdGlvbihcbiAgICAgIEJ1ZmZlci5mcm9tKHBydiwgJ2hleCcpLFxuICAgICAgdGFwTGVhZlNjcmlwdCxcbiAgICAgIGNvbW1pdEFkZHJlc3MsXG4gICAgICByZWNpcGllbnRBZGRyZXNzLFxuICAgICAgQnVmZmVyLmZyb20oaGFsZlNpZ25lZENvbW1pdFRyYW5zYWN0aW9uLnR4SGV4LCAnaGV4JyksXG4gICAgICB0aGlzLmNvaW4ubmFtZVxuICAgICk7XG5cbiAgICByZXR1cm4gdGhpcy53YWxsZXQuc3VibWl0VHJhbnNhY3Rpb24oe1xuICAgICAgaGFsZlNpZ25lZDoge1xuICAgICAgICB0eEhleDogaGFsZlNpZ25lZENvbW1pdFRyYW5zYWN0aW9uLnR4SGV4LFxuICAgICAgICBzaWduZWRDaGlsZFBzYnQ6IEJ1ZmZlci5mcm9tKGZ1bGx5U2lnbmVkUmV2ZWFsVHJhbnNhY3Rpb24pLnRvU3RyaW5nKCdoZXgnKSxcbiAgICAgIH0sXG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogU2lnbiBhbmQgc2VuZCBhIHRyYW5zYWN0aW9uIHRoYXQgdHJhbnNmZXJzIGFuIGluc2NyaXB0aW9uXG4gICAqIEBwYXJhbSB3YWxsZXRQYXNzcGhyYXNlIHBhc3NwaHJhc2UgdG8gdW5sb2NrIHlvdXIga2V5c1xuICAgKiBAcGFyYW0gdHhQcmVidWlsZCB0aGlzIGlzIHRoZSBvdXRwdXQgb2YgYGluc2NyaXB0aW9uLnByZXBhcmVUcmFuc2ZlcmBcbiAgICovXG4gIGFzeW5jIHNpZ25BbmRTZW5kVHJhbnNmZXIoXG4gICAgd2FsbGV0UGFzc3BocmFzZTogc3RyaW5nLFxuICAgIHR4UHJlYnVpbGQ6IFByZWJ1aWxkVHJhbnNhY3Rpb25SZXN1bHRcbiAgKTogUHJvbWlzZTxTdWJtaXRUcmFuc2FjdGlvblJlc3BvbnNlPiB7XG4gICAgY29uc3QgdXNlcktleWNoYWluID0gYXdhaXQgdGhpcy53YWxsZXQuYmFzZUNvaW4ua2V5Y2hhaW5zKCkuZ2V0KHsgaWQ6IHRoaXMud2FsbGV0LmtleUlkcygpW0tleUluZGljZXMuVVNFUl0gfSk7XG4gICAgY29uc3QgcHJ2ID0gYXdhaXQgdGhpcy53YWxsZXQuZ2V0VXNlclBydkFzeW5jKHsga2V5Y2hhaW46IHVzZXJLZXljaGFpbiwgd2FsbGV0UGFzc3BocmFzZSB9KTtcblxuICAgIGNvbnN0IGhhbGZTaWduZWQgPSAoYXdhaXQgdGhpcy53YWxsZXQuc2lnblRyYW5zYWN0aW9uKHsgcHJ2LCB0eFByZWJ1aWxkIH0pKSBhcyBIYWxmU2lnbmVkVXR4b1RyYW5zYWN0aW9uO1xuICAgIHJldHVybiB0aGlzLndhbGxldC5zdWJtaXRUcmFuc2FjdGlvbih7IGhhbGZTaWduZWQgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @prettier
3
+ */
4
+ import { BitGoBase } from '@bitgo-beta/sdk-core';
5
+ import { UtxoCoinName } from '../../names';
6
+ import { Btc } from './btc';
7
+ export declare class Tbtc extends Btc {
8
+ readonly name: UtxoCoinName;
9
+ constructor(bitgo: BitGoBase);
10
+ static createInstance(bitgo: BitGoBase): Tbtc;
11
+ }
12
+ //# sourceMappingURL=tbtc.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tbtc.d.ts","sourceRoot":"","sources":["../../../../src/impl/btc/tbtc.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B,qBAAa,IAAK,SAAQ,GAAG;IAC3B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAU;gBAEzB,KAAK,EAAE,SAAS;IAI5B,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;CAG9C"}
@@ -0,0 +1,11 @@
1
+ import { Btc } from './btc';
2
+ export class Tbtc extends Btc {
3
+ constructor(bitgo) {
4
+ super(bitgo);
5
+ this.name = 'tbtc';
6
+ }
7
+ static createInstance(bitgo) {
8
+ return new Tbtc(bitgo);
9
+ }
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGJ0Yy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbXBsL2J0Yy90YnRjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFFNUIsTUFBTSxPQUFPLElBQUssU0FBUSxHQUFHO0lBRzNCLFlBQVksS0FBZ0I7UUFDMUIsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBSE4sU0FBSSxHQUFpQixNQUFNLENBQUM7SUFJckMsQ0FBQztJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBZ0I7UUFDcEMsT0FBTyxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN6QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwcmV0dGllclxuICovXG5pbXBvcnQgeyBCaXRHb0Jhc2UgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5cbmltcG9ydCB7IFV0eG9Db2luTmFtZSB9IGZyb20gJy4uLy4uL25hbWVzJztcblxuaW1wb3J0IHsgQnRjIH0gZnJvbSAnLi9idGMnO1xuXG5leHBvcnQgY2xhc3MgVGJ0YyBleHRlbmRzIEJ0YyB7XG4gIHJlYWRvbmx5IG5hbWU6IFV0eG9Db2luTmFtZSA9ICd0YnRjJztcblxuICBjb25zdHJ1Y3RvcihiaXRnbzogQml0R29CYXNlKSB7XG4gICAgc3VwZXIoYml0Z28pO1xuICB9XG5cbiAgc3RhdGljIGNyZWF0ZUluc3RhbmNlKGJpdGdvOiBCaXRHb0Jhc2UpOiBUYnRjIHtcbiAgICByZXR1cm4gbmV3IFRidGMoYml0Z28pO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @prettier
3
+ */
4
+ import { BitGoBase } from '@bitgo-beta/sdk-core';
5
+ import { UtxoCoinName } from '../../names';
6
+ import { Btc } from './btc';
7
+ export declare class Tbtc4 extends Btc {
8
+ readonly name: UtxoCoinName;
9
+ constructor(bitgo: BitGoBase);
10
+ static createInstance(bitgo: BitGoBase): Tbtc4;
11
+ }
12
+ //# sourceMappingURL=tbtc4.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tbtc4.d.ts","sourceRoot":"","sources":["../../../../src/impl/btc/tbtc4.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B,qBAAa,KAAM,SAAQ,GAAG;IAC5B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAW;gBAE1B,KAAK,EAAE,SAAS;IAI5B,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK;CAG/C"}
@@ -0,0 +1,11 @@
1
+ import { Btc } from './btc';
2
+ export class Tbtc4 extends Btc {
3
+ constructor(bitgo) {
4
+ super(bitgo);
5
+ this.name = 'tbtc4';
6
+ }
7
+ static createInstance(bitgo) {
8
+ return new Tbtc4(bitgo);
9
+ }
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGJ0YzQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW1wbC9idGMvdGJ0YzQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLE9BQU8sQ0FBQztBQUU1QixNQUFNLE9BQU8sS0FBTSxTQUFRLEdBQUc7SUFHNUIsWUFBWSxLQUFnQjtRQUMxQixLQUFLLENBQUMsS0FBSyxDQUFDLENBQUM7UUFITixTQUFJLEdBQWlCLE9BQU8sQ0FBQztJQUl0QyxDQUFDO0lBRUQsTUFBTSxDQUFDLGNBQWMsQ0FBQyxLQUFnQjtRQUNwQyxPQUFPLElBQUksS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQzFCLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQHByZXR0aWVyXG4gKi9cbmltcG9ydCB7IEJpdEdvQmFzZSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcblxuaW1wb3J0IHsgVXR4b0NvaW5OYW1lIH0gZnJvbSAnLi4vLi4vbmFtZXMnO1xuXG5pbXBvcnQgeyBCdGMgfSBmcm9tICcuL2J0Yyc7XG5cbmV4cG9ydCBjbGFzcyBUYnRjNCBleHRlbmRzIEJ0YyB7XG4gIHJlYWRvbmx5IG5hbWU6IFV0eG9Db2luTmFtZSA9ICd0YnRjNCc7XG5cbiAgY29uc3RydWN0b3IoYml0Z286IEJpdEdvQmFzZSkge1xuICAgIHN1cGVyKGJpdGdvKTtcbiAgfVxuXG4gIHN0YXRpYyBjcmVhdGVJbnN0YW5jZShiaXRnbzogQml0R29CYXNlKTogVGJ0YzQge1xuICAgIHJldHVybiBuZXcgVGJ0YzQoYml0Z28pO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @prettier
3
+ */
4
+ import { BitGoBase } from '@bitgo-beta/sdk-core';
5
+ import { UtxoCoinName } from '../../names';
6
+ import { Btc } from './btc';
7
+ export declare class Tbtcbgsig extends Btc {
8
+ readonly name: UtxoCoinName;
9
+ constructor(bitgo: BitGoBase);
10
+ static createInstance(bitgo: BitGoBase): Tbtcbgsig;
11
+ }
12
+ //# sourceMappingURL=tbtcbgsig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tbtcbgsig.d.ts","sourceRoot":"","sources":["../../../../src/impl/btc/tbtcbgsig.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B,qBAAa,SAAU,SAAQ,GAAG;IAChC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAe;gBAE9B,KAAK,EAAE,SAAS;IAI5B,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,SAAS;CAGnD"}
@@ -0,0 +1,11 @@
1
+ import { Btc } from './btc';
2
+ export class Tbtcbgsig extends Btc {
3
+ constructor(bitgo) {
4
+ super(bitgo);
5
+ this.name = 'tbtcbgsig';
6
+ }
7
+ static createInstance(bitgo) {
8
+ return new Tbtcbgsig(bitgo);
9
+ }
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGJ0Y2Jnc2lnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2ltcGwvYnRjL3RidGNiZ3NpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQSxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBRTVCLE1BQU0sT0FBTyxTQUFVLFNBQVEsR0FBRztJQUdoQyxZQUFZLEtBQWdCO1FBQzFCLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUhOLFNBQUksR0FBaUIsV0FBVyxDQUFDO0lBSTFDLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQWdCO1FBQ3BDLE9BQU8sSUFBSSxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDOUIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAcHJldHRpZXJcbiAqL1xuaW1wb3J0IHsgQml0R29CYXNlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuXG5pbXBvcnQgeyBVdHhvQ29pbk5hbWUgfSBmcm9tICcuLi8uLi9uYW1lcyc7XG5cbmltcG9ydCB7IEJ0YyB9IGZyb20gJy4vYnRjJztcblxuZXhwb3J0IGNsYXNzIFRidGNiZ3NpZyBleHRlbmRzIEJ0YyB7XG4gIHJlYWRvbmx5IG5hbWU6IFV0eG9Db2luTmFtZSA9ICd0YnRjYmdzaWcnO1xuXG4gIGNvbnN0cnVjdG9yKGJpdGdvOiBCaXRHb0Jhc2UpIHtcbiAgICBzdXBlcihiaXRnbyk7XG4gIH1cblxuICBzdGF0aWMgY3JlYXRlSW5zdGFuY2UoYml0Z286IEJpdEdvQmFzZSk6IFRidGNiZ3NpZyB7XG4gICAgcmV0dXJuIG5ldyBUYnRjYmdzaWcoYml0Z28pO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @prettier
3
+ */
4
+ import { BitGoBase } from '@bitgo-beta/sdk-core';
5
+ import { UtxoCoinName } from '../../names';
6
+ import { Btc } from './btc';
7
+ export declare class Tbtcsig extends Btc {
8
+ readonly name: UtxoCoinName;
9
+ constructor(bitgo: BitGoBase);
10
+ static createInstance(bitgo: BitGoBase): Tbtcsig;
11
+ }
12
+ //# sourceMappingURL=tbtcsig.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tbtcsig.d.ts","sourceRoot":"","sources":["../../../../src/impl/btc/tbtcsig.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAE5B,qBAAa,OAAQ,SAAQ,GAAG;IAC9B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAa;gBAE5B,KAAK,EAAE,SAAS;IAI5B,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO;CAGjD"}
@@ -0,0 +1,11 @@
1
+ import { Btc } from './btc';
2
+ export class Tbtcsig extends Btc {
3
+ constructor(bitgo) {
4
+ super(bitgo);
5
+ this.name = 'tbtcsig';
6
+ }
7
+ static createInstance(bitgo) {
8
+ return new Tbtcsig(bitgo);
9
+ }
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGJ0Y3NpZy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbXBsL2J0Yy90YnRjc2lnLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFFNUIsTUFBTSxPQUFPLE9BQVEsU0FBUSxHQUFHO0lBRzlCLFlBQVksS0FBZ0I7UUFDMUIsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBSE4sU0FBSSxHQUFpQixTQUFTLENBQUM7SUFJeEMsQ0FBQztJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBZ0I7UUFDcEMsT0FBTyxJQUFJLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUM1QixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwcmV0dGllclxuICovXG5pbXBvcnQgeyBCaXRHb0Jhc2UgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5cbmltcG9ydCB7IFV0eG9Db2luTmFtZSB9IGZyb20gJy4uLy4uL25hbWVzJztcblxuaW1wb3J0IHsgQnRjIH0gZnJvbSAnLi9idGMnO1xuXG5leHBvcnQgY2xhc3MgVGJ0Y3NpZyBleHRlbmRzIEJ0YyB7XG4gIHJlYWRvbmx5IG5hbWU6IFV0eG9Db2luTmFtZSA9ICd0YnRjc2lnJztcblxuICBjb25zdHJ1Y3RvcihiaXRnbzogQml0R29CYXNlKSB7XG4gICAgc3VwZXIoYml0Z28pO1xuICB9XG5cbiAgc3RhdGljIGNyZWF0ZUluc3RhbmNlKGJpdGdvOiBCaXRHb0Jhc2UpOiBUYnRjc2lnIHtcbiAgICByZXR1cm4gbmV3IFRidGNzaWcoYml0Z28pO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,9 @@
1
+ import { BitGoBase } from '@bitgo-beta/sdk-core';
2
+ import { AbstractUtxoCoin } from '../../abstractUtxoCoin';
3
+ import { UtxoCoinName } from '../../names';
4
+ export declare class Btg extends AbstractUtxoCoin {
5
+ readonly name: UtxoCoinName;
6
+ constructor(bitgo: BitGoBase);
7
+ static createInstance(bitgo: BitGoBase): Btg;
8
+ }
9
+ //# sourceMappingURL=btg.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"btg.d.ts","sourceRoot":"","sources":["../../../../src/impl/btg/btg.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,qBAAa,GAAI,SAAQ,gBAAgB;IACvC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAS;gBAExB,KAAK,EAAE,SAAS;IAI5B,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,GAAG;CAG7C"}
@@ -0,0 +1,11 @@
1
+ import { AbstractUtxoCoin } from '../../abstractUtxoCoin';
2
+ export class Btg extends AbstractUtxoCoin {
3
+ constructor(bitgo) {
4
+ super(bitgo);
5
+ this.name = 'btg';
6
+ }
7
+ static createInstance(bitgo) {
8
+ return new Btg(bitgo);
9
+ }
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnRnLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2ltcGwvYnRnL2J0Zy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUcxRCxNQUFNLE9BQU8sR0FBSSxTQUFRLGdCQUFnQjtJQUd2QyxZQUFZLEtBQWdCO1FBQzFCLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUhOLFNBQUksR0FBaUIsS0FBSyxDQUFDO0lBSXBDLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQWdCO1FBQ3BDLE9BQU8sSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQml0R29CYXNlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuXG5pbXBvcnQgeyBBYnN0cmFjdFV0eG9Db2luIH0gZnJvbSAnLi4vLi4vYWJzdHJhY3RVdHhvQ29pbic7XG5pbXBvcnQgeyBVdHhvQ29pbk5hbWUgfSBmcm9tICcuLi8uLi9uYW1lcyc7XG5cbmV4cG9ydCBjbGFzcyBCdGcgZXh0ZW5kcyBBYnN0cmFjdFV0eG9Db2luIHtcbiAgcmVhZG9ubHkgbmFtZTogVXR4b0NvaW5OYW1lID0gJ2J0Zyc7XG5cbiAgY29uc3RydWN0b3IoYml0Z286IEJpdEdvQmFzZSkge1xuICAgIHN1cGVyKGJpdGdvKTtcbiAgfVxuXG4gIHN0YXRpYyBjcmVhdGVJbnN0YW5jZShiaXRnbzogQml0R29CYXNlKTogQnRnIHtcbiAgICByZXR1cm4gbmV3IEJ0ZyhiaXRnbyk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,2 @@
1
+ export * from './btg';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/impl/btg/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './btg';
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW1wbC9idGcvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxPQUFPLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2J0Zyc7XG4iXX0=
@@ -0,0 +1,9 @@
1
+ import { BitGoBase } from '@bitgo-beta/sdk-core';
2
+ import { AbstractUtxoCoin } from '../../abstractUtxoCoin';
3
+ import { UtxoCoinName } from '../../names';
4
+ export declare class Dash extends AbstractUtxoCoin {
5
+ readonly name: UtxoCoinName;
6
+ constructor(bitgo: BitGoBase);
7
+ static createInstance(bitgo: BitGoBase): Dash;
8
+ }
9
+ //# sourceMappingURL=dash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dash.d.ts","sourceRoot":"","sources":["../../../../src/impl/dash/dash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,qBAAa,IAAK,SAAQ,gBAAgB;IACxC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAU;gBAEzB,KAAK,EAAE,SAAS;IAI5B,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;CAG9C"}
@@ -0,0 +1,11 @@
1
+ import { AbstractUtxoCoin } from '../../abstractUtxoCoin';
2
+ export class Dash extends AbstractUtxoCoin {
3
+ constructor(bitgo) {
4
+ super(bitgo);
5
+ this.name = 'dash';
6
+ }
7
+ static createInstance(bitgo) {
8
+ return new Dash(bitgo);
9
+ }
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGFzaC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9pbXBsL2Rhc2gvZGFzaC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUcxRCxNQUFNLE9BQU8sSUFBSyxTQUFRLGdCQUFnQjtJQUd4QyxZQUFZLEtBQWdCO1FBQzFCLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUhOLFNBQUksR0FBaUIsTUFBTSxDQUFDO0lBSXJDLENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQWdCO1FBQ3BDLE9BQU8sSUFBSSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDekIsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQml0R29CYXNlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuXG5pbXBvcnQgeyBBYnN0cmFjdFV0eG9Db2luIH0gZnJvbSAnLi4vLi4vYWJzdHJhY3RVdHhvQ29pbic7XG5pbXBvcnQgeyBVdHhvQ29pbk5hbWUgfSBmcm9tICcuLi8uLi9uYW1lcyc7XG5cbmV4cG9ydCBjbGFzcyBEYXNoIGV4dGVuZHMgQWJzdHJhY3RVdHhvQ29pbiB7XG4gIHJlYWRvbmx5IG5hbWU6IFV0eG9Db2luTmFtZSA9ICdkYXNoJztcblxuICBjb25zdHJ1Y3RvcihiaXRnbzogQml0R29CYXNlKSB7XG4gICAgc3VwZXIoYml0Z28pO1xuICB9XG5cbiAgc3RhdGljIGNyZWF0ZUluc3RhbmNlKGJpdGdvOiBCaXRHb0Jhc2UpOiBEYXNoIHtcbiAgICByZXR1cm4gbmV3IERhc2goYml0Z28pO1xuICB9XG59XG4iXX0=
@@ -0,0 +1,3 @@
1
+ export * from './dash';
2
+ export * from './tdash';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/impl/dash/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './dash';
2
+ export * from './tdash';
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW1wbC9kYXNoL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9kYXNoJztcbmV4cG9ydCAqIGZyb20gJy4vdGRhc2gnO1xuIl19
@@ -0,0 +1,12 @@
1
+ /**
2
+ * @prettier
3
+ */
4
+ import { BitGoBase } from '@bitgo-beta/sdk-core';
5
+ import { UtxoCoinName } from '../../names';
6
+ import { Dash } from './dash';
7
+ export declare class Tdash extends Dash {
8
+ readonly name: UtxoCoinName;
9
+ constructor(bitgo: BitGoBase);
10
+ static createInstance(bitgo: BitGoBase): Tdash;
11
+ }
12
+ //# sourceMappingURL=tdash.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tdash.d.ts","sourceRoot":"","sources":["../../../../src/impl/dash/tdash.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,qBAAa,KAAM,SAAQ,IAAI;IAC7B,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAW;gBAE1B,KAAK,EAAE,SAAS;IAG5B,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,KAAK;CAG/C"}
@@ -0,0 +1,11 @@
1
+ import { Dash } from './dash';
2
+ export class Tdash extends Dash {
3
+ constructor(bitgo) {
4
+ super(bitgo);
5
+ this.name = 'tdash';
6
+ }
7
+ static createInstance(bitgo) {
8
+ return new Tdash(bitgo);
9
+ }
10
+ }
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGRhc2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvaW1wbC9kYXNoL3RkYXNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQU9BLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxRQUFRLENBQUM7QUFFOUIsTUFBTSxPQUFPLEtBQU0sU0FBUSxJQUFJO0lBRzdCLFlBQVksS0FBZ0I7UUFDMUIsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBSE4sU0FBSSxHQUFpQixPQUFPLENBQUM7SUFJdEMsQ0FBQztJQUNELE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBZ0I7UUFDcEMsT0FBTyxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMxQixDQUFDO0NBQ0YiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBwcmV0dGllclxuICovXG5pbXBvcnQgeyBCaXRHb0Jhc2UgfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5cbmltcG9ydCB7IFV0eG9Db2luTmFtZSB9IGZyb20gJy4uLy4uL25hbWVzJztcblxuaW1wb3J0IHsgRGFzaCB9IGZyb20gJy4vZGFzaCc7XG5cbmV4cG9ydCBjbGFzcyBUZGFzaCBleHRlbmRzIERhc2gge1xuICByZWFkb25seSBuYW1lOiBVdHhvQ29pbk5hbWUgPSAndGRhc2gnO1xuXG4gIGNvbnN0cnVjdG9yKGJpdGdvOiBCaXRHb0Jhc2UpIHtcbiAgICBzdXBlcihiaXRnbyk7XG4gIH1cbiAgc3RhdGljIGNyZWF0ZUluc3RhbmNlKGJpdGdvOiBCaXRHb0Jhc2UpOiBUZGFzaCB7XG4gICAgcmV0dXJuIG5ldyBUZGFzaChiaXRnbyk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,35 @@
1
+ import { BitGoBase, HalfSignedUtxoTransaction, SignedTransaction } from '@bitgo-beta/sdk-core';
2
+ import { bitgo } from '@bitgo-beta/utxo-lib';
3
+ import { AbstractUtxoCoin, SignTransactionOptions, ExplainTransactionOptions, ParseTransactionOptions, VerifyTransactionOptions, RecoverFromWrongChainOptions, TransactionInfo, TransactionPrebuild } from '../../abstractUtxoCoin';
4
+ import { UtxoCoinName } from '../../names';
5
+ import { ParsedTransaction } from '../../transaction/types';
6
+ import type { TransactionExplanation } from '../../transaction/fixedScript/explainTransaction';
7
+ import type { CrossChainRecoverySigned, CrossChainRecoveryUnsigned } from '../../recovery/crossChainRecovery';
8
+ import type { Unspent } from '../../unspent';
9
+ type UnspentJSON = Unspent<number> & {
10
+ valueString: string;
11
+ };
12
+ type TransactionInfoJSON = TransactionInfo<number> & {
13
+ unspents: UnspentJSON[];
14
+ };
15
+ type TransactionPrebuildJSON = TransactionPrebuild<number> & {
16
+ txInfo: TransactionInfoJSON;
17
+ };
18
+ export declare class Doge extends AbstractUtxoCoin {
19
+ readonly name: UtxoCoinName;
20
+ constructor(bitgo: BitGoBase);
21
+ static createInstance(bitgo: BitGoBase): Doge;
22
+ supportsBlockTarget(): boolean;
23
+ createTransactionFromHex<TNumber extends number | bigint = bigint>(hex: string): bitgo.UtxoTransaction<TNumber>;
24
+ parseTransaction<TNumber extends number | bigint = bigint>(params: ParseTransactionOptions<TNumber>): Promise<ParsedTransaction<TNumber>>;
25
+ verifyTransaction<TNumber extends number | bigint = bigint>(params: VerifyTransactionOptions<TNumber> | (VerifyTransactionOptions<TNumber> & {
26
+ txPrebuild: TransactionPrebuildJSON;
27
+ })): Promise<boolean>;
28
+ signTransaction<TNumber extends number | bigint = bigint>(params: SignTransactionOptions<TNumber>): Promise<SignedTransaction | HalfSignedUtxoTransaction>;
29
+ explainTransaction<TNumber extends number | bigint = bigint>(params: ExplainTransactionOptions<TNumber> | (ExplainTransactionOptions<TNumber> & {
30
+ txInfo: TransactionInfoJSON;
31
+ })): Promise<TransactionExplanation>;
32
+ recoverFromWrongChain<TNumber extends number | bigint = bigint>(params: RecoverFromWrongChainOptions): Promise<CrossChainRecoverySigned<TNumber> | CrossChainRecoveryUnsigned<TNumber>>;
33
+ }
34
+ export {};
35
+ //# sourceMappingURL=doge.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doge.d.ts","sourceRoot":"","sources":["../../../../src/impl/doge/doge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,yBAAyB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAC/F,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE7C,OAAO,EACL,gBAAgB,EAChB,sBAAsB,EACtB,yBAAyB,EACzB,uBAAuB,EACvB,wBAAwB,EACxB,4BAA4B,EAC5B,eAAe,EACf,mBAAmB,EACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kDAAkD,CAAC;AAC/F,OAAO,KAAK,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,MAAM,mCAAmC,CAAC;AAC9G,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAE7C,KAAK,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,GAAG;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAC7D,KAAK,mBAAmB,GAAG,eAAe,CAAC,MAAM,CAAC,GAAG;IAAE,QAAQ,EAAE,WAAW,EAAE,CAAA;CAAE,CAAC;AACjF,KAAK,uBAAuB,GAAG,mBAAmB,CAAC,MAAM,CAAC,GAAG;IAAE,MAAM,EAAE,mBAAmB,CAAA;CAAE,CAAC;AAqC7F,qBAAa,IAAK,SAAQ,gBAAgB;IACxC,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAU;gBAEzB,KAAK,EAAE,SAAS;IAI5B,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IAI7C,mBAAmB,IAAI,OAAO;IAQ9B,wBAAwB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC;IAIzG,gBAAgB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAC7D,MAAM,EAAE,uBAAuB,CAAC,OAAO,CAAC,GAK1C,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;IAO7B,iBAAiB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAC9D,MAAM,EACF,wBAAwB,CAAC,OAAO,CAAC,GACjC,CAAC,wBAAwB,CAAC,OAAO,CAAC,GAAG;QAAE,UAAU,EAAE,uBAAuB,CAAA;KAAE,CAAC,GAChF,OAAO,CAAC,OAAO,CAAC;IAOb,eAAe,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAC5D,MAAM,EAAE,sBAAsB,CAAC,OAAO,CAAC,GACtC,OAAO,CAAC,iBAAiB,GAAG,yBAAyB,CAAC;IAUnD,kBAAkB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAC/D,MAAM,EAAE,yBAAyB,CAAC,OAAO,CAAC,GAAG,CAAC,yBAAyB,CAAC,OAAO,CAAC,GAAG;QAAE,MAAM,EAAE,mBAAmB,CAAA;KAAE,CAAC,GAClH,OAAO,CAAC,sBAAsB,CAAC;IAO5B,qBAAqB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,EAClE,MAAM,EAAE,4BAA4B,GACnC,OAAO,CAAC,wBAAwB,CAAC,OAAO,CAAC,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;CAGpF"}