@btc-vision/transaction 1.0.96 → 1.0.99

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 (477) hide show
  1. package/.babelrc +4 -7
  2. package/.prettierrc.json +11 -11
  3. package/CONTRIBUTING.md +71 -71
  4. package/LICENSE.md +62 -62
  5. package/README.md +76 -76
  6. package/browser/_version.d.ts +1 -1
  7. package/browser/bytecode/Compressor.d.ts +0 -1
  8. package/browser/crypto/crypto-browser.d.ts +1 -30
  9. package/browser/crypto/crypto.d.ts +0 -1
  10. package/browser/generators/AddressGenerator.d.ts +0 -1
  11. package/browser/generators/Generator.d.ts +0 -1
  12. package/browser/generators/builders/CalldataGenerator.d.ts +0 -1
  13. package/browser/generators/builders/DeploymentGenerator.d.ts +0 -1
  14. package/browser/generators/builders/MultiSignGenerator.d.ts +0 -1
  15. package/browser/index.js +1 -1
  16. package/browser/keypair/EcKeyPair.d.ts +0 -1
  17. package/browser/keypair/Wallet.d.ts +0 -1
  18. package/browser/signer/TweakedSigner.d.ts +0 -1
  19. package/browser/transaction/browser/BrowserSignerBase.d.ts +0 -1
  20. package/browser/transaction/browser/extensions/UnisatSigner.d.ts +0 -1
  21. package/browser/transaction/builders/DeploymentTransaction.d.ts +0 -1
  22. package/browser/transaction/builders/InteractionTransaction.d.ts +0 -1
  23. package/browser/transaction/builders/MultiSignTransaction.d.ts +0 -1
  24. package/browser/transaction/builders/SharedInteractionTransaction.d.ts +0 -1
  25. package/browser/transaction/builders/TransactionBuilder.d.ts +0 -1
  26. package/browser/transaction/builders/UnwrapSegwitTransaction.d.ts +0 -1
  27. package/browser/transaction/builders/UnwrapTransaction.d.ts +0 -1
  28. package/browser/transaction/builders/WrapTransaction.d.ts +0 -1
  29. package/browser/transaction/interfaces/ITransactionParameters.d.ts +0 -1
  30. package/browser/transaction/interfaces/Tap.d.ts +0 -1
  31. package/browser/transaction/shared/P2TR_MS.d.ts +0 -1
  32. package/browser/transaction/shared/TweakedTransaction.d.ts +0 -1
  33. package/browser/utils/BitcoinUtils.d.ts +0 -1
  34. package/browser/verification/TapscriptVerificator.d.ts +0 -1
  35. package/browser/wbtc/WrappedGenerationParameters.d.ts +0 -1
  36. package/build/bytecode/Compressor.d.ts +0 -1
  37. package/build/bytecode/Compressor.js +4 -4
  38. package/build/crypto/crypto.d.ts +0 -1
  39. package/build/generators/AddressGenerator.d.ts +0 -1
  40. package/build/generators/Generator.d.ts +0 -1
  41. package/build/generators/Generator.js +3 -5
  42. package/build/generators/builders/CalldataGenerator.d.ts +0 -1
  43. package/build/generators/builders/DeploymentGenerator.d.ts +0 -1
  44. package/build/generators/builders/{MultisignGenerator.d.ts → MultiSignGenerator.d.ts} +0 -1
  45. package/build/generators/builders/{MultisignGenerator.js → MultiSignGenerator.js} +1 -1
  46. package/build/keypair/EcKeyPair.d.ts +0 -1
  47. package/build/keypair/EcKeyPair.js +2 -2
  48. package/build/keypair/Wallet.d.ts +0 -1
  49. package/build/keypair/Wallet.js +0 -5
  50. package/build/metadata/ContractBaseMetadata.js +0 -1
  51. package/build/metadata/contracts/wBTC.js +3 -5
  52. package/build/metadata/tokens.js +27 -25
  53. package/build/signer/TweakedSigner.d.ts +0 -1
  54. package/build/transaction/browser/BrowserSignerBase.d.ts +0 -1
  55. package/build/transaction/browser/extensions/UnisatSigner.d.ts +0 -1
  56. package/build/transaction/browser/extensions/UnisatSigner.js +1 -6
  57. package/build/transaction/builders/DeploymentTransaction.d.ts +0 -1
  58. package/build/transaction/builders/DeploymentTransaction.js +25 -33
  59. package/build/transaction/builders/FundingTransaction.js +1 -3
  60. package/build/transaction/builders/InteractionTransaction.d.ts +0 -1
  61. package/build/transaction/builders/InteractionTransaction.js +2 -5
  62. package/build/transaction/builders/MultiSignTransaction.d.ts +0 -1
  63. package/build/transaction/builders/MultiSignTransaction.js +66 -73
  64. package/build/transaction/builders/SharedInteractionTransaction.d.ts +0 -1
  65. package/build/transaction/builders/SharedInteractionTransaction.js +20 -25
  66. package/build/transaction/builders/TransactionBuilder.d.ts +0 -1
  67. package/build/transaction/builders/TransactionBuilder.js +12 -21
  68. package/build/transaction/builders/UnwrapSegwitTransaction.d.ts +0 -1
  69. package/build/transaction/builders/UnwrapSegwitTransaction.js +4 -10
  70. package/build/transaction/builders/UnwrapTransaction.d.ts +0 -1
  71. package/build/transaction/builders/UnwrapTransaction.js +5 -11
  72. package/build/transaction/builders/WrapTransaction.d.ts +0 -1
  73. package/build/transaction/builders/WrapTransaction.js +5 -12
  74. package/build/transaction/interfaces/ITransactionParameters.d.ts +0 -1
  75. package/build/transaction/interfaces/Tap.d.ts +0 -1
  76. package/build/transaction/processor/PsbtTransaction.js +3 -4
  77. package/build/transaction/shared/P2TR_MS.d.ts +0 -1
  78. package/build/transaction/shared/TweakedTransaction.d.ts +0 -1
  79. package/build/transaction/shared/TweakedTransaction.js +11 -16
  80. package/build/utils/BitcoinUtils.d.ts +0 -1
  81. package/build/utxo/OPNetLimitedProvider.js +2 -3
  82. package/build/verification/TapscriptVerificator.d.ts +0 -1
  83. package/build/verification/TapscriptVerificator.js +1 -1
  84. package/build/wbtc/UnwrapGeneration.js +0 -2
  85. package/build/wbtc/WrappedGenerationParameters.d.ts +0 -1
  86. package/build/wbtc/WrappedGenerationParameters.js +0 -6
  87. package/cjs/package.json +3 -0
  88. package/docs/.nojekyll +1 -0
  89. package/docs/assets/highlight.css +43 -0
  90. package/docs/assets/icons.js +15 -0
  91. package/docs/assets/icons.svg +1 -0
  92. package/docs/assets/main.js +59 -0
  93. package/docs/assets/material-style.css +247 -0
  94. package/docs/assets/navigation.js +1 -0
  95. package/docs/assets/search.js +1 -0
  96. package/docs/assets/style.css +1412 -0
  97. package/docs/classes/AddressGenerator.html +177 -0
  98. package/docs/classes/AddressVerificator.html +177 -0
  99. package/docs/classes/BitcoinUtils.html +196 -0
  100. package/docs/classes/CalldataGenerator.html +213 -0
  101. package/docs/classes/Compressor.html +185 -0
  102. package/docs/classes/ContractBaseMetadata.html +182 -0
  103. package/docs/classes/CustomKeypair.html +189 -0
  104. package/docs/classes/DeploymentGenerator.html +201 -0
  105. package/docs/classes/DeploymentTransaction.html +465 -0
  106. package/docs/classes/EcKeyPair.html +280 -0
  107. package/docs/classes/FundingTransaction.html +425 -0
  108. package/docs/classes/Generator.html +199 -0
  109. package/docs/classes/InteractionTransaction.html +467 -0
  110. package/docs/classes/MultiSignGenerator.html +178 -0
  111. package/docs/classes/MultiSignTransaction.html +490 -0
  112. package/docs/classes/OPNetLimitedProvider.html +225 -0
  113. package/docs/classes/OPNetTokenAddressManager.html +182 -0
  114. package/docs/classes/P2TR_MS.html +186 -0
  115. package/docs/classes/PsbtTransaction.html +320 -0
  116. package/docs/classes/SharedInteractionTransaction.html +477 -0
  117. package/docs/classes/TapscriptVerificator.html +180 -0
  118. package/docs/classes/TransactionBuilder.html +423 -0
  119. package/docs/classes/TransactionFactory.html +230 -0
  120. package/docs/classes/TweakedSigner.html +181 -0
  121. package/docs/classes/TweakedTransaction.html +301 -0
  122. package/docs/classes/UnisatSigner.html +199 -0
  123. package/docs/classes/UnwrapGeneration.html +177 -0
  124. package/docs/classes/UnwrapTransaction.html +518 -0
  125. package/docs/classes/Wallet.html +204 -0
  126. package/docs/classes/WrapTransaction.html +509 -0
  127. package/docs/classes/WrappedGeneration.html +187 -0
  128. package/docs/classes/wBTC.html +190 -0
  129. package/docs/enums/ChainId.html +176 -0
  130. package/docs/enums/Consensus.html +204 -0
  131. package/docs/enums/Features.html +175 -0
  132. package/docs/enums/MessageType.html +176 -0
  133. package/docs/enums/OPNetNetwork.html +177 -0
  134. package/docs/enums/PSBTTypes.html +175 -0
  135. package/docs/enums/TransactionSequence.html +177 -0
  136. package/docs/enums/TransactionType.html +181 -0
  137. package/docs/enums/UnisatChainType.html +181 -0
  138. package/docs/enums/UnisatNetwork.html +177 -0
  139. package/docs/hierarchy.html +174 -0
  140. package/docs/index.html +215 -0
  141. package/docs/interfaces/Balance.html +177 -0
  142. package/docs/interfaces/BitcoinTransferResponse.html +178 -0
  143. package/docs/interfaces/BroadcastResponse.html +181 -0
  144. package/docs/interfaces/BroadcastTransactionOptions.html +176 -0
  145. package/docs/interfaces/BroadcastedTransaction.html +184 -0
  146. package/docs/interfaces/ConsensusConfig.html +182 -0
  147. package/docs/interfaces/ContractAddressVerificationParams.html +179 -0
  148. package/docs/interfaces/DeploymentResult.html +178 -0
  149. package/docs/interfaces/FetchUTXOParams.html +178 -0
  150. package/docs/interfaces/FetchUTXOParamsMultiAddress.html +178 -0
  151. package/docs/interfaces/FundingTransactionResponse.html +178 -0
  152. package/docs/interfaces/GenerationConstraints.html +182 -0
  153. package/docs/interfaces/IDeploymentParameters.html +186 -0
  154. package/docs/interfaces/IFundingTransactionParameters.html +186 -0
  155. package/docs/interfaces/IInteractionParameters.html +187 -0
  156. package/docs/interfaces/ITransactionParameters.html +184 -0
  157. package/docs/interfaces/ITweakedTransactionData.html +178 -0
  158. package/docs/interfaces/IUnwrapParameters.html +189 -0
  159. package/docs/interfaces/IWBTCUTXODocument.html +180 -0
  160. package/docs/interfaces/IWallet.html +181 -0
  161. package/docs/interfaces/IWrapParameters.html +190 -0
  162. package/docs/interfaces/MultiSignFromBase64Params.html +188 -0
  163. package/docs/interfaces/MultiSignParameters.html +188 -0
  164. package/docs/interfaces/OPNetTokenMetadata.html +179 -0
  165. package/docs/interfaces/PsbtInputExtended.html +194 -0
  166. package/docs/interfaces/PsbtOutputExtendedAddress.html +183 -0
  167. package/docs/interfaces/PsbtOutputExtendedScript.html +183 -0
  168. package/docs/interfaces/PsbtSignatureOptions.html +176 -0
  169. package/docs/interfaces/PsbtTransactionData.html +179 -0
  170. package/docs/interfaces/RawUTXOResponse.html +178 -0
  171. package/docs/interfaces/SharedInteractionParameters.html +187 -0
  172. package/docs/interfaces/TapLeafScript.html +177 -0
  173. package/docs/interfaces/ToSignInputAddress.html +178 -0
  174. package/docs/interfaces/ToSignInputPublicKey.html +178 -0
  175. package/docs/interfaces/TweakSettings.html +179 -0
  176. package/docs/interfaces/UTXO.html +178 -0
  177. package/docs/interfaces/Unisat.html +190 -0
  178. package/docs/interfaces/UnisatChainInfo.html +177 -0
  179. package/docs/interfaces/UnwrapResult.html +181 -0
  180. package/docs/interfaces/UnwrappedGenerationParameters.html +178 -0
  181. package/docs/interfaces/UpdateInput.html +175 -0
  182. package/docs/interfaces/VaultUTXOs.html +178 -0
  183. package/docs/interfaces/Web3Provider.html +180 -0
  184. package/docs/interfaces/WrapResult.html +179 -0
  185. package/docs/interfaces/WrappedGenerationParameters.html +184 -0
  186. package/docs/modules.html +289 -0
  187. package/docs/types/FromBase64Params.html +174 -0
  188. package/docs/types/IDeploymentParametersWithoutSigner.html +174 -0
  189. package/docs/types/IUnwrapParametersWithoutSigner.html +174 -0
  190. package/docs/types/IWrapParametersWithoutSigner.html +174 -0
  191. package/docs/types/InteractionParametersWithoutSigner.html +174 -0
  192. package/docs/types/PsbtOutputExtended.html +174 -0
  193. package/docs/types/ToSignInput.html +174 -0
  194. package/docs/variables/FACTORY_ADDRESS_FRACTAL.html +174 -0
  195. package/docs/variables/FACTORY_ADDRESS_REGTEST.html +174 -0
  196. package/docs/variables/FACTORY_ADDRESS_TESTNET.html +174 -0
  197. package/docs/variables/MOTO_ADDRESS_FRACTAL.html +174 -0
  198. package/docs/variables/MOTO_ADDRESS_REGTEST.html +174 -0
  199. package/docs/variables/MOTO_ADDRESS_TESTNET.html +174 -0
  200. package/docs/variables/OPNetConsensusConfig.html +174 -0
  201. package/docs/variables/OPNetMetadata.html +174 -0
  202. package/docs/variables/POOL_ADDRESS_FRACTAL.html +174 -0
  203. package/docs/variables/POOL_ADDRESS_REGTEST.html +174 -0
  204. package/docs/variables/POOL_ADDRESS_TESTNET.html +174 -0
  205. package/docs/variables/ROUTER_ADDRESS_FRACTAL.html +174 -0
  206. package/docs/variables/ROUTER_ADDRESS_REGTEST.html +174 -0
  207. package/docs/variables/ROUTER_ADDRESS_TESTNET.html +174 -0
  208. package/docs/variables/RoswellConsensus.html +174 -0
  209. package/docs/variables/WBTC_ADDRESS_FRACTAL.html +174 -0
  210. package/docs/variables/WBTC_ADDRESS_REGTEST.html +174 -0
  211. package/docs/variables/WBTC_ADDRESS_TESTNET.html +174 -0
  212. package/docs/variables/currentConsensus.html +174 -0
  213. package/docs/variables/currentConsensusConfig.html +174 -0
  214. package/docs/variables/version.html +174 -0
  215. package/gulpfile.js +49 -133
  216. package/package.json +112 -113
  217. package/src/bytecode/Compressor.ts +27 -27
  218. package/src/consensus/metadata/RoswellConsensus.ts +26 -26
  219. package/src/crypto/crypto.ts +1 -1
  220. package/src/generators/Generator.ts +75 -75
  221. package/src/generators/builders/MultiSignGenerator.ts +73 -73
  222. package/src/metadata/contracts/wBTC.ts +60 -60
  223. package/src/metadata/tokens.ts +135 -135
  224. package/src/network/ChainId.ts +6 -6
  225. package/src/opnet.ts +82 -82
  226. package/src/signer/TweakedSigner.ts +56 -56
  227. package/src/transaction/builders/DeploymentTransaction.ts +356 -356
  228. package/src/transaction/builders/MultiSignTransaction.ts +659 -659
  229. package/src/transaction/builders/UnwrapSegwitTransaction.ts +365 -365
  230. package/src/transaction/builders/UnwrapTransaction.ts +507 -507
  231. package/src/transaction/enums/TransactionType.ts +9 -9
  232. package/src/transaction/processor/PsbtTransaction.ts +173 -173
  233. package/src/transaction/shared/P2TR_MS.ts +42 -42
  234. package/src/transaction/shared/TweakedTransaction.ts +539 -539
  235. package/src/utils/BitcoinUtils.ts +96 -96
  236. package/tsconfig.base.json +27 -43
  237. package/tsconfig.json +15 -8
  238. package/tsconfig.webpack.json +22 -22
  239. package/EPOCH.md +0 -250
  240. package/VAULT_TARGET_CONSOLIDATION.md +0 -111
  241. package/browser/network/NetworkInformation.d.ts +0 -6
  242. package/browser/transaction/browser/BrowserSigner.d.ts +0 -9
  243. package/browser/transaction/builders/TapUnwarpTransaction.d.ts +0 -40
  244. package/browser/transaction/builders/UnwarpTransaction.d.ts +0 -34
  245. package/browser/utxo/UTXOManager.d.ts +0 -7
  246. package/build/Utils.d.ts +0 -0
  247. package/build/Utils.js +0 -1
  248. package/build/consensus/metadata/RoswsellConsensus.d.ts +0 -2
  249. package/build/consensus/metadata/RoswsellConsensus.js +0 -4
  250. package/build/contracts/ContractMetadataManager.d.ts +0 -0
  251. package/build/contracts/ContractMetadataManager.js +0 -1
  252. package/build/generators/OPNetAddressGenerator.d.ts +0 -0
  253. package/build/generators/OPNetAddressGenerator.js +0 -1
  254. package/build/generators/builders/DeploymentGeneratorV2.d.ts +0 -13
  255. package/build/generators/builders/DeploymentGeneratorV2.js +0 -57
  256. package/build/generators/builders/UnwrapGenerator.d.ts +0 -8
  257. package/build/generators/builders/UnwrapGenerator.js +0 -79
  258. package/build/keypair/interfaces/GeneratedWallet.d.ts +0 -5
  259. package/build/keypair/interfaces/GeneratedWallet.js +0 -1
  260. package/build/metadata/CommonContracts.d.ts +0 -6
  261. package/build/metadata/CommonContracts.js +0 -5
  262. package/build/metadata/ContractMetadataManager.d.ts +0 -1
  263. package/build/metadata/ContractMetadataManager.js +0 -9
  264. package/build/metadata/contracts/ContractBase.d.ts +0 -9
  265. package/build/metadata/contracts/ContractBase.js +0 -13
  266. package/build/metadata/contracts/ContractBaseMetadata.d.ts +0 -9
  267. package/build/metadata/contracts/ContractBaseMetadata.js +0 -13
  268. package/build/metadata/contracts/ContractMetadataManager.d.ts +0 -0
  269. package/build/metadata/contracts/ContractMetadataManager.js +0 -1
  270. package/build/network/NetworkConverter.d.ts +0 -0
  271. package/build/network/NetworkConverter.js +0 -14
  272. package/build/network/NetworkInformation.d.ts +0 -6
  273. package/build/network/NetworkInformation.js +0 -1
  274. package/build/scripts/Regtest.d.ts +0 -2
  275. package/build/scripts/Regtest.js +0 -15
  276. package/build/scripts/test.d.ts +0 -1
  277. package/build/scripts/test.js +0 -74
  278. package/build/signer/Regtest.d.ts +0 -2
  279. package/build/signer/Regtest.js +0 -15
  280. package/build/tests/Regtest.d.ts +0 -3
  281. package/build/tests/Regtest.js +0 -29
  282. package/build/tests/adaptPSBT.d.ts +0 -1
  283. package/build/tests/adaptPSBT.js +0 -44
  284. package/build/tests/btc/send.d.ts +0 -1
  285. package/build/tests/btc/send.js +0 -35
  286. package/build/tests/btc/transfer.d.ts +0 -1
  287. package/build/tests/btc/transfer.js +0 -35
  288. package/build/tests/createPairReg.d.ts +0 -1
  289. package/build/tests/createPairReg.js +0 -73
  290. package/build/tests/deploy/deployMoto.d.ts +0 -4
  291. package/build/tests/deploy/deployMoto.js +0 -89
  292. package/build/tests/deploy/deployPool.d.ts +0 -1
  293. package/build/tests/deploy/deployPool.js +0 -5
  294. package/build/tests/deploy/deployStep1.d.ts +0 -1
  295. package/build/tests/deploy/deployStep1.js +0 -5
  296. package/build/tests/deploy/deployStep2.d.ts +0 -1
  297. package/build/tests/deploy/deployStep2.js +0 -5
  298. package/build/tests/deploy/deployStep3.d.ts +0 -1
  299. package/build/tests/deploy/deployStep3.js +0 -5
  300. package/build/tests/deploy.d.ts +0 -1
  301. package/build/tests/deploy.js +0 -41
  302. package/build/tests/deployMotoRegStep1.d.ts +0 -1
  303. package/build/tests/deployMotoRegStep1.js +0 -85
  304. package/build/tests/deployReg.d.ts +0 -1
  305. package/build/tests/deployReg.js +0 -85
  306. package/build/tests/factory/createPairReg.d.ts +0 -1
  307. package/build/tests/factory/createPairReg.js +0 -13
  308. package/build/tests/gen.d.ts +0 -1
  309. package/build/tests/gen.js +0 -19
  310. package/build/tests/interaction.d.ts +0 -5
  311. package/build/tests/interaction.js +0 -62
  312. package/build/tests/massWrapReg.d.ts +0 -1
  313. package/build/tests/massWrapReg.js +0 -105
  314. package/build/tests/mineReg.d.ts +0 -1
  315. package/build/tests/mineReg.js +0 -19
  316. package/build/tests/moto/airdropToken.d.ts +0 -1
  317. package/build/tests/moto/airdropToken.js +0 -21
  318. package/build/tests/moto/airdropTokens.d.ts +0 -1
  319. package/build/tests/moto/airdropTokens.js +0 -60
  320. package/build/tests/moto/allowance.d.ts +0 -1
  321. package/build/tests/moto/allowance.js +0 -6
  322. package/build/tests/moto/approve.d.ts +0 -1
  323. package/build/tests/moto/approve.js +0 -10
  324. package/build/tests/moto/approveWBTC.d.ts +0 -1
  325. package/build/tests/moto/approveWBTC.js +0 -12
  326. package/build/tests/moto/balanceOf.d.ts +0 -1
  327. package/build/tests/moto/balanceOf.js +0 -12
  328. package/build/tests/moto/transfer.d.ts +0 -1
  329. package/build/tests/moto/transfer.js +0 -16
  330. package/build/tests/motoswap/airdropToken.d.ts +0 -11
  331. package/build/tests/motoswap/airdropToken.js +0 -36
  332. package/build/tests/motoswap/deployMoto.d.ts +0 -4
  333. package/build/tests/motoswap/deployMoto.js +0 -89
  334. package/build/tests/motoswap/deployMotoRegStep1.d.ts +0 -1
  335. package/build/tests/motoswap/deployMotoRegStep1.js +0 -91
  336. package/build/tests/motoswap/deployMotoRegStep2.d.ts +0 -1
  337. package/build/tests/motoswap/deployMotoRegStep2.js +0 -91
  338. package/build/tests/motoswap/deployPool.d.ts +0 -1
  339. package/build/tests/motoswap/deployPool.js +0 -5
  340. package/build/tests/motoswap/deployStep1.d.ts +0 -1
  341. package/build/tests/motoswap/deployStep1.js +0 -5
  342. package/build/tests/motoswap/deployStep2.d.ts +0 -1
  343. package/build/tests/motoswap/deployStep2.js +0 -5
  344. package/build/tests/motoswap/deployStep3.d.ts +0 -1
  345. package/build/tests/motoswap/deployStep3.js +0 -5
  346. package/build/tests/motoswap/interaction.d.ts +0 -3
  347. package/build/tests/motoswap/interaction.js +0 -63
  348. package/build/tests/motoswap/routerAddLiquidity.d.ts +0 -11
  349. package/build/tests/motoswap/routerAddLiquidity.js +0 -35
  350. package/build/tests/motoswap-router/addLiquidity.d.ts +0 -11
  351. package/build/tests/motoswap-router/addLiquidity.js +0 -36
  352. package/build/tests/motoswap-router/deployMoto.d.ts +0 -4
  353. package/build/tests/motoswap-router/deployMoto.js +0 -89
  354. package/build/tests/motoswap-router/deployPool.d.ts +0 -1
  355. package/build/tests/motoswap-router/deployPool.js +0 -5
  356. package/build/tests/motoswap-router/deployStep1.d.ts +0 -1
  357. package/build/tests/motoswap-router/deployStep1.js +0 -5
  358. package/build/tests/motoswap-router/deployStep2.d.ts +0 -1
  359. package/build/tests/motoswap-router/deployStep2.js +0 -5
  360. package/build/tests/motoswap-router/deployStep3.d.ts +0 -1
  361. package/build/tests/motoswap-router/deployStep3.js +0 -5
  362. package/build/tests/motoswap-router/getAmountsOut.d.ts +0 -5
  363. package/build/tests/motoswap-router/getAmountsOut.js +0 -34
  364. package/build/tests/motoswap-router/routerAddLiquidity.d.ts +0 -11
  365. package/build/tests/motoswap-router/routerAddLiquidity.js +0 -35
  366. package/build/tests/motoswap-router/swap.d.ts +0 -8
  367. package/build/tests/motoswap-router/swap.js +0 -24
  368. package/build/tests/multisign.d.ts +0 -1
  369. package/build/tests/multisign.js +0 -47
  370. package/build/tests/multisign2.d.ts +0 -1
  371. package/build/tests/multisign2.js +0 -27
  372. package/build/tests/pool/DecodePoolAddress.d.ts +0 -6
  373. package/build/tests/pool/DecodePoolAddress.js +0 -12
  374. package/build/tests/pool/decodeReserves.d.ts +0 -5
  375. package/build/tests/pool/decodeReserves.js +0 -13
  376. package/build/tests/pool/reserves.d.ts +0 -1
  377. package/build/tests/pool/reserves.js +0 -18
  378. package/build/tests/shared/Utils.d.ts +0 -2
  379. package/build/tests/shared/Utils.js +0 -14
  380. package/build/tests/shared/interaction.d.ts +0 -7
  381. package/build/tests/shared/interaction.js +0 -85
  382. package/build/tests/shared/tokens.d.ts +0 -6
  383. package/build/tests/shared/tokens.js +0 -5
  384. package/build/tests/stakeReg.d.ts +0 -1
  385. package/build/tests/stakeReg.js +0 -73
  386. package/build/tests/stakedReg.d.ts +0 -1
  387. package/build/tests/stakedReg.js +0 -28
  388. package/build/tests/test.d.ts +0 -1
  389. package/build/tests/test.js +0 -51
  390. package/build/tests/test2.d.ts +0 -1
  391. package/build/tests/test2.js +0 -73
  392. package/build/tests/testReg.d.ts +0 -1
  393. package/build/tests/testReg.js +0 -91
  394. package/build/tests/tokens.d.ts +0 -6
  395. package/build/tests/tokens.js +0 -5
  396. package/build/tests/totalRewardReg.d.ts +0 -1
  397. package/build/tests/totalRewardReg.js +0 -28
  398. package/build/tests/transfer.d.ts +0 -1
  399. package/build/tests/transfer.js +0 -74
  400. package/build/tests/transferReg.d.ts +0 -1
  401. package/build/tests/transferReg.js +0 -74
  402. package/build/tests/unStakeReg.d.ts +0 -1
  403. package/build/tests/unStakeReg.js +0 -72
  404. package/build/tests/unwrapReg.d.ts +0 -1
  405. package/build/tests/unwrapReg.js +0 -61
  406. package/build/tests/unwrapReg2.d.ts +0 -1
  407. package/build/tests/unwrapReg2.js +0 -56
  408. package/build/tests/unwrapRegSegwit.d.ts +0 -1
  409. package/build/tests/unwrapRegSegwit.js +0 -83
  410. package/build/tests/wbtc/approve.d.ts +0 -1
  411. package/build/tests/wbtc/approve.js +0 -6
  412. package/build/tests/wbtc/approveWBTC.d.ts +0 -1
  413. package/build/tests/wbtc/approveWBTC.js +0 -12
  414. package/build/tests/wbtc/massWrapReg.d.ts +0 -1
  415. package/build/tests/wbtc/massWrapReg.js +0 -105
  416. package/build/tests/wbtc/transfer.d.ts +0 -1
  417. package/build/tests/wbtc/transfer.js +0 -16
  418. package/build/tests/wbtc/transferReg.d.ts +0 -1
  419. package/build/tests/wbtc/transferReg.js +0 -16
  420. package/build/tests/wbtc/unStakeReg.d.ts +0 -1
  421. package/build/tests/wbtc/unStakeReg.js +0 -72
  422. package/build/tests/wbtc/unwrapReg.d.ts +0 -1
  423. package/build/tests/wbtc/unwrapReg.js +0 -60
  424. package/build/tests/wbtc/unwrapRegSegwit.d.ts +0 -1
  425. package/build/tests/wbtc/unwrapRegSegwit.js +0 -83
  426. package/build/tests/wbtc/withdrawalRequestReg.d.ts +0 -1
  427. package/build/tests/wbtc/withdrawalRequestReg.js +0 -71
  428. package/build/tests/wbtc/wrapReg.d.ts +0 -1
  429. package/build/tests/wbtc/wrapReg.js +0 -65
  430. package/build/tests/wbtc/wrapTest.d.ts +0 -1
  431. package/build/tests/wbtc/wrapTest.js +0 -66
  432. package/build/tests/withdrawalRequestReg.d.ts +0 -1
  433. package/build/tests/withdrawalRequestReg.js +0 -71
  434. package/build/tests/wrap.d.ts +0 -1
  435. package/build/tests/wrap.js +0 -65
  436. package/build/tests/wrapReg.d.ts +0 -1
  437. package/build/tests/wrapReg.js +0 -68
  438. package/build/tests/wrapTest.d.ts +0 -1
  439. package/build/tests/wrapTest.js +0 -66
  440. package/build/tests/wrapTestg.d.ts +0 -1
  441. package/build/tests/wrapTestg.js +0 -66
  442. package/build/tests/writers/allowance.d.ts +0 -3
  443. package/build/tests/writers/allowance.js +0 -10
  444. package/build/tests/writers/approve.d.ts +0 -4
  445. package/build/tests/writers/approve.js +0 -11
  446. package/build/transaction/TransactionBuilder.d.ts +0 -60
  447. package/build/transaction/TransactionBuilder.js +0 -244
  448. package/build/transaction/browser/BrowserSigner.d.ts +0 -11
  449. package/build/transaction/browser/BrowserSigner.js +0 -10
  450. package/build/transaction/browser/extensions/Unisat.d.ts +0 -54
  451. package/build/transaction/browser/extensions/Unisat.js +0 -11
  452. package/build/transaction/builders/DeploymentTransactionV2.d.ts +0 -36
  453. package/build/transaction/builders/DeploymentTransactionV2.js +0 -192
  454. package/build/transaction/builders/GenericTransaction.d.ts +0 -11
  455. package/build/transaction/builders/GenericTransaction.js +0 -23
  456. package/build/transaction/builders/TapUnwarpTransaction.d.ts +0 -37
  457. package/build/transaction/builders/TapUnwarpTransaction.js +0 -201
  458. package/build/transaction/builders/UnwarpSegwitTransaction.d.ts +0 -34
  459. package/build/transaction/builders/UnwarpSegwitTransaction.js +0 -184
  460. package/build/transaction/builders/UnwarpTransaction.d.ts +0 -35
  461. package/build/transaction/builders/UnwarpTransaction.js +0 -199
  462. package/build/transaction/interfaces/ITransactions.d.ts +0 -32
  463. package/build/transaction/interfaces/ITransactions.js +0 -1
  464. package/build/utxo/IUTXO.d.ts +0 -0
  465. package/build/utxo/IUTXO.js +0 -1
  466. package/build/utxo/OPNetUtils.d.ts +0 -7
  467. package/build/utxo/OPNetUtils.js +0 -47
  468. package/build/utxo/UTXOManager.d.ts +0 -7
  469. package/build/utxo/UTXOManager.js +0 -47
  470. package/build/wbtc/BroadcastResponse.d.ts +0 -0
  471. package/build/wbtc/BroadcastResponse.js +0 -1
  472. package/examples/Deploy.md +0 -188
  473. package/examples/Unwrap.md +0 -165
  474. package/examples/Wrap.md +0 -194
  475. package/tsconfig.cjs.json +0 -13
  476. /package/build/generators/{features.d.ts → Features.d.ts} +0 -0
  477. /package/build/generators/{features.js → Features.js} +0 -0
@@ -5,25 +5,6 @@ import { MultiSignGenerator } from '../../generators/builders/MultiSignGenerator
5
5
  import { toXOnly } from 'bitcoinjs-lib/src/psbt/bip371.js';
6
6
  import { EcKeyPair } from '../../keypair/EcKeyPair.js';
7
7
  export class MultiSignTransaction extends TransactionBuilder {
8
- static LOCK_LEAF_SCRIPT = script.compile([
9
- opcodes.OP_XOR,
10
- opcodes.OP_NOP,
11
- opcodes.OP_CODESEPARATOR,
12
- ]);
13
- static signHashTypesArray = [];
14
- static numsPoint = Buffer.from('50929b74c1a04954b78b4b6035e97a5e078a5a0f28ec96d547bfee9ace803ac0', 'hex');
15
- type = TransactionType.MULTI_SIG;
16
- targetScriptRedeem = null;
17
- leftOverFundsScriptRedeem = null;
18
- compiledTargetScript;
19
- scriptTree;
20
- publicKeys;
21
- minimumSignatures;
22
- originalInputCount = 0;
23
- requestedAmount;
24
- receiver;
25
- refundVault;
26
- sighashTypes = MultiSignTransaction.signHashTypesArray;
27
8
  constructor(parameters) {
28
9
  if (!parameters.refundVault) {
29
10
  throw new Error('Refund vault is required');
@@ -39,6 +20,23 @@ export class MultiSignTransaction extends TransactionBuilder {
39
20
  signer: EcKeyPair.fromPrivateKey(bitcoinCrypto.sha256(Buffer.from('aaaaaaaa', 'utf-8'))),
40
21
  priorityFee: 0n,
41
22
  });
23
+ this.type = TransactionType.MULTI_SIG;
24
+ this.targetScriptRedeem = null;
25
+ this.leftOverFundsScriptRedeem = null;
26
+ this.originalInputCount = 0;
27
+ this.sighashTypes = MultiSignTransaction.signHashTypesArray;
28
+ this.customFinalizer = (_inputIndex, input) => {
29
+ if (!this.tapLeafScript) {
30
+ throw new Error('Tap leaf script is required');
31
+ }
32
+ const scriptSolution = this.getScriptSolution(input);
33
+ const witness = scriptSolution
34
+ .concat(this.tapLeafScript.script)
35
+ .concat(this.tapLeafScript.controlBlock);
36
+ return {
37
+ finalScriptWitness: TransactionBuilder.witnessStackToScriptWitness(witness),
38
+ };
39
+ };
42
40
  if (!parameters.pubkeys) {
43
41
  throw new Error('Pubkeys are required');
44
42
  }
@@ -135,48 +133,6 @@ export class MultiSignTransaction extends TransactionBuilder {
135
133
  final: !signed ? false : final,
136
134
  };
137
135
  }
138
- static partialFinalizer = (inputIndex, input, partialSignatures, orderedPubKeys, isFinal) => {
139
- if (!input.tapLeafScript ||
140
- !input.tapLeafScript[0].script ||
141
- !input.tapLeafScript[0].controlBlock) {
142
- throw new Error('Tap leaf script is required');
143
- }
144
- if (!input.tapScriptSig) {
145
- throw new Error(`No new signatures for input ${inputIndex}.`);
146
- }
147
- let scriptSolution = [];
148
- if (!isFinal) {
149
- scriptSolution = input.tapScriptSig
150
- .map((sig) => {
151
- return [sig.signature, sig.leafHash, sig.pubkey];
152
- })
153
- .flat();
154
- }
155
- else {
156
- for (let pubKey of orderedPubKeys) {
157
- let found = false;
158
- for (let sig of input.tapScriptSig) {
159
- if (sig.pubkey.equals(toXOnly(pubKey))) {
160
- scriptSolution.push(sig.signature);
161
- found = true;
162
- }
163
- }
164
- if (!found) {
165
- scriptSolution.push(Buffer.alloc(0));
166
- }
167
- }
168
- scriptSolution = scriptSolution.reverse();
169
- }
170
- if (partialSignatures.length > 0) {
171
- scriptSolution = scriptSolution.concat(partialSignatures);
172
- }
173
- const witness = scriptSolution
174
- .concat(input.tapLeafScript[0].script)
175
- .concat(input.tapLeafScript[0].controlBlock);
176
- return {
177
- finalScriptWitness: TransactionBuilder.witnessStackToScriptWitness(witness),
178
- };
179
- };
180
136
  static dedupeSignatures(original, partial) {
181
137
  const signatures = new Map();
182
138
  for (const sig of original) {
@@ -349,18 +305,6 @@ export class MultiSignTransaction extends TransactionBuilder {
349
305
  const total = this.getTotalOutputAmount(utxos);
350
306
  return total - this.requestedAmount;
351
307
  }
352
- customFinalizer = (_inputIndex, input) => {
353
- if (!this.tapLeafScript) {
354
- throw new Error('Tap leaf script is required');
355
- }
356
- const scriptSolution = this.getScriptSolution(input);
357
- const witness = scriptSolution
358
- .concat(this.tapLeafScript.script)
359
- .concat(this.tapLeafScript.controlBlock);
360
- return {
361
- finalScriptWitness: TransactionBuilder.witnessStackToScriptWitness(witness),
362
- };
363
- };
364
308
  generateRedeemScripts() {
365
309
  this.targetScriptRedeem = {
366
310
  output: this.compiledTargetScript,
@@ -372,3 +316,52 @@ export class MultiSignTransaction extends TransactionBuilder {
372
316
  };
373
317
  }
374
318
  }
319
+ MultiSignTransaction.LOCK_LEAF_SCRIPT = script.compile([
320
+ opcodes.OP_XOR,
321
+ opcodes.OP_NOP,
322
+ opcodes.OP_CODESEPARATOR,
323
+ ]);
324
+ MultiSignTransaction.signHashTypesArray = [];
325
+ MultiSignTransaction.numsPoint = Buffer.from('50929b74c1a04954b78b4b6035e97a5e078a5a0f28ec96d547bfee9ace803ac0', 'hex');
326
+ MultiSignTransaction.partialFinalizer = (inputIndex, input, partialSignatures, orderedPubKeys, isFinal) => {
327
+ if (!input.tapLeafScript ||
328
+ !input.tapLeafScript[0].script ||
329
+ !input.tapLeafScript[0].controlBlock) {
330
+ throw new Error('Tap leaf script is required');
331
+ }
332
+ if (!input.tapScriptSig) {
333
+ throw new Error(`No new signatures for input ${inputIndex}.`);
334
+ }
335
+ let scriptSolution = [];
336
+ if (!isFinal) {
337
+ scriptSolution = input.tapScriptSig
338
+ .map((sig) => {
339
+ return [sig.signature, sig.leafHash, sig.pubkey];
340
+ })
341
+ .flat();
342
+ }
343
+ else {
344
+ for (let pubKey of orderedPubKeys) {
345
+ let found = false;
346
+ for (let sig of input.tapScriptSig) {
347
+ if (sig.pubkey.equals(toXOnly(pubKey))) {
348
+ scriptSolution.push(sig.signature);
349
+ found = true;
350
+ }
351
+ }
352
+ if (!found) {
353
+ scriptSolution.push(Buffer.alloc(0));
354
+ }
355
+ }
356
+ scriptSolution = scriptSolution.reverse();
357
+ }
358
+ if (partialSignatures.length > 0) {
359
+ scriptSolution = scriptSolution.concat(partialSignatures);
360
+ }
361
+ const witness = scriptSolution
362
+ .concat(input.tapLeafScript[0].script)
363
+ .concat(input.tapLeafScript[0].controlBlock);
364
+ return {
365
+ finalScriptWitness: TransactionBuilder.witnessStackToScriptWitness(witness),
366
+ };
367
+ };
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { PsbtInput } from 'bip174/src/lib/interfaces.js';
3
2
  import { Payment, Psbt, Signer } from 'bitcoinjs-lib';
4
3
  import { Taptree } from 'bitcoinjs-lib/src/types.js';
@@ -6,15 +6,28 @@ import { EcKeyPair } from '../../keypair/EcKeyPair.js';
6
6
  import { BitcoinUtils } from '../../utils/BitcoinUtils.js';
7
7
  import { toXOnly } from 'bitcoinjs-lib/src/psbt/bip371.js';
8
8
  export class SharedInteractionTransaction extends TransactionBuilder {
9
- randomBytes;
10
- targetScriptRedeem = null;
11
- leftOverFundsScriptRedeem = null;
12
- calldataGenerator;
13
- calldata;
14
- scriptSigner;
15
- disableAutoRefund;
16
9
  constructor(parameters) {
17
10
  super(parameters);
11
+ this.targetScriptRedeem = null;
12
+ this.leftOverFundsScriptRedeem = null;
13
+ this.customFinalizer = (_inputIndex, input) => {
14
+ if (!this.tapLeafScript) {
15
+ throw new Error('Tap leaf script is required');
16
+ }
17
+ if (!input.tapScriptSig) {
18
+ throw new Error('Tap script signature is required');
19
+ }
20
+ if (!this.contractSecret) {
21
+ throw new Error('Contract secret is required');
22
+ }
23
+ const scriptSolution = this.getScriptSolution(input);
24
+ const witness = scriptSolution
25
+ .concat(this.tapLeafScript.script)
26
+ .concat(this.tapLeafScript.controlBlock);
27
+ return {
28
+ finalScriptWitness: TransactionBuilder.witnessStackToScriptWitness(witness),
29
+ };
30
+ };
18
31
  if (!parameters.calldata) {
19
32
  throw new Error('Calldata is required');
20
33
  }
@@ -163,24 +176,6 @@ export class SharedInteractionTransaction extends TransactionBuilder {
163
176
  },
164
177
  ];
165
178
  }
166
- customFinalizer = (_inputIndex, input) => {
167
- if (!this.tapLeafScript) {
168
- throw new Error('Tap leaf script is required');
169
- }
170
- if (!input.tapScriptSig) {
171
- throw new Error('Tap script signature is required');
172
- }
173
- if (!this.contractSecret) {
174
- throw new Error('Contract secret is required');
175
- }
176
- const scriptSolution = this.getScriptSolution(input);
177
- const witness = scriptSolution
178
- .concat(this.tapLeafScript.script)
179
- .concat(this.tapLeafScript.controlBlock);
180
- return {
181
- finalScriptWitness: TransactionBuilder.witnessStackToScriptWitness(witness),
182
- };
183
- };
184
179
  getPubKeys() {
185
180
  const pubkeys = [this.signer.publicKey];
186
181
  if (this.scriptSigner) {
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { Network, Psbt, Signer, Transaction } from 'bitcoinjs-lib';
3
2
  import { PsbtInputExtended, PsbtOutputExtended, UpdateInput } from '../interfaces/Tap.js';
4
3
  import { TransactionType } from '../enums/TransactionType.js';
@@ -6,29 +6,16 @@ import { AddressVerificator } from '../../keypair/AddressVerificator.js';
6
6
  import { TweakedTransaction } from '../shared/TweakedTransaction.js';
7
7
  initEccLib(ecc);
8
8
  export class TransactionBuilder extends TweakedTransaction {
9
- static LOCK_LEAF_SCRIPT = script.compile([
10
- opcodes.OP_0,
11
- ]);
12
- static MINIMUM_DUST = 330n;
13
- logColor = '#785def';
14
- overflowFees = 0n;
15
- transactionFee = 0n;
16
- estimatedFees = 0n;
17
- transaction;
18
- updateInputs = [];
19
- outputs = [];
20
- feeOutput = null;
21
- totalInputAmount;
22
- signer;
23
- network;
24
- feeRate;
25
- priorityFee;
26
- utxos;
27
- to;
28
- from;
29
- _maximumFeeRate = 100000000;
30
9
  constructor(parameters) {
31
10
  super(parameters);
11
+ this.logColor = '#785def';
12
+ this.overflowFees = 0n;
13
+ this.transactionFee = 0n;
14
+ this.estimatedFees = 0n;
15
+ this.updateInputs = [];
16
+ this.outputs = [];
17
+ this.feeOutput = null;
18
+ this._maximumFeeRate = 100000000;
32
19
  if (parameters.estimatedFees) {
33
20
  this.estimatedFees = parameters.estimatedFees;
34
21
  }
@@ -336,3 +323,7 @@ export class TransactionBuilder extends TweakedTransaction {
336
323
  return false;
337
324
  }
338
325
  }
326
+ TransactionBuilder.LOCK_LEAF_SCRIPT = script.compile([
327
+ opcodes.OP_0,
328
+ ]);
329
+ TransactionBuilder.MINIMUM_DUST = 330n;
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { Taptree } from 'bitcoinjs-lib/src/types.js';
3
2
  import { TransactionType } from '../enums/TransactionType.js';
4
3
  import { IUnwrapParameters } from '../interfaces/ITransactionParameters.js';
@@ -9,16 +9,6 @@ import { PsbtTransaction } from '../processor/PsbtTransaction.js';
9
9
  import { currentConsensusConfig } from '../../consensus/ConsensusConfig.js';
10
10
  const abiCoder = new ABICoder();
11
11
  export class UnwrapSegwitTransaction extends SharedInteractionTransaction {
12
- static UNWRAP_SELECTOR = Number('0x' + abiCoder.encodeSelector('burn'));
13
- type = TransactionType.WBTC_UNWRAP;
14
- amount;
15
- compiledTargetScript;
16
- scriptTree;
17
- sighashTypes = [];
18
- contractSecret;
19
- vaultUTXOs;
20
- wbtc;
21
- calculatedSignHash = PsbtTransaction.calculateSignHash(this.sighashTypes);
22
12
  constructor(parameters) {
23
13
  if (parameters.amount < TransactionBuilder.MINIMUM_DUST) {
24
14
  throw new Error('Amount is below dust limit');
@@ -26,6 +16,9 @@ export class UnwrapSegwitTransaction extends SharedInteractionTransaction {
26
16
  parameters.disableAutoRefund = true;
27
17
  parameters.calldata = UnwrapSegwitTransaction.generateBurnCalldata(parameters.amount);
28
18
  super(parameters);
19
+ this.type = TransactionType.WBTC_UNWRAP;
20
+ this.sighashTypes = [];
21
+ this.calculatedSignHash = PsbtTransaction.calculateSignHash(this.sighashTypes);
29
22
  this.wbtc = new wBTC(parameters.network, parameters.chainId);
30
23
  this.to = this.wbtc.getAddress();
31
24
  this.vaultUTXOs = parameters.unwrapUTXOs;
@@ -183,3 +176,4 @@ export class UnwrapSegwitTransaction extends SharedInteractionTransaction {
183
176
  return total;
184
177
  }
185
178
  }
179
+ UnwrapSegwitTransaction.UNWRAP_SELECTOR = Number('0x' + abiCoder.encodeSelector('burn'));
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { Taptree } from 'bitcoinjs-lib/src/types.js';
3
2
  import { TransactionType } from '../enums/TransactionType.js';
4
3
  import { IUnwrapParameters } from '../interfaces/ITransactionParameters.js';
@@ -16,17 +16,6 @@ import { Features } from '../../generators/Features.js';
16
16
  const abiCoder = new ABICoder();
17
17
  const numsPoint = Buffer.from('50929b74c1a04954b78b4b6035e97a5e078a5a0f28ec96d547bfee9ace803ac0', 'hex');
18
18
  export class UnwrapTransaction extends SharedInteractionTransaction {
19
- static UNWRAP_SELECTOR = Number('0x' + abiCoder.encodeSelector('burn'));
20
- type = TransactionType.WBTC_UNWRAP;
21
- amount;
22
- compiledTargetScript;
23
- scriptTree;
24
- sighashTypes = [];
25
- contractSecret;
26
- vaultUTXOs;
27
- estimatedFeeLoss = 0n;
28
- wbtc;
29
- calculatedSignHash = PsbtTransaction.calculateSignHash(this.sighashTypes);
30
19
  constructor(parameters) {
31
20
  if (parameters.amount < TransactionBuilder.MINIMUM_DUST) {
32
21
  throw new Error('Amount is below dust limit');
@@ -34,6 +23,10 @@ export class UnwrapTransaction extends SharedInteractionTransaction {
34
23
  parameters.disableAutoRefund = true;
35
24
  parameters.calldata = UnwrapTransaction.generateBurnCalldata(parameters.amount);
36
25
  super(parameters);
26
+ this.type = TransactionType.WBTC_UNWRAP;
27
+ this.sighashTypes = [];
28
+ this.estimatedFeeLoss = 0n;
29
+ this.calculatedSignHash = PsbtTransaction.calculateSignHash(this.sighashTypes);
37
30
  this.wbtc = new wBTC(parameters.network, parameters.chainId);
38
31
  this.to = this.wbtc.getAddress();
39
32
  this.vaultUTXOs = parameters.unwrapUTXOs;
@@ -261,3 +254,4 @@ export class UnwrapTransaction extends SharedInteractionTransaction {
261
254
  return total;
262
255
  }
263
256
  }
257
+ UnwrapTransaction.UNWRAP_SELECTOR = Number('0x' + abiCoder.encodeSelector('burn'));
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { Taptree } from 'bitcoinjs-lib/src/types.js';
3
2
  import { TransactionType } from '../enums/TransactionType.js';
4
3
  import { TapLeafScript } from '../interfaces/Tap.js';
@@ -9,18 +9,6 @@ import { P2TR_MS } from '../shared/P2TR_MS.js';
9
9
  import { currentConsensusConfig } from '../../consensus/ConsensusConfig.js';
10
10
  const abiCoder = new ABICoder();
11
11
  export class WrapTransaction extends SharedInteractionTransaction {
12
- static WRAP_SELECTOR = Number('0x' + abiCoder.encodeSelector('mint'));
13
- type = TransactionType.WBTC_WRAP;
14
- vault;
15
- amount;
16
- receiver;
17
- compiledTargetScript;
18
- scriptTree;
19
- tapLeafScript = null;
20
- contractSecret;
21
- interactionPubKeys = [];
22
- minimumSignatures = 0;
23
- wbtc;
24
12
  constructor(parameters) {
25
13
  if (parameters.amount < currentConsensusConfig.VAULT_MINIMUM_AMOUNT) {
26
14
  throw new Error(`Amount is below the minimum required of ${currentConsensusConfig.VAULT_MINIMUM_AMOUNT} sat.`);
@@ -29,6 +17,10 @@ export class WrapTransaction extends SharedInteractionTransaction {
29
17
  TransactionBuilder.getFrom(parameters.from, parameters.signer, parameters.network);
30
18
  parameters.calldata = WrapTransaction.generateMintCalldata(parameters.amount, receiver, parameters.network);
31
19
  super(parameters);
20
+ this.type = TransactionType.WBTC_WRAP;
21
+ this.tapLeafScript = null;
22
+ this.interactionPubKeys = [];
23
+ this.minimumSignatures = 0;
32
24
  this.wbtc = new wBTC(parameters.network, parameters.chainId);
33
25
  this.vault = parameters.generationParameters.vault;
34
26
  this.to = this.wbtc.getAddress();
@@ -152,3 +144,4 @@ export class WrapTransaction extends SharedInteractionTransaction {
152
144
  ]);
153
145
  }
154
146
  }
147
+ WrapTransaction.WRAP_SELECTOR = Number('0x' + abiCoder.encodeSelector('mint'));
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { UTXO } from '../../utxo/interfaces/IUTXO.js';
3
2
  import { Address } from '@btc-vision/bsi-binary';
4
3
  import { WrappedGeneration } from '../../wbtc/WrappedGenerationParameters.js';
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { PsbtInput, PsbtOutput } from 'bip174/src/lib/interfaces.js';
3
2
  import { TransactionInput } from 'bitcoinjs-lib/src/psbt.js';
4
3
  export interface TapLeafScript {
@@ -1,12 +1,11 @@
1
1
  import { Psbt } from 'bitcoinjs-lib';
2
2
  import { TweakedTransaction } from '../shared/TweakedTransaction.js';
3
3
  export class PsbtTransaction extends TweakedTransaction {
4
- logColor = '#00ffe1';
5
- feesAddition = 10000n;
6
- transaction;
7
- sighashTypes = [];
8
4
  constructor(data) {
9
5
  super(data);
6
+ this.logColor = '#00ffe1';
7
+ this.feesAddition = 10000n;
8
+ this.sighashTypes = [];
10
9
  this.signer = data.signer;
11
10
  this.network = data.network;
12
11
  this.transaction = data.psbt;
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { Network } from 'bitcoinjs-lib';
3
2
  import { Address } from '@btc-vision/bsi-binary';
4
3
  export declare class P2TR_MS {
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { Logger } from '@btc-vision/logger';
3
2
  import { Network, Payment, Psbt, Signer, Transaction } from 'bitcoinjs-lib';
4
3
  import { PsbtInput } from 'bip174/src/lib/interfaces.js';
@@ -10,24 +10,19 @@ export var TransactionSequence;
10
10
  TransactionSequence[TransactionSequence["FINAL"] = 4294967295] = "FINAL";
11
11
  })(TransactionSequence || (TransactionSequence = {}));
12
12
  export class TweakedTransaction extends Logger {
13
- logColor = '#00ffe1';
14
- finalized = false;
15
- signer;
16
- tweakedSigner;
17
- network;
18
- signed = false;
19
- sighashTypes;
20
- scriptData = null;
21
- tapData = null;
22
- inputs = [];
23
- sequence = TransactionSequence.REPLACE_BY_FEE;
24
- tapLeafScript = null;
25
- nonWitnessUtxo;
26
- isBrowser = false;
27
- regenerated = false;
28
- ignoreSignatureErrors = false;
29
13
  constructor(data) {
30
14
  super();
15
+ this.logColor = '#00ffe1';
16
+ this.finalized = false;
17
+ this.signed = false;
18
+ this.scriptData = null;
19
+ this.tapData = null;
20
+ this.inputs = [];
21
+ this.sequence = TransactionSequence.REPLACE_BY_FEE;
22
+ this.tapLeafScript = null;
23
+ this.isBrowser = false;
24
+ this.regenerated = false;
25
+ this.ignoreSignatureErrors = false;
31
26
  this.signer = data.signer;
32
27
  this.network = data.network;
33
28
  this.nonWitnessUtxo = data.nonWitnessUtxo;
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { VaultUTXOs } from '../transaction/processor/PsbtTransaction.js';
3
2
  export declare class BitcoinUtils {
4
3
  static btcToSatoshi(btc: number): BigInt;
@@ -2,11 +2,10 @@ import { WrappedGeneration } from '../wbtc/WrappedGenerationParameters.js';
2
2
  import { UnwrapGeneration } from '../wbtc/UnwrapGeneration.js';
3
3
  import { currentConsensusConfig } from '../consensus/ConsensusConfig.js';
4
4
  export class OPNetLimitedProvider {
5
- opnetAPIUrl;
6
- utxoPath = 'address/utxos';
7
- rpc = 'json-rpc';
8
5
  constructor(opnetAPIUrl) {
9
6
  this.opnetAPIUrl = opnetAPIUrl;
7
+ this.utxoPath = 'address/utxos';
8
+ this.rpc = 'json-rpc';
10
9
  }
11
10
  async fetchUTXO(settings) {
12
11
  const params = {
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { Network } from 'bitcoinjs-lib';
3
2
  import { Taptree } from 'bitcoinjs-lib/src/types.js';
4
3
  export interface ContractAddressVerificationParams {
@@ -4,7 +4,6 @@ import { DeploymentGenerator } from '../generators/builders/DeploymentGenerator.
4
4
  import { TransactionBuilder } from '../transaction/builders/TransactionBuilder.js';
5
5
  import { AddressGenerator } from '../generators/AddressGenerator.js';
6
6
  export class TapscriptVerificator {
7
- static TAP_SCRIPT_VERSION = 192;
8
7
  static getContractAddress(params) {
9
8
  const network = params.network || networks.bitcoin;
10
9
  const scriptBuilder = new DeploymentGenerator(params.deployerPubKeyXOnly, toXOnly(params.contractSaltPubKey), network);
@@ -41,3 +40,4 @@ export class TapscriptVerificator {
41
40
  return tx.address;
42
41
  }
43
42
  }
43
+ TapscriptVerificator.TAP_SCRIPT_VERSION = 192;
@@ -1,6 +1,4 @@
1
1
  export class UnwrapGeneration {
2
- vaultUTXOs;
3
- balance;
4
2
  constructor(params) {
5
3
  this.vaultUTXOs = params.vaultUTXOs;
6
4
  this.balance = BigInt(params.balance);
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { GenerationConstraints, WrappedGenerationParameters } from './Generate.js';
3
2
  export declare class WrappedGeneration implements WrappedGenerationParameters {
4
3
  readonly constraints: GenerationConstraints;
@@ -1,10 +1,4 @@
1
1
  export class WrappedGeneration {
2
- constraints;
3
- entities;
4
- keys;
5
- signature;
6
- vault;
7
- pubKeys;
8
2
  constructor(params) {
9
3
  this.constraints = params.constraints;
10
4
  this.entities = params.entities;
@@ -0,0 +1,3 @@
1
+ {
2
+ "type": "commonjs"
3
+ }
package/docs/.nojekyll ADDED
@@ -0,0 +1 @@
1
+ TypeDoc added this file to prevent GitHub Pages from using Jekyll. You can turn off this behavior by setting the `githubPages` option to false.
@@ -0,0 +1,43 @@
1
+ :root {
2
+ --light-hl-0: #795E26;
3
+ --dark-hl-0: #DCDCAA;
4
+ --light-hl-1: #000000;
5
+ --dark-hl-1: #D4D4D4;
6
+ --light-hl-2: #A31515;
7
+ --dark-hl-2: #CE9178;
8
+ --light-code-background: #FFFFFF;
9
+ --dark-code-background: #1E1E1E;
10
+ }
11
+
12
+ @media (prefers-color-scheme: light) { :root {
13
+ --hl-0: var(--light-hl-0);
14
+ --hl-1: var(--light-hl-1);
15
+ --hl-2: var(--light-hl-2);
16
+ --code-background: var(--light-code-background);
17
+ } }
18
+
19
+ @media (prefers-color-scheme: dark) { :root {
20
+ --hl-0: var(--dark-hl-0);
21
+ --hl-1: var(--dark-hl-1);
22
+ --hl-2: var(--dark-hl-2);
23
+ --code-background: var(--dark-code-background);
24
+ } }
25
+
26
+ :root[data-theme='light'] {
27
+ --hl-0: var(--light-hl-0);
28
+ --hl-1: var(--light-hl-1);
29
+ --hl-2: var(--light-hl-2);
30
+ --code-background: var(--light-code-background);
31
+ }
32
+
33
+ :root[data-theme='dark'] {
34
+ --hl-0: var(--dark-hl-0);
35
+ --hl-1: var(--dark-hl-1);
36
+ --hl-2: var(--dark-hl-2);
37
+ --code-background: var(--dark-code-background);
38
+ }
39
+
40
+ .hl-0 { color: var(--hl-0); }
41
+ .hl-1 { color: var(--hl-1); }
42
+ .hl-2 { color: var(--hl-2); }
43
+ pre, code { background: var(--code-background); }