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

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 +3558 -3167
  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 +17 -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 +274 -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 +9 -4
  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 +4 -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 +218 -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 +46 -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 +35 -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 +23 -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 +375 -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 +43 -5
  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 +4 -7
  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 +14 -148
  683. package/src/keypair/EcKeyPair.ts +104 -116
  684. package/src/keypair/MessageSigner.ts +70 -150
  685. package/src/keypair/Wallet.ts +56 -241
  686. package/src/metadata/ContractBaseMetadata.ts +2 -2
  687. package/src/mnemonic/Mnemonic.ts +31 -222
  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 +26 -14
  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 +99 -81
  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 +9 -9
  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,44 @@
1
+ import type { Script } from '@btc-vision/bitcoin';
1
2
  import bitcoin, {
3
+ equals,
4
+ fromHex,
2
5
  getFinalScripts,
3
- initEccLib,
4
- Network,
6
+ type Network,
5
7
  opcodes,
6
8
  Psbt,
7
- PsbtInputExtended,
8
- PsbtOutputExtended,
9
+ type PsbtInputExtended,
10
+ type PsbtOutputExtended,
9
11
  script,
10
- Signer,
12
+ type Signer,
13
+ toSatoshi,
11
14
  toXOnly,
12
15
  Transaction,
13
16
  } from '@btc-vision/bitcoin';
14
17
  import { witnessStackToScriptWitness } from '../utils/WitnessUtils.js';
15
- import * as ecc from '@bitcoinerlab/secp256k1';
16
- import { UpdateInput } from '../interfaces/Tap.js';
18
+ import type { UpdateInput } from '../interfaces/Tap.js';
17
19
  import { TransactionType } from '../enums/TransactionType.js';
18
- import {
20
+ import type {
19
21
  IFundingTransactionParameters,
20
22
  ITransactionParameters,
21
23
  } from '../interfaces/ITransactionParameters.js';
22
24
  import { EcKeyPair } from '../../keypair/EcKeyPair.js';
23
- import { UTXO } from '../../utxo/interfaces/IUTXO.js';
24
- import { ECPairInterface } from 'ecpair';
25
+ import type { UTXO } from '../../utxo/interfaces/IUTXO.js';
26
+ import { type UniversalSigner } from '@btc-vision/ecpair';
25
27
  import { AddressVerificator } from '../../keypair/AddressVerificator.js';
26
28
  import { TweakedTransaction } from '../shared/TweakedTransaction.js';
27
29
  import { UnisatSigner } from '../browser/extensions/UnisatSigner.js';
28
- import { IP2WSHAddress } from '../mineable/IP2WSHAddress.js';
30
+ import type { IP2WSHAddress } from '../mineable/IP2WSHAddress.js';
29
31
  import { P2WDADetector } from '../../p2wda/P2WDADetector.js';
30
- import { Feature, FeaturePriority, Features, MLDSALinkRequest } from '../../generators/Features.js';
32
+ import { type Feature, FeaturePriority, Features, type MLDSALinkRequest } from '../../generators/Features.js';
31
33
  import { BITCOIN_PROTOCOL_ID, getChainId } from '../../chain/ChainData.js';
32
34
  import { BinaryWriter } from '../../buffer/BinaryWriter.js';
33
35
  import { MLDSASecurityLevel } from '@btc-vision/bip32';
34
36
  import { MessageSigner } from '../../keypair/MessageSigner.js';
35
37
  import { getLevelFromPublicKeyLength } from '../../generators/MLDSAData.js';
36
38
 
37
- initEccLib(ecc);
38
-
39
39
  export const MINIMUM_AMOUNT_REWARD: bigint = 330n; //540n;
40
40
  export const MINIMUM_AMOUNT_CA: bigint = 297n;
41
- export const ANCHOR_SCRIPT = Buffer.from('51024e73', 'hex');
41
+ export const ANCHOR_SCRIPT = fromHex('51024e73');
42
42
 
43
43
  /**
44
44
  * Allows to build a transaction like you would on Ethereum.
@@ -50,11 +50,11 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
50
50
  public static readonly MINIMUM_DUST: bigint = 330n;
51
51
 
52
52
  public abstract readonly type: T;
53
- public readonly logColor: string = '#785def';
53
+ public override readonly logColor: string = '#785def';
54
54
  public debugFees: boolean = false;
55
55
 
56
56
  // Cancel script
57
- public LOCK_LEAF_SCRIPT: Buffer;
57
+ public LOCK_LEAF_SCRIPT: Script;
58
58
 
59
59
  /**
60
60
  * @description The overflow fees of the transaction
@@ -105,12 +105,12 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
105
105
  /**
106
106
  * @description The signer of the transaction
107
107
  */
108
- protected readonly signer: Signer | ECPairInterface | UnisatSigner;
108
+ protected override readonly signer: Signer | UniversalSigner | UnisatSigner;
109
109
 
110
110
  /**
111
111
  * @description The network where the transaction will be broadcasted
112
112
  */
113
- protected readonly network: Network;
113
+ protected override readonly network: Network;
114
114
 
115
115
  /**
116
116
  * @description The fee rate of the transaction
@@ -163,7 +163,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
163
163
  */
164
164
  protected anchor: boolean;
165
165
 
166
- protected note?: Buffer;
166
+ protected note?: Uint8Array;
167
167
 
168
168
  private optionalOutputsAdded: boolean = false;
169
169
 
@@ -188,7 +188,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
188
188
 
189
189
  if (parameters.note) {
190
190
  if (typeof parameters.note === 'string') {
191
- this.note = Buffer.from(parameters.note, 'utf8');
191
+ this.note = new TextEncoder().encode(parameters.note);
192
192
  } else {
193
193
  this.note = parameters.note;
194
194
  }
@@ -217,9 +217,20 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
217
217
  });
