@btc-vision/transaction 1.8.0-beta.3 → 1.8.0-beta.4

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 (764) hide show
  1. package/browser/_version.d.ts +1 -0
  2. package/browser/_version.d.ts.map +1 -0
  3. package/browser/abi/ABICoder.d.ts +1 -1
  4. package/browser/abi/ABICoder.d.ts.map +1 -0
  5. package/browser/branded/Branded.d.ts +4 -0
  6. package/browser/branded/Branded.d.ts.map +1 -0
  7. package/browser/btc-vision-bitcoin.js +11999 -2647
  8. package/browser/buffer/BinaryReader.d.ts +120 -1
  9. package/browser/buffer/BinaryReader.d.ts.map +1 -0
  10. package/browser/buffer/BinaryWriter.d.ts +51 -1
  11. package/browser/buffer/BinaryWriter.d.ts.map +1 -0
  12. package/browser/bytecode/Compressor.d.ts +12 -0
  13. package/browser/bytecode/Compressor.d.ts.map +1 -0
  14. package/browser/chain/ChainData.d.ts +2 -2
  15. package/browser/chain/ChainData.d.ts.map +1 -0
  16. package/browser/consensus/Consensus.d.ts +11 -3
  17. package/browser/consensus/Consensus.d.ts.map +1 -0
  18. package/browser/consensus/ConsensusConfig.d.ts +1 -0
  19. package/browser/consensus/ConsensusConfig.d.ts.map +1 -0
  20. package/browser/consensus/IConsensusConfig.d.ts +1 -0
  21. package/browser/consensus/IConsensusConfig.d.ts.map +1 -0
  22. package/browser/consensus/metadata/RoswellConsensus.d.ts +1 -0
  23. package/browser/consensus/metadata/RoswellConsensus.d.ts.map +1 -0
  24. package/browser/crypto/crypto.d.ts +1 -0
  25. package/browser/crypto/crypto.d.ts.map +1 -0
  26. package/browser/deterministic/AddressMap.d.ts +6 -1
  27. package/browser/deterministic/AddressMap.d.ts.map +1 -0
  28. package/browser/deterministic/AddressSet.d.ts +3 -1
  29. package/browser/deterministic/AddressSet.d.ts.map +1 -0
  30. package/browser/deterministic/CustomMap.d.ts +3 -1
  31. package/browser/deterministic/CustomMap.d.ts.map +1 -0
  32. package/browser/deterministic/DeterministicMap.d.ts +3 -1
  33. package/browser/deterministic/DeterministicMap.d.ts.map +1 -0
  34. package/browser/deterministic/DeterministicSet.d.ts +3 -1
  35. package/browser/deterministic/DeterministicSet.d.ts.map +1 -0
  36. package/browser/deterministic/ExtendedAddressMap.d.ts +7 -1
  37. package/browser/deterministic/ExtendedAddressMap.d.ts.map +1 -0
  38. package/browser/deterministic/FastMap.d.ts +7 -1
  39. package/browser/deterministic/FastMap.d.ts.map +1 -0
  40. package/browser/ecc/backend.d.ts +13 -0
  41. package/browser/ecc/backend.d.ts.map +1 -0
  42. package/browser/epoch/ChallengeSolution.d.ts +33 -1
  43. package/browser/epoch/ChallengeSolution.d.ts.map +1 -0
  44. package/browser/epoch/interfaces/IChallengeSolution.d.ts +14 -13
  45. package/browser/epoch/interfaces/IChallengeSolution.d.ts.map +1 -0
  46. package/browser/epoch/validator/EpochValidator.d.ts +37 -7
  47. package/browser/epoch/validator/EpochValidator.d.ts.map +1 -0
  48. package/browser/event/NetEvent.d.ts +1 -0
  49. package/browser/event/NetEvent.d.ts.map +1 -0
  50. package/browser/generators/AddressGenerator.d.ts +4 -3
  51. package/browser/generators/AddressGenerator.d.ts.map +1 -0
  52. package/browser/generators/Features.d.ts +1 -0
  53. package/browser/generators/Features.d.ts.map +1 -0
  54. package/browser/generators/Generator.d.ts +46 -10
  55. package/browser/generators/Generator.d.ts.map +1 -0
  56. package/browser/generators/MLDSAData.d.ts +1 -0
  57. package/browser/generators/MLDSAData.d.ts.map +1 -0
  58. package/browser/generators/builders/CalldataGenerator.d.ts +25 -4
  59. package/browser/generators/builders/CalldataGenerator.d.ts.map +1 -0
  60. package/browser/generators/builders/CustomGenerator.d.ts +13 -3
  61. package/browser/generators/builders/CustomGenerator.d.ts.map +1 -0
  62. package/browser/generators/builders/DeploymentGenerator.d.ts +15 -4
  63. package/browser/generators/builders/DeploymentGenerator.d.ts.map +1 -0
  64. package/browser/generators/builders/HashCommitmentGenerator.d.ts +164 -12
  65. package/browser/generators/builders/HashCommitmentGenerator.d.ts.map +1 -0
  66. package/browser/generators/builders/LegacyCalldataGenerator.d.ts +26 -4
  67. package/browser/generators/builders/LegacyCalldataGenerator.d.ts.map +1 -0
  68. package/browser/generators/builders/MultiSignGenerator.d.ts +6 -1
  69. package/browser/generators/builders/MultiSignGenerator.d.ts.map +1 -0
  70. package/browser/generators/builders/P2WDAGenerator.d.ts +42 -4
  71. package/browser/generators/builders/P2WDAGenerator.d.ts.map +1 -0
  72. package/browser/index.d.ts +1 -0
  73. package/browser/index.d.ts.map +1 -0
  74. package/browser/index.js +3583 -3184
  75. package/browser/keypair/Address.d.ts +283 -13
  76. package/browser/keypair/Address.d.ts.map +1 -0
  77. package/browser/keypair/AddressVerificator.d.ts +7 -6
  78. package/browser/keypair/AddressVerificator.d.ts.map +1 -0
  79. package/browser/keypair/EcKeyPair.d.ts +183 -21
  80. package/browser/keypair/EcKeyPair.d.ts.map +1 -0
  81. package/browser/keypair/MessageSigner.d.ts +17 -16
  82. package/browser/keypair/MessageSigner.d.ts.map +1 -0
  83. package/browser/keypair/Secp256k1PointDeriver.d.ts +55 -0
  84. package/browser/keypair/Secp256k1PointDeriver.d.ts.map +1 -0
  85. package/browser/keypair/Wallet.d.ts +27 -13
  86. package/browser/keypair/Wallet.d.ts.map +1 -0
  87. package/browser/keypair/interfaces/IWallet.d.ts +19 -0
  88. package/browser/keypair/interfaces/IWallet.d.ts.map +1 -0
  89. package/browser/metadata/ContractBaseMetadata.d.ts +10 -2
  90. package/browser/metadata/ContractBaseMetadata.d.ts.map +1 -0
  91. package/browser/mnemonic/BIPStandard.d.ts +59 -0
  92. package/browser/mnemonic/BIPStandard.d.ts.map +1 -0
  93. package/browser/mnemonic/Mnemonic.d.ts +15 -3
  94. package/browser/mnemonic/Mnemonic.d.ts.map +1 -0
  95. package/browser/mnemonic/MnemonicStrength.d.ts +6 -0
  96. package/browser/mnemonic/MnemonicStrength.d.ts.map +1 -0
  97. package/browser/network/ChainId.d.ts +1 -0
  98. package/browser/network/ChainId.d.ts.map +1 -0
  99. package/browser/noble-curves.js +844 -2746
  100. package/browser/noble-hashes.js +1338 -2067
  101. package/browser/opnet.d.ts +22 -1
  102. package/browser/opnet.d.ts.map +1 -0
  103. package/browser/p2wda/P2WDADetector.d.ts +36 -9
  104. package/browser/p2wda/P2WDADetector.d.ts.map +1 -0
  105. package/browser/polyfill/disposable.d.ts +16 -0
  106. package/browser/polyfill/disposable.d.ts.map +1 -0
  107. package/browser/signer/AddressRotation.d.ts +36 -0
  108. package/browser/signer/AddressRotation.d.ts.map +1 -0
  109. package/browser/signer/IRotationSigner.d.ts +27 -3
  110. package/browser/signer/IRotationSigner.d.ts.map +1 -0
  111. package/browser/signer/ParallelSignerAdapter.d.ts +14 -0
  112. package/browser/signer/ParallelSignerAdapter.d.ts.map +1 -0
  113. package/browser/signer/SignerUtils.d.ts +11 -4
  114. package/browser/signer/SignerUtils.d.ts.map +1 -0
  115. package/browser/signer/TweakedSigner.d.ts +28 -4
  116. package/browser/signer/TweakedSigner.d.ts.map +1 -0
  117. package/browser/transaction/ContractAddress.d.ts +2 -2
  118. package/browser/transaction/ContractAddress.d.ts.map +1 -0
  119. package/browser/transaction/TransactionFactory.d.ts +140 -2
  120. package/browser/transaction/TransactionFactory.d.ts.map +1 -0
  121. package/browser/transaction/browser/BrowserSignerBase.d.ts +12 -6
  122. package/browser/transaction/browser/BrowserSignerBase.d.ts.map +1 -0
  123. package/browser/transaction/browser/WalletNetworks.d.ts +1 -0
  124. package/browser/transaction/browser/WalletNetworks.d.ts.map +1 -0
  125. package/browser/transaction/browser/Web3Provider.d.ts +27 -0
  126. package/browser/transaction/browser/Web3Provider.d.ts.map +1 -0
  127. package/browser/transaction/browser/extensions/UnisatSigner.d.ts +9 -7
  128. package/browser/transaction/browser/extensions/UnisatSigner.d.ts.map +1 -0
  129. package/browser/transaction/browser/extensions/XverseSigner.d.ts +9 -7
  130. package/browser/transaction/browser/extensions/XverseSigner.d.ts.map +1 -0
  131. package/browser/transaction/browser/types/OPWallet.d.ts +10 -0
  132. package/browser/transaction/browser/types/OPWallet.d.ts.map +1 -0
  133. package/browser/transaction/browser/types/Unisat.d.ts +1 -0
  134. package/browser/transaction/browser/types/Unisat.d.ts.map +1 -0
  135. package/browser/transaction/browser/types/Xverse.d.ts +1 -0
  136. package/browser/transaction/browser/types/Xverse.d.ts.map +1 -0
  137. package/browser/transaction/builders/CancelTransaction.d.ts +29 -4
  138. package/browser/transaction/builders/CancelTransaction.d.ts.map +1 -0
  139. package/browser/transaction/builders/ChallengeSolutionTransaction.d.ts +1 -0
  140. package/browser/transaction/builders/ChallengeSolutionTransaction.d.ts.map +1 -0
  141. package/browser/transaction/builders/ConsolidatedInteractionTransaction.d.ts +137 -10
  142. package/browser/transaction/builders/ConsolidatedInteractionTransaction.d.ts.map +1 -0
  143. package/browser/transaction/builders/CustomScriptTransaction.d.ts +106 -6
  144. package/browser/transaction/builders/CustomScriptTransaction.d.ts.map +1 -0
  145. package/browser/transaction/builders/DeploymentTransaction.d.ts +116 -5
  146. package/browser/transaction/builders/DeploymentTransaction.d.ts.map +1 -0
  147. package/browser/transaction/builders/FundingTransaction.d.ts +4 -3
  148. package/browser/transaction/builders/FundingTransaction.d.ts.map +1 -0
  149. package/browser/transaction/builders/InteractionTransaction.d.ts +12 -3
  150. package/browser/transaction/builders/InteractionTransaction.d.ts.map +1 -0
  151. package/browser/transaction/builders/InteractionTransactionP2WDA.d.ts +56 -5
  152. package/browser/transaction/builders/InteractionTransactionP2WDA.d.ts.map +1 -0
  153. package/browser/transaction/builders/MultiSignTransaction.d.ts +125 -16
  154. package/browser/transaction/builders/MultiSignTransaction.d.ts.map +1 -0
  155. package/browser/transaction/builders/SharedInteractionTransaction.d.ts +103 -15
  156. package/browser/transaction/builders/SharedInteractionTransaction.d.ts.map +1 -0
  157. package/browser/transaction/builders/TransactionBuilder.d.ts +243 -14
  158. package/browser/transaction/builders/TransactionBuilder.d.ts.map +1 -0
  159. package/browser/transaction/enums/TransactionType.d.ts +1 -0
  160. package/browser/transaction/enums/TransactionType.d.ts.map +1 -0
  161. package/browser/transaction/interfaces/ICancelTransactionParameters.d.ts +2 -1
  162. package/browser/transaction/interfaces/ICancelTransactionParameters.d.ts.map +1 -0
  163. package/browser/transaction/interfaces/IConsolidatedTransactionParameters.d.ts +46 -3
  164. package/browser/transaction/interfaces/IConsolidatedTransactionParameters.d.ts.map +1 -0
  165. package/browser/transaction/interfaces/ICustomTransactionParameters.d.ts +6 -4
  166. package/browser/transaction/interfaces/ICustomTransactionParameters.d.ts.map +1 -0
  167. package/browser/transaction/interfaces/ITransactionParameters.d.ts +22 -10
  168. package/browser/transaction/interfaces/ITransactionParameters.d.ts.map +1 -0
  169. package/browser/transaction/interfaces/ITransactionResponses.d.ts +1 -0
  170. package/browser/transaction/interfaces/ITransactionResponses.d.ts.map +1 -0
  171. package/browser/transaction/interfaces/ITweakedTransactionData.d.ts +18 -5
  172. package/browser/transaction/interfaces/ITweakedTransactionData.d.ts.map +1 -0
  173. package/browser/transaction/interfaces/IWeb3ProviderTypes.d.ts +26 -0
  174. package/browser/transaction/interfaces/IWeb3ProviderTypes.d.ts.map +1 -0
  175. package/browser/transaction/interfaces/Tap.d.ts +4 -3
  176. package/browser/transaction/interfaces/Tap.d.ts.map +1 -0
  177. package/browser/transaction/mineable/IP2WSHAddress.d.ts +2 -1
  178. package/browser/transaction/mineable/IP2WSHAddress.d.ts.map +1 -0
  179. package/browser/transaction/mineable/TimelockGenerator.d.ts +12 -3
  180. package/browser/transaction/mineable/TimelockGenerator.d.ts.map +1 -0
  181. package/browser/transaction/offline/OfflineTransactionManager.d.ts +190 -9
  182. package/browser/transaction/offline/OfflineTransactionManager.d.ts.map +1 -0
  183. package/browser/transaction/offline/TransactionReconstructor.d.ts +53 -3
  184. package/browser/transaction/offline/TransactionReconstructor.d.ts.map +1 -0
  185. package/browser/transaction/offline/TransactionSerializer.d.ts +53 -2
  186. package/browser/transaction/offline/TransactionSerializer.d.ts.map +1 -0
  187. package/browser/transaction/offline/TransactionStateCapture.d.ts +64 -5
  188. package/browser/transaction/offline/TransactionStateCapture.d.ts.map +1 -0
  189. package/browser/transaction/offline/interfaces/ISerializableState.d.ts +71 -0
  190. package/browser/transaction/offline/interfaces/ISerializableState.d.ts.map +1 -0
  191. package/browser/transaction/offline/interfaces/ITypeSpecificData.d.ts +76 -0
  192. package/browser/transaction/offline/interfaces/ITypeSpecificData.d.ts.map +1 -0
  193. package/browser/transaction/psbt/PSBTTypes.d.ts +1 -0
  194. package/browser/transaction/psbt/PSBTTypes.d.ts.map +1 -0
  195. package/browser/transaction/shared/P2TR_MS.d.ts +11 -2
  196. package/browser/transaction/shared/P2TR_MS.d.ts.map +1 -0
  197. package/browser/transaction/shared/TweakedTransaction.d.ts +275 -33
  198. package/browser/transaction/shared/TweakedTransaction.d.ts.map +1 -0
  199. package/browser/transaction/utils/WitnessUtils.d.ts +7 -1
  200. package/browser/transaction/utils/WitnessUtils.d.ts.map +1 -0
  201. package/browser/utils/BitcoinUtils.d.ts +19 -0
  202. package/browser/utils/BitcoinUtils.d.ts.map +1 -0
  203. package/browser/utils/BufferHelper.d.ts +1 -0
  204. package/browser/utils/BufferHelper.d.ts.map +1 -0
  205. package/browser/utils/StringToBuffer.d.ts +1 -0
  206. package/browser/utils/StringToBuffer.d.ts.map +1 -0
  207. package/browser/utils/lengths.d.ts +1 -0
  208. package/browser/utils/lengths.d.ts.map +1 -0
  209. package/browser/utils/types.d.ts +1 -0
  210. package/browser/utils/types.d.ts.map +1 -0
  211. package/browser/utxo/OPNetLimitedProvider.d.ts +37 -1
  212. package/browser/utxo/OPNetLimitedProvider.d.ts.map +1 -0
  213. package/browser/utxo/interfaces/BroadcastResponse.d.ts +1 -0
  214. package/browser/utxo/interfaces/BroadcastResponse.d.ts.map +1 -0
  215. package/browser/utxo/interfaces/IUTXO.d.ts +11 -5
  216. package/browser/utxo/interfaces/IUTXO.d.ts.map +1 -0
  217. package/browser/vendors.js +14351 -10031
  218. package/browser/verification/TapscriptVerificator.d.ts +10 -8
  219. package/browser/verification/TapscriptVerificator.d.ts.map +1 -0
  220. package/build/_version.d.ts +1 -0
  221. package/build/_version.d.ts.map +1 -0
  222. package/build/_version.js +1 -0
  223. package/build/_version.js.map +1 -0
  224. package/build/abi/ABICoder.d.ts +1 -1
  225. package/build/abi/ABICoder.d.ts.map +1 -0
  226. package/build/abi/ABICoder.js +9 -10
  227. package/build/abi/ABICoder.js.map +1 -0
  228. package/build/branded/Branded.d.ts +4 -0
  229. package/build/branded/Branded.d.ts.map +1 -0
  230. package/build/branded/Branded.js +2 -0
  231. package/build/branded/Branded.js.map +1 -0
  232. package/build/buffer/BinaryReader.d.ts +121 -2
  233. package/build/buffer/BinaryReader.d.ts.map +1 -0
  234. package/build/buffer/BinaryReader.js +129 -5
  235. package/build/buffer/BinaryReader.js.map +1 -0
  236. package/build/buffer/BinaryWriter.d.ts +52 -2
  237. package/build/buffer/BinaryWriter.d.ts.map +1 -0
  238. package/build/buffer/BinaryWriter.js +62 -2
  239. package/build/buffer/BinaryWriter.js.map +1 -0
  240. package/build/bytecode/Compressor.d.ts +12 -0
  241. package/build/bytecode/Compressor.d.ts.map +1 -0
  242. package/build/bytecode/Compressor.js +17 -5
  243. package/build/bytecode/Compressor.js.map +1 -0
  244. package/build/chain/ChainData.d.ts +2 -2
  245. package/build/chain/ChainData.d.ts.map +1 -0
  246. package/build/chain/ChainData.js +35 -17
  247. package/build/chain/ChainData.js.map +1 -0
  248. package/build/consensus/Consensus.d.ts +11 -3
  249. package/build/consensus/Consensus.d.ts.map +1 -0
  250. package/build/consensus/Consensus.js +8 -0
  251. package/build/consensus/Consensus.js.map +1 -0
  252. package/build/consensus/ConsensusConfig.d.ts +2 -1
  253. package/build/consensus/ConsensusConfig.d.ts.map +1 -0
  254. package/build/consensus/ConsensusConfig.js +1 -0
  255. package/build/consensus/ConsensusConfig.js.map +1 -0
  256. package/build/consensus/IConsensusConfig.d.ts +1 -0
  257. package/build/consensus/IConsensusConfig.d.ts.map +1 -0
  258. package/build/consensus/IConsensusConfig.js +2 -1
  259. package/build/consensus/IConsensusConfig.js.map +1 -0
  260. package/build/consensus/metadata/RoswellConsensus.d.ts +2 -1
  261. package/build/consensus/metadata/RoswellConsensus.d.ts.map +1 -0
  262. package/build/consensus/metadata/RoswellConsensus.js +2 -0
  263. package/build/consensus/metadata/RoswellConsensus.js.map +1 -0
  264. package/build/crypto/crypto.d.ts +1 -0
  265. package/build/crypto/crypto.d.ts.map +1 -0
  266. package/build/crypto/crypto.js +1 -0
  267. package/build/crypto/crypto.js.map +1 -0
  268. package/build/deterministic/AddressMap.d.ts +6 -1
  269. package/build/deterministic/AddressMap.d.ts.map +1 -0
  270. package/build/deterministic/AddressMap.js +8 -0
  271. package/build/deterministic/AddressMap.js.map +1 -0
  272. package/build/deterministic/AddressSet.d.ts +3 -1
  273. package/build/deterministic/AddressSet.d.ts.map +1 -0
  274. package/build/deterministic/AddressSet.js +7 -0
  275. package/build/deterministic/AddressSet.js.map +1 -0
  276. package/build/deterministic/CustomMap.d.ts +3 -1
  277. package/build/deterministic/CustomMap.d.ts.map +1 -0
  278. package/build/deterministic/CustomMap.js +65 -47
  279. package/build/deterministic/CustomMap.js.map +1 -0
  280. package/build/deterministic/DeterministicMap.d.ts +4 -2
  281. package/build/deterministic/DeterministicMap.d.ts.map +1 -0
  282. package/build/deterministic/DeterministicMap.js +24 -27
  283. package/build/deterministic/DeterministicMap.js.map +1 -0
  284. package/build/deterministic/DeterministicSet.d.ts +3 -1
  285. package/build/deterministic/DeterministicSet.d.ts.map +1 -0
  286. package/build/deterministic/DeterministicSet.js +6 -0
  287. package/build/deterministic/DeterministicSet.js.map +1 -0
  288. package/build/deterministic/ExtendedAddressMap.d.ts +7 -1
  289. package/build/deterministic/ExtendedAddressMap.d.ts.map +1 -0
  290. package/build/deterministic/ExtendedAddressMap.js +18 -2
  291. package/build/deterministic/ExtendedAddressMap.js.map +1 -0
  292. package/build/deterministic/FastMap.d.ts +7 -1
  293. package/build/deterministic/FastMap.d.ts.map +1 -0
  294. package/build/deterministic/FastMap.js +7 -2
  295. package/build/deterministic/FastMap.js.map +1 -0
  296. package/build/ecc/backend.d.ts +13 -0
  297. package/build/ecc/backend.d.ts.map +1 -0
  298. package/build/ecc/backend.js +15 -0
  299. package/build/ecc/backend.js.map +1 -0
  300. package/build/epoch/ChallengeSolution.d.ts +34 -2
  301. package/build/epoch/ChallengeSolution.d.ts.map +1 -0
  302. package/build/epoch/ChallengeSolution.js +52 -0
  303. package/build/epoch/ChallengeSolution.js.map +1 -0
  304. package/build/epoch/interfaces/IChallengeSolution.d.ts +14 -13
  305. package/build/epoch/interfaces/IChallengeSolution.d.ts.map +1 -0
  306. package/build/epoch/interfaces/IChallengeSolution.js +2 -1
  307. package/build/epoch/interfaces/IChallengeSolution.js.map +1 -0
  308. package/build/epoch/validator/EpochValidator.d.ts +38 -8
  309. package/build/epoch/validator/EpochValidator.d.ts.map +1 -0
  310. package/build/epoch/validator/EpochValidator.js +45 -19
  311. package/build/epoch/validator/EpochValidator.js.map +1 -0
  312. package/build/event/NetEvent.d.ts +1 -0
  313. package/build/event/NetEvent.d.ts.map +1 -0
  314. package/build/event/NetEvent.js +3 -0
  315. package/build/event/NetEvent.js.map +1 -0
  316. package/build/generators/AddressGenerator.d.ts +4 -3
  317. package/build/generators/AddressGenerator.d.ts.map +1 -0
  318. package/build/generators/AddressGenerator.js +10 -3
  319. package/build/generators/AddressGenerator.js.map +1 -0
  320. package/build/generators/Features.d.ts +4 -3
  321. package/build/generators/Features.d.ts.map +1 -0
  322. package/build/generators/Features.js +1 -0
  323. package/build/generators/Features.js.map +1 -0
  324. package/build/generators/Generator.d.ts +47 -11
  325. package/build/generators/Generator.d.ts.map +1 -0
  326. package/build/generators/Generator.js +48 -12
  327. package/build/generators/Generator.js.map +1 -0
  328. package/build/generators/MLDSAData.d.ts +1 -0
  329. package/build/generators/MLDSAData.d.ts.map +1 -0
  330. package/build/generators/MLDSAData.js +1 -0
  331. package/build/generators/MLDSAData.js.map +1 -0
  332. package/build/generators/builders/CalldataGenerator.d.ts +27 -6
  333. package/build/generators/builders/CalldataGenerator.d.ts.map +1 -0
  334. package/build/generators/builders/CalldataGenerator.js +33 -4
  335. package/build/generators/builders/CalldataGenerator.js.map +1 -0
  336. package/build/generators/builders/CustomGenerator.d.ts +13 -3
  337. package/build/generators/builders/CustomGenerator.d.ts.map +1 -0
  338. package/build/generators/builders/CustomGenerator.js +11 -0
  339. package/build/generators/builders/CustomGenerator.js.map +1 -0
  340. package/build/generators/builders/DeploymentGenerator.d.ts +17 -6
  341. package/build/generators/builders/DeploymentGenerator.d.ts.map +1 -0
  342. package/build/generators/builders/DeploymentGenerator.js +18 -2
  343. package/build/generators/builders/DeploymentGenerator.js.map +1 -0
  344. package/build/generators/builders/HashCommitmentGenerator.d.ts +166 -14
  345. package/build/generators/builders/HashCommitmentGenerator.d.ts.map +1 -0
  346. package/build/generators/builders/HashCommitmentGenerator.js +193 -27
  347. package/build/generators/builders/HashCommitmentGenerator.js.map +1 -0
  348. package/build/generators/builders/LegacyCalldataGenerator.d.ts +27 -5
  349. package/build/generators/builders/LegacyCalldataGenerator.d.ts.map +1 -0
  350. package/build/generators/builders/LegacyCalldataGenerator.js +35 -5
  351. package/build/generators/builders/LegacyCalldataGenerator.js.map +1 -0
  352. package/build/generators/builders/MultiSignGenerator.d.ts +6 -1
  353. package/build/generators/builders/MultiSignGenerator.d.ts.map +1 -0
  354. package/build/generators/builders/MultiSignGenerator.js +20 -10
  355. package/build/generators/builders/MultiSignGenerator.js.map +1 -0
  356. package/build/generators/builders/P2WDAGenerator.d.ts +44 -6
  357. package/build/generators/builders/P2WDAGenerator.d.ts.map +1 -0
  358. package/build/generators/builders/P2WDAGenerator.js +41 -2
  359. package/build/generators/builders/P2WDAGenerator.js.map +1 -0
  360. package/build/index.d.ts +1 -0
  361. package/build/index.d.ts.map +1 -0
  362. package/build/index.js +1 -0
  363. package/build/index.js.map +1 -0
  364. package/build/keypair/Address.d.ts +284 -14
  365. package/build/keypair/Address.d.ts.map +1 -0
  366. package/build/keypair/Address.js +446 -128
  367. package/build/keypair/Address.js.map +1 -0
  368. package/build/keypair/AddressVerificator.d.ts +7 -6
  369. package/build/keypair/AddressVerificator.d.ts.map +1 -0
  370. package/build/keypair/AddressVerificator.js +6 -5
  371. package/build/keypair/AddressVerificator.js.map +1 -0
  372. package/build/keypair/EcKeyPair.d.ts +185 -23
  373. package/build/keypair/EcKeyPair.d.ts.map +1 -0
  374. package/build/keypair/EcKeyPair.js +219 -50
  375. package/build/keypair/EcKeyPair.js.map +1 -0
  376. package/build/keypair/MessageSigner.d.ts +18 -17
  377. package/build/keypair/MessageSigner.d.ts.map +1 -0
  378. package/build/keypair/MessageSigner.js +34 -25
  379. package/build/keypair/MessageSigner.js.map +1 -0
  380. package/build/keypair/Secp256k1PointDeriver.d.ts +55 -0
  381. package/build/keypair/Secp256k1PointDeriver.d.ts.map +1 -0
  382. package/build/keypair/Secp256k1PointDeriver.js +66 -0
  383. package/build/keypair/Secp256k1PointDeriver.js.map +1 -0
  384. package/build/keypair/Wallet.d.ts +29 -15
  385. package/build/keypair/Wallet.d.ts.map +1 -0
  386. package/build/keypair/Wallet.js +48 -14
  387. package/build/keypair/Wallet.js.map +1 -0
  388. package/build/keypair/interfaces/IWallet.d.ts +19 -0
  389. package/build/keypair/interfaces/IWallet.d.ts.map +1 -0
  390. package/build/keypair/interfaces/IWallet.js +1 -0
  391. package/build/keypair/interfaces/IWallet.js.map +1 -0
  392. package/build/metadata/ContractBaseMetadata.d.ts +10 -2
  393. package/build/metadata/ContractBaseMetadata.d.ts.map +1 -0
  394. package/build/metadata/ContractBaseMetadata.js +10 -1
  395. package/build/metadata/ContractBaseMetadata.js.map +1 -0
  396. package/build/mnemonic/BIPStandard.d.ts +59 -0
  397. package/build/mnemonic/BIPStandard.d.ts.map +1 -0
  398. package/build/mnemonic/BIPStandard.js +59 -0
  399. package/build/mnemonic/BIPStandard.js.map +1 -0
  400. package/build/mnemonic/Mnemonic.d.ts +16 -4
  401. package/build/mnemonic/Mnemonic.d.ts.map +1 -0
  402. package/build/mnemonic/Mnemonic.js +36 -8
  403. package/build/mnemonic/Mnemonic.js.map +1 -0
  404. package/build/mnemonic/MnemonicStrength.d.ts +6 -0
  405. package/build/mnemonic/MnemonicStrength.d.ts.map +1 -0
  406. package/build/mnemonic/MnemonicStrength.js +6 -0
  407. package/build/mnemonic/MnemonicStrength.js.map +1 -0
  408. package/build/network/ChainId.d.ts +1 -0
  409. package/build/network/ChainId.d.ts.map +1 -0
  410. package/build/network/ChainId.js +1 -0
  411. package/build/network/ChainId.js.map +1 -0
  412. package/build/opnet.d.ts +26 -3
  413. package/build/opnet.d.ts.map +1 -0
  414. package/build/opnet.js +23 -0
  415. package/build/opnet.js.map +1 -0
  416. package/build/p2wda/P2WDADetector.d.ts +38 -11
  417. package/build/p2wda/P2WDADetector.d.ts.map +1 -0
  418. package/build/p2wda/P2WDADetector.js +43 -10
  419. package/build/p2wda/P2WDADetector.js.map +1 -0
  420. package/build/polyfill/disposable.d.ts +16 -0
  421. package/build/polyfill/disposable.d.ts.map +1 -0
  422. package/build/polyfill/disposable.js +23 -0
  423. package/build/polyfill/disposable.js.map +1 -0
  424. package/build/signer/AddressRotation.d.ts +37 -1
  425. package/build/signer/AddressRotation.d.ts.map +1 -0
  426. package/build/signer/AddressRotation.js +16 -0
  427. package/build/signer/AddressRotation.js.map +1 -0
  428. package/build/signer/IRotationSigner.d.ts +27 -3
  429. package/build/signer/IRotationSigner.d.ts.map +1 -0
  430. package/build/signer/IRotationSigner.js +2 -1
  431. package/build/signer/IRotationSigner.js.map +1 -0
  432. package/build/signer/ParallelSignerAdapter.d.ts +14 -0
  433. package/build/signer/ParallelSignerAdapter.d.ts.map +1 -0
  434. package/build/signer/ParallelSignerAdapter.js +51 -0
  435. package/build/signer/ParallelSignerAdapter.js.map +1 -0
  436. package/build/signer/SignerUtils.d.ts +11 -4
  437. package/build/signer/SignerUtils.d.ts.map +1 -0
  438. package/build/signer/SignerUtils.js +16 -0
  439. package/build/signer/SignerUtils.js.map +1 -0
  440. package/build/signer/TweakedSigner.d.ts +28 -4
  441. package/build/signer/TweakedSigner.d.ts.map +1 -0
  442. package/build/signer/TweakedSigner.js +24 -6
  443. package/build/signer/TweakedSigner.js.map +1 -0
  444. package/build/transaction/ContractAddress.d.ts +2 -2
  445. package/build/transaction/ContractAddress.d.ts.map +1 -0
  446. package/build/transaction/ContractAddress.js +4 -8
  447. package/build/transaction/ContractAddress.js.map +1 -0
  448. package/build/transaction/TransactionFactory.d.ts +147 -9
  449. package/build/transaction/TransactionFactory.d.ts.map +1 -0
  450. package/build/transaction/TransactionFactory.js +145 -26
  451. package/build/transaction/TransactionFactory.js.map +1 -0
  452. package/build/transaction/browser/BrowserSignerBase.d.ts +12 -6
  453. package/build/transaction/browser/BrowserSignerBase.d.ts.map +1 -0
  454. package/build/transaction/browser/BrowserSignerBase.js +7 -0
  455. package/build/transaction/browser/BrowserSignerBase.js.map +1 -0
  456. package/build/transaction/browser/WalletNetworks.d.ts +1 -0
  457. package/build/transaction/browser/WalletNetworks.d.ts.map +1 -0
  458. package/build/transaction/browser/WalletNetworks.js +1 -0
  459. package/build/transaction/browser/WalletNetworks.js.map +1 -0
  460. package/build/transaction/browser/Web3Provider.d.ts +30 -3
  461. package/build/transaction/browser/Web3Provider.d.ts.map +1 -0
  462. package/build/transaction/browser/Web3Provider.js +1 -0
  463. package/build/transaction/browser/Web3Provider.js.map +1 -0
  464. package/build/transaction/browser/extensions/UnisatSigner.d.ts +11 -9
  465. package/build/transaction/browser/extensions/UnisatSigner.d.ts.map +1 -0
  466. package/build/transaction/browser/extensions/UnisatSigner.js +27 -17
  467. package/build/transaction/browser/extensions/UnisatSigner.js.map +1 -0
  468. package/build/transaction/browser/extensions/XverseSigner.d.ts +10 -8
  469. package/build/transaction/browser/extensions/XverseSigner.d.ts.map +1 -0
  470. package/build/transaction/browser/extensions/XverseSigner.js +25 -15
  471. package/build/transaction/browser/extensions/XverseSigner.js.map +1 -0
  472. package/build/transaction/browser/types/OPWallet.d.ts +12 -2
  473. package/build/transaction/browser/types/OPWallet.d.ts.map +1 -0
  474. package/build/transaction/browser/types/OPWallet.js +4 -0
  475. package/build/transaction/browser/types/OPWallet.js.map +1 -0
  476. package/build/transaction/browser/types/Unisat.d.ts +2 -1
  477. package/build/transaction/browser/types/Unisat.d.ts.map +1 -0
  478. package/build/transaction/browser/types/Unisat.js +2 -0
  479. package/build/transaction/browser/types/Unisat.js.map +1 -0
  480. package/build/transaction/browser/types/Xverse.d.ts +1 -0
  481. package/build/transaction/browser/types/Xverse.d.ts.map +1 -0
  482. package/build/transaction/browser/types/Xverse.js +1 -0
  483. package/build/transaction/browser/types/Xverse.js.map +1 -0
  484. package/build/transaction/builders/CancelTransaction.d.ts +31 -6
  485. package/build/transaction/builders/CancelTransaction.d.ts.map +1 -0
  486. package/build/transaction/builders/CancelTransaction.js +116 -33
  487. package/build/transaction/builders/CancelTransaction.js.map +1 -0
  488. package/build/transaction/builders/ChallengeSolutionTransaction.d.ts +1 -0
  489. package/build/transaction/builders/ChallengeSolutionTransaction.d.ts.map +1 -0
  490. package/build/transaction/builders/ChallengeSolutionTransaction.js +88 -0
  491. package/build/transaction/builders/ChallengeSolutionTransaction.js.map +1 -0
  492. package/build/transaction/builders/ConsolidatedInteractionTransaction.d.ts +140 -13
  493. package/build/transaction/builders/ConsolidatedInteractionTransaction.d.ts.map +1 -0
  494. package/build/transaction/builders/ConsolidatedInteractionTransaction.js +197 -20
  495. package/build/transaction/builders/ConsolidatedInteractionTransaction.js.map +1 -0
  496. package/build/transaction/builders/CustomScriptTransaction.d.ts +108 -8
  497. package/build/transaction/builders/CustomScriptTransaction.d.ts.map +1 -0
  498. package/build/transaction/builders/CustomScriptTransaction.js +176 -39
  499. package/build/transaction/builders/CustomScriptTransaction.js.map +1 -0
  500. package/build/transaction/builders/DeploymentTransaction.d.ts +120 -9
  501. package/build/transaction/builders/DeploymentTransaction.d.ts.map +1 -0
  502. package/build/transaction/builders/DeploymentTransaction.js +194 -51
  503. package/build/transaction/builders/DeploymentTransaction.js.map +1 -0
  504. package/build/transaction/builders/FundingTransaction.d.ts +5 -4
  505. package/build/transaction/builders/FundingTransaction.d.ts.map +1 -0
  506. package/build/transaction/builders/FundingTransaction.js +15 -8
  507. package/build/transaction/builders/FundingTransaction.js.map +1 -0
  508. package/build/transaction/builders/InteractionTransaction.d.ts +14 -5
  509. package/build/transaction/builders/InteractionTransaction.d.ts.map +1 -0
  510. package/build/transaction/builders/InteractionTransaction.js +18 -5
  511. package/build/transaction/builders/InteractionTransaction.js.map +1 -0
  512. package/build/transaction/builders/InteractionTransactionP2WDA.d.ts +58 -7
  513. package/build/transaction/builders/InteractionTransactionP2WDA.d.ts.map +1 -0
  514. package/build/transaction/builders/InteractionTransactionP2WDA.js +95 -18
  515. package/build/transaction/builders/InteractionTransactionP2WDA.js.map +1 -0
  516. package/build/transaction/builders/MultiSignTransaction.d.ts +126 -17
  517. package/build/transaction/builders/MultiSignTransaction.d.ts.map +1 -0
  518. package/build/transaction/builders/MultiSignTransaction.js +201 -76
  519. package/build/transaction/builders/MultiSignTransaction.js.map +1 -0
  520. package/build/transaction/builders/SharedInteractionTransaction.d.ts +106 -18
  521. package/build/transaction/builders/SharedInteractionTransaction.d.ts.map +1 -0
  522. package/build/transaction/builders/SharedInteractionTransaction.js +158 -40
  523. package/build/transaction/builders/SharedInteractionTransaction.js.map +1 -0
  524. package/build/transaction/builders/TransactionBuilder.d.ts +249 -19
  525. package/build/transaction/builders/TransactionBuilder.d.ts.map +1 -0
  526. package/build/transaction/builders/TransactionBuilder.js +377 -60
  527. package/build/transaction/builders/TransactionBuilder.js.map +1 -0
  528. package/build/transaction/enums/TransactionType.d.ts +1 -0
  529. package/build/transaction/enums/TransactionType.d.ts.map +1 -0
  530. package/build/transaction/enums/TransactionType.js +1 -0
  531. package/build/transaction/enums/TransactionType.js.map +1 -0
  532. package/build/transaction/interfaces/ICancelTransactionParameters.d.ts +3 -2
  533. package/build/transaction/interfaces/ICancelTransactionParameters.d.ts.map +1 -0
  534. package/build/transaction/interfaces/ICancelTransactionParameters.js +1 -0
  535. package/build/transaction/interfaces/ICancelTransactionParameters.js.map +1 -0
  536. package/build/transaction/interfaces/IConsolidatedTransactionParameters.d.ts +48 -5
  537. package/build/transaction/interfaces/IConsolidatedTransactionParameters.d.ts.map +1 -0
  538. package/build/transaction/interfaces/IConsolidatedTransactionParameters.js +1 -0
  539. package/build/transaction/interfaces/IConsolidatedTransactionParameters.js.map +1 -0
  540. package/build/transaction/interfaces/ICustomTransactionParameters.d.ts +7 -5
  541. package/build/transaction/interfaces/ICustomTransactionParameters.d.ts.map +1 -0
  542. package/build/transaction/interfaces/ICustomTransactionParameters.js +1 -0
  543. package/build/transaction/interfaces/ICustomTransactionParameters.js.map +1 -0
  544. package/build/transaction/interfaces/ITransactionParameters.d.ts +27 -15
  545. package/build/transaction/interfaces/ITransactionParameters.d.ts.map +1 -0
  546. package/build/transaction/interfaces/ITransactionParameters.js +1 -0
  547. package/build/transaction/interfaces/ITransactionParameters.js.map +1 -0
  548. package/build/transaction/interfaces/ITransactionResponses.d.ts +3 -2
  549. package/build/transaction/interfaces/ITransactionResponses.d.ts.map +1 -0
  550. package/build/transaction/interfaces/ITransactionResponses.js +1 -0
  551. package/build/transaction/interfaces/ITransactionResponses.js.map +1 -0
  552. package/build/transaction/interfaces/ITweakedTransactionData.d.ts +21 -8
  553. package/build/transaction/interfaces/ITweakedTransactionData.d.ts.map +1 -0
  554. package/build/transaction/interfaces/ITweakedTransactionData.js +1 -0
  555. package/build/transaction/interfaces/ITweakedTransactionData.js.map +1 -0
  556. package/build/transaction/interfaces/IWeb3ProviderTypes.d.ts +29 -3
  557. package/build/transaction/interfaces/IWeb3ProviderTypes.d.ts.map +1 -0
  558. package/build/transaction/interfaces/IWeb3ProviderTypes.js +2 -1
  559. package/build/transaction/interfaces/IWeb3ProviderTypes.js.map +1 -0
  560. package/build/transaction/interfaces/Tap.d.ts +4 -3
  561. package/build/transaction/interfaces/Tap.d.ts.map +1 -0
  562. package/build/transaction/interfaces/Tap.js +1 -0
  563. package/build/transaction/interfaces/Tap.js.map +1 -0
  564. package/build/transaction/mineable/IP2WSHAddress.d.ts +2 -1
  565. package/build/transaction/mineable/IP2WSHAddress.d.ts.map +1 -0
  566. package/build/transaction/mineable/IP2WSHAddress.js +1 -0
  567. package/build/transaction/mineable/IP2WSHAddress.js.map +1 -0
  568. package/build/transaction/mineable/TimelockGenerator.d.ts +13 -4
  569. package/build/transaction/mineable/TimelockGenerator.d.ts.map +1 -0
  570. package/build/transaction/mineable/TimelockGenerator.js +12 -3
  571. package/build/transaction/mineable/TimelockGenerator.js.map +1 -0
  572. package/build/transaction/offline/OfflineTransactionManager.d.ts +193 -12
  573. package/build/transaction/offline/OfflineTransactionManager.d.ts.map +1 -0
  574. package/build/transaction/offline/OfflineTransactionManager.js +192 -8
  575. package/build/transaction/offline/OfflineTransactionManager.js.map +1 -0
  576. package/build/transaction/offline/TransactionReconstructor.d.ts +56 -6
  577. package/build/transaction/offline/TransactionReconstructor.d.ts.map +1 -0
  578. package/build/transaction/offline/TransactionReconstructor.js +111 -75
  579. package/build/transaction/offline/TransactionReconstructor.js.map +1 -0
  580. package/build/transaction/offline/TransactionSerializer.d.ts +54 -3
  581. package/build/transaction/offline/TransactionSerializer.d.ts.map +1 -0
  582. package/build/transaction/offline/TransactionSerializer.js +206 -95
  583. package/build/transaction/offline/TransactionSerializer.js.map +1 -0
  584. package/build/transaction/offline/TransactionStateCapture.d.ts +66 -7
  585. package/build/transaction/offline/TransactionStateCapture.d.ts.map +1 -0
  586. package/build/transaction/offline/TransactionStateCapture.js +124 -60
  587. package/build/transaction/offline/TransactionStateCapture.js.map +1 -0
  588. package/build/transaction/offline/interfaces/ISerializableState.d.ts +72 -1
  589. package/build/transaction/offline/interfaces/ISerializableState.d.ts.map +1 -0
  590. package/build/transaction/offline/interfaces/ISerializableState.js +10 -1
  591. package/build/transaction/offline/interfaces/ISerializableState.js.map +1 -0
  592. package/build/transaction/offline/interfaces/ITypeSpecificData.d.ts +77 -1
  593. package/build/transaction/offline/interfaces/ITypeSpecificData.d.ts.map +1 -0
  594. package/build/transaction/offline/interfaces/ITypeSpecificData.js +19 -0
  595. package/build/transaction/offline/interfaces/ITypeSpecificData.js.map +1 -0
  596. package/build/transaction/psbt/PSBTTypes.d.ts +1 -0
  597. package/build/transaction/psbt/PSBTTypes.d.ts.map +1 -0
  598. package/build/transaction/psbt/PSBTTypes.js +1 -0
  599. package/build/transaction/psbt/PSBTTypes.js.map +1 -0
  600. package/build/transaction/shared/P2TR_MS.d.ts +11 -2
  601. package/build/transaction/shared/P2TR_MS.d.ts.map +1 -0
  602. package/build/transaction/shared/P2TR_MS.js +10 -0
  603. package/build/transaction/shared/P2TR_MS.js.map +1 -0
  604. package/build/transaction/shared/TweakedTransaction.d.ts +281 -38
  605. package/build/transaction/shared/TweakedTransaction.d.ts.map +1 -0
  606. package/build/transaction/shared/TweakedTransaction.js +576 -114
  607. package/build/transaction/shared/TweakedTransaction.js.map +1 -0
  608. package/build/transaction/utils/WitnessUtils.d.ts +7 -1
  609. package/build/transaction/utils/WitnessUtils.d.ts.map +1 -0
  610. package/build/transaction/utils/WitnessUtils.js +17 -3
  611. package/build/transaction/utils/WitnessUtils.js.map +1 -0
  612. package/build/tsconfig.build.tsbuildinfo +1 -1
  613. package/build/utils/BitcoinUtils.d.ts +19 -0
  614. package/build/utils/BitcoinUtils.d.ts.map +1 -0
  615. package/build/utils/BitcoinUtils.js +19 -0
  616. package/build/utils/BitcoinUtils.js.map +1 -0
  617. package/build/utils/BufferHelper.d.ts +2 -1
  618. package/build/utils/BufferHelper.d.ts.map +1 -0
  619. package/build/utils/BufferHelper.js +38 -32
  620. package/build/utils/BufferHelper.js.map +1 -0
  621. package/build/utils/StringToBuffer.d.ts +1 -0
  622. package/build/utils/StringToBuffer.d.ts.map +1 -0
  623. package/build/utils/StringToBuffer.js +1 -0
  624. package/build/utils/StringToBuffer.js.map +1 -0
  625. package/build/utils/lengths.d.ts +1 -0
  626. package/build/utils/lengths.d.ts.map +1 -0
  627. package/build/utils/lengths.js +1 -0
  628. package/build/utils/lengths.js.map +1 -0
  629. package/build/utils/types.d.ts +1 -0
  630. package/build/utils/types.d.ts.map +1 -0
  631. package/build/utils/types.js +2 -1
  632. package/build/utils/types.js.map +1 -0
  633. package/build/utxo/OPNetLimitedProvider.d.ts +39 -3
  634. package/build/utxo/OPNetLimitedProvider.d.ts.map +1 -0
  635. package/build/utxo/OPNetLimitedProvider.js +41 -3
  636. package/build/utxo/OPNetLimitedProvider.js.map +1 -0
  637. package/build/utxo/interfaces/BroadcastResponse.d.ts +1 -0
  638. package/build/utxo/interfaces/BroadcastResponse.d.ts.map +1 -0
  639. package/build/utxo/interfaces/BroadcastResponse.js +1 -0
  640. package/build/utxo/interfaces/BroadcastResponse.js.map +1 -0
  641. package/build/utxo/interfaces/IUTXO.d.ts +13 -7
  642. package/build/utxo/interfaces/IUTXO.d.ts.map +1 -0
  643. package/build/utxo/interfaces/IUTXO.js +1 -0
  644. package/build/utxo/interfaces/IUTXO.js.map +1 -0
  645. package/build/verification/TapscriptVerificator.d.ts +12 -10
  646. package/build/verification/TapscriptVerificator.d.ts.map +1 -0
  647. package/build/verification/TapscriptVerificator.js +28 -38
  648. package/build/verification/TapscriptVerificator.js.map +1 -0
  649. package/eslint.config.js +0 -1
  650. package/package.json +12 -35
  651. package/src/abi/ABICoder.ts +0 -13
  652. package/src/branded/Branded.ts +5 -0
  653. package/src/buffer/BinaryReader.ts +7 -7
  654. package/src/buffer/BinaryWriter.ts +29 -24
  655. package/src/bytecode/Compressor.ts +1 -1
  656. package/src/chain/ChainData.ts +34 -27
  657. package/src/consensus/ConsensusConfig.ts +1 -1
  658. package/src/consensus/IConsensusConfig.ts +0 -17
  659. package/src/consensus/metadata/RoswellConsensus.ts +1 -17
  660. package/src/deterministic/AddressMap.ts +5 -1
  661. package/src/deterministic/AddressSet.ts +5 -1
  662. package/src/deterministic/CustomMap.ts +6 -2
  663. package/src/deterministic/DeterministicMap.ts +8 -4
  664. package/src/deterministic/DeterministicSet.ts +6 -2
  665. package/src/deterministic/ExtendedAddressMap.ts +9 -4
  666. package/src/deterministic/FastMap.ts +9 -5
  667. package/src/ecc/backend.ts +17 -0
  668. package/src/epoch/ChallengeSolution.ts +3 -3
  669. package/src/epoch/interfaces/IChallengeSolution.ts +13 -13
  670. package/src/epoch/validator/EpochValidator.ts +24 -43
  671. package/src/generators/AddressGenerator.ts +6 -6
  672. package/src/generators/Features.ts +3 -3
  673. package/src/generators/Generator.ts +42 -26
  674. package/src/generators/builders/CalldataGenerator.ts +26 -24
  675. package/src/generators/builders/CustomGenerator.ts +4 -4
  676. package/src/generators/builders/DeploymentGenerator.ts +25 -23
  677. package/src/generators/builders/HashCommitmentGenerator.ts +31 -31
  678. package/src/generators/builders/LegacyCalldataGenerator.ts +26 -24
  679. package/src/generators/builders/MultiSignGenerator.ts +12 -12
  680. package/src/generators/builders/P2WDAGenerator.ts +10 -10
  681. package/src/keypair/Address.ts +114 -71
  682. package/src/keypair/AddressVerificator.ts +16 -147
  683. package/src/keypair/EcKeyPair.ts +105 -114
  684. package/src/keypair/MessageSigner.ts +70 -150
  685. package/src/keypair/Wallet.ts +59 -240
  686. package/src/metadata/ContractBaseMetadata.ts +2 -2
  687. package/src/mnemonic/Mnemonic.ts +32 -221
  688. package/src/opnet.ts +12 -6
  689. package/src/p2wda/P2WDADetector.ts +23 -72
  690. package/src/polyfill/disposable.ts +29 -0
  691. package/src/signer/AddressRotation.ts +1 -1
  692. package/src/signer/IRotationSigner.ts +3 -3
  693. package/src/signer/ParallelSignerAdapter.ts +59 -0
  694. package/src/signer/SignerUtils.ts +4 -4
  695. package/src/signer/TweakedSigner.ts +28 -13
  696. package/src/transaction/ContractAddress.ts +3 -7
  697. package/src/transaction/TransactionFactory.ts +28 -50
  698. package/src/transaction/browser/BrowserSignerBase.ts +12 -6
  699. package/src/transaction/browser/Web3Provider.ts +3 -3
  700. package/src/transaction/browser/extensions/UnisatSigner.ts +52 -48
  701. package/src/transaction/browser/extensions/XverseSigner.ts +55 -38
  702. package/src/transaction/browser/types/OPWallet.ts +2 -2
  703. package/src/transaction/browser/types/Unisat.ts +1 -1
  704. package/src/transaction/builders/CancelTransaction.ts +59 -24
  705. package/src/transaction/builders/ChallengeSolutionTransaction.ts +3 -3
  706. package/src/transaction/builders/ConsolidatedInteractionTransaction.ts +39 -34
  707. package/src/transaction/builders/CustomScriptTransaction.ts +79 -56
  708. package/src/transaction/builders/DeploymentTransaction.ts +82 -63
  709. package/src/transaction/builders/FundingTransaction.ts +11 -11
  710. package/src/transaction/builders/InteractionTransaction.ts +10 -10
  711. package/src/transaction/builders/InteractionTransactionP2WDA.ts +38 -40
  712. package/src/transaction/builders/MultiSignTransaction.ts +68 -61
  713. package/src/transaction/builders/SharedInteractionTransaction.ts +81 -57
  714. package/src/transaction/builders/TransactionBuilder.ts +101 -79
  715. package/src/transaction/interfaces/ICancelTransactionParameters.ts +2 -2
  716. package/src/transaction/interfaces/IConsolidatedTransactionParameters.ts +5 -5
  717. package/src/transaction/interfaces/ICustomTransactionParameters.ts +5 -5
  718. package/src/transaction/interfaces/ITransactionParameters.ts +15 -15
  719. package/src/transaction/interfaces/ITransactionResponses.ts +2 -2
  720. package/src/transaction/interfaces/ITweakedTransactionData.ts +17 -8
  721. package/src/transaction/interfaces/IWeb3ProviderTypes.ts +3 -3
  722. package/src/transaction/interfaces/Tap.ts +3 -3
  723. package/src/transaction/mineable/IP2WSHAddress.ts +1 -1
  724. package/src/transaction/mineable/TimelockGenerator.ts +19 -12
  725. package/src/transaction/offline/OfflineTransactionManager.ts +22 -23
  726. package/src/transaction/offline/TransactionReconstructor.ts +83 -91
  727. package/src/transaction/offline/TransactionSerializer.ts +151 -101
  728. package/src/transaction/offline/TransactionStateCapture.ts +83 -79
  729. package/src/transaction/offline/interfaces/ISerializableState.ts +1 -1
  730. package/src/transaction/offline/interfaces/ITypeSpecificData.ts +1 -1
  731. package/src/transaction/shared/P2TR_MS.ts +4 -4
  732. package/src/transaction/shared/TweakedTransaction.ts +326 -124
  733. package/src/transaction/utils/WitnessUtils.ts +18 -9
  734. package/src/utils/BufferHelper.ts +39 -37
  735. package/src/utxo/OPNetLimitedProvider.ts +7 -7
  736. package/src/utxo/interfaces/IUTXO.ts +7 -7
  737. package/src/verification/TapscriptVerificator.ts +73 -86
  738. package/test/address-rotation.test.ts +24 -24
  739. package/test/address.test.ts +12 -12
  740. package/test/addressmap.test.ts +30 -30
  741. package/test/binary-reader-writer.test.ts +8 -8
  742. package/test/browser/offline-transaction.test.ts +2206 -0
  743. package/test/browser/parallel-signing.test.ts +316 -0
  744. package/test/browser/setup.ts +11 -0
  745. package/test/browser/transaction-signing.test.ts +416 -0
  746. package/test/buffer-helper.test.ts +287 -0
  747. package/test/derivePath.test.ts +4 -3
  748. package/test/disposable.test.ts +279 -0
  749. package/test/fastmap-setall.test.ts +1 -1
  750. package/test/fastmap.test.ts +3 -3
  751. package/test/messagesigner-mldsa.test.ts +3 -3
  752. package/test/messagesigner-schnorr.test.ts +9 -9
  753. package/test/offline-transaction.test.ts +461 -288
  754. package/test/old/FastBigIntMap.ts +3 -3
  755. package/test/oldfastmap.test.ts +6 -6
  756. package/test/transaction-builders.test.ts +321 -0
  757. package/tsconfig.base.json +34 -18
  758. package/tsconfig.browser.json +15 -0
  759. package/tsconfig.json +3 -8
  760. package/vite.config.browser.ts +4 -5
  761. package/vitest.config.browser.ts +68 -0
  762. package/vitest.config.ts +1 -1
  763. package/browser/valibot.js +0 -4948
  764. package/tsconfig.webpack.json +0 -18
