@btc-vision/transaction 1.8.0-beta.0 → 1.8.0-beta.10

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 (796) hide show
  1. package/browser/_version.d.ts +2 -1
  2. package/browser/_version.d.ts.map +1 -0
  3. package/browser/abi/ABICoder.d.ts +15 -36
  4. package/browser/abi/ABICoder.d.ts.map +1 -0
  5. package/browser/abi/ABIDataTypes.d.ts +35 -0
  6. package/browser/abi/ABIDataTypes.d.ts.map +1 -0
  7. package/browser/abi/AbiTypes.d.ts +50 -0
  8. package/browser/abi/AbiTypes.d.ts.map +1 -0
  9. package/browser/abi/TupleUtils.d.ts +25 -0
  10. package/browser/abi/TupleUtils.d.ts.map +1 -0
  11. package/browser/branded/Branded.d.ts +4 -0
  12. package/browser/branded/Branded.d.ts.map +1 -0
  13. package/browser/btc-vision-bitcoin.js +12388 -3684
  14. package/browser/buffer/BinaryReader.d.ts +120 -1
  15. package/browser/buffer/BinaryReader.d.ts.map +1 -0
  16. package/browser/buffer/BinaryWriter.d.ts +51 -1
  17. package/browser/buffer/BinaryWriter.d.ts.map +1 -0
  18. package/browser/bytecode/Compressor.d.ts +12 -0
  19. package/browser/bytecode/Compressor.d.ts.map +1 -0
  20. package/browser/chain/ChainData.d.ts +2 -2
  21. package/browser/chain/ChainData.d.ts.map +1 -0
  22. package/browser/consensus/Consensus.d.ts +11 -3
  23. package/browser/consensus/Consensus.d.ts.map +1 -0
  24. package/browser/consensus/ConsensusConfig.d.ts +1 -0
  25. package/browser/consensus/ConsensusConfig.d.ts.map +1 -0
  26. package/browser/consensus/IConsensusConfig.d.ts +1 -0
  27. package/browser/consensus/IConsensusConfig.d.ts.map +1 -0
  28. package/browser/consensus/metadata/RoswellConsensus.d.ts +1 -0
  29. package/browser/consensus/metadata/RoswellConsensus.d.ts.map +1 -0
  30. package/browser/crypto/crypto.d.ts +1 -0
  31. package/browser/crypto/crypto.d.ts.map +1 -0
  32. package/browser/deterministic/AddressMap.d.ts +6 -1
  33. package/browser/deterministic/AddressMap.d.ts.map +1 -0
  34. package/browser/deterministic/AddressSet.d.ts +3 -1
  35. package/browser/deterministic/AddressSet.d.ts.map +1 -0
  36. package/browser/deterministic/CustomMap.d.ts +3 -1
  37. package/browser/deterministic/CustomMap.d.ts.map +1 -0
  38. package/browser/deterministic/DeterministicMap.d.ts +3 -1
  39. package/browser/deterministic/DeterministicMap.d.ts.map +1 -0
  40. package/browser/deterministic/DeterministicSet.d.ts +3 -1
  41. package/browser/deterministic/DeterministicSet.d.ts.map +1 -0
  42. package/browser/deterministic/ExtendedAddressMap.d.ts +7 -1
  43. package/browser/deterministic/ExtendedAddressMap.d.ts.map +1 -0
  44. package/browser/deterministic/FastMap.d.ts +7 -1
  45. package/browser/deterministic/FastMap.d.ts.map +1 -0
  46. package/browser/ecc/backend.d.ts +13 -0
  47. package/browser/ecc/backend.d.ts.map +1 -0
  48. package/browser/epoch/ChallengeSolution.d.ts +33 -1
  49. package/browser/epoch/ChallengeSolution.d.ts.map +1 -0
  50. package/browser/epoch/interfaces/IChallengeSolution.d.ts +14 -13
  51. package/browser/epoch/interfaces/IChallengeSolution.d.ts.map +1 -0
  52. package/browser/epoch/validator/EpochValidator.d.ts +37 -7
  53. package/browser/epoch/validator/EpochValidator.d.ts.map +1 -0
  54. package/browser/event/NetEvent.d.ts +1 -0
  55. package/browser/event/NetEvent.d.ts.map +1 -0
  56. package/browser/generators/AddressGenerator.d.ts +4 -3
  57. package/browser/generators/AddressGenerator.d.ts.map +1 -0
  58. package/browser/generators/Features.d.ts +1 -0
  59. package/browser/generators/Features.d.ts.map +1 -0
  60. package/browser/generators/Generator.d.ts +46 -10
  61. package/browser/generators/Generator.d.ts.map +1 -0
  62. package/browser/generators/MLDSAData.d.ts +1 -0
  63. package/browser/generators/MLDSAData.d.ts.map +1 -0
  64. package/browser/generators/builders/CalldataGenerator.d.ts +25 -4
  65. package/browser/generators/builders/CalldataGenerator.d.ts.map +1 -0
  66. package/browser/generators/builders/CustomGenerator.d.ts +13 -3
  67. package/browser/generators/builders/CustomGenerator.d.ts.map +1 -0
  68. package/browser/generators/builders/DeploymentGenerator.d.ts +15 -4
  69. package/browser/generators/builders/DeploymentGenerator.d.ts.map +1 -0
  70. package/browser/generators/builders/HashCommitmentGenerator.d.ts +164 -12
  71. package/browser/generators/builders/HashCommitmentGenerator.d.ts.map +1 -0
  72. package/browser/generators/builders/LegacyCalldataGenerator.d.ts +26 -4
  73. package/browser/generators/builders/LegacyCalldataGenerator.d.ts.map +1 -0
  74. package/browser/generators/builders/MultiSignGenerator.d.ts +6 -1
  75. package/browser/generators/builders/MultiSignGenerator.d.ts.map +1 -0
  76. package/browser/generators/builders/P2WDAGenerator.d.ts +42 -4
  77. package/browser/generators/builders/P2WDAGenerator.d.ts.map +1 -0
  78. package/browser/index.d.ts +1 -0
  79. package/browser/index.d.ts.map +1 -0
  80. package/browser/index.js +3921 -3450
  81. package/browser/keypair/Address.d.ts +283 -13
  82. package/browser/keypair/Address.d.ts.map +1 -0
  83. package/browser/keypair/AddressVerificator.d.ts +7 -6
  84. package/browser/keypair/AddressVerificator.d.ts.map +1 -0
  85. package/browser/keypair/EcKeyPair.d.ts +183 -20
  86. package/browser/keypair/EcKeyPair.d.ts.map +1 -0
  87. package/browser/keypair/MessageSigner.d.ts +17 -16
  88. package/browser/keypair/MessageSigner.d.ts.map +1 -0
  89. package/browser/keypair/Secp256k1PointDeriver.d.ts +55 -0
  90. package/browser/keypair/Secp256k1PointDeriver.d.ts.map +1 -0
  91. package/browser/keypair/Wallet.d.ts +27 -13
  92. package/browser/keypair/Wallet.d.ts.map +1 -0
  93. package/browser/keypair/interfaces/IWallet.d.ts +19 -0
  94. package/browser/keypair/interfaces/IWallet.d.ts.map +1 -0
  95. package/browser/metadata/ContractBaseMetadata.d.ts +10 -2
  96. package/browser/metadata/ContractBaseMetadata.d.ts.map +1 -0
  97. package/browser/mnemonic/BIPStandard.d.ts +59 -0
  98. package/browser/mnemonic/BIPStandard.d.ts.map +1 -0
  99. package/browser/mnemonic/Mnemonic.d.ts +15 -3
  100. package/browser/mnemonic/Mnemonic.d.ts.map +1 -0
  101. package/browser/mnemonic/MnemonicStrength.d.ts +6 -0
  102. package/browser/mnemonic/MnemonicStrength.d.ts.map +1 -0
  103. package/browser/network/ChainId.d.ts +1 -0
  104. package/browser/network/ChainId.d.ts.map +1 -0
  105. package/browser/noble-curves.js +920 -2966
  106. package/browser/noble-hashes.js +2067 -1038
  107. package/browser/opnet.d.ts +25 -1
  108. package/browser/opnet.d.ts.map +1 -0
  109. package/browser/p2wda/P2WDADetector.d.ts +36 -9
  110. package/browser/p2wda/P2WDADetector.d.ts.map +1 -0
  111. package/browser/polyfill/disposable.d.ts +16 -0
  112. package/browser/polyfill/disposable.d.ts.map +1 -0
  113. package/browser/signer/AddressRotation.d.ts +36 -0
  114. package/browser/signer/AddressRotation.d.ts.map +1 -0
  115. package/browser/signer/IRotationSigner.d.ts +27 -3
  116. package/browser/signer/IRotationSigner.d.ts.map +1 -0
  117. package/browser/signer/ParallelSignerAdapter.d.ts +14 -0
  118. package/browser/signer/ParallelSignerAdapter.d.ts.map +1 -0
  119. package/browser/signer/SignerUtils.d.ts +11 -4
  120. package/browser/signer/SignerUtils.d.ts.map +1 -0
  121. package/browser/signer/TweakedSigner.d.ts +28 -4
  122. package/browser/signer/TweakedSigner.d.ts.map +1 -0
  123. package/browser/transaction/ContractAddress.d.ts +2 -2
  124. package/browser/transaction/ContractAddress.d.ts.map +1 -0
  125. package/browser/transaction/TransactionFactory.d.ts +140 -2
  126. package/browser/transaction/TransactionFactory.d.ts.map +1 -0
  127. package/browser/transaction/browser/BrowserSignerBase.d.ts +12 -6
  128. package/browser/transaction/browser/BrowserSignerBase.d.ts.map +1 -0
  129. package/browser/transaction/browser/WalletNetworks.d.ts +1 -0
  130. package/browser/transaction/browser/WalletNetworks.d.ts.map +1 -0
  131. package/browser/transaction/browser/Web3Provider.d.ts +27 -0
  132. package/browser/transaction/browser/Web3Provider.d.ts.map +1 -0
  133. package/browser/transaction/browser/extensions/UnisatSigner.d.ts +9 -7
  134. package/browser/transaction/browser/extensions/UnisatSigner.d.ts.map +1 -0
  135. package/browser/transaction/browser/extensions/XverseSigner.d.ts +9 -7
  136. package/browser/transaction/browser/extensions/XverseSigner.d.ts.map +1 -0
  137. package/browser/transaction/browser/types/OPWallet.d.ts +10 -0
  138. package/browser/transaction/browser/types/OPWallet.d.ts.map +1 -0
  139. package/browser/transaction/browser/types/Unisat.d.ts +1 -0
  140. package/browser/transaction/browser/types/Unisat.d.ts.map +1 -0
  141. package/browser/transaction/browser/types/Xverse.d.ts +1 -0
  142. package/browser/transaction/browser/types/Xverse.d.ts.map +1 -0
  143. package/browser/transaction/builders/CancelTransaction.d.ts +29 -4
  144. package/browser/transaction/builders/CancelTransaction.d.ts.map +1 -0
  145. package/browser/transaction/builders/ChallengeSolutionTransaction.d.ts +1 -0
  146. package/browser/transaction/builders/ChallengeSolutionTransaction.d.ts.map +1 -0
  147. package/browser/transaction/builders/ConsolidatedInteractionTransaction.d.ts +137 -10
  148. package/browser/transaction/builders/ConsolidatedInteractionTransaction.d.ts.map +1 -0
  149. package/browser/transaction/builders/CustomScriptTransaction.d.ts +106 -6
  150. package/browser/transaction/builders/CustomScriptTransaction.d.ts.map +1 -0
  151. package/browser/transaction/builders/DeploymentTransaction.d.ts +116 -5
  152. package/browser/transaction/builders/DeploymentTransaction.d.ts.map +1 -0
  153. package/browser/transaction/builders/FundingTransaction.d.ts +5 -3
  154. package/browser/transaction/builders/FundingTransaction.d.ts.map +1 -0
  155. package/browser/transaction/builders/InteractionTransaction.d.ts +12 -3
  156. package/browser/transaction/builders/InteractionTransaction.d.ts.map +1 -0
  157. package/browser/transaction/builders/InteractionTransactionP2WDA.d.ts +56 -5
  158. package/browser/transaction/builders/InteractionTransactionP2WDA.d.ts.map +1 -0
  159. package/browser/transaction/builders/MultiSignTransaction.d.ts +125 -16
  160. package/browser/transaction/builders/MultiSignTransaction.d.ts.map +1 -0
  161. package/browser/transaction/builders/SharedInteractionTransaction.d.ts +103 -15
  162. package/browser/transaction/builders/SharedInteractionTransaction.d.ts.map +1 -0
  163. package/browser/transaction/builders/TransactionBuilder.d.ts +238 -15
  164. package/browser/transaction/builders/TransactionBuilder.d.ts.map +1 -0
  165. package/browser/transaction/enums/TransactionType.d.ts +1 -0
  166. package/browser/transaction/enums/TransactionType.d.ts.map +1 -0
  167. package/browser/transaction/interfaces/ICancelTransactionParameters.d.ts +2 -1
  168. package/browser/transaction/interfaces/ICancelTransactionParameters.d.ts.map +1 -0
  169. package/browser/transaction/interfaces/IConsolidatedTransactionParameters.d.ts +46 -3
  170. package/browser/transaction/interfaces/IConsolidatedTransactionParameters.d.ts.map +1 -0
  171. package/browser/transaction/interfaces/ICustomTransactionParameters.d.ts +6 -4
  172. package/browser/transaction/interfaces/ICustomTransactionParameters.d.ts.map +1 -0
  173. package/browser/transaction/interfaces/ITransactionParameters.d.ts +33 -10
  174. package/browser/transaction/interfaces/ITransactionParameters.d.ts.map +1 -0
  175. package/browser/transaction/interfaces/ITransactionResponses.d.ts +1 -0
  176. package/browser/transaction/interfaces/ITransactionResponses.d.ts.map +1 -0
  177. package/browser/transaction/interfaces/ITweakedTransactionData.d.ts +17 -5
  178. package/browser/transaction/interfaces/ITweakedTransactionData.d.ts.map +1 -0
  179. package/browser/transaction/interfaces/IWeb3ProviderTypes.d.ts +26 -0
  180. package/browser/transaction/interfaces/IWeb3ProviderTypes.d.ts.map +1 -0
  181. package/browser/transaction/interfaces/Tap.d.ts +4 -3
  182. package/browser/transaction/interfaces/Tap.d.ts.map +1 -0
  183. package/browser/transaction/mineable/IP2WSHAddress.d.ts +2 -1
  184. package/browser/transaction/mineable/IP2WSHAddress.d.ts.map +1 -0
  185. package/browser/transaction/mineable/TimelockGenerator.d.ts +12 -3
  186. package/browser/transaction/mineable/TimelockGenerator.d.ts.map +1 -0
  187. package/browser/transaction/offline/OfflineTransactionManager.d.ts +190 -9
  188. package/browser/transaction/offline/OfflineTransactionManager.d.ts.map +1 -0
  189. package/browser/transaction/offline/TransactionReconstructor.d.ts +53 -3
  190. package/browser/transaction/offline/TransactionReconstructor.d.ts.map +1 -0
  191. package/browser/transaction/offline/TransactionSerializer.d.ts +53 -2
  192. package/browser/transaction/offline/TransactionSerializer.d.ts.map +1 -0
  193. package/browser/transaction/offline/TransactionStateCapture.d.ts +64 -5
  194. package/browser/transaction/offline/TransactionStateCapture.d.ts.map +1 -0
  195. package/browser/transaction/offline/interfaces/ISerializableState.d.ts +71 -0
  196. package/browser/transaction/offline/interfaces/ISerializableState.d.ts.map +1 -0
  197. package/browser/transaction/offline/interfaces/ITypeSpecificData.d.ts +76 -0
  198. package/browser/transaction/offline/interfaces/ITypeSpecificData.d.ts.map +1 -0
  199. package/browser/transaction/psbt/PSBTTypes.d.ts +1 -0
  200. package/browser/transaction/psbt/PSBTTypes.d.ts.map +1 -0
  201. package/browser/transaction/shared/P2TR_MS.d.ts +11 -2
  202. package/browser/transaction/shared/P2TR_MS.d.ts.map +1 -0
  203. package/browser/transaction/shared/TweakedTransaction.d.ts +274 -33
  204. package/browser/transaction/shared/TweakedTransaction.d.ts.map +1 -0
  205. package/browser/transaction/utils/WitnessUtils.d.ts +7 -1
  206. package/browser/transaction/utils/WitnessUtils.d.ts.map +1 -0
  207. package/browser/utils/BitcoinUtils.d.ts +19 -0
  208. package/browser/utils/BitcoinUtils.d.ts.map +1 -0
  209. package/browser/utils/BufferHelper.d.ts +1 -0
  210. package/browser/utils/BufferHelper.d.ts.map +1 -0
  211. package/browser/utils/StringToBuffer.d.ts +1 -0
  212. package/browser/utils/StringToBuffer.d.ts.map +1 -0
  213. package/browser/utils/lengths.d.ts +1 -0
  214. package/browser/utils/lengths.d.ts.map +1 -0
  215. package/browser/utils/types.d.ts +1 -0
  216. package/browser/utils/types.d.ts.map +1 -0
  217. package/browser/utxo/OPNetLimitedProvider.d.ts +37 -1
  218. package/browser/utxo/OPNetLimitedProvider.d.ts.map +1 -0
  219. package/browser/utxo/interfaces/BroadcastResponse.d.ts +1 -0
  220. package/browser/utxo/interfaces/BroadcastResponse.d.ts.map +1 -0
  221. package/browser/utxo/interfaces/IUTXO.d.ts +11 -5
  222. package/browser/utxo/interfaces/IUTXO.d.ts.map +1 -0
  223. package/browser/vendors.js +13940 -9389
  224. package/browser/verification/TapscriptVerificator.d.ts +10 -8
  225. package/browser/verification/TapscriptVerificator.d.ts.map +1 -0
  226. package/build/_version.d.ts +2 -1
  227. package/build/_version.d.ts.map +1 -0
  228. package/build/_version.js +2 -1
  229. package/build/_version.js.map +1 -0
  230. package/build/abi/ABICoder.d.ts +15 -36
  231. package/build/abi/ABICoder.d.ts.map +1 -0
  232. package/build/abi/ABICoder.js +120 -143
  233. package/build/abi/ABICoder.js.map +1 -0
  234. package/build/abi/ABIDataTypes.d.ts +35 -0
  235. package/build/abi/ABIDataTypes.d.ts.map +1 -0
  236. package/build/abi/ABIDataTypes.js +42 -0
  237. package/build/abi/ABIDataTypes.js.map +1 -0
  238. package/build/abi/AbiTypes.d.ts +50 -0
  239. package/build/abi/AbiTypes.d.ts.map +1 -0
  240. package/build/abi/AbiTypes.js +78 -0
  241. package/build/abi/AbiTypes.js.map +1 -0
  242. package/build/abi/TupleUtils.d.ts +25 -0
  243. package/build/abi/TupleUtils.d.ts.map +1 -0
  244. package/build/abi/TupleUtils.js +50 -0
  245. package/build/abi/TupleUtils.js.map +1 -0
  246. package/build/branded/Branded.d.ts +4 -0
  247. package/build/branded/Branded.d.ts.map +1 -0
  248. package/build/branded/Branded.js +2 -0
  249. package/build/branded/Branded.js.map +1 -0
  250. package/build/buffer/BinaryReader.d.ts +121 -2
  251. package/build/buffer/BinaryReader.d.ts.map +1 -0
  252. package/build/buffer/BinaryReader.js +129 -5
  253. package/build/buffer/BinaryReader.js.map +1 -0
  254. package/build/buffer/BinaryWriter.d.ts +52 -2
  255. package/build/buffer/BinaryWriter.d.ts.map +1 -0
  256. package/build/buffer/BinaryWriter.js +62 -2
  257. package/build/buffer/BinaryWriter.js.map +1 -0
  258. package/build/bytecode/Compressor.d.ts +12 -0
  259. package/build/bytecode/Compressor.d.ts.map +1 -0
  260. package/build/bytecode/Compressor.js +17 -5
  261. package/build/bytecode/Compressor.js.map +1 -0
  262. package/build/chain/ChainData.d.ts +2 -2
  263. package/build/chain/ChainData.d.ts.map +1 -0
  264. package/build/chain/ChainData.js +37 -16
  265. package/build/chain/ChainData.js.map +1 -0
  266. package/build/consensus/Consensus.d.ts +11 -3
  267. package/build/consensus/Consensus.d.ts.map +1 -0
  268. package/build/consensus/Consensus.js +8 -0
  269. package/build/consensus/Consensus.js.map +1 -0
  270. package/build/consensus/ConsensusConfig.d.ts +2 -1
  271. package/build/consensus/ConsensusConfig.d.ts.map +1 -0
  272. package/build/consensus/ConsensusConfig.js +1 -0
  273. package/build/consensus/ConsensusConfig.js.map +1 -0
  274. package/build/consensus/IConsensusConfig.d.ts +1 -0
  275. package/build/consensus/IConsensusConfig.d.ts.map +1 -0
  276. package/build/consensus/IConsensusConfig.js +2 -1
  277. package/build/consensus/IConsensusConfig.js.map +1 -0
  278. package/build/consensus/metadata/RoswellConsensus.d.ts +2 -1
  279. package/build/consensus/metadata/RoswellConsensus.d.ts.map +1 -0
  280. package/build/consensus/metadata/RoswellConsensus.js +2 -0
  281. package/build/consensus/metadata/RoswellConsensus.js.map +1 -0
  282. package/build/crypto/crypto.d.ts +1 -0
  283. package/build/crypto/crypto.d.ts.map +1 -0
  284. package/build/crypto/crypto.js +1 -0
  285. package/build/crypto/crypto.js.map +1 -0
  286. package/build/deterministic/AddressMap.d.ts +6 -1
  287. package/build/deterministic/AddressMap.d.ts.map +1 -0
  288. package/build/deterministic/AddressMap.js +8 -0
  289. package/build/deterministic/AddressMap.js.map +1 -0
  290. package/build/deterministic/AddressSet.d.ts +3 -1
  291. package/build/deterministic/AddressSet.d.ts.map +1 -0
  292. package/build/deterministic/AddressSet.js +7 -0
  293. package/build/deterministic/AddressSet.js.map +1 -0
  294. package/build/deterministic/CustomMap.d.ts +3 -1
  295. package/build/deterministic/CustomMap.d.ts.map +1 -0
  296. package/build/deterministic/CustomMap.js +65 -47
  297. package/build/deterministic/CustomMap.js.map +1 -0
  298. package/build/deterministic/DeterministicMap.d.ts +4 -2
  299. package/build/deterministic/DeterministicMap.d.ts.map +1 -0
  300. package/build/deterministic/DeterministicMap.js +24 -27
  301. package/build/deterministic/DeterministicMap.js.map +1 -0
  302. package/build/deterministic/DeterministicSet.d.ts +3 -1
  303. package/build/deterministic/DeterministicSet.d.ts.map +1 -0
  304. package/build/deterministic/DeterministicSet.js +6 -0
  305. package/build/deterministic/DeterministicSet.js.map +1 -0
  306. package/build/deterministic/ExtendedAddressMap.d.ts +7 -1
  307. package/build/deterministic/ExtendedAddressMap.d.ts.map +1 -0
  308. package/build/deterministic/ExtendedAddressMap.js +18 -2
  309. package/build/deterministic/ExtendedAddressMap.js.map +1 -0
  310. package/build/deterministic/FastMap.d.ts +7 -1
  311. package/build/deterministic/FastMap.d.ts.map +1 -0
  312. package/build/deterministic/FastMap.js +7 -2
  313. package/build/deterministic/FastMap.js.map +1 -0
  314. package/build/ecc/backend.d.ts +13 -0
  315. package/build/ecc/backend.d.ts.map +1 -0
  316. package/build/ecc/backend.js +15 -0
  317. package/build/ecc/backend.js.map +1 -0
  318. package/build/epoch/ChallengeSolution.d.ts +34 -2
  319. package/build/epoch/ChallengeSolution.d.ts.map +1 -0
  320. package/build/epoch/ChallengeSolution.js +52 -0
  321. package/build/epoch/ChallengeSolution.js.map +1 -0
  322. package/build/epoch/interfaces/IChallengeSolution.d.ts +14 -13
  323. package/build/epoch/interfaces/IChallengeSolution.d.ts.map +1 -0
  324. package/build/epoch/interfaces/IChallengeSolution.js +2 -1
  325. package/build/epoch/interfaces/IChallengeSolution.js.map +1 -0
  326. package/build/epoch/validator/EpochValidator.d.ts +38 -8
  327. package/build/epoch/validator/EpochValidator.d.ts.map +1 -0
  328. package/build/epoch/validator/EpochValidator.js +45 -19
  329. package/build/epoch/validator/EpochValidator.js.map +1 -0
  330. package/build/event/NetEvent.d.ts +1 -0
  331. package/build/event/NetEvent.d.ts.map +1 -0
  332. package/build/event/NetEvent.js +3 -0
  333. package/build/event/NetEvent.js.map +1 -0
  334. package/build/generators/AddressGenerator.d.ts +4 -3
  335. package/build/generators/AddressGenerator.d.ts.map +1 -0
  336. package/build/generators/AddressGenerator.js +9 -4
  337. package/build/generators/AddressGenerator.js.map +1 -0
  338. package/build/generators/Features.d.ts +4 -3
  339. package/build/generators/Features.d.ts.map +1 -0
  340. package/build/generators/Features.js +1 -0
  341. package/build/generators/Features.js.map +1 -0
  342. package/build/generators/Generator.d.ts +47 -11
  343. package/build/generators/Generator.d.ts.map +1 -0
  344. package/build/generators/Generator.js +48 -12
  345. package/build/generators/Generator.js.map +1 -0
  346. package/build/generators/MLDSAData.d.ts +1 -0
  347. package/build/generators/MLDSAData.d.ts.map +1 -0
  348. package/build/generators/MLDSAData.js +1 -0
  349. package/build/generators/MLDSAData.js.map +1 -0
  350. package/build/generators/builders/CalldataGenerator.d.ts +27 -6
  351. package/build/generators/builders/CalldataGenerator.d.ts.map +1 -0
  352. package/build/generators/builders/CalldataGenerator.js +33 -4
  353. package/build/generators/builders/CalldataGenerator.js.map +1 -0
  354. package/build/generators/builders/CustomGenerator.d.ts +13 -3
  355. package/build/generators/builders/CustomGenerator.d.ts.map +1 -0
  356. package/build/generators/builders/CustomGenerator.js +11 -0
  357. package/build/generators/builders/CustomGenerator.js.map +1 -0
  358. package/build/generators/builders/DeploymentGenerator.d.ts +17 -6
  359. package/build/generators/builders/DeploymentGenerator.d.ts.map +1 -0
  360. package/build/generators/builders/DeploymentGenerator.js +18 -2
  361. package/build/generators/builders/DeploymentGenerator.js.map +1 -0
  362. package/build/generators/builders/HashCommitmentGenerator.d.ts +166 -14
  363. package/build/generators/builders/HashCommitmentGenerator.d.ts.map +1 -0
  364. package/build/generators/builders/HashCommitmentGenerator.js +193 -27
  365. package/build/generators/builders/HashCommitmentGenerator.js.map +1 -0
  366. package/build/generators/builders/LegacyCalldataGenerator.d.ts +27 -5
  367. package/build/generators/builders/LegacyCalldataGenerator.d.ts.map +1 -0
  368. package/build/generators/builders/LegacyCalldataGenerator.js +35 -5
  369. package/build/generators/builders/LegacyCalldataGenerator.js.map +1 -0
  370. package/build/generators/builders/MultiSignGenerator.d.ts +6 -1
  371. package/build/generators/builders/MultiSignGenerator.d.ts.map +1 -0
  372. package/build/generators/builders/MultiSignGenerator.js +20 -10
  373. package/build/generators/builders/MultiSignGenerator.js.map +1 -0
  374. package/build/generators/builders/P2WDAGenerator.d.ts +44 -6
  375. package/build/generators/builders/P2WDAGenerator.d.ts.map +1 -0
  376. package/build/generators/builders/P2WDAGenerator.js +41 -2
  377. package/build/generators/builders/P2WDAGenerator.js.map +1 -0
  378. package/build/index.d.ts +1 -0
  379. package/build/index.d.ts.map +1 -0
  380. package/build/index.js +1 -0
  381. package/build/index.js.map +1 -0
  382. package/build/keypair/Address.d.ts +284 -14
  383. package/build/keypair/Address.d.ts.map +1 -0
  384. package/build/keypair/Address.js +447 -129
  385. package/build/keypair/Address.js.map +1 -0
  386. package/build/keypair/AddressVerificator.d.ts +7 -6
  387. package/build/keypair/AddressVerificator.d.ts.map +1 -0
  388. package/build/keypair/AddressVerificator.js +4 -5
  389. package/build/keypair/AddressVerificator.js.map +1 -0
  390. package/build/keypair/EcKeyPair.d.ts +185 -22
  391. package/build/keypair/EcKeyPair.d.ts.map +1 -0
  392. package/build/keypair/EcKeyPair.js +226 -49
  393. package/build/keypair/EcKeyPair.js.map +1 -0
  394. package/build/keypair/MessageSigner.d.ts +18 -17
  395. package/build/keypair/MessageSigner.d.ts.map +1 -0
  396. package/build/keypair/MessageSigner.js +34 -25
  397. package/build/keypair/MessageSigner.js.map +1 -0
  398. package/build/keypair/Secp256k1PointDeriver.d.ts +55 -0
  399. package/build/keypair/Secp256k1PointDeriver.d.ts.map +1 -0
  400. package/build/keypair/Secp256k1PointDeriver.js +66 -0
  401. package/build/keypair/Secp256k1PointDeriver.js.map +1 -0
  402. package/build/keypair/Wallet.d.ts +29 -15
  403. package/build/keypair/Wallet.d.ts.map +1 -0
  404. package/build/keypair/Wallet.js +46 -14
  405. package/build/keypair/Wallet.js.map +1 -0
  406. package/build/keypair/interfaces/IWallet.d.ts +19 -0
  407. package/build/keypair/interfaces/IWallet.d.ts.map +1 -0
  408. package/build/keypair/interfaces/IWallet.js +1 -0
  409. package/build/keypair/interfaces/IWallet.js.map +1 -0
  410. package/build/metadata/ContractBaseMetadata.d.ts +10 -2
  411. package/build/metadata/ContractBaseMetadata.d.ts.map +1 -0
  412. package/build/metadata/ContractBaseMetadata.js +10 -1
  413. package/build/metadata/ContractBaseMetadata.js.map +1 -0
  414. package/build/mnemonic/BIPStandard.d.ts +59 -0
  415. package/build/mnemonic/BIPStandard.d.ts.map +1 -0
  416. package/build/mnemonic/BIPStandard.js +59 -0
  417. package/build/mnemonic/BIPStandard.js.map +1 -0
  418. package/build/mnemonic/Mnemonic.d.ts +16 -4
  419. package/build/mnemonic/Mnemonic.d.ts.map +1 -0
  420. package/build/mnemonic/Mnemonic.js +35 -8
  421. package/build/mnemonic/Mnemonic.js.map +1 -0
  422. package/build/mnemonic/MnemonicStrength.d.ts +6 -0
  423. package/build/mnemonic/MnemonicStrength.d.ts.map +1 -0
  424. package/build/mnemonic/MnemonicStrength.js +6 -0
  425. package/build/mnemonic/MnemonicStrength.js.map +1 -0
  426. package/build/network/ChainId.d.ts +1 -0
  427. package/build/network/ChainId.d.ts.map +1 -0
  428. package/build/network/ChainId.js +1 -0
  429. package/build/network/ChainId.js.map +1 -0
  430. package/build/opnet.d.ts +29 -3
  431. package/build/opnet.d.ts.map +1 -0
  432. package/build/opnet.js +26 -0
  433. package/build/opnet.js.map +1 -0
  434. package/build/p2wda/P2WDADetector.d.ts +38 -11
  435. package/build/p2wda/P2WDADetector.d.ts.map +1 -0
  436. package/build/p2wda/P2WDADetector.js +43 -10
  437. package/build/p2wda/P2WDADetector.js.map +1 -0
  438. package/build/polyfill/disposable.d.ts +16 -0
  439. package/build/polyfill/disposable.d.ts.map +1 -0
  440. package/build/polyfill/disposable.js +23 -0
  441. package/build/polyfill/disposable.js.map +1 -0
  442. package/build/signer/AddressRotation.d.ts +37 -1
  443. package/build/signer/AddressRotation.d.ts.map +1 -0
  444. package/build/signer/AddressRotation.js +16 -0
  445. package/build/signer/AddressRotation.js.map +1 -0
  446. package/build/signer/IRotationSigner.d.ts +27 -3
  447. package/build/signer/IRotationSigner.d.ts.map +1 -0
  448. package/build/signer/IRotationSigner.js +2 -1
  449. package/build/signer/IRotationSigner.js.map +1 -0
  450. package/build/signer/ParallelSignerAdapter.d.ts +14 -0
  451. package/build/signer/ParallelSignerAdapter.d.ts.map +1 -0
  452. package/build/signer/ParallelSignerAdapter.js +51 -0
  453. package/build/signer/ParallelSignerAdapter.js.map +1 -0
  454. package/build/signer/SignerUtils.d.ts +11 -4
  455. package/build/signer/SignerUtils.d.ts.map +1 -0
  456. package/build/signer/SignerUtils.js +16 -0
  457. package/build/signer/SignerUtils.js.map +1 -0
  458. package/build/signer/TweakedSigner.d.ts +28 -4
  459. package/build/signer/TweakedSigner.d.ts.map +1 -0
  460. package/build/signer/TweakedSigner.js +23 -6
  461. package/build/signer/TweakedSigner.js.map +1 -0
  462. package/build/transaction/ContractAddress.d.ts +2 -2
  463. package/build/transaction/ContractAddress.d.ts.map +1 -0
  464. package/build/transaction/ContractAddress.js +4 -8
  465. package/build/transaction/ContractAddress.js.map +1 -0
  466. package/build/transaction/TransactionFactory.d.ts +147 -9
  467. package/build/transaction/TransactionFactory.d.ts.map +1 -0
  468. package/build/transaction/TransactionFactory.js +145 -26
  469. package/build/transaction/TransactionFactory.js.map +1 -0
  470. package/build/transaction/browser/BrowserSignerBase.d.ts +12 -6
  471. package/build/transaction/browser/BrowserSignerBase.d.ts.map +1 -0
  472. package/build/transaction/browser/BrowserSignerBase.js +7 -0
  473. package/build/transaction/browser/BrowserSignerBase.js.map +1 -0
  474. package/build/transaction/browser/WalletNetworks.d.ts +1 -0
  475. package/build/transaction/browser/WalletNetworks.d.ts.map +1 -0
  476. package/build/transaction/browser/WalletNetworks.js +1 -0
  477. package/build/transaction/browser/WalletNetworks.js.map +1 -0
  478. package/build/transaction/browser/Web3Provider.d.ts +30 -3
  479. package/build/transaction/browser/Web3Provider.d.ts.map +1 -0
  480. package/build/transaction/browser/Web3Provider.js +1 -0
  481. package/build/transaction/browser/Web3Provider.js.map +1 -0
  482. package/build/transaction/browser/extensions/UnisatSigner.d.ts +11 -9
  483. package/build/transaction/browser/extensions/UnisatSigner.d.ts.map +1 -0
  484. package/build/transaction/browser/extensions/UnisatSigner.js +27 -17
  485. package/build/transaction/browser/extensions/UnisatSigner.js.map +1 -0
  486. package/build/transaction/browser/extensions/XverseSigner.d.ts +10 -8
  487. package/build/transaction/browser/extensions/XverseSigner.d.ts.map +1 -0
  488. package/build/transaction/browser/extensions/XverseSigner.js +25 -15
  489. package/build/transaction/browser/extensions/XverseSigner.js.map +1 -0
  490. package/build/transaction/browser/types/OPWallet.d.ts +12 -2
  491. package/build/transaction/browser/types/OPWallet.d.ts.map +1 -0
  492. package/build/transaction/browser/types/OPWallet.js +4 -0
  493. package/build/transaction/browser/types/OPWallet.js.map +1 -0
  494. package/build/transaction/browser/types/Unisat.d.ts +2 -1
  495. package/build/transaction/browser/types/Unisat.d.ts.map +1 -0
  496. package/build/transaction/browser/types/Unisat.js +2 -0
  497. package/build/transaction/browser/types/Unisat.js.map +1 -0
  498. package/build/transaction/browser/types/Xverse.d.ts +1 -0
  499. package/build/transaction/browser/types/Xverse.d.ts.map +1 -0
  500. package/build/transaction/browser/types/Xverse.js +1 -0
  501. package/build/transaction/browser/types/Xverse.js.map +1 -0
  502. package/build/transaction/builders/CancelTransaction.d.ts +31 -6
  503. package/build/transaction/builders/CancelTransaction.d.ts.map +1 -0
  504. package/build/transaction/builders/CancelTransaction.js +116 -33
  505. package/build/transaction/builders/CancelTransaction.js.map +1 -0
  506. package/build/transaction/builders/ChallengeSolutionTransaction.d.ts +1 -0
  507. package/build/transaction/builders/ChallengeSolutionTransaction.d.ts.map +1 -0
  508. package/build/transaction/builders/ChallengeSolutionTransaction.js +88 -0
  509. package/build/transaction/builders/ChallengeSolutionTransaction.js.map +1 -0
  510. package/build/transaction/builders/ConsolidatedInteractionTransaction.d.ts +140 -13
  511. package/build/transaction/builders/ConsolidatedInteractionTransaction.d.ts.map +1 -0
  512. package/build/transaction/builders/ConsolidatedInteractionTransaction.js +197 -20
  513. package/build/transaction/builders/ConsolidatedInteractionTransaction.js.map +1 -0
  514. package/build/transaction/builders/CustomScriptTransaction.d.ts +108 -8
  515. package/build/transaction/builders/CustomScriptTransaction.d.ts.map +1 -0
  516. package/build/transaction/builders/CustomScriptTransaction.js +176 -39
  517. package/build/transaction/builders/CustomScriptTransaction.js.map +1 -0
  518. package/build/transaction/builders/DeploymentTransaction.d.ts +120 -9
  519. package/build/transaction/builders/DeploymentTransaction.d.ts.map +1 -0
  520. package/build/transaction/builders/DeploymentTransaction.js +194 -51
  521. package/build/transaction/builders/DeploymentTransaction.js.map +1 -0
  522. package/build/transaction/builders/FundingTransaction.d.ts +6 -4
  523. package/build/transaction/builders/FundingTransaction.d.ts.map +1 -0
  524. package/build/transaction/builders/FundingTransaction.js +50 -9
  525. package/build/transaction/builders/FundingTransaction.js.map +1 -0
  526. package/build/transaction/builders/InteractionTransaction.d.ts +14 -5
  527. package/build/transaction/builders/InteractionTransaction.d.ts.map +1 -0
  528. package/build/transaction/builders/InteractionTransaction.js +18 -5
  529. package/build/transaction/builders/InteractionTransaction.js.map +1 -0
  530. package/build/transaction/builders/InteractionTransactionP2WDA.d.ts +58 -7
  531. package/build/transaction/builders/InteractionTransactionP2WDA.d.ts.map +1 -0
  532. package/build/transaction/builders/InteractionTransactionP2WDA.js +95 -18
  533. package/build/transaction/builders/InteractionTransactionP2WDA.js.map +1 -0
  534. package/build/transaction/builders/MultiSignTransaction.d.ts +126 -17
  535. package/build/transaction/builders/MultiSignTransaction.d.ts.map +1 -0
  536. package/build/transaction/builders/MultiSignTransaction.js +201 -76
  537. package/build/transaction/builders/MultiSignTransaction.js.map +1 -0
  538. package/build/transaction/builders/SharedInteractionTransaction.d.ts +106 -18
  539. package/build/transaction/builders/SharedInteractionTransaction.d.ts.map +1 -0
  540. package/build/transaction/builders/SharedInteractionTransaction.js +158 -40
  541. package/build/transaction/builders/SharedInteractionTransaction.js.map +1 -0
  542. package/build/transaction/builders/TransactionBuilder.d.ts +244 -20
  543. package/build/transaction/builders/TransactionBuilder.d.ts.map +1 -0
  544. package/build/transaction/builders/TransactionBuilder.js +371 -152
  545. package/build/transaction/builders/TransactionBuilder.js.map +1 -0
  546. package/build/transaction/enums/TransactionType.d.ts +1 -0
  547. package/build/transaction/enums/TransactionType.d.ts.map +1 -0
  548. package/build/transaction/enums/TransactionType.js +1 -0
  549. package/build/transaction/enums/TransactionType.js.map +1 -0
  550. package/build/transaction/interfaces/ICancelTransactionParameters.d.ts +3 -2
  551. package/build/transaction/interfaces/ICancelTransactionParameters.d.ts.map +1 -0
  552. package/build/transaction/interfaces/ICancelTransactionParameters.js +1 -0
  553. package/build/transaction/interfaces/ICancelTransactionParameters.js.map +1 -0
  554. package/build/transaction/interfaces/IConsolidatedTransactionParameters.d.ts +48 -5
  555. package/build/transaction/interfaces/IConsolidatedTransactionParameters.d.ts.map +1 -0
  556. package/build/transaction/interfaces/IConsolidatedTransactionParameters.js +1 -0
  557. package/build/transaction/interfaces/IConsolidatedTransactionParameters.js.map +1 -0
  558. package/build/transaction/interfaces/ICustomTransactionParameters.d.ts +7 -5
  559. package/build/transaction/interfaces/ICustomTransactionParameters.d.ts.map +1 -0
  560. package/build/transaction/interfaces/ICustomTransactionParameters.js +1 -0
  561. package/build/transaction/interfaces/ICustomTransactionParameters.js.map +1 -0
  562. package/build/transaction/interfaces/ITransactionParameters.d.ts +38 -15
  563. package/build/transaction/interfaces/ITransactionParameters.d.ts.map +1 -0
  564. package/build/transaction/interfaces/ITransactionParameters.js +1 -0
  565. package/build/transaction/interfaces/ITransactionParameters.js.map +1 -0
  566. package/build/transaction/interfaces/ITransactionResponses.d.ts +3 -2
  567. package/build/transaction/interfaces/ITransactionResponses.d.ts.map +1 -0
  568. package/build/transaction/interfaces/ITransactionResponses.js +1 -0
  569. package/build/transaction/interfaces/ITransactionResponses.js.map +1 -0
  570. package/build/transaction/interfaces/ITweakedTransactionData.d.ts +21 -8
  571. package/build/transaction/interfaces/ITweakedTransactionData.d.ts.map +1 -0
  572. package/build/transaction/interfaces/ITweakedTransactionData.js +1 -0
  573. package/build/transaction/interfaces/ITweakedTransactionData.js.map +1 -0
  574. package/build/transaction/interfaces/IWeb3ProviderTypes.d.ts +29 -3
  575. package/build/transaction/interfaces/IWeb3ProviderTypes.d.ts.map +1 -0
  576. package/build/transaction/interfaces/IWeb3ProviderTypes.js +2 -1
  577. package/build/transaction/interfaces/IWeb3ProviderTypes.js.map +1 -0
  578. package/build/transaction/interfaces/Tap.d.ts +4 -3
  579. package/build/transaction/interfaces/Tap.d.ts.map +1 -0
  580. package/build/transaction/interfaces/Tap.js +1 -0
  581. package/build/transaction/interfaces/Tap.js.map +1 -0
  582. package/build/transaction/mineable/IP2WSHAddress.d.ts +2 -1
  583. package/build/transaction/mineable/IP2WSHAddress.d.ts.map +1 -0
  584. package/build/transaction/mineable/IP2WSHAddress.js +1 -0
  585. package/build/transaction/mineable/IP2WSHAddress.js.map +1 -0
  586. package/build/transaction/mineable/TimelockGenerator.d.ts +13 -4
  587. package/build/transaction/mineable/TimelockGenerator.d.ts.map +1 -0
  588. package/build/transaction/mineable/TimelockGenerator.js +12 -3
  589. package/build/transaction/mineable/TimelockGenerator.js.map +1 -0
  590. package/build/transaction/offline/OfflineTransactionManager.d.ts +193 -12
  591. package/build/transaction/offline/OfflineTransactionManager.d.ts.map +1 -0
  592. package/build/transaction/offline/OfflineTransactionManager.js +192 -8
  593. package/build/transaction/offline/OfflineTransactionManager.js.map +1 -0
  594. package/build/transaction/offline/TransactionReconstructor.d.ts +56 -6
  595. package/build/transaction/offline/TransactionReconstructor.d.ts.map +1 -0
  596. package/build/transaction/offline/TransactionReconstructor.js +111 -75
  597. package/build/transaction/offline/TransactionReconstructor.js.map +1 -0
  598. package/build/transaction/offline/TransactionSerializer.d.ts +54 -3
  599. package/build/transaction/offline/TransactionSerializer.d.ts.map +1 -0
  600. package/build/transaction/offline/TransactionSerializer.js +206 -95
  601. package/build/transaction/offline/TransactionSerializer.js.map +1 -0
  602. package/build/transaction/offline/TransactionStateCapture.d.ts +66 -7
  603. package/build/transaction/offline/TransactionStateCapture.d.ts.map +1 -0
  604. package/build/transaction/offline/TransactionStateCapture.js +124 -60
  605. package/build/transaction/offline/TransactionStateCapture.js.map +1 -0
  606. package/build/transaction/offline/interfaces/ISerializableState.d.ts +72 -1
  607. package/build/transaction/offline/interfaces/ISerializableState.d.ts.map +1 -0
  608. package/build/transaction/offline/interfaces/ISerializableState.js +10 -1
  609. package/build/transaction/offline/interfaces/ISerializableState.js.map +1 -0
  610. package/build/transaction/offline/interfaces/ITypeSpecificData.d.ts +77 -1
  611. package/build/transaction/offline/interfaces/ITypeSpecificData.d.ts.map +1 -0
  612. package/build/transaction/offline/interfaces/ITypeSpecificData.js +19 -0
  613. package/build/transaction/offline/interfaces/ITypeSpecificData.js.map +1 -0
  614. package/build/transaction/psbt/PSBTTypes.d.ts +1 -0
  615. package/build/transaction/psbt/PSBTTypes.d.ts.map +1 -0
  616. package/build/transaction/psbt/PSBTTypes.js +1 -0
  617. package/build/transaction/psbt/PSBTTypes.js.map +1 -0
  618. package/build/transaction/shared/P2TR_MS.d.ts +11 -2
  619. package/build/transaction/shared/P2TR_MS.d.ts.map +1 -0
  620. package/build/transaction/shared/P2TR_MS.js +10 -0
  621. package/build/transaction/shared/P2TR_MS.js.map +1 -0
  622. package/build/transaction/shared/TweakedTransaction.d.ts +280 -38
  623. package/build/transaction/shared/TweakedTransaction.d.ts.map +1 -0
  624. package/build/transaction/shared/TweakedTransaction.js +576 -114
  625. package/build/transaction/shared/TweakedTransaction.js.map +1 -0
  626. package/build/transaction/utils/WitnessUtils.d.ts +7 -1
  627. package/build/transaction/utils/WitnessUtils.d.ts.map +1 -0
  628. package/build/transaction/utils/WitnessUtils.js +17 -3
  629. package/build/transaction/utils/WitnessUtils.js.map +1 -0
  630. package/build/tsconfig.build.tsbuildinfo +1 -1
  631. package/build/utils/BitcoinUtils.d.ts +19 -0
  632. package/build/utils/BitcoinUtils.d.ts.map +1 -0
  633. package/build/utils/BitcoinUtils.js +19 -0
  634. package/build/utils/BitcoinUtils.js.map +1 -0
  635. package/build/utils/BufferHelper.d.ts +2 -1
  636. package/build/utils/BufferHelper.d.ts.map +1 -0
  637. package/build/utils/BufferHelper.js +38 -32
  638. package/build/utils/BufferHelper.js.map +1 -0
  639. package/build/utils/StringToBuffer.d.ts +1 -0
  640. package/build/utils/StringToBuffer.d.ts.map +1 -0
  641. package/build/utils/StringToBuffer.js +1 -0
  642. package/build/utils/StringToBuffer.js.map +1 -0
  643. package/build/utils/lengths.d.ts +1 -0
  644. package/build/utils/lengths.d.ts.map +1 -0
  645. package/build/utils/lengths.js +1 -0
  646. package/build/utils/lengths.js.map +1 -0
  647. package/build/utils/types.d.ts +1 -0
  648. package/build/utils/types.d.ts.map +1 -0
  649. package/build/utils/types.js +2 -1
  650. package/build/utils/types.js.map +1 -0
  651. package/build/utxo/OPNetLimitedProvider.d.ts +39 -3
  652. package/build/utxo/OPNetLimitedProvider.d.ts.map +1 -0
  653. package/build/utxo/OPNetLimitedProvider.js +43 -5
  654. package/build/utxo/OPNetLimitedProvider.js.map +1 -0
  655. package/build/utxo/interfaces/BroadcastResponse.d.ts +1 -0
  656. package/build/utxo/interfaces/BroadcastResponse.d.ts.map +1 -0
  657. package/build/utxo/interfaces/BroadcastResponse.js +1 -0
  658. package/build/utxo/interfaces/BroadcastResponse.js.map +1 -0
  659. package/build/utxo/interfaces/IUTXO.d.ts +13 -7
  660. package/build/utxo/interfaces/IUTXO.d.ts.map +1 -0
  661. package/build/utxo/interfaces/IUTXO.js +1 -0
  662. package/build/utxo/interfaces/IUTXO.js.map +1 -0
  663. package/build/verification/TapscriptVerificator.d.ts +12 -10
  664. package/build/verification/TapscriptVerificator.d.ts.map +1 -0
  665. package/build/verification/TapscriptVerificator.js +28 -38
  666. package/build/verification/TapscriptVerificator.js.map +1 -0
  667. package/documentation/offline-transaction-signing.md +10 -8
  668. package/documentation/quantum-support/01-introduction.md +2 -2
  669. package/documentation/quantum-support/02-mnemonic-and-wallet.md +5 -3
  670. package/documentation/quantum-support/03-address-generation.md +6 -4
  671. package/documentation/quantum-support/04-message-signing.md +36 -43
  672. package/documentation/quantum-support/05-address-verification.md +13 -18
  673. package/documentation/quantum-support/README.md +1 -1
  674. package/documentation/transaction-building.md +9 -9
  675. package/eslint.config.js +0 -1
  676. package/package.json +16 -39
  677. package/src/_version.ts +1 -1
  678. package/src/abi/ABICoder.ts +131 -154
  679. package/src/abi/ABIDataTypes.ts +45 -0
  680. package/src/abi/AbiTypes.ts +183 -0
  681. package/src/abi/TupleUtils.ts +57 -0
  682. package/src/branded/Branded.ts +5 -0
  683. package/src/buffer/BinaryReader.ts +7 -7
  684. package/src/buffer/BinaryWriter.ts +29 -24
  685. package/src/bytecode/Compressor.ts +1 -1
  686. package/src/chain/ChainData.ts +36 -25
  687. package/src/consensus/ConsensusConfig.ts +1 -1
  688. package/src/consensus/IConsensusConfig.ts +0 -17
  689. package/src/consensus/metadata/RoswellConsensus.ts +1 -17
  690. package/src/crypto/crypto-browser.js +3 -4
  691. package/src/deterministic/AddressMap.ts +5 -1
  692. package/src/deterministic/AddressSet.ts +5 -1
  693. package/src/deterministic/CustomMap.ts +6 -2
  694. package/src/deterministic/DeterministicMap.ts +8 -4
  695. package/src/deterministic/DeterministicSet.ts +6 -2
  696. package/src/deterministic/ExtendedAddressMap.ts +9 -4
  697. package/src/deterministic/FastMap.ts +9 -5
  698. package/src/ecc/backend.ts +17 -0
  699. package/src/epoch/ChallengeSolution.ts +3 -3
  700. package/src/epoch/interfaces/IChallengeSolution.ts +13 -13
  701. package/src/epoch/validator/EpochValidator.ts +24 -43
  702. package/src/generators/AddressGenerator.ts +4 -7
  703. package/src/generators/Features.ts +3 -3
  704. package/src/generators/Generator.ts +42 -26
  705. package/src/generators/builders/CalldataGenerator.ts +26 -24
  706. package/src/generators/builders/CustomGenerator.ts +4 -4
  707. package/src/generators/builders/DeploymentGenerator.ts +25 -23
  708. package/src/generators/builders/HashCommitmentGenerator.ts +31 -31
  709. package/src/generators/builders/LegacyCalldataGenerator.ts +26 -24
  710. package/src/generators/builders/MultiSignGenerator.ts +12 -12
  711. package/src/generators/builders/P2WDAGenerator.ts +10 -10
  712. package/src/keypair/Address.ts +115 -72
  713. package/src/keypair/AddressVerificator.ts +14 -148
  714. package/src/keypair/EcKeyPair.ts +110 -111
  715. package/src/keypair/MessageSigner.ts +70 -150
  716. package/src/keypair/Wallet.ts +56 -241
  717. package/src/metadata/ContractBaseMetadata.ts +2 -2
  718. package/src/mnemonic/Mnemonic.ts +31 -222
  719. package/src/opnet.ts +15 -6
  720. package/src/p2wda/P2WDADetector.ts +23 -72
  721. package/src/polyfill/disposable.ts +29 -0
  722. package/src/signer/AddressRotation.ts +1 -1
  723. package/src/signer/IRotationSigner.ts +3 -3
  724. package/src/signer/ParallelSignerAdapter.ts +59 -0
  725. package/src/signer/SignerUtils.ts +4 -4
  726. package/src/signer/TweakedSigner.ts +26 -14
  727. package/src/transaction/ContractAddress.ts +3 -7
  728. package/src/transaction/TransactionFactory.ts +38 -53
  729. package/src/transaction/browser/BrowserSignerBase.ts +12 -6
  730. package/src/transaction/browser/Web3Provider.ts +3 -3
  731. package/src/transaction/browser/extensions/UnisatSigner.ts +52 -48
  732. package/src/transaction/browser/extensions/XverseSigner.ts +55 -38
  733. package/src/transaction/browser/types/OPWallet.ts +2 -2
  734. package/src/transaction/browser/types/Unisat.ts +1 -1
  735. package/src/transaction/builders/CancelTransaction.ts +59 -24
  736. package/src/transaction/builders/ChallengeSolutionTransaction.ts +3 -3
  737. package/src/transaction/builders/ConsolidatedInteractionTransaction.ts +39 -34
  738. package/src/transaction/builders/CustomScriptTransaction.ts +79 -56
  739. package/src/transaction/builders/DeploymentTransaction.ts +82 -63
  740. package/src/transaction/builders/FundingTransaction.ts +53 -12
  741. package/src/transaction/builders/InteractionTransaction.ts +10 -10
  742. package/src/transaction/builders/InteractionTransactionP2WDA.ts +38 -40
  743. package/src/transaction/builders/MultiSignTransaction.ts +68 -61
  744. package/src/transaction/builders/SharedInteractionTransaction.ts +81 -57
  745. package/src/transaction/builders/TransactionBuilder.ts +159 -255
  746. package/src/transaction/interfaces/ICancelTransactionParameters.ts +2 -2
  747. package/src/transaction/interfaces/IConsolidatedTransactionParameters.ts +5 -5
  748. package/src/transaction/interfaces/ICustomTransactionParameters.ts +5 -5
  749. package/src/transaction/interfaces/ITransactionParameters.ts +28 -15
  750. package/src/transaction/interfaces/ITransactionResponses.ts +2 -2
  751. package/src/transaction/interfaces/ITweakedTransactionData.ts +17 -8
  752. package/src/transaction/interfaces/IWeb3ProviderTypes.ts +3 -3
  753. package/src/transaction/interfaces/Tap.ts +3 -3
  754. package/src/transaction/mineable/IP2WSHAddress.ts +1 -1
  755. package/src/transaction/mineable/TimelockGenerator.ts +19 -12
  756. package/src/transaction/offline/OfflineTransactionManager.ts +22 -23
  757. package/src/transaction/offline/TransactionReconstructor.ts +83 -91
  758. package/src/transaction/offline/TransactionSerializer.ts +151 -101
  759. package/src/transaction/offline/TransactionStateCapture.ts +83 -79
  760. package/src/transaction/offline/interfaces/ISerializableState.ts +1 -1
  761. package/src/transaction/offline/interfaces/ITypeSpecificData.ts +1 -1
  762. package/src/transaction/shared/P2TR_MS.ts +4 -4
  763. package/src/transaction/shared/TweakedTransaction.ts +318 -125
  764. package/src/transaction/utils/WitnessUtils.ts +18 -9
  765. package/src/utils/BufferHelper.ts +39 -37
  766. package/src/utxo/OPNetLimitedProvider.ts +9 -9
  767. package/src/utxo/interfaces/IUTXO.ts +7 -7
  768. package/src/verification/TapscriptVerificator.ts +73 -86
  769. package/test/add-refund-output.test.ts +535 -0
  770. package/test/address-rotation.test.ts +24 -24
  771. package/test/address.test.ts +12 -12
  772. package/test/addressmap.test.ts +30 -30
  773. package/test/binary-reader-writer.test.ts +8 -8
  774. package/test/browser/offline-transaction.test.ts +2206 -0
  775. package/test/browser/parallel-signing.test.ts +316 -0
  776. package/test/browser/setup.ts +11 -0
  777. package/test/browser/transaction-signing.test.ts +416 -0
  778. package/test/buffer-helper.test.ts +287 -0
  779. package/test/derivePath.test.ts +4 -3
  780. package/test/disposable.test.ts +279 -0
  781. package/test/fastmap-setall.test.ts +1 -1
  782. package/test/fastmap.test.ts +3 -3
  783. package/test/messagesigner-mldsa.test.ts +3 -3
  784. package/test/messagesigner-schnorr.test.ts +9 -9
  785. package/test/offline-transaction.test.ts +461 -288
  786. package/test/old/FastBigIntMap.ts +3 -3
  787. package/test/oldfastmap.test.ts +6 -6
  788. package/test/transaction-builders.test.ts +482 -0
  789. package/tsconfig.base.json +34 -18
  790. package/tsconfig.browser.json +15 -0
  791. package/tsconfig.json +3 -8
  792. package/vite.config.browser.ts +4 -5
  793. package/vitest.config.browser.ts +68 -0
  794. package/vitest.config.ts +1 -1
  795. package/browser/valibot.js +0 -4948
  796. package/tsconfig.webpack.json +0 -18