218
218
  }
219
219
 
220
+ public override [Symbol.dispose](): void {
221
+ super[Symbol.dispose]();
222
+
223
+ this.updateInputs.length = 0;
224
+ this.outputs.length = 0;
225
+ this.feeOutput = null;
226
+ this.optionalOutputs = undefined;
227
+ this.utxos = [];
228
+ this.optionalInputs = [];
229
+ }
230
+
220
231
  public static getFrom(
221
232
  from: string | undefined,
222
- keypair: ECPairInterface | Signer,
233
+ keypair: UniversalSigner | Signer,
223
234
  network: Network,
224
235
  ): string {
225
236
  return from || EcKeyPair.getTaprootAddress(keypair, network);
@@ -231,23 +242,23 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
231
242
  * @protected
232
243
  * @returns {Buffer}
233
244
  */
234
- public static witnessStackToScriptWitness(witness: Buffer[]): Buffer {
245
+ public static witnessStackToScriptWitness(witness: Uint8Array[]): Uint8Array {
235
246
  return witnessStackToScriptWitness(witness);
236
247
  }
237
248
 
238
- public addOPReturn(buffer: Buffer): void {
249
+ public addOPReturn(buffer: Uint8Array): void {
239
250
  const compileScript = script.compile([opcodes.OP_RETURN, buffer]);
240
251
 
241
252
  this.addOutput({
242
- value: 0,
253
+ value: toSatoshi(0n),
243
254
  script: compileScript,
244
255
  });
245
256
  }
246
257
 
247
258
  public addAnchor(): void {
248
259
  this.addOutput({
249
- value: 0,
250
- script: ANCHOR_SCRIPT,
260
+ value: toSatoshi(0n),
261
+ script: ANCHOR_SCRIPT as Script,
251
262
  });
252
263
  }
253
264
 
@@ -266,10 +277,10 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
266
277
  gasSatFee: this.gasSatFee ?? 0n,
267
278
  from: this.from,
268
279
  amount: this.estimatedFees,
269
- optionalOutputs: this.optionalOutputs,
270
280
  optionalInputs: this.optionalInputs,
271
281
  mldsaSigner: null,
272
- };
282
+ ...(this.optionalOutputs !== undefined ? { optionalOutputs: this.optionalOutputs } : {}),
283
+ } satisfies IFundingTransactionParameters;
273
284
  }
274
285
 
275
286
  /**
@@ -354,7 +365,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
354
365
  this.transaction.addInputs(inputs, checkPartialSigs);
355
366
 
356
367
  for (let i = 0; i < this.updateInputs.length; i++) {
357
- this.transaction.updateInput(i, this.updateInputs[i]);
368
+ this.transaction.updateInput(i, this.updateInputs[i] as UpdateInput);
358
369
  }
359
370
 
360
371
  this.transaction.addOutputs(outputs);
@@ -393,25 +404,28 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
393
404
  * @returns {void}
394
405
  */