@@ -1,44 +1,48 @@
1
+ import type { Script } from '@btc-vision/bitcoin';
1
2
  import bitcoin, {
3
+ equals,
4
+ fromHex,
2
5
  getFinalScripts,
3
6
  initEccLib,
4
- Network,
7
+ type Network,
5
8
  opcodes,
6
9
  Psbt,
7
- PsbtInputExtended,
8
- PsbtOutputExtended,
10
+ type PsbtInputExtended,
11
+ type PsbtOutputExtended,
9
12
  script,
10
- Signer,
13
+ type Signer,
14
+ toSatoshi,
11
15
  toXOnly,
12
16
  Transaction,
13
17
  } from '@btc-vision/bitcoin';
14
18
  import { witnessStackToScriptWitness } from '../utils/WitnessUtils.js';
15
- import * as ecc from '@bitcoinerlab/secp256k1';
16
- import { UpdateInput } from '../interfaces/Tap.js';
19
+ import { eccLib } from '../../ecc/backend.js';
20
+ import type { UpdateInput } from '../interfaces/Tap.js';
17
21
  import { TransactionType } from '../enums/TransactionType.js';
18
- import {
22
+ import type {
19
23
  IFundingTransactionParameters,
20
24
  ITransactionParameters,
21
25
  } from '../interfaces/ITransactionParameters.js';
22
26
  import { EcKeyPair } from '../../keypair/EcKeyPair.js';
23
- import { UTXO } from '../../utxo/interfaces/IUTXO.js';
24
- import { ECPairInterface } from 'ecpair';
27
+ import type { UTXO } from '../../utxo/interfaces/IUTXO.js';
28
+ import { type UniversalSigner } from '@btc-vision/ecpair';
25
29
  import { AddressVerificator } from '../../keypair/AddressVerificator.js';
26
30
  import { TweakedTransaction } from '../shared/TweakedTransaction.js';
27
31
  import { UnisatSigner } from '../browser/extensions/UnisatSigner.js';
28
- import { IP2WSHAddress } from '../mineable/IP2WSHAddress.js';
32
+ import type { IP2WSHAddress } from '../mineable/IP2WSHAddress.js';
29
33
  import { P2WDADetector } from '../../p2wda/P2WDADetector.js';
30
- import { Feature, FeaturePriority, Features, MLDSALinkRequest } from '../../generators/Features.js';
34
+ import { type Feature, FeaturePriority, Features, type MLDSALinkRequest } from '../../generators/Features.js';
31
35
  import { BITCOIN_PROTOCOL_ID, getChainId } from '../../chain/ChainData.js';
32
36
  import { BinaryWriter } from '../../buffer/BinaryWriter.js';
33
37
  import { MLDSASecurityLevel } from '@btc-vision/bip32';
34
38
  import { MessageSigner } from '../../keypair/MessageSigner.js';
35
39
  import { getLevelFromPublicKeyLength } from '../../generators/MLDSAData.js';
36
40
 
37
- initEccLib(ecc);
41
+ initEccLib(eccLib);
38
42
 
39
43
  export const MINIMUM_AMOUNT_REWARD: bigint = 330n; //540n;
40
44
  export const MINIMUM_AMOUNT_CA: bigint = 297n;
41
- export const ANCHOR_SCRIPT = Buffer.from('51024e73', 'hex');
45
+ export const ANCHOR_SCRIPT = fromHex('51024e73');
42
46
 
43
47
  /**
44
48
  * Allows to build a transaction like you would on Ethereum.
@@ -50,11 +54,11 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
50
54
  public static readonly MINIMUM_DUST: bigint = 330n;
51
55
 
52
56
  public abstract readonly type: T;
53
- public readonly logColor: string = '#785def';
57
+ public override readonly logColor: string = '#785def';
54
58
  public debugFees: boolean = false;
55
59
 
56
60
  // Cancel script
57
- public LOCK_LEAF_SCRIPT: Buffer;
61
+ public LOCK_LEAF_SCRIPT: Script;
58
62
 
59
63
  /**
60
64
  * @description The overflow fees of the transaction
@@ -105,12 +109,12 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
105
109
  /**
106
110
  * @description The signer of the transaction
107
111
  */
108
- protected readonly signer: Signer | ECPairInterface | UnisatSigner;
112
+ protected override readonly signer: Signer | UniversalSigner | UnisatSigner;
109
113
 
110
114
  /**
111
115
  * @description The network where the transaction will be broadcasted
112
116
  */
113
- protected readonly network: Network;
117
+ protected override readonly network: Network;
114
118
 
115
119
  /**
116
120
  * @description The fee rate of the transaction
@@ -163,7 +167,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
163
167
  */
164
168
  protected anchor: boolean;
165
169
 
166
- protected note?: Buffer;
170
+ protected note?: Uint8Array;
167
171
 
168
172
  private optionalOutputsAdded: boolean = false;
169
173
 
@@ -188,7 +192,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
188
192
 
189
193
  if (parameters.note) {
190
194
  if (typeof parameters.note === 'string') {
191
- this.note = Buffer.from(parameters.note, 'utf8');
195
+ this.note = new TextEncoder().encode(parameters.note);
192
196
  } else {
193
197
  this.note = parameters.note;
194
198
  }
@@ -217,9 +221,20 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
217
221
  });