@@ -1,11 +1,16 @@
1
- import { ECPairInterface } from 'ecpair';
2
- import * as ecc from '@bitcoinerlab/secp256k1';
3
- import { crypto, Network, toXOnly } from '@btc-vision/bitcoin';
1
+ import {
2
+ type MessageHash,
3
+ type PublicKey,
4
+ type SchnorrSignature,
5
+ type UniversalSigner,
6
+ } from '@btc-vision/ecpair';
7
+ import { backend } from '../ecc/backend.js';
8
+ import { crypto, fromHex, type Network, toHex, toXOnly } from '@btc-vision/bitcoin';
4
9
  import { TweakedSigner } from '../signer/TweakedSigner.js';
5
10
  import { EcKeyPair } from './EcKeyPair.js';
6
- import { MLDSASecurityLevel, QuantumBIP32Interface } from '@btc-vision/bip32';
7
- import { isOPWallet, OPWallet } from '../transaction/browser/types/OPWallet.js';
8
- import { MLDSASignature } from '../transaction/interfaces/IWeb3ProviderTypes.js';
11
+ import { MLDSASecurityLevel, type QuantumBIP32Interface } from '@btc-vision/bip32';
12
+ import { isOPWallet, type OPWallet } from '../transaction/browser/types/OPWallet.js';
13
+ import type { MLDSASignature } from '../transaction/interfaces/IWeb3ProviderTypes.js';
9
14
 