395
406
  public addOutput(output: PsbtOutputExtended, bypassMinCheck: boolean = false): void {
396
- if (output.value === 0) {
397
- const script = output as {
398
- script: Buffer;
407
+ if (output.value === toSatoshi(0n)) {
408
+ const scriptOutput = output as {
409
+ script: Uint8Array;
399
410
  };
400
411
 
401
- if (!script.script || script.script.length === 0) {
412
+ if (!scriptOutput.script || scriptOutput.script.length === 0) {
402
413
  throw new Error('Output value is 0 and no script provided');
403
414
  }
404
415
 
405
- if (script.script.length < 2) {
416
+ if (scriptOutput.script.length < 2) {
406
417
  throw new Error('Output script is too short');
407
418
  }
408
419
 
409
- if (script.script[0] !== opcodes.OP_RETURN && !script.script.equals(ANCHOR_SCRIPT)) {
420
+ if (
421
+ scriptOutput.script[0] !== opcodes.OP_RETURN &&
422
+ !equals(scriptOutput.script, ANCHOR_SCRIPT)
423
+ ) {
410
424
  throw new Error(
411
425
  'Output script must start with OP_RETURN or be an ANCHOR when value is 0',
412
426
  );
413
427
  }
414
- } else if (!bypassMinCheck && output.value < TransactionBuilder.MINIMUM_DUST) {
428
+ } else if (!bypassMinCheck && BigInt(output.value) < TransactionBuilder.MINIMUM_DUST) {
415
429
  throw new Error(
416
430
  `Output value is less than the minimum dust ${output.value} < ${TransactionBuilder.MINIMUM_DUST}`,
417
431
  );
@@ -460,26 +474,26 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
460
474
  fakeTx.addInputs(inputs);
461
475
  fakeTx.addOutputs(outputs);
462
476
 
463
- const dummySchnorrSig = Buffer.alloc(64, 0);
464
- const dummyEcdsaSig = Buffer.alloc(72, 0);
465
- const dummyCompressedPubkey = Buffer.alloc(33, 2);
477
+ const dummySchnorrSig = new Uint8Array(64);
478
+ const dummyEcdsaSig = new Uint8Array(72);
479
+ const dummyCompressedPubkey = new Uint8Array(33).fill(2);
466
480
 
467
481
  const finalizer = (inputIndex: number, input: PsbtInputExtended) => {
468
482
  if (input.isPayToAnchor || this.anchorInputIndices.has(inputIndex)) {
469
483
  return {
470
484
  finalScriptSig: undefined,
471
- finalScriptWitness: Buffer.from([0]),
485
+ finalScriptWitness: Uint8Array.from([0]),
472
486
  };
473
487
  }
474
488
 
475
489
  if (input.witnessScript && P2WDADetector.isP2WDAWitnessScript(input.witnessScript)) {
476
490
  // Create dummy witness stack for P2WDA
477
- const dummyDataSlots: Buffer[] = [];
491
+ const dummyDataSlots: Uint8Array[] = [];
478
492
  for (let i = 0; i < 10; i++) {
479
- dummyDataSlots.push(Buffer.alloc(0));
493
+ dummyDataSlots.push(new Uint8Array(0));
480
494
  }
481
495
 
482
- const dummyEcdsaSig = Buffer.alloc(72, 0);
496
+ const dummyEcdsaSig = new Uint8Array(72);
483
497
  return {
484
498
  finalScriptWitness: TransactionBuilder.witnessStackToScriptWitness([
485
499
  ...dummyDataSlots,
@@ -490,11 +504,11 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
490
504
  }
491
505
 
492
506
  if (inputIndex === 0 && this.tapLeafScript) {
493
- const dummySecret = Buffer.alloc(32, 0);
507
+ const dummySecret = new Uint8Array(32);
494
508
  const dummyScript = this.tapLeafScript.script;
495
509
 
496
510
  // A control block for a 2-leaf tree contains one 32-byte hash.
497
- const dummyControlBlock = Buffer.alloc(1 + 32 + 32, 0);
511
+ const dummyControlBlock = new Uint8Array(1 + 32 + 32);
498
512
 
499
513
  return {
500
514
  finalScriptWitness: TransactionBuilder.witnessStackToScriptWitness([
@@ -560,14 +574,14 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
560
574
  lastOp === opcodes.OP_CHECKMULTISIG
561
575
  ) {
562
576
  const m = firstOp - opcodes.OP_1 + 1;
563
- const signatures: Buffer[] = [];
577
+ const signatures: Uint8Array[] = [];
564
578
  for (let i = 0; i < m; i++) {
565
579
  signatures.push(dummyEcdsaSig);
566
580
  }
567
581
 
568
582
  return {
569
583
  finalScriptWitness: TransactionBuilder.witnessStackToScriptWitness([
570
- Buffer.alloc(0), // OP_0 due to multisig bug
584
+ new Uint8Array(0), // OP_0 due to multisig bug
571
585
  ...signatures,
572
586
  input.witnessScript,
573
587
  ]),
@@ -587,7 +601,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
587
601
  decompiled &&
588
602
  decompiled.length === 2 &&
589
603
  decompiled[0] === opcodes.OP_0 &&
590
- Buffer.isBuffer(decompiled[1]) &&
604
+ decompiled[1] instanceof Uint8Array &&
591
605
  decompiled[1].length === 20
592
606
  ) {
593
607
  // P2SH-P2WPKH
@@ -609,8 +623,8 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
609
623
  };
610
624
  }
611
625
 
612
- const script = input.witnessUtxo?.script;
613
- if (!script) return { finalScriptSig: undefined, finalScriptWitness: undefined };
626
+ const inputScript = input.witnessUtxo?.script;
627
+ if (!inputScript) return { finalScriptSig: undefined, finalScriptWitness: undefined };
614
628
 
615
629
  if (input.tapInternalKey) {
616
630
  return {
@@ -620,7 +634,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
620
634
  };
621
635
  }
622
636
 
623
- if (script.length === 22 && script[0] === opcodes.OP_0) {
637
+ if (inputScript.length === 22 && inputScript[0] === opcodes.OP_0) {
624
638
  return {
625
639
  finalScriptWitness: TransactionBuilder.witnessStackToScriptWitness([
626
640
  dummyEcdsaSig,
@@ -641,7 +655,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
641
655
  return getFinalScripts(
642
656
  inputIndex,
643
657
  input,
644
- script,
658
+ inputScript as Script,
645
659
  true,
646
660
  !!input.redeemScript,
647
661
  !!input.witnessScript,
@@ -715,7 +729,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
715
729
 
716
730
  let total = 0n;
717
731
  for (let i = 0; i < this.optionalOutputs.length; i++) {
718
- total += BigInt(this.optionalOutputs[i].value);
732
+ total += BigInt((this.optionalOutputs[i] as PsbtOutputExtended).value);
719
733
  }
720
734
 
721
735
  return total;
@@ -764,23 +778,23 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
764
778
  // Create the appropriate change output
765
779
  if (AddressVerificator.isValidP2TRAddress(this.from, this.network)) {
766
780
  this.feeOutput = {
767
- value: Number(sendBackAmount),
781
+ value: toSatoshi(sendBackAmount),
768
782
  address: this.from,
769
783
  tapInternalKey: this.internalPubKeyToXOnly(),
770
784
  };
771
785
  } else if (AddressVerificator.isValidPublicKey(this.from, this.network)) {
772
786
  const pubKeyScript = script.compile([
773
- Buffer.from(this.from.replace('0x', ''), 'hex'),
787
+ fromHex(this.from.replace('0x', '')),
774
788
  opcodes.OP_CHECKSIG,
775
789
  ]);
776
790
 
777
791
  this.feeOutput = {
778
- value: Number(sendBackAmount),
792
+ value: toSatoshi(sendBackAmount),
779
793
  script: pubKeyScript,
780
794
  };
781
795
  } else {
782
796
  this.feeOutput = {
783
- value: Number(sendBackAmount),
797
+ value: toSatoshi(sendBackAmount),
784
798
  address: this.from,
785
799
  };
786
800
  }
@@ -828,8 +842,8 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
828
842
  }
829
843
  }
830
844
 
831
- protected defineLockScript(): Buffer {
832
- return script.compile([toXOnly(Buffer.from(this.signer.publicKey)), opcodes.OP_CHECKSIG]);
845
+ protected defineLockScript(): Script {
846
+ return script.compile([toXOnly(this.signer.publicKey), opcodes.OP_CHECKSIG]);
833
847
  }
834
848
 
835
849
  /**
@@ -839,15 +853,19 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
839
853
  * @returns {void}
840
854
  */
841
855
  protected addValueToToOutput(value: number | bigint): void {
842
- if (value < TransactionBuilder.MINIMUM_DUST) {
856
+ if (BigInt(value) < TransactionBuilder.MINIMUM_DUST) {
843
857
  throw new Error(
844
858
  `Value to send is less than the minimum dust ${value} < ${TransactionBuilder.MINIMUM_DUST}`,
845
859
  );
846
860
  }
847
861
 
848
- for (const output of this.outputs) {
862
+ for (let i = 0; i < this.outputs.length; i++) {
863
+ const output = this.outputs[i] as PsbtOutputExtended;
849
864
  if ('address' in output && output.address === this.to) {
850
- output.value += Number(value);
865
+ this.outputs[i] = {
866
+ ...output,
867
+ value: toSatoshi(BigInt(output.value) + BigInt(value)),
868
+ } as PsbtOutputExtended;
851
869
  return;
852
870
  }
853
871
  }
@@ -855,7 +873,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
855
873
  throw new Error('Output not found');
856
874
  }
857
875
 
858
- protected generateLegacySignature(): Buffer {
876
+ protected generateLegacySignature(): Uint8Array {
859
877
  this.tweakSigner();
860
878
 
861
879
  if (!this.tweakedSigner) {
@@ -888,10 +906,10 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
888
906
  throw new Error('Could not verify generated legacy signature for MLDSA link request');
889
907
  }
890
908
 
891
- return Buffer.from(signature.signature);
909
+ return new Uint8Array(signature.signature);
892
910
  }
893
911
 
894
- protected generateMLDSASignature(): Buffer {
912
+ protected generateMLDSASignature(): Uint8Array {
895
913
  if (!this.mldsaSigner) {
896
914
  throw new Error('MLDSA signer is not defined');
897
915
  }
@@ -937,7 +955,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
937
955
  throw new Error('Could not verify generated MLDSA signature for link request');
938
956
  }
939
957
 
940
- return Buffer.from(signature.signature);
958
+ return new Uint8Array(signature.signature);
941
959
  }
942
960
 
943
961
  protected generateMLDSALinkRequest(
@@ -947,7 +965,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
947
965
  const mldsaSigner = this.mldsaSigner;
948
966
  const legacySignature = this.generateLegacySignature();
949
967
 
950
- let mldsaSignature: Buffer | null = null;
968
+ let mldsaSignature: Uint8Array | null = null;
951
969
  if (parameters.revealMLDSAPublicKey) {
952
970
  mldsaSignature = this.generateMLDSASignature();
953
971
  }
@@ -1029,8 +1047,8 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1029
1047
  let refundedFromOptionalOutputs: bigint = 0n;
1030
1048
 
1031
1049
  for (let i = 0; i < this.optionalOutputs.length; i++) {
1032
- this.addOutput(this.optionalOutputs[i]);
1033
- refundedFromOptionalOutputs += BigInt(this.optionalOutputs[i].value);
1050
+ this.addOutput(this.optionalOutputs[i] as PsbtOutputExtended);
1051
+ refundedFromOptionalOutputs += BigInt((this.optionalOutputs[i] as PsbtOutputExtended).value);
1034
1052
  }
1035
1053
 
1036
1054
  this.optionalOutputsAdded = true;
@@ -1054,7 +1072,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1054
1072
  }
1055
1073
 
1056
1074
  for (let i = 0; i < this.utxos.length; i++) {
1057
- const utxo = this.utxos[i];
1075
+ const utxo = this.utxos[i] as UTXO;
1058
1076
 
1059
1077
  // Register signer BEFORE generating input (needed for tapInternalKey)
1060
1078
  this.registerInputSigner(i, utxo);
@@ -1070,7 +1088,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1070
1088
  i < this.optionalInputs.length + this.utxos.length;
1071
1089
  i++
1072
1090
  ) {
1073
- const utxo = this.optionalInputs[i - this.utxos.length];
1091
+ const utxo = this.optionalInputs[i - this.utxos.length] as UTXO;
1074
1092
 
1075
1093
  // Register signer BEFORE generating input (needed for tapInternalKey)
1076
1094
  this.registerInputSigner(i, utxo);
@@ -1133,7 +1151,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1133
1151
  // ALWAYS THE FIRST INPUT.
1134
1152
  this.addOutput(
1135
1153
  {
1136
- value: Number(amountToCA),
1154
+ value: toSatoshi(amountToCA),
1137
1155
  address: contractAddress,
1138
1156
  },
1139
1157
  true,
@@ -1146,7 +1164,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1146
1164
  ) {
1147
1165
  this.addOutput(
1148
1166
  {
1149
- value: Number(amountSpent - amountToCA),
1167
+ value: toSatoshi(amountSpent - amountToCA),
1150
1168
  address: epochChallenge.address,
1151
1169
  },
1152
1170
  true,
@@ -1160,7 +1178,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1160
1178
 
1161
1179
  this.addOutput(
1162
1180
  {
1163
- value: Number(amountToEpoch),
1181
+ value: toSatoshi(amountToEpoch),
1164
1182
  address: epochChallenge.address,
1165
1183
  },
1166
1184
  true,
@@ -1173,7 +1191,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1173
1191
  * @protected
1174
1192
  * @returns {Buffer}
1175
1193
  */
1176
- protected getWitness(): Buffer {
1194
+ protected getWitness(): Uint8Array {
1177
1195
  if (!this.tapData || !this.tapData.witness) {
1178
1196
  throw new Error('Witness is required');
1179
1197
  }
@@ -1182,7 +1200,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1182
1200
  throw new Error('Witness is empty');
1183
1201
  }
1184
1202
 
1185
- return this.tapData.witness[this.tapData.witness.length - 1];
1203
+ return this.tapData.witness[this.tapData.witness.length - 1] as Uint8Array;
1186
1204
  }
1187
1205
 
1188
1206
  /**
@@ -1190,7 +1208,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1190
1208
  * @protected
1191
1209
  * @returns {Buffer}
1192
1210
  */
1193
- protected getTapOutput(): Buffer {
1211
+ protected getTapOutput(): Uint8Array {
1194
1212
  if (!this.tapData || !this.tapData.output) {
1195
1213
  throw new Error('Tap data is required');
1196
1214
  }
@@ -1245,7 +1263,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1245
1263
  }
1246
1264
 
1247
1265
  if (valueLeft >= TransactionBuilder.MINIMUM_DUST) {
1248
- this.feeOutput = { ...output, value: Number(valueLeft) };
1266
+ this.feeOutput = { ...output, value: toSatoshi(valueLeft) };
1249
1267
  this.overflowFees = valueLeft;
1250
1268
  } else {
1251
1269
  this.feeOutput = null;
@@ -1270,7 +1288,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1270
1288
  }
1271
1289
 
1272
1290
  if (finalValueLeft >= TransactionBuilder.MINIMUM_DUST) {
1273
- this.feeOutput = { ...output, value: Number(finalValueLeft) };
1291
+ this.feeOutput = { ...output, value: toSatoshi(finalValueLeft) };
1274
1292
  this.overflowFees = finalValueLeft;
1275
1293
  if (this.debugFees) {
1276
1294
  this.log(
@@ -1340,7 +1358,7 @@ export abstract class TransactionBuilder<T extends TransactionType> extends Twea
1340
1358
  transaction.addInputs(inputs, checkPartialSigs);
1341
1359
 
1342
1360
  for (let i = 0; i < this.updateInputs.length; i++) {
1343
- transaction.updateInput(i, this.updateInputs[i]);
1361
+ transaction.updateInput(i, this.updateInputs[i] as UpdateInput);
1344
1362
  }
1345
1363
 
1346
1364
  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
  }
@@ -1,5 +1,5 @@
1
- import { RawChallenge } from '../../epoch/interfaces/IChallengeSolution.js';
2
- import { UTXO } from '../../utxo/interfaces/IUTXO.js';
1
+ import type { RawChallenge } from '../../epoch/interfaces/IChallengeSolution.js';
2
+ import type { UTXO } from '../../utxo/interfaces/IUTXO.js';
3
3
 
4
4
  export interface DeploymentResult {
5
5
  readonly transaction: [string, string];