218
222
  }
219
223
 
224
+ public override [Symbol.dispose](): void {
225
+ super[Symbol.dispose]();
226
+
227
+ this.updateInputs.length = 0;
228
+ this.outputs.length = 0;
229
+ this.feeOutput = null;
230
+ this.optionalOutputs = undefined;
231
+ this.utxos = [];
232
+ this.optionalInputs = [];
233
+ }
234
+
220
235
  public static getFrom(
221
236
  from: string | undefined,
222
- keypair: ECPairInterface | Signer,
237
+ keypair: UniversalSigner | Signer,
223
238
  network: Network,
224
239
  ): string {
225
240
  return from || EcKeyPair.getTaprootAddress(keypair, network);
@@ -231,23 +246,23 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
231
246
  * @protected
232
247
  * @returns {Buffer}
233
248
  */
234
- public static witnessStackToScriptWitness(witness: Buffer[]): Buffer {
249
+ public static witnessStackToScriptWitness(witness: Uint8Array[]): Uint8Array {
235
250
  return witnessStackToScriptWitness(witness);
236
251
  }
237
252
 
238
- public addOPReturn(buffer: Buffer): void {
253
+ public addOPReturn(buffer: Uint8Array): void {
239
254
  const compileScript = script.compile([opcodes.OP_RETURN, buffer]);
240
255
 
241
256
  this.addOutput({
242
- value: 0,
257
+ value: toSatoshi(0n),
243
258
  script: compileScript,
244
259
  });
245
260
  }
246
261
 
247
262
  public addAnchor(): void {
248
263
  this.addOutput({
249
- value: 0,
250
- script: ANCHOR_SCRIPT,
264
+ value: toSatoshi(0n),
265
+ script: ANCHOR_SCRIPT as Script,
251
266
  });
252
267
  }
253
268
 
@@ -266,10 +281,10 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
266
281
  gasSatFee: this.gasSatFee ?? 0n,
267
282
  from: this.from,
268
283
  amount: this.estimatedFees,
269
- optionalOutputs: this.optionalOutputs,
270
284
  optionalInputs: this.optionalInputs,
271
285
  mldsaSigner: null,
272
- };
286
+ ...(this.optionalOutputs !== undefined ? { optionalOutputs: this.optionalOutputs } : {}),
287
+ } satisfies IFundingTransactionParameters;
273
288
  }