10
15
  export interface SignedMessage {
11
16
  readonly signature: Uint8Array;
@@ -24,18 +29,12 @@ interface WindowWithOPWallet {
24
29
  }
25
30
 
26
31
  class MessageSignerBase {
27
- public sha256(message: Buffer | Uint8Array): Buffer {
28
- return crypto.sha256(Buffer.from(message));
32
+ public sha256(message: Uint8Array): Uint8Array {
33
+ return crypto.sha256(message);
29
34
  }
30
35
 
31
- /**
32
- * Attempts to sign a message using OP_WALLET if available in browser environment.
33
- * Returns null if not in browser or OP_WALLET is not available.
34
- * @param {Uint8Array | Buffer | string} message - The message to sign.
35
- * @returns {Promise<SignedMessage | null>} The Schnorr signature or null if OP_WALLET unavailable.
36
- */
37
36
  public async trySignSchnorrWithOPWallet(
38
- message: Uint8Array | Buffer | string,
37
+ message: Uint8Array | string,
39
38
  ): Promise<SignedMessage | null> {
40
39
  const wallet = this.getOPWallet();
41
40
  if (!wallet) {
@@ -43,26 +42,20 @@ class MessageSignerBase {
43
42
  }
44
43
 
45
44
  const messageBuffer =
46
- typeof message === 'string' ? Buffer.from(message, 'utf-8') : Buffer.from(message);
45
+ typeof message === 'string' ? new TextEncoder().encode(message) : message;
47
46
 
48
47
  const hashedMessage = this.sha256(messageBuffer);
49
- const messageHex = hashedMessage.toString('hex');
48
+ const messageHex = toHex(hashedMessage);
50
49
 
51
50
  const signatureHex = await wallet.web3.signSchnorr(messageHex);
52
51
  return {
53
- signature: Buffer.from(signatureHex, 'hex'),
52
+ signature: fromHex(signatureHex),
54
53
  message: hashedMessage,
55
54
  };
56
55
  }
57
56
 
58
- /**
59
- * Attempts to sign a message using OP_WALLET ML-DSA if available.
60
- * Returns null if not in browser or OP_WALLET is not available.
61
- * @param {Uint8Array | Buffer | string} message - The message to sign.
62
- * @returns {Promise<MLDSASignedMessage | null>} The ML-DSA signature or null if OP_WALLET unavailable.
63
- */
64
57
  public async trySignMLDSAWithOPWallet(
65
- message: Uint8Array | Buffer | string,
58
+ message: Uint8Array | string,
66
59
  ): Promise<MLDSASignedMessage | null> {
67
60
  const wallet = this.getOPWallet();
68
61
  if (!wallet) {
@@ -70,30 +63,23 @@ class MessageSignerBase {
70
63
  }
71
64
 
72
65
  const messageBuffer =
73
- typeof message === 'string' ? Buffer.from(message, 'utf-8') : Buffer.from(message);
66
+ typeof message === 'string' ? new TextEncoder().encode(message) : message;
74
67
 
75
68
  const hashedMessage = this.sha256(messageBuffer);
76
- const messageHex = hashedMessage.toString('hex');
69
+ const messageHex = toHex(hashedMessage);
77
70
 
78
71
  const result: MLDSASignature = await wallet.web3.signMLDSAMessage(messageHex);
79
72
  return {
80
- signature: Buffer.from(result.signature, 'hex'),
73
+ signature: fromHex(result.signature),
81
74
  message: hashedMessage,
82
- publicKey: Buffer.from(result.publicKey, 'hex'),
75
+ publicKey: fromHex(result.publicKey),
83
76
  securityLevel: result.securityLevel,
84
77
  };
85
78
  }
86
79
 
87
- /**
88
- * Signs a message using Schnorr, automatically using OP_WALLET if available and no keypair provided.
89
- * @param {Uint8Array | Buffer | string} message - The message to sign.
90
- * @param {ECPairInterface} [keypair] - Optional keypair for local signing.
91
- * @returns {Promise<SignedMessage>} The Schnorr signature.
92
- * @throws {Error} If no keypair provided and OP_WALLET is not available.
93
- */
94
80
  public async signMessageAuto(
95
- message: Uint8Array | Buffer | string,
96
- keypair?: ECPairInterface,
81
+ message: Uint8Array | string,
82
+ keypair?: UniversalSigner,
97
83
  ): Promise<SignedMessage> {
98
84
  if (!keypair) {
99
85
  const walletResult = await this.trySignSchnorrWithOPWallet(message);
@@ -106,19 +92,9 @@ class MessageSignerBase {
106
92
  return this.signMessage(keypair, message);
107
93
  }
108
94
 
109
- /**
110
- * Signs a message with tweaking, automatically using OP_WALLET if available.
111
- * Note: OP_WALLET signSchnorr may already return a tweaked signature depending on wallet implementation.
112
- * @param {Uint8Array | Buffer | string} message - The message to sign.
113
- * @param {ECPairInterface} [keypair] - Optional keypair for local signing.
114
- * @param {Network} [network] - Network required when signing with a local keypair.
115
- * @returns {Promise<SignedMessage>} The Schnorr signature.
116
- * @throws {Error} If no keypair provided and OP_WALLET is not available.
117
- * @throws {Error} If keypair provided but network is missing.
118
- */
119
95
  public async tweakAndSignMessageAuto(
120
- message: Uint8Array | Buffer | string,
121
- keypair?: ECPairInterface,
96
+ message: Uint8Array | string,
97
+ keypair?: UniversalSigner,
122
98
  network?: Network,
123
99
  ): Promise<SignedMessage> {
124
100
  if (!keypair) {
@@ -136,15 +112,8 @@ class MessageSignerBase {
136
112
  return this.tweakAndSignMessage(keypair, message, network);
137
113
  }
138
114
 
139
- /**
140
- * Signs an ML-DSA message, automatically using OP_WALLET if available.
141
- * @param {Uint8Array | Buffer | string} message - The message to sign.
142
- * @param {QuantumBIP32Interface} [mldsaKeypair] - Optional ML-DSA keypair for local signing.
143
- * @returns {Promise<MLDSASignedMessage>} The ML-DSA signature with metadata.
144
- * @throws {Error} If no keypair provided and OP_WALLET is not available.
145
- */
146
115
  public async signMLDSAMessageAuto(
147
- message: Uint8Array | Buffer | string,
116
+ message: Uint8Array | string,
148
117
  mldsaKeypair?: QuantumBIP32Interface,
149
118
  ): Promise<MLDSASignedMessage> {
150
119
  if (!mldsaKeypair) {
@@ -158,15 +127,8 @@ class MessageSignerBase {
158
127
  return this.signMLDSAMessage(mldsaKeypair, message);
159
128
  }
160
129
 
161
- /**
162
- * Verifies an ML-DSA signature using OP_WALLET if available.
163
- * Returns null if OP_WALLET is not available.
164
- * @param {Uint8Array | Buffer | string} message - The message to verify.
165
- * @param {MLDSASignedMessage} signature - The ML-DSA signature to verify.
166
- * @returns {Promise<boolean | null>} True if valid, false if invalid, null if OP_WALLET unavailable.
167
- */
168
130
  public async verifyMLDSAWithOPWallet(
169
- message: Uint8Array | Buffer | string,
131
+ message: Uint8Array | string,
170
132
  signature: MLDSASignedMessage,
171
133
  ): Promise<boolean | null> {
172
134
  const wallet = this.getOPWallet();
@@ -175,64 +137,42 @@ class MessageSignerBase {
175
137
  }
176
138
 
177
139
  const messageBuffer =
178
- typeof message === 'string' ? Buffer.from(message, 'utf-8') : Buffer.from(message);
140
+ typeof message === 'string' ? new TextEncoder().encode(message) : message;
179
141
 
180
142
  const hashedMessage = this.sha256(messageBuffer);
181
143
 
182
144
  const mldsaSignature: MLDSASignature = {
183
- signature: Buffer.from(signature.signature).toString('hex'),
184
- publicKey: Buffer.from(signature.publicKey).toString('hex'),
145
+ signature: toHex(signature.signature),
146
+ publicKey: toHex(signature.publicKey),
185
147
  securityLevel: signature.securityLevel,
186
- messageHash: hashedMessage.toString('hex'),
148
+ messageHash: toHex(hashedMessage),
187
149
  };
188
150
 
189
- return wallet.web3.verifyMLDSASignature(hashedMessage.toString('hex'), mldsaSignature);
151
+ return wallet.web3.verifyMLDSASignature(toHex(hashedMessage), mldsaSignature);
190
152
  }
191
153
 
192
- /**
193
- * Gets the ML-DSA public key from OP_WALLET if available.
194
- * Returns null if OP_WALLET is not available.
195
- * @returns {Promise<Buffer | null>} The ML-DSA public key or null if OP_WALLET unavailable.
196
- */
197
- public async getMLDSAPublicKeyFromOPWallet(): Promise<Buffer | null> {
154
+ public async getMLDSAPublicKeyFromOPWallet(): Promise<Uint8Array | null> {
198
155
  const wallet = this.getOPWallet();
199
156
  if (!wallet) {
200
157
  return null;
201
158
  }
202
159
 
203
160
  const publicKeyHex = await wallet.web3.getMLDSAPublicKey();
204
- return Buffer.from(publicKeyHex, 'hex');
161
+ return fromHex(publicKeyHex);
205
162
  }
206
163
 
207
- /**
208
- * Tweak the keypair and sign a message.
209
- * @param {ECPairInterface} keypair - The keypair to sign the message with. Must contain a private key.
210
- * @param {Uint8Array | Buffer | string} message - The message to sign.
211
- * @param {Network} network - The network to sign the message for.
212
- * @returns {SignedMessage} The Schnorr signature.
213
- */
214
164
  public tweakAndSignMessage(
215
- keypair: ECPairInterface,
216
- message: Uint8Array | Buffer | string,
165
+ keypair: UniversalSigner,
166
+ message: Uint8Array | string,
217
167
  network: Network,
218
168
  ): SignedMessage {
219
169
  const tweaked = TweakedSigner.tweakSigner(keypair, { network });
220
170
  return this.signMessage(tweaked, message);
221
171
  }
222
172
 
223
- /**
224
- * Signs a message using the provided keypair.
225
- * @param {ECPairInterface} keypair - The keypair to sign the message with. Must contain a private key.
226
- * @param {Uint8Array | Buffer | string} message - The message to sign.
227
- * @returns {SignedMessage} The Schnorr signature.
228
- * @throws {Error} If the private key is missing or invalid.
229
- */
230
- public signMessage(
231
- keypair: ECPairInterface,
232
- message: Uint8Array | Buffer | string,
233
- ): SignedMessage {
173
+ public signMessage(keypair: UniversalSigner, message: Uint8Array | string): SignedMessage {
234
174
  if (typeof message === 'string') {
235
- message = Buffer.from(message, 'utf-8');
175
+ message = new TextEncoder().encode(message);
236
176
  }
237
177
 
238
178
  if (!keypair.privateKey) {
@@ -240,27 +180,24 @@ class MessageSignerBase {
240
180
  }
241
181
 
242
182
  const hashedMessage = this.sha256(message);
183
+
184
+ if (!backend.signSchnorr) {
185
+ throw new Error('backend.signSchnorr is not available.');
186
+ }
187
+
243
188
  return {
244
- signature: ecc.signSchnorr(hashedMessage, keypair.privateKey),
189
+ signature: backend.signSchnorr(hashedMessage as MessageHash, keypair.privateKey),
245
190
  message: hashedMessage,
246
191
  };
247
192
  }
248
193
 
249
- /**
250
- * Verifies a Schnorr signature.
251
- * @param {Uint8Array | Buffer} publicKey - The public key as a Uint8Array or Buffer.
252
- * @param {Uint8Array | Buffer | string} message - The message to verify.
253
- * @param {Uint8Array | Buffer} signature - The signature to verify.
254
- * @returns {boolean} True if the signature is valid, false otherwise.
255
- * @throws {Error} If the signature length is invalid.
256
- */
257
194
  public verifySignature(
258
- publicKey: Uint8Array | Buffer,
259
- message: Uint8Array | Buffer | string,
260
- signature: Uint8Array | Buffer,
195
+ publicKey: Uint8Array,
196
+ message: Uint8Array | string,
197
+ signature: Uint8Array,
261
198
  ): boolean {
262
199
  if (typeof message === 'string') {
263
- message = Buffer.from(message, 'utf-8');
200
+ message = new TextEncoder().encode(message);
264
201
  }
265
202
 
266
203
  if (signature.length !== 64) {
@@ -268,39 +205,33 @@ class MessageSignerBase {
268
205
  }
269
206
 
270
207
  const hashedMessage = this.sha256(message);
271
- return ecc.verifySchnorr(hashedMessage, toXOnly(Buffer.from(publicKey)), signature);
208
+
209
+ if (!backend.verifySchnorr) {
210
+ throw new Error('backend.verifySchnorr is not available.');
211
+ }
212
+
213
+ return backend.verifySchnorr(
214
+ hashedMessage as MessageHash,
215
+ toXOnly(publicKey as PublicKey),
216
+ signature as SchnorrSignature,
217
+ );
272
218
  }
273
219
 
274
- /**
275
- * Tweak the public key and verify a signature.
276
- * @param {Uint8Array | Buffer} publicKey - The public key as a Uint8Array or Buffer.
277
- * @param {Uint8Array | Buffer | string} message - The message to verify.
278
- * @param {Uint8Array | Buffer} signature - The signature to verify.
279
- * @returns {boolean} True if the signature is valid, false otherwise.
280
- * @throws {Error} If the signature length is invalid.
281
- */
282
220
  public tweakAndVerifySignature(
283
- publicKey: Uint8Array | Buffer,
284
- message: Uint8Array | Buffer | string,
285
- signature: Uint8Array | Buffer,
221
+ publicKey: Uint8Array,
222
+ message: Uint8Array | string,
223
+ signature: Uint8Array,
286
224
  ): boolean {
287
- const tweakedPublicKey = EcKeyPair.tweakPublicKey(Buffer.from(publicKey));
225
+ const tweakedPublicKey = EcKeyPair.tweakPublicKey(publicKey);
288
226
  return this.verifySignature(tweakedPublicKey, message, signature);
289
227
  }
290
228
 
291
- /**
292
- * Signs a message using ML-DSA signature scheme.
293
- * @param {QuantumBIP32Interface} mldsaKeypair - The ML-DSA keypair to sign with. Must contain a private key.
294
- * @param {Uint8Array | Buffer | string} message - The message to sign.
295
- * @returns {MLDSASignedMessage} The ML-DSA signature with metadata.
296
- * @throws {Error} If the private key is missing.
297
- */
298
229
  public signMLDSAMessage(
299
230
  mldsaKeypair: QuantumBIP32Interface,
300
- message: Uint8Array | Buffer | string,
231
+ message: Uint8Array | string,
301
232
  ): MLDSASignedMessage {
302
233
  if (typeof message === 'string') {
303
- message = Buffer.from(message, 'utf-8');
234
+ message = new TextEncoder().encode(message);
304
235
  }
305
236
 
306
237
  if (!mldsaKeypair.privateKey) {
@@ -311,37 +242,26 @@ class MessageSignerBase {
311
242
  const signature = mldsaKeypair.sign(hashedMessage);
312
243
 
313
244
  return {
314
- signature: Buffer.from(signature),
245
+ signature: new Uint8Array(signature),
315
246
  message: hashedMessage,
316
- publicKey: Buffer.from(mldsaKeypair.publicKey),
247
+ publicKey: new Uint8Array(mldsaKeypair.publicKey),
317
248
  securityLevel: mldsaKeypair.securityLevel,
318
249
  };
319
250
  }
320
251
 
321
- /**
322
- * Verifies an ML-DSA signature using the provided keypair.
323
- * @param {QuantumBIP32Interface} mldsaKeypair - The ML-DSA keypair with the public key.
324
- * @param {Uint8Array | Buffer | string} message - The message to verify.
325
- * @param {Uint8Array | Buffer} signature - The ML-DSA signature to verify.
326
- * @returns {boolean} True if the signature is valid, false otherwise.
327
- */
328
252
  public verifyMLDSASignature(
329
253
  mldsaKeypair: QuantumBIP32Interface,
330
- message: Uint8Array | Buffer | string,
331
- signature: Uint8Array | Buffer,
254
+ message: Uint8Array | string,
255
+ signature: Uint8Array,
332
256
  ): boolean {
333
257
  if (typeof message === 'string') {
334
- message = Buffer.from(message, 'utf-8');
258
+ message = new TextEncoder().encode(message);
335
259
  }
336
260
 
337
261
  const hashedMessage = this.sha256(message);
338
262
  return mldsaKeypair.verify(hashedMessage, signature);
339
263
  }
340
264
 
341
- /**
342
- * Checks if OP_WALLET is available in the current environment.
343
- * @returns {boolean} True if OP_WALLET is available, false otherwise.
344
- */
345
265
  public isOPWalletAvailable(): boolean {
346
266
  return this.getOPWallet() !== null;
347
267
  }