274
289
 
275
290
  /**
@@ -354,7 +369,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
354
369
  this.transaction.addInputs(inputs, checkPartialSigs);
355
370
 
356
371
  for (let i = 0; i < this.updateInputs.length; i++) {
357
- this.transaction.updateInput(i, this.updateInputs[i]);
372
+ this.transaction.updateInput(i, this.updateInputs[i] as UpdateInput);
358
373
  }
359
374
 
360
375
  this.transaction.addOutputs(outputs);
@@ -393,25 +408,28 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
393
408
  * @returns {void}
394
409
  */
395
410
  public addOutput(output: PsbtOutputExtended, bypassMinCheck: boolean = false): void {
396
- if (output.value === 0) {
397
- const script = output as {
398
- script: Buffer;
411
+ if (output.value === toSatoshi(0n)) {
412
+ const scriptOutput = output as {
413
+ script: Uint8Array;
399
414
  };
400
415
 
401
- if (!script.script || script.script.length === 0) {
416
+ if (!scriptOutput.script || scriptOutput.script.length === 0) {
402
417
  throw new Error('Output value is 0 and no script provided');
403
418
  }
404
419
 
405
- if (script.script.length < 2) {
420
+ if (scriptOutput.script.length < 2) {
406
421
  throw new Error('Output script is too short');
407
422
  }
408
423
 
409
- if (script.script[0] !== opcodes.OP_RETURN && !script.script.equals(ANCHOR_SCRIPT)) {
424
+ if (
425
+ scriptOutput.script[0] !== opcodes.OP_RETURN &&
426
+ !equals(scriptOutput.script, ANCHOR_SCRIPT)
427
+ ) {
410
428
  throw new Error(
411
429
  'Output script must start with OP_RETURN or be an ANCHOR when value is 0',
412
430
  );
413
431
  }
414
- } else if (!bypassMinCheck && output.value < TransactionBuilder.MINIMUM_DUST) {
432
+ } else if (!bypassMinCheck && BigInt(output.value) < TransactionBuilder.MINIMUM_DUST) {
415
433
  throw new Error(
416
434
  `Output value is less than the minimum dust ${output.value} < ${TransactionBuilder.MINIMUM_DUST}`,
417
435
  );
@@ -460,26 +478,26 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
460
478
  fakeTx.addInputs(inputs);
461
479
  fakeTx.addOutputs(outputs);
462
480
 
463
- const dummySchnorrSig = Buffer.alloc(64, 0);
464
- const dummyEcdsaSig = Buffer.alloc(72, 0);
465
- const dummyCompressedPubkey = Buffer.alloc(33, 2);
481
+ const dummySchnorrSig = new Uint8Array(64);
482
+ const dummyEcdsaSig = new Uint8Array(72);
483
+ const dummyCompressedPubkey = new Uint8Array(33).fill(2);
466
484
 
467
485
  const finalizer = (inputIndex: number, input: PsbtInputExtended) => {
468
486
  if (input.isPayToAnchor || this.anchorInputIndices.has(inputIndex)) {
469
487
  return {
470
488
  finalScriptSig: undefined,
471
- finalScriptWitness: Buffer.from([0]),
489
+ finalScriptWitness: Uint8Array.from([0]),
472
490
  };
473
491
  }
474
492
 
475
493
  if (input.witnessScript && P2WDADetector.isP2WDAWitnessScript(input.witnessScript)) {
476
494
  // Create dummy witness stack for P2WDA
477
- const dummyDataSlots: Buffer[] = [];
495
+ const dummyDataSlots: Uint8Array[] = [];
478
496
  for (let i = 0; i < 10; i++) {
479
- dummyDataSlots.push(Buffer.alloc(0));
497
+ dummyDataSlots.push(new Uint8Array(0));
480
498
  }
481
499
 
482
- const dummyEcdsaSig = Buffer.alloc(72, 0);
500
+ const dummyEcdsaSig = new Uint8Array(72);
483
501
  return {
484
502
  finalScriptWitness: TransactionBuilder.witnessStackToScriptWitness([
485
503
  ...dummyDataSlots,
@@ -490,11 +508,11 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
490
508
  }
491
509
 
492
510
  if (inputIndex === 0 && this.tapLeafScript) {
493
- const dummySecret = Buffer.alloc(32, 0);
511
+ const dummySecret = new Uint8Array(32);
494
512
  const dummyScript = this.tapLeafScript.script;
495
513
 
496
514
  // A control block for a 2-leaf tree contains one 32-byte hash.
497
- const dummyControlBlock = Buffer.alloc(1 + 32 + 32, 0);
515
+ const dummyControlBlock = new Uint8Array(1 + 32 + 32);
498
516
 
499
517
  return {
500
518
  finalScriptWitness: TransactionBuilder.witnessStackToScriptWitness([
@@ -560,14 +578,14 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
560
578
  lastOp === opcodes.OP_CHECKMULTISIG
561
579
  ) {
562
580
  const m = firstOp - opcodes.OP_1 + 1;
563
- const signatures: Buffer[] = [];
581
+ const signatures: Uint8Array[] = [];
564
582
  for (let i = 0; i < m; i++) {
565
583
  signatures.push(dummyEcdsaSig);
566
584
  }
567
585
 
568
586
  return {
569
587
  finalScriptWitness: TransactionBuilder.witnessStackToScriptWitness([
570
- Buffer.alloc(0), // OP_0 due to multisig bug
588
+ new Uint8Array(0), // OP_0 due to multisig bug
571
589
  ...signatures,
572
590
  input.witnessScript,
573
591
  ]),
@@ -587,7 +605,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
587
605
  decompiled &&
588
606
  decompiled.length === 2 &&
589
607
  decompiled[0] === opcodes.OP_0 &&
590
- Buffer.isBuffer(decompiled[1]) &&
608
+ decompiled[1] instanceof Uint8Array &&
591
609
  decompiled[1].length === 20
592
610
  ) {
593
611
  // P2SH-P2WPKH
@@ -609,8 +627,8 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
609
627
  };
610
628
  }
611
629
 
612
- const script = input.witnessUtxo?.script;
613
- if (!script) return { finalScriptSig: undefined, finalScriptWitness: undefined };
630
+ const inputScript = input.witnessUtxo?.script;
631
+ if (!inputScript) return { finalScriptSig: undefined, finalScriptWitness: undefined };
614
632
 
615
633
  if (input.tapInternalKey) {
616
634
  return {
@@ -620,7 +638,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
620
638
  };
621
639
  }
622
640
 
623
- if (script.length === 22 && script[0] === opcodes.OP_0) {
641
+ if (inputScript.length === 22 && inputScript[0] === opcodes.OP_0) {
624
642
  return {
625
643
  finalScriptWitness: TransactionBuilder.witnessStackToScriptWitness([
626
644
  dummyEcdsaSig,
@@ -641,7 +659,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
641
659
  return getFinalScripts(
642
660
  inputIndex,
643
661
  input,
644
- script,
662
+ inputScript as Script,
645
663
  true,
646
664
  !!input.redeemScript,
647
665
  !!input.witnessScript,
@@ -715,7 +733,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
715
733
 
716
734
  let total = 0n;
717
735
  for (let i = 0; i < this.optionalOutputs.length; i++) {
718
- total += BigInt(this.optionalOutputs[i].value);
736
+ total += BigInt((this.optionalOutputs[i] as PsbtOutputExtended).value);
719
737
  }
720
738
 
721
739
  return total;
@@ -764,23 +782,23 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
764
782
  // Create the appropriate change output
765
783
  if (AddressVerificator.isValidP2TRAddress(this.from, this.network)) {
766
784
  this.feeOutput = {
767
- value: Number(sendBackAmount),
785
+ value: toSatoshi(sendBackAmount),
768
786
  address: this.from,
769
787
  tapInternalKey: this.internalPubKeyToXOnly(),
770
788
  };
771
789
  } else if (AddressVerificator.isValidPublicKey(this.from, this.network)) {
772
790
  const pubKeyScript = script.compile([
773
- Buffer.from(this.from.replace('0x', ''), 'hex'),
791
+ fromHex(this.from.replace('0x', '')),
774
792
  opcodes.OP_CHECKSIG,
775
793
  ]);
776
794
 
777
795
  this.feeOutput = {
778
- value: Number(sendBackAmount),
796
+ value: toSatoshi(sendBackAmount),
779
797
  script: pubKeyScript,
780
798
  };
781
799
  } else {
782
800
  this.feeOutput = {
783
- value: Number(sendBackAmount),
801
+ value: toSatoshi(sendBackAmount),
784
802
  address: this.from,
785
803
  };
786
804
  }
@@ -828,8 +846,8 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
828
846
  }
829
847
  }
830
848
 
831
- protected defineLockScript(): Buffer {
832
- return script.compile([toXOnly(Buffer.from(this.signer.publicKey)), opcodes.OP_CHECKSIG]);
849
+ protected defineLockScript(): Script {
850
+ return script.compile([toXOnly(this.signer.publicKey), opcodes.OP_CHECKSIG]);
833
851
  }
834
852
 
835
853
  /**
@@ -839,15 +857,19 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
839
857
  * @returns {void}
840
858
  */
841
859
  protected addValueToToOutput(value: number | bigint): void {
842
- if (value < TransactionBuilder.MINIMUM_DUST) {
860
+ if (BigInt(value) < TransactionBuilder.MINIMUM_DUST) {
843
861
  throw new Error(
844
862
  `Value to send is less than the minimum dust ${value} < ${TransactionBuilder.MINIMUM_DUST}`,
845
863
  );
846
864
  }
847
865
 
848
- for (const output of this.outputs) {
866
+ for (let i = 0; i < this.outputs.length; i++) {
867
+ const output = this.outputs[i] as PsbtOutputExtended;
849
868
  if ('address' in output && output.address === this.to) {
850
- output.value += Number(value);
869
+ this.outputs[i] = {
870
+ ...output,
871
+ value: toSatoshi(BigInt(output.value) + BigInt(value)),
872
+ } as PsbtOutputExtended;
851
873
  return;
852
874
  }
853
875
  }
@@ -855,7 +877,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
855
877
  throw new Error('Output not found');
856
878
  }
857
879
 
858
- protected generateLegacySignature(): Buffer {
880
+ protected generateLegacySignature(): Uint8Array {
859
881
  this.tweakSigner();
860
882
 
861
883
  if (!this.tweakedSigner) {
@@ -888,10 +910,10 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
888
910
  throw new Error('Could not verify generated legacy signature for MLDSA link request');
889
911
  }
890
912
 
891
- return Buffer.from(signature.signature);
913
+ return new Uint8Array(signature.signature);
892
914
  }
893
915
 
894
- protected generateMLDSASignature(): Buffer {
916
+ protected generateMLDSASignature(): Uint8Array {
895
917
  if (!this.mldsaSigner) {
896
918
  throw new Error('MLDSA signer is not defined');
897
919
  }
@@ -937,7 +959,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
937
959
  throw new Error('Could not verify generated MLDSA signature for link request');
938
960
  }
939
961
 
940
- return Buffer.from(signature.signature);
962
+ return new Uint8Array(signature.signature);
941
963
  }
942
964
 
943
965
  protected generateMLDSALinkRequest(
@@ -947,7 +969,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
947
969
  const mldsaSigner = this.mldsaSigner;
948
970
  const legacySignature = this.generateLegacySignature();
949
971
 
950
- let mldsaSignature: Buffer | null = null;
972
+ let mldsaSignature: Uint8Array | null = null;
951
973
  if (parameters.revealMLDSAPublicKey) {
952
974
  mldsaSignature = this.generateMLDSASignature();
953
975
  }
@@ -1029,8 +1051,8 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1029
1051
  let refundedFromOptionalOutputs: bigint = 0n;
1030
1052
 
1031
1053
  for (let i = 0; i < this.optionalOutputs.length; i++) {
1032
- this.addOutput(this.optionalOutputs[i]);
1033
- refundedFromOptionalOutputs += BigInt(this.optionalOutputs[i].value);
1054
+ this.addOutput(this.optionalOutputs[i] as PsbtOutputExtended);
1055
+ refundedFromOptionalOutputs += BigInt((this.optionalOutputs[i] as PsbtOutputExtended).value);
1034
1056
  }
1035
1057
 
1036
1058
  this.optionalOutputsAdded = true;
@@ -1054,7 +1076,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1054
1076
  }
1055
1077
 
1056
1078
  for (let i = 0; i < this.utxos.length; i++) {
1057
- const utxo = this.utxos[i];
1079
+ const utxo = this.utxos[i] as UTXO;
1058
1080
 
1059
1081
  // Register signer BEFORE generating input (needed for tapInternalKey)
1060
1082
  this.registerInputSigner(i, utxo);
@@ -1070,7 +1092,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1070
1092
  i < this.optionalInputs.length + this.utxos.length;
1071
1093
  i++
1072
1094
  ) {
1073
- const utxo = this.optionalInputs[i - this.utxos.length];
1095
+ const utxo = this.optionalInputs[i - this.utxos.length] as UTXO;
1074
1096
 
1075
1097
  // Register signer BEFORE generating input (needed for tapInternalKey)
1076
1098
  this.registerInputSigner(i, utxo);
@@ -1133,7 +1155,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1133
1155
  // ALWAYS THE FIRST INPUT.
1134
1156
  this.addOutput(
1135
1157
  {
1136
- value: Number(amountToCA),
1158
+ value: toSatoshi(amountToCA),
1137
1159
  address: contractAddress,
1138
1160
  },
1139
1161
  true,
@@ -1146,7 +1168,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1146
1168
  ) {
1147
1169
  this.addOutput(
1148
1170
  {
1149
- value: Number(amountSpent - amountToCA),
1171
+ value: toSatoshi(amountSpent - amountToCA),
1150
1172
  address: epochChallenge.address,
1151
1173
  },
1152
1174
  true,
@@ -1160,7 +1182,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1160
1182
 
1161
1183
  this.addOutput(
1162
1184
  {
1163
- value: Number(amountToEpoch),
1185
+ value: toSatoshi(amountToEpoch),
1164
1186
  address: epochChallenge.address,
1165
1187
  },
1166
1188
  true,
@@ -1173,7 +1195,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1173
1195
  * @protected
1174
1196
  * @returns {Buffer}
1175
1197
  */
1176
- protected getWitness(): Buffer {
1198
+ protected getWitness(): Uint8Array {
1177
1199
  if (!this.tapData || !this.tapData.witness) {
1178
1200
  throw new Error('Witness is required');
1179
1201
  }
@@ -1182,7 +1204,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1182
1204
  throw new Error('Witness is empty');
1183
1205
  }
1184
1206
 
1185
- return this.tapData.witness[this.tapData.witness.length - 1];
1207
+ return this.tapData.witness[this.tapData.witness.length - 1] as Uint8Array;
1186
1208
  }
1187
1209
 
1188
1210
  /**
@@ -1190,7 +1212,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1190
1212
  * @protected
1191
1213
  * @returns {Buffer}
1192
1214
  */
1193
- protected getTapOutput(): Buffer {
1215
+ protected getTapOutput(): Uint8Array {
1194
1216
  if (!this.tapData || !this.tapData.output) {
1195
1217
  throw new Error('Tap data is required');
1196
1218
  }
@@ -1245,7 +1267,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1245
1267
  }
1246
1268
 
1247
1269
  if (valueLeft >= TransactionBuilder.MINIMUM_DUST) {
1248
- this.feeOutput = { ...output, value: Number(valueLeft) };
1270
+ this.feeOutput = { ...output, value: toSatoshi(valueLeft) };
1249
1271
  this.overflowFees = valueLeft;
1250
1272
  } else {
1251
1273
  this.feeOutput = null;
@@ -1270,7 +1292,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1270
1292
  }
1271
1293
 
1272
1294
  if (finalValueLeft >= TransactionBuilder.MINIMUM_DUST) {
1273
- this.feeOutput = { ...output, value: Number(finalValueLeft) };
1295
+ this.feeOutput = { ...output, value: toSatoshi(finalValueLeft) };
1274
1296
  this.overflowFees = finalValueLeft;
1275
1297
  if (this.debugFees) {
1276
1298
  this.log(
@@ -1340,7 +1362,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1340
1362
  transaction.addInputs(inputs, checkPartialSigs);
1341
1363
 
1342
1364
  for (let i = 0; i < this.updateInputs.length; i++) {
1343
- transaction.updateInput(i, this.updateInputs[i]);
1365
+ transaction.updateInput(i, this.updateInputs[i] as UpdateInput);
1344
1366
  }
1345
1367
 
1346
1368
  transaction.addOutputs(outputs);
@@ -1,8 +1,8 @@
1
- import { ITransactionParameters } from './ITransactionParameters.js';
1
+ import type { ITransactionParameters } from './ITransactionParameters.js';
2
2
 
3
3
  export interface ICancelTransactionParameters extends Omit<
4
4
  ITransactionParameters,
5
5
  'priorityFee' | 'gasSatFee'
6
6
  > {
7
- readonly compiledTargetScript: string | Buffer;
7
+ readonly compiledTargetScript: string | Uint8Array;
8
8
  }
@@ -1,5 +1,5 @@
1
- import { IInteractionParameters } from './ITransactionParameters.js';
2
- import { IP2WSHAddress } from '../mineable/IP2WSHAddress.js';
1
+ import type { IInteractionParameters } from './ITransactionParameters.js';
2
+ import type { IP2WSHAddress } from '../mineable/IP2WSHAddress.js';
3
3
 
4
4
  /**
5
5
  * Extended P2WSH address with hash commitments for CHCT system.
@@ -13,13 +13,13 @@ import { IP2WSHAddress } from '../mineable/IP2WSHAddress.js';
13
13
  */
14
14
  export interface IHashCommittedP2WSH extends IP2WSHAddress {
15
15
  /** The HASH160 values of all data chunks this output commits to (in order) */
16
- readonly dataHashes: Buffer[];
16
+ readonly dataHashes: Uint8Array[];
17
17
  /** The actual data chunks (stored for later reveal, in order) */
18
- readonly dataChunks: Buffer[];
18
+ readonly dataChunks: Uint8Array[];
19
19
  /** The starting index of this output's chunks in the overall data sequence */
20
20
  readonly chunkStartIndex: number;
21
21
  /** The P2WSH scriptPubKey (OP_0 <32-byte-hash>) */
22
- readonly scriptPubKey: Buffer;
22
+ readonly scriptPubKey: Uint8Array;
23
23
  }
24
24
 
25
25
  /**
@@ -1,15 +1,15 @@
1
- import { Stack } from '@btc-vision/bitcoin';
2
- import { SharedInteractionParameters } from './ITransactionParameters.js';
1
+ import type { Stack } from '@btc-vision/bitcoin';
2
+ import type { SharedInteractionParameters } from './ITransactionParameters.js';
3
3
 
4
4
  export interface ICustomTransactionParameters extends Omit<
5
5
  SharedInteractionParameters,
6
6
  'challenge'
7
7
  > {
8
- script: (Buffer | Stack)[];
9
- witnesses: Buffer[];
8
+ script: (Uint8Array | Stack)[];
9
+ witnesses: Uint8Array[];
10
10
 
11
11
  /** optional Taproot annex payload (without the 0x50 prefix) */
12
- annex?: Buffer;
12
+ annex?: Uint8Array;
13
13
 
14
14
  to: string;
15
15
  }
@@ -1,9 +1,9 @@
1
- import { UTXO } from '../../utxo/interfaces/IUTXO.js';
2
- import { ITweakedTransactionData } from './ITweakedTransactionData.js';
3
- import { ChainId } from '../../network/ChainId.js';
4
- import { PsbtOutputExtended } from '@btc-vision/bitcoin';
5
- import { IChallengeSolution } from '../../epoch/interfaces/IChallengeSolution.js';
6
- import { AddressRotationConfigBase } from '../../signer/IRotationSigner.js';
1
+ import type { UTXO } from '../../utxo/interfaces/IUTXO.js';
2
+ import type { ITweakedTransactionData } from './ITweakedTransactionData.js';
3
+ import type { ChainId } from '../../network/ChainId.js';
4
+ import type { PsbtOutputExtended } from '@btc-vision/bitcoin';
5
+ import type { IChallengeSolution } from '../../epoch/interfaces/IChallengeSolution.js';
6
+ import type { AddressRotationConfigBase } from '../../signer/IRotationSigner.js';
7
7
 
8
8
  export interface LoadedStorage {
9
9
  [key: string]: string[];
@@ -26,7 +26,7 @@ export interface ITransactionParameters extends ITweakedTransactionData {
26
26
 
27
27
  utxos: UTXO[];
28
28
 
29
- nonWitnessUtxo?: Buffer;
29
+ nonWitnessUtxo?: Uint8Array;
30
30
  estimatedFees?: bigint;
31
31
 
32
32
  optionalInputs?: UTXO[];
@@ -35,14 +35,14 @@ export interface ITransactionParameters extends ITweakedTransactionData {
35
35
  chainId?: ChainId;
36
36
  noSignatures?: boolean;
37
37
 
38
- readonly note?: string | Buffer;
38
+ readonly note?: string | Uint8Array;
39
39
  readonly anchor?: boolean;
40
40
 
41
41
  readonly feeRate: number;
42
42
  readonly priorityFee: bigint;
43
43
  readonly gasSatFee: bigint;
44
44
 
45
- readonly compiledTargetScript?: Buffer | string;
45
+ readonly compiledTargetScript?: Uint8Array | string;
46
46
 
47
47
  /**
48
48
  * Address rotation configuration.
@@ -59,27 +59,27 @@ export interface IFundingTransactionParameters extends ITransactionParameters {
59
59
  }
60
60
 
61
61
  export interface SharedInteractionParameters extends ITransactionParameters {
62
- calldata?: Buffer;
62
+ calldata?: Uint8Array;
63
63
  disableAutoRefund?: boolean;
64
64
 
65
65
  readonly challenge: IChallengeSolution;
66
- readonly randomBytes?: Buffer;
66
+ readonly randomBytes?: Uint8Array;
67
67
 
68
68
  readonly loadedStorage?: LoadedStorage;
69
69
  readonly isCancellation?: boolean;
70
70
  }
71
71
 
72
72
  export interface IInteractionParameters extends SharedInteractionParameters {
73
- readonly calldata: Buffer;
73
+ readonly calldata: Uint8Array;
74
74
 
75
75
  readonly to: string;
76
76
  readonly contract?: string;
77
77
  }
78
78
 
79
79
  export interface IDeploymentParameters extends Omit<ITransactionParameters, 'to'> {
80
- readonly bytecode: Buffer;
81
- readonly calldata?: Buffer;
80
+ readonly bytecode: Uint8Array;
81
+ readonly calldata?: Uint8Array;
82
82
 
83
- readonly randomBytes?: Buffer;
83
+ readonly randomBytes?: Uint8Array;
84
84
  readonly challenge: IChallengeSolution;
85
85
  }