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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (764) hide show
  1. package/browser/_version.d.ts +1 -0
  2. package/browser/_version.d.ts.map +1 -0
  3. package/browser/abi/ABICoder.d.ts +1 -1
  4. package/browser/abi/ABICoder.d.ts.map +1 -0
  5. package/browser/branded/Branded.d.ts +4 -0
  6. package/browser/branded/Branded.d.ts.map +1 -0
  7. package/browser/btc-vision-bitcoin.js +11999 -2647
  8. package/browser/buffer/BinaryReader.d.ts +120 -1
  9. package/browser/buffer/BinaryReader.d.ts.map +1 -0
  10. package/browser/buffer/BinaryWriter.d.ts +51 -1
  11. package/browser/buffer/BinaryWriter.d.ts.map +1 -0
  12. package/browser/bytecode/Compressor.d.ts +12 -0
  13. package/browser/bytecode/Compressor.d.ts.map +1 -0
  14. package/browser/chain/ChainData.d.ts +2 -2
  15. package/browser/chain/ChainData.d.ts.map +1 -0
  16. package/browser/consensus/Consensus.d.ts +11 -3
  17. package/browser/consensus/Consensus.d.ts.map +1 -0
  18. package/browser/consensus/ConsensusConfig.d.ts +1 -0
  19. package/browser/consensus/ConsensusConfig.d.ts.map +1 -0
  20. package/browser/consensus/IConsensusConfig.d.ts +1 -0
  21. package/browser/consensus/IConsensusConfig.d.ts.map +1 -0
  22. package/browser/consensus/metadata/RoswellConsensus.d.ts +1 -0
  23. package/browser/consensus/metadata/RoswellConsensus.d.ts.map +1 -0
  24. package/browser/crypto/crypto.d.ts +1 -0
  25. package/browser/crypto/crypto.d.ts.map +1 -0
  26. package/browser/deterministic/AddressMap.d.ts +6 -1
  27. package/browser/deterministic/AddressMap.d.ts.map +1 -0
  28. package/browser/deterministic/AddressSet.d.ts +3 -1
  29. package/browser/deterministic/AddressSet.d.ts.map +1 -0
  30. package/browser/deterministic/CustomMap.d.ts +3 -1
  31. package/browser/deterministic/CustomMap.d.ts.map +1 -0
  32. package/browser/deterministic/DeterministicMap.d.ts +3 -1
  33. package/browser/deterministic/DeterministicMap.d.ts.map +1 -0
  34. package/browser/deterministic/DeterministicSet.d.ts +3 -1
  35. package/browser/deterministic/DeterministicSet.d.ts.map +1 -0
  36. package/browser/deterministic/ExtendedAddressMap.d.ts +7 -1
  37. package/browser/deterministic/ExtendedAddressMap.d.ts.map +1 -0
  38. package/browser/deterministic/FastMap.d.ts +7 -1
  39. package/browser/deterministic/FastMap.d.ts.map +1 -0
  40. package/browser/ecc/backend.d.ts +13 -0
  41. package/browser/ecc/backend.d.ts.map +1 -0
  42. package/browser/epoch/ChallengeSolution.d.ts +33 -1
  43. package/browser/epoch/ChallengeSolution.d.ts.map +1 -0
  44. package/browser/epoch/interfaces/IChallengeSolution.d.ts +14 -13
  45. package/browser/epoch/interfaces/IChallengeSolution.d.ts.map +1 -0
  46. package/browser/epoch/validator/EpochValidator.d.ts +37 -7
  47. package/browser/epoch/validator/EpochValidator.d.ts.map +1 -0
  48. package/browser/event/NetEvent.d.ts +1 -0
  49. package/browser/event/NetEvent.d.ts.map +1 -0
  50. package/browser/generators/AddressGenerator.d.ts +4 -3
  51. package/browser/generators/AddressGenerator.d.ts.map +1 -0
  52. package/browser/generators/Features.d.ts +1 -0
  53. package/browser/generators/Features.d.ts.map +1 -0
  54. package/browser/generators/Generator.d.ts +46 -10
  55. package/browser/generators/Generator.d.ts.map +1 -0
  56. package/browser/generators/MLDSAData.d.ts +1 -0
  57. package/browser/generators/MLDSAData.d.ts.map +1 -0
  58. package/browser/generators/builders/CalldataGenerator.d.ts +25 -4
  59. package/browser/generators/builders/CalldataGenerator.d.ts.map +1 -0
  60. package/browser/generators/builders/CustomGenerator.d.ts +13 -3
  61. package/browser/generators/builders/CustomGenerator.d.ts.map +1 -0
  62. package/browser/generators/builders/DeploymentGenerator.d.ts +15 -4
  63. package/browser/generators/builders/DeploymentGenerator.d.ts.map +1 -0
  64. package/browser/generators/builders/HashCommitmentGenerator.d.ts +164 -12
  65. package/browser/generators/builders/HashCommitmentGenerator.d.ts.map +1 -0
  66. package/browser/generators/builders/LegacyCalldataGenerator.d.ts +26 -4
  67. package/browser/generators/builders/LegacyCalldataGenerator.d.ts.map +1 -0
  68. package/browser/generators/builders/MultiSignGenerator.d.ts +6 -1
  69. package/browser/generators/builders/MultiSignGenerator.d.ts.map +1 -0
  70. package/browser/generators/builders/P2WDAGenerator.d.ts +42 -4
  71. package/browser/generators/builders/P2WDAGenerator.d.ts.map +1 -0
  72. package/browser/index.d.ts +1 -0
  73. package/browser/index.d.ts.map +1 -0
  74. package/browser/index.js +3583 -3184
  75. package/browser/keypair/Address.d.ts +283 -13
  76. package/browser/keypair/Address.d.ts.map +1 -0
  77. package/browser/keypair/AddressVerificator.d.ts +7 -6
  78. package/browser/keypair/AddressVerificator.d.ts.map +1 -0
  79. package/browser/keypair/EcKeyPair.d.ts +183 -21
  80. package/browser/keypair/EcKeyPair.d.ts.map +1 -0
  81. package/browser/keypair/MessageSigner.d.ts +17 -16
  82. package/browser/keypair/MessageSigner.d.ts.map +1 -0
  83. package/browser/keypair/Secp256k1PointDeriver.d.ts +55 -0
  84. package/browser/keypair/Secp256k1PointDeriver.d.ts.map +1 -0
  85. package/browser/keypair/Wallet.d.ts +27 -13
  86. package/browser/keypair/Wallet.d.ts.map +1 -0
  87. package/browser/keypair/interfaces/IWallet.d.ts +19 -0
  88. package/browser/keypair/interfaces/IWallet.d.ts.map +1 -0
  89. package/browser/metadata/ContractBaseMetadata.d.ts +10 -2
  90. package/browser/metadata/ContractBaseMetadata.d.ts.map +1 -0
  91. package/browser/mnemonic/BIPStandard.d.ts +59 -0
  92. package/browser/mnemonic/BIPStandard.d.ts.map +1 -0
  93. package/browser/mnemonic/Mnemonic.d.ts +15 -3
  94. package/browser/mnemonic/Mnemonic.d.ts.map +1 -0
  95. package/browser/mnemonic/MnemonicStrength.d.ts +6 -0
  96. package/browser/mnemonic/MnemonicStrength.d.ts.map +1 -0
  97. package/browser/network/ChainId.d.ts +1 -0
  98. package/browser/network/ChainId.d.ts.map +1 -0
  99. package/browser/noble-curves.js +844 -2746
  100. package/browser/noble-hashes.js +1338 -2067
  101. package/browser/opnet.d.ts +22 -1
  102. package/browser/opnet.d.ts.map +1 -0
  103. package/browser/p2wda/P2WDADetector.d.ts +36 -9
  104. package/browser/p2wda/P2WDADetector.d.ts.map +1 -0
  105. package/browser/polyfill/disposable.d.ts +16 -0
  106. package/browser/polyfill/disposable.d.ts.map +1 -0
  107. package/browser/signer/AddressRotation.d.ts +36 -0
  108. package/browser/signer/AddressRotation.d.ts.map +1 -0
  109. package/browser/signer/IRotationSigner.d.ts +27 -3
  110. package/browser/signer/IRotationSigner.d.ts.map +1 -0
  111. package/browser/signer/ParallelSignerAdapter.d.ts +14 -0
  112. package/browser/signer/ParallelSignerAdapter.d.ts.map +1 -0
  113. package/browser/signer/SignerUtils.d.ts +11 -4
  114. package/browser/signer/SignerUtils.d.ts.map +1 -0
  115. package/browser/signer/TweakedSigner.d.ts +28 -4
  116. package/browser/signer/TweakedSigner.d.ts.map +1 -0
  117. package/browser/transaction/ContractAddress.d.ts +2 -2
  118. package/browser/transaction/ContractAddress.d.ts.map +1 -0
  119. package/browser/transaction/TransactionFactory.d.ts +140 -2
  120. package/browser/transaction/TransactionFactory.d.ts.map +1 -0
  121. package/browser/transaction/browser/BrowserSignerBase.d.ts +12 -6
  122. package/browser/transaction/browser/BrowserSignerBase.d.ts.map +1 -0
  123. package/browser/transaction/browser/WalletNetworks.d.ts +1 -0
  124. package/browser/transaction/browser/WalletNetworks.d.ts.map +1 -0
  125. package/browser/transaction/browser/Web3Provider.d.ts +27 -0
  126. package/browser/transaction/browser/Web3Provider.d.ts.map +1 -0
  127. package/browser/transaction/browser/extensions/UnisatSigner.d.ts +9 -7
  128. package/browser/transaction/browser/extensions/UnisatSigner.d.ts.map +1 -0
  129. package/browser/transaction/browser/extensions/XverseSigner.d.ts +9 -7
  130. package/browser/transaction/browser/extensions/XverseSigner.d.ts.map +1 -0
  131. package/browser/transaction/browser/types/OPWallet.d.ts +10 -0
  132. package/browser/transaction/browser/types/OPWallet.d.ts.map +1 -0
  133. package/browser/transaction/browser/types/Unisat.d.ts +1 -0
  134. package/browser/transaction/browser/types/Unisat.d.ts.map +1 -0
  135. package/browser/transaction/browser/types/Xverse.d.ts +1 -0
  136. package/browser/transaction/browser/types/Xverse.d.ts.map +1 -0
  137. package/browser/transaction/builders/CancelTransaction.d.ts +29 -4
  138. package/browser/transaction/builders/CancelTransaction.d.ts.map +1 -0
  139. package/browser/transaction/builders/ChallengeSolutionTransaction.d.ts +1 -0
  140. package/browser/transaction/builders/ChallengeSolutionTransaction.d.ts.map +1 -0
  141. package/browser/transaction/builders/ConsolidatedInteractionTransaction.d.ts +137 -10
  142. package/browser/transaction/builders/ConsolidatedInteractionTransaction.d.ts.map +1 -0
  143. package/browser/transaction/builders/CustomScriptTransaction.d.ts +106 -6
  144. package/browser/transaction/builders/CustomScriptTransaction.d.ts.map +1 -0
  145. package/browser/transaction/builders/DeploymentTransaction.d.ts +116 -5
  146. package/browser/transaction/builders/DeploymentTransaction.d.ts.map +1 -0
  147. package/browser/transaction/builders/FundingTransaction.d.ts +4 -3
  148. package/browser/transaction/builders/FundingTransaction.d.ts.map +1 -0
  149. package/browser/transaction/builders/InteractionTransaction.d.ts +12 -3
  150. package/browser/transaction/builders/InteractionTransaction.d.ts.map +1 -0
  151. package/browser/transaction/builders/InteractionTransactionP2WDA.d.ts +56 -5
  152. package/browser/transaction/builders/InteractionTransactionP2WDA.d.ts.map +1 -0
  153. package/browser/transaction/builders/MultiSignTransaction.d.ts +125 -16
  154. package/browser/transaction/builders/MultiSignTransaction.d.ts.map +1 -0
  155. package/browser/transaction/builders/SharedInteractionTransaction.d.ts +103 -15
  156. package/browser/transaction/builders/SharedInteractionTransaction.d.ts.map +1 -0
  157. package/browser/transaction/builders/TransactionBuilder.d.ts +243 -14
  158. package/browser/transaction/builders/TransactionBuilder.d.ts.map +1 -0
  159. package/browser/transaction/enums/TransactionType.d.ts +1 -0
  160. package/browser/transaction/enums/TransactionType.d.ts.map +1 -0
  161. package/browser/transaction/interfaces/ICancelTransactionParameters.d.ts +2 -1
  162. package/browser/transaction/interfaces/ICancelTransactionParameters.d.ts.map +1 -0
  163. package/browser/transaction/interfaces/IConsolidatedTransactionParameters.d.ts +46 -3
  164. package/browser/transaction/interfaces/IConsolidatedTransactionParameters.d.ts.map +1 -0
  165. package/browser/transaction/interfaces/ICustomTransactionParameters.d.ts +6 -4
  166. package/browser/transaction/interfaces/ICustomTransactionParameters.d.ts.map +1 -0
  167. package/browser/transaction/interfaces/ITransactionParameters.d.ts +22 -10
  168. package/browser/transaction/interfaces/ITransactionParameters.d.ts.map +1 -0
  169. package/browser/transaction/interfaces/ITransactionResponses.d.ts +1 -0
  170. package/browser/transaction/interfaces/ITransactionResponses.d.ts.map +1 -0
  171. package/browser/transaction/interfaces/ITweakedTransactionData.d.ts +18 -5
  172. package/browser/transaction/interfaces/ITweakedTransactionData.d.ts.map +1 -0
  173. package/browser/transaction/interfaces/IWeb3ProviderTypes.d.ts +26 -0
  174. package/browser/transaction/interfaces/IWeb3ProviderTypes.d.ts.map +1 -0
  175. package/browser/transaction/interfaces/Tap.d.ts +4 -3
  176. package/browser/transaction/interfaces/Tap.d.ts.map +1 -0
  177. package/browser/transaction/mineable/IP2WSHAddress.d.ts +2 -1
  178. package/browser/transaction/mineable/IP2WSHAddress.d.ts.map +1 -0
  179. package/browser/transaction/mineable/TimelockGenerator.d.ts +12 -3
  180. package/browser/transaction/mineable/TimelockGenerator.d.ts.map +1 -0
  181. package/browser/transaction/offline/OfflineTransactionManager.d.ts +190 -9
  182. package/browser/transaction/offline/OfflineTransactionManager.d.ts.map +1 -0
  183. package/browser/transaction/offline/TransactionReconstructor.d.ts +53 -3
  184. package/browser/transaction/offline/TransactionReconstructor.d.ts.map +1 -0
  185. package/browser/transaction/offline/TransactionSerializer.d.ts +53 -2
  186. package/browser/transaction/offline/TransactionSerializer.d.ts.map +1 -0
  187. package/browser/transaction/offline/TransactionStateCapture.d.ts +64 -5
  188. package/browser/transaction/offline/TransactionStateCapture.d.ts.map +1 -0
  189. package/browser/transaction/offline/interfaces/ISerializableState.d.ts +71 -0
  190. package/browser/transaction/offline/interfaces/ISerializableState.d.ts.map +1 -0
  191. package/browser/transaction/offline/interfaces/ITypeSpecificData.d.ts +76 -0
  192. package/browser/transaction/offline/interfaces/ITypeSpecificData.d.ts.map +1 -0
  193. package/browser/transaction/psbt/PSBTTypes.d.ts +1 -0
  194. package/browser/transaction/psbt/PSBTTypes.d.ts.map +1 -0
  195. package/browser/transaction/shared/P2TR_MS.d.ts +11 -2
  196. package/browser/transaction/shared/P2TR_MS.d.ts.map +1 -0
  197. package/browser/transaction/shared/TweakedTransaction.d.ts +275 -33
  198. package/browser/transaction/shared/TweakedTransaction.d.ts.map +1 -0
  199. package/browser/transaction/utils/WitnessUtils.d.ts +7 -1
  200. package/browser/transaction/utils/WitnessUtils.d.ts.map +1 -0
  201. package/browser/utils/BitcoinUtils.d.ts +19 -0
  202. package/browser/utils/BitcoinUtils.d.ts.map +1 -0
  203. package/browser/utils/BufferHelper.d.ts +1 -0
  204. package/browser/utils/BufferHelper.d.ts.map +1 -0
  205. package/browser/utils/StringToBuffer.d.ts +1 -0
  206. package/browser/utils/StringToBuffer.d.ts.map +1 -0
  207. package/browser/utils/lengths.d.ts +1 -0
  208. package/browser/utils/lengths.d.ts.map +1 -0
  209. package/browser/utils/types.d.ts +1 -0
  210. package/browser/utils/types.d.ts.map +1 -0
  211. package/browser/utxo/OPNetLimitedProvider.d.ts +37 -1
  212. package/browser/utxo/OPNetLimitedProvider.d.ts.map +1 -0
  213. package/browser/utxo/interfaces/BroadcastResponse.d.ts +1 -0
  214. package/browser/utxo/interfaces/BroadcastResponse.d.ts.map +1 -0
  215. package/browser/utxo/interfaces/IUTXO.d.ts +11 -5
  216. package/browser/utxo/interfaces/IUTXO.d.ts.map +1 -0
  217. package/browser/vendors.js +14351 -10031
  218. package/browser/verification/TapscriptVerificator.d.ts +10 -8
  219. package/browser/verification/TapscriptVerificator.d.ts.map +1 -0
  220. package/build/_version.d.ts +1 -0
  221. package/build/_version.d.ts.map +1 -0
  222. package/build/_version.js +1 -0
  223. package/build/_version.js.map +1 -0
  224. package/build/abi/ABICoder.d.ts +1 -1
  225. package/build/abi/ABICoder.d.ts.map +1 -0
  226. package/build/abi/ABICoder.js +9 -10
  227. package/build/abi/ABICoder.js.map +1 -0
  228. package/build/branded/Branded.d.ts +4 -0
  229. package/build/branded/Branded.d.ts.map +1 -0
  230. package/build/branded/Branded.js +2 -0
  231. package/build/branded/Branded.js.map +1 -0
  232. package/build/buffer/BinaryReader.d.ts +121 -2
  233. package/build/buffer/BinaryReader.d.ts.map +1 -0
  234. package/build/buffer/BinaryReader.js +129 -5
  235. package/build/buffer/BinaryReader.js.map +1 -0
  236. package/build/buffer/BinaryWriter.d.ts +52 -2
  237. package/build/buffer/BinaryWriter.d.ts.map +1 -0
  238. package/build/buffer/BinaryWriter.js +62 -2
  239. package/build/buffer/BinaryWriter.js.map +1 -0
  240. package/build/bytecode/Compressor.d.ts +12 -0
  241. package/build/bytecode/Compressor.d.ts.map +1 -0
  242. package/build/bytecode/Compressor.js +17 -5
  243. package/build/bytecode/Compressor.js.map +1 -0
  244. package/build/chain/ChainData.d.ts +2 -2
  245. package/build/chain/ChainData.d.ts.map +1 -0
  246. package/build/chain/ChainData.js +35 -17
  247. package/build/chain/ChainData.js.map +1 -0
  248. package/build/consensus/Consensus.d.ts +11 -3
  249. package/build/consensus/Consensus.d.ts.map +1 -0
  250. package/build/consensus/Consensus.js +8 -0
  251. package/build/consensus/Consensus.js.map +1 -0
  252. package/build/consensus/ConsensusConfig.d.ts +2 -1
  253. package/build/consensus/ConsensusConfig.d.ts.map +1 -0
  254. package/build/consensus/ConsensusConfig.js +1 -0
  255. package/build/consensus/ConsensusConfig.js.map +1 -0
  256. package/build/consensus/IConsensusConfig.d.ts +1 -0
  257. package/build/consensus/IConsensusConfig.d.ts.map +1 -0
  258. package/build/consensus/IConsensusConfig.js +2 -1
  259. package/build/consensus/IConsensusConfig.js.map +1 -0
  260. package/build/consensus/metadata/RoswellConsensus.d.ts +2 -1
  261. package/build/consensus/metadata/RoswellConsensus.d.ts.map +1 -0
  262. package/build/consensus/metadata/RoswellConsensus.js +2 -0
  263. package/build/consensus/metadata/RoswellConsensus.js.map +1 -0
  264. package/build/crypto/crypto.d.ts +1 -0
  265. package/build/crypto/crypto.d.ts.map +1 -0
  266. package/build/crypto/crypto.js +1 -0
  267. package/build/crypto/crypto.js.map +1 -0
  268. package/build/deterministic/AddressMap.d.ts +6 -1
  269. package/build/deterministic/AddressMap.d.ts.map +1 -0
  270. package/build/deterministic/AddressMap.js +8 -0
  271. package/build/deterministic/AddressMap.js.map +1 -0
  272. package/build/deterministic/AddressSet.d.ts +3 -1
  273. package/build/deterministic/AddressSet.d.ts.map +1 -0
  274. package/build/deterministic/AddressSet.js +7 -0
  275. package/build/deterministic/AddressSet.js.map +1 -0
  276. package/build/deterministic/CustomMap.d.ts +3 -1
  277. package/build/deterministic/CustomMap.d.ts.map +1 -0
  278. package/build/deterministic/CustomMap.js +65 -47
  279. package/build/deterministic/CustomMap.js.map +1 -0
  280. package/build/deterministic/DeterministicMap.d.ts +4 -2
  281. package/build/deterministic/DeterministicMap.d.ts.map +1 -0
  282. package/build/deterministic/DeterministicMap.js +24 -27
  283. package/build/deterministic/DeterministicMap.js.map +1 -0
  284. package/build/deterministic/DeterministicSet.d.ts +3 -1
  285. package/build/deterministic/DeterministicSet.d.ts.map +1 -0
  286. package/build/deterministic/DeterministicSet.js +6 -0
  287. package/build/deterministic/DeterministicSet.js.map +1 -0
  288. package/build/deterministic/ExtendedAddressMap.d.ts +7 -1
  289. package/build/deterministic/ExtendedAddressMap.d.ts.map +1 -0
  290. package/build/deterministic/ExtendedAddressMap.js +18 -2
  291. package/build/deterministic/ExtendedAddressMap.js.map +1 -0
  292. package/build/deterministic/FastMap.d.ts +7 -1
  293. package/build/deterministic/FastMap.d.ts.map +1 -0
  294. package/build/deterministic/FastMap.js +7 -2
  295. package/build/deterministic/FastMap.js.map +1 -0
  296. package/build/ecc/backend.d.ts +13 -0
  297. package/build/ecc/backend.d.ts.map +1 -0
  298. package/build/ecc/backend.js +15 -0
  299. package/build/ecc/backend.js.map +1 -0
  300. package/build/epoch/ChallengeSolution.d.ts +34 -2
  301. package/build/epoch/ChallengeSolution.d.ts.map +1 -0
  302. package/build/epoch/ChallengeSolution.js +52 -0
  303. package/build/epoch/ChallengeSolution.js.map +1 -0
  304. package/build/epoch/interfaces/IChallengeSolution.d.ts +14 -13
  305. package/build/epoch/interfaces/IChallengeSolution.d.ts.map +1 -0
  306. package/build/epoch/interfaces/IChallengeSolution.js +2 -1
  307. package/build/epoch/interfaces/IChallengeSolution.js.map +1 -0
  308. package/build/epoch/validator/EpochValidator.d.ts +38 -8
  309. package/build/epoch/validator/EpochValidator.d.ts.map +1 -0
  310. package/build/epoch/validator/EpochValidator.js +45 -19
  311. package/build/epoch/validator/EpochValidator.js.map +1 -0
  312. package/build/event/NetEvent.d.ts +1 -0
  313. package/build/event/NetEvent.d.ts.map +1 -0
  314. package/build/event/NetEvent.js +3 -0
  315. package/build/event/NetEvent.js.map +1 -0
  316. package/build/generators/AddressGenerator.d.ts +4 -3
  317. package/build/generators/AddressGenerator.d.ts.map +1 -0
  318. package/build/generators/AddressGenerator.js +10 -3
  319. package/build/generators/AddressGenerator.js.map +1 -0
  320. package/build/generators/Features.d.ts +4 -3
  321. package/build/generators/Features.d.ts.map +1 -0
  322. package/build/generators/Features.js +1 -0
  323. package/build/generators/Features.js.map +1 -0
  324. package/build/generators/Generator.d.ts +47 -11
  325. package/build/generators/Generator.d.ts.map +1 -0
  326. package/build/generators/Generator.js +48 -12
  327. package/build/generators/Generator.js.map +1 -0
  328. package/build/generators/MLDSAData.d.ts +1 -0
  329. package/build/generators/MLDSAData.d.ts.map +1 -0
  330. package/build/generators/MLDSAData.js +1 -0
  331. package/build/generators/MLDSAData.js.map +1 -0
  332. package/build/generators/builders/CalldataGenerator.d.ts +27 -6
  333. package/build/generators/builders/CalldataGenerator.d.ts.map +1 -0
  334. package/build/generators/builders/CalldataGenerator.js +33 -4
  335. package/build/generators/builders/CalldataGenerator.js.map +1 -0
  336. package/build/generators/builders/CustomGenerator.d.ts +13 -3
  337. package/build/generators/builders/CustomGenerator.d.ts.map +1 -0
  338. package/build/generators/builders/CustomGenerator.js +11 -0
  339. package/build/generators/builders/CustomGenerator.js.map +1 -0
  340. package/build/generators/builders/DeploymentGenerator.d.ts +17 -6
  341. package/build/generators/builders/DeploymentGenerator.d.ts.map +1 -0
  342. package/build/generators/builders/DeploymentGenerator.js +18 -2
  343. package/build/generators/builders/DeploymentGenerator.js.map +1 -0
  344. package/build/generators/builders/HashCommitmentGenerator.d.ts +166 -14
  345. package/build/generators/builders/HashCommitmentGenerator.d.ts.map +1 -0
  346. package/build/generators/builders/HashCommitmentGenerator.js +193 -27
  347. package/build/generators/builders/HashCommitmentGenerator.js.map +1 -0
  348. package/build/generators/builders/LegacyCalldataGenerator.d.ts +27 -5
  349. package/build/generators/builders/LegacyCalldataGenerator.d.ts.map +1 -0
  350. package/build/generators/builders/LegacyCalldataGenerator.js +35 -5
  351. package/build/generators/builders/LegacyCalldataGenerator.js.map +1 -0
  352. package/build/generators/builders/MultiSignGenerator.d.ts +6 -1
  353. package/build/generators/builders/MultiSignGenerator.d.ts.map +1 -0
  354. package/build/generators/builders/MultiSignGenerator.js +20 -10
  355. package/build/generators/builders/MultiSignGenerator.js.map +1 -0
  356. package/build/generators/builders/P2WDAGenerator.d.ts +44 -6
  357. package/build/generators/builders/P2WDAGenerator.d.ts.map +1 -0
  358. package/build/generators/builders/P2WDAGenerator.js +41 -2
  359. package/build/generators/builders/P2WDAGenerator.js.map +1 -0
  360. package/build/index.d.ts +1 -0
  361. package/build/index.d.ts.map +1 -0
  362. package/build/index.js +1 -0
  363. package/build/index.js.map +1 -0
  364. package/build/keypair/Address.d.ts +284 -14
  365. package/build/keypair/Address.d.ts.map +1 -0
  366. package/build/keypair/Address.js +446 -128
  367. package/build/keypair/Address.js.map +1 -0
  368. package/build/keypair/AddressVerificator.d.ts +7 -6
  369. package/build/keypair/AddressVerificator.d.ts.map +1 -0
  370. package/build/keypair/AddressVerificator.js +6 -5
  371. package/build/keypair/AddressVerificator.js.map +1 -0
  372. package/build/keypair/EcKeyPair.d.ts +185 -23
  373. package/build/keypair/EcKeyPair.d.ts.map +1 -0
  374. package/build/keypair/EcKeyPair.js +219 -50
  375. package/build/keypair/EcKeyPair.js.map +1 -0
  376. package/build/keypair/MessageSigner.d.ts +18 -17
  377. package/build/keypair/MessageSigner.d.ts.map +1 -0
  378. package/build/keypair/MessageSigner.js +34 -25
  379. package/build/keypair/MessageSigner.js.map +1 -0
  380. package/build/keypair/Secp256k1PointDeriver.d.ts +55 -0
  381. package/build/keypair/Secp256k1PointDeriver.d.ts.map +1 -0
  382. package/build/keypair/Secp256k1PointDeriver.js +66 -0
  383. package/build/keypair/Secp256k1PointDeriver.js.map +1 -0
  384. package/build/keypair/Wallet.d.ts +29 -15
  385. package/build/keypair/Wallet.d.ts.map +1 -0
  386. package/build/keypair/Wallet.js +48 -14
  387. package/build/keypair/Wallet.js.map +1 -0
  388. package/build/keypair/interfaces/IWallet.d.ts +19 -0
  389. package/build/keypair/interfaces/IWallet.d.ts.map +1 -0
  390. package/build/keypair/interfaces/IWallet.js +1 -0
  391. package/build/keypair/interfaces/IWallet.js.map +1 -0
  392. package/build/metadata/ContractBaseMetadata.d.ts +10 -2
  393. package/build/metadata/ContractBaseMetadata.d.ts.map +1 -0
  394. package/build/metadata/ContractBaseMetadata.js +10 -1
  395. package/build/metadata/ContractBaseMetadata.js.map +1 -0
  396. package/build/mnemonic/BIPStandard.d.ts +59 -0
  397. package/build/mnemonic/BIPStandard.d.ts.map +1 -0
  398. package/build/mnemonic/BIPStandard.js +59 -0
  399. package/build/mnemonic/BIPStandard.js.map +1 -0
  400. package/build/mnemonic/Mnemonic.d.ts +16 -4
  401. package/build/mnemonic/Mnemonic.d.ts.map +1 -0
  402. package/build/mnemonic/Mnemonic.js +36 -8
  403. package/build/mnemonic/Mnemonic.js.map +1 -0
  404. package/build/mnemonic/MnemonicStrength.d.ts +6 -0
  405. package/build/mnemonic/MnemonicStrength.d.ts.map +1 -0
  406. package/build/mnemonic/MnemonicStrength.js +6 -0
  407. package/build/mnemonic/MnemonicStrength.js.map +1 -0
  408. package/build/network/ChainId.d.ts +1 -0
  409. package/build/network/ChainId.d.ts.map +1 -0
  410. package/build/network/ChainId.js +1 -0
  411. package/build/network/ChainId.js.map +1 -0
  412. package/build/opnet.d.ts +26 -3
  413. package/build/opnet.d.ts.map +1 -0
  414. package/build/opnet.js +23 -0
  415. package/build/opnet.js.map +1 -0
  416. package/build/p2wda/P2WDADetector.d.ts +38 -11
  417. package/build/p2wda/P2WDADetector.d.ts.map +1 -0
  418. package/build/p2wda/P2WDADetector.js +43 -10
  419. package/build/p2wda/P2WDADetector.js.map +1 -0
  420. package/build/polyfill/disposable.d.ts +16 -0
  421. package/build/polyfill/disposable.d.ts.map +1 -0
  422. package/build/polyfill/disposable.js +23 -0
  423. package/build/polyfill/disposable.js.map +1 -0
  424. package/build/signer/AddressRotation.d.ts +37 -1
  425. package/build/signer/AddressRotation.d.ts.map +1 -0
  426. package/build/signer/AddressRotation.js +16 -0
  427. package/build/signer/AddressRotation.js.map +1 -0
  428. package/build/signer/IRotationSigner.d.ts +27 -3
  429. package/build/signer/IRotationSigner.d.ts.map +1 -0
  430. package/build/signer/IRotationSigner.js +2 -1
  431. package/build/signer/IRotationSigner.js.map +1 -0
  432. package/build/signer/ParallelSignerAdapter.d.ts +14 -0
  433. package/build/signer/ParallelSignerAdapter.d.ts.map +1 -0
  434. package/build/signer/ParallelSignerAdapter.js +51 -0
  435. package/build/signer/ParallelSignerAdapter.js.map +1 -0
  436. package/build/signer/SignerUtils.d.ts +11 -4
  437. package/build/signer/SignerUtils.d.ts.map +1 -0
  438. package/build/signer/SignerUtils.js +16 -0
  439. package/build/signer/SignerUtils.js.map +1 -0
  440. package/build/signer/TweakedSigner.d.ts +28 -4
  441. package/build/signer/TweakedSigner.d.ts.map +1 -0
  442. package/build/signer/TweakedSigner.js +24 -6
  443. package/build/signer/TweakedSigner.js.map +1 -0
  444. package/build/transaction/ContractAddress.d.ts +2 -2
  445. package/build/transaction/ContractAddress.d.ts.map +1 -0
  446. package/build/transaction/ContractAddress.js +4 -8
  447. package/build/transaction/ContractAddress.js.map +1 -0
  448. package/build/transaction/TransactionFactory.d.ts +147 -9
  449. package/build/transaction/TransactionFactory.d.ts.map +1 -0
  450. package/build/transaction/TransactionFactory.js +145 -26
  451. package/build/transaction/TransactionFactory.js.map +1 -0
  452. package/build/transaction/browser/BrowserSignerBase.d.ts +12 -6
  453. package/build/transaction/browser/BrowserSignerBase.d.ts.map +1 -0
  454. package/build/transaction/browser/BrowserSignerBase.js +7 -0
  455. package/build/transaction/browser/BrowserSignerBase.js.map +1 -0
  456. package/build/transaction/browser/WalletNetworks.d.ts +1 -0
  457. package/build/transaction/browser/WalletNetworks.d.ts.map +1 -0
  458. package/build/transaction/browser/WalletNetworks.js +1 -0
  459. package/build/transaction/browser/WalletNetworks.js.map +1 -0
  460. package/build/transaction/browser/Web3Provider.d.ts +30 -3
  461. package/build/transaction/browser/Web3Provider.d.ts.map +1 -0
  462. package/build/transaction/browser/Web3Provider.js +1 -0
  463. package/build/transaction/browser/Web3Provider.js.map +1 -0
  464. package/build/transaction/browser/extensions/UnisatSigner.d.ts +11 -9
  465. package/build/transaction/browser/extensions/UnisatSigner.d.ts.map +1 -0
  466. package/build/transaction/browser/extensions/UnisatSigner.js +27 -17
  467. package/build/transaction/browser/extensions/UnisatSigner.js.map +1 -0
  468. package/build/transaction/browser/extensions/XverseSigner.d.ts +10 -8
  469. package/build/transaction/browser/extensions/XverseSigner.d.ts.map +1 -0
  470. package/build/transaction/browser/extensions/XverseSigner.js +25 -15
  471. package/build/transaction/browser/extensions/XverseSigner.js.map +1 -0
  472. package/build/transaction/browser/types/OPWallet.d.ts +12 -2
  473. package/build/transaction/browser/types/OPWallet.d.ts.map +1 -0
  474. package/build/transaction/browser/types/OPWallet.js +4 -0
  475. package/build/transaction/browser/types/OPWallet.js.map +1 -0
  476. package/build/transaction/browser/types/Unisat.d.ts +2 -1
  477. package/build/transaction/browser/types/Unisat.d.ts.map +1 -0
  478. package/build/transaction/browser/types/Unisat.js +2 -0
  479. package/build/transaction/browser/types/Unisat.js.map +1 -0
  480. package/build/transaction/browser/types/Xverse.d.ts +1 -0
  481. package/build/transaction/browser/types/Xverse.d.ts.map +1 -0
  482. package/build/transaction/browser/types/Xverse.js +1 -0
  483. package/build/transaction/browser/types/Xverse.js.map +1 -0
  484. package/build/transaction/builders/CancelTransaction.d.ts +31 -6
  485. package/build/transaction/builders/CancelTransaction.d.ts.map +1 -0
  486. package/build/transaction/builders/CancelTransaction.js +116 -33
  487. package/build/transaction/builders/CancelTransaction.js.map +1 -0
  488. package/build/transaction/builders/ChallengeSolutionTransaction.d.ts +1 -0
  489. package/build/transaction/builders/ChallengeSolutionTransaction.d.ts.map +1 -0
  490. package/build/transaction/builders/ChallengeSolutionTransaction.js +88 -0
  491. package/build/transaction/builders/ChallengeSolutionTransaction.js.map +1 -0
  492. package/build/transaction/builders/ConsolidatedInteractionTransaction.d.ts +140 -13
  493. package/build/transaction/builders/ConsolidatedInteractionTransaction.d.ts.map +1 -0
  494. package/build/transaction/builders/ConsolidatedInteractionTransaction.js +197 -20
  495. package/build/transaction/builders/ConsolidatedInteractionTransaction.js.map +1 -0
  496. package/build/transaction/builders/CustomScriptTransaction.d.ts +108 -8
  497. package/build/transaction/builders/CustomScriptTransaction.d.ts.map +1 -0
  498. package/build/transaction/builders/CustomScriptTransaction.js +176 -39
  499. package/build/transaction/builders/CustomScriptTransaction.js.map +1 -0
  500. package/build/transaction/builders/DeploymentTransaction.d.ts +120 -9
  501. package/build/transaction/builders/DeploymentTransaction.d.ts.map +1 -0
  502. package/build/transaction/builders/DeploymentTransaction.js +194 -51
  503. package/build/transaction/builders/DeploymentTransaction.js.map +1 -0
  504. package/build/transaction/builders/FundingTransaction.d.ts +5 -4
  505. package/build/transaction/builders/FundingTransaction.d.ts.map +1 -0
  506. package/build/transaction/builders/FundingTransaction.js +15 -8
  507. package/build/transaction/builders/FundingTransaction.js.map +1 -0
  508. package/build/transaction/builders/InteractionTransaction.d.ts +14 -5
  509. package/build/transaction/builders/InteractionTransaction.d.ts.map +1 -0
  510. package/build/transaction/builders/InteractionTransaction.js +18 -5
  511. package/build/transaction/builders/InteractionTransaction.js.map +1 -0
  512. package/build/transaction/builders/InteractionTransactionP2WDA.d.ts +58 -7
  513. package/build/transaction/builders/InteractionTransactionP2WDA.d.ts.map +1 -0
  514. package/build/transaction/builders/InteractionTransactionP2WDA.js +95 -18
  515. package/build/transaction/builders/InteractionTransactionP2WDA.js.map +1 -0
  516. package/build/transaction/builders/MultiSignTransaction.d.ts +126 -17
  517. package/build/transaction/builders/MultiSignTransaction.d.ts.map +1 -0
  518. package/build/transaction/builders/MultiSignTransaction.js +201 -76
  519. package/build/transaction/builders/MultiSignTransaction.js.map +1 -0
  520. package/build/transaction/builders/SharedInteractionTransaction.d.ts +106 -18
  521. package/build/transaction/builders/SharedInteractionTransaction.d.ts.map +1 -0
  522. package/build/transaction/builders/SharedInteractionTransaction.js +158 -40
  523. package/build/transaction/builders/SharedInteractionTransaction.js.map +1 -0
  524. package/build/transaction/builders/TransactionBuilder.d.ts +249 -19
  525. package/build/transaction/builders/TransactionBuilder.d.ts.map +1 -0
  526. package/build/transaction/builders/TransactionBuilder.js +377 -60
  527. package/build/transaction/builders/TransactionBuilder.js.map +1 -0
  528. package/build/transaction/enums/TransactionType.d.ts +1 -0
  529. package/build/transaction/enums/TransactionType.d.ts.map +1 -0
  530. package/build/transaction/enums/TransactionType.js +1 -0
  531. package/build/transaction/enums/TransactionType.js.map +1 -0
  532. package/build/transaction/interfaces/ICancelTransactionParameters.d.ts +3 -2
  533. package/build/transaction/interfaces/ICancelTransactionParameters.d.ts.map +1 -0
  534. package/build/transaction/interfaces/ICancelTransactionParameters.js +1 -0
  535. package/build/transaction/interfaces/ICancelTransactionParameters.js.map +1 -0
  536. package/build/transaction/interfaces/IConsolidatedTransactionParameters.d.ts +48 -5
  537. package/build/transaction/interfaces/IConsolidatedTransactionParameters.d.ts.map +1 -0
  538. package/build/transaction/interfaces/IConsolidatedTransactionParameters.js +1 -0
  539. package/build/transaction/interfaces/IConsolidatedTransactionParameters.js.map +1 -0
  540. package/build/transaction/interfaces/ICustomTransactionParameters.d.ts +7 -5
  541. package/build/transaction/interfaces/ICustomTransactionParameters.d.ts.map +1 -0
  542. package/build/transaction/interfaces/ICustomTransactionParameters.js +1 -0
  543. package/build/transaction/interfaces/ICustomTransactionParameters.js.map +1 -0
  544. package/build/transaction/interfaces/ITransactionParameters.d.ts +27 -15
  545. package/build/transaction/interfaces/ITransactionParameters.d.ts.map +1 -0
  546. package/build/transaction/interfaces/ITransactionParameters.js +1 -0
  547. package/build/transaction/interfaces/ITransactionParameters.js.map +1 -0
  548. package/build/transaction/interfaces/ITransactionResponses.d.ts +3 -2
  549. package/build/transaction/interfaces/ITransactionResponses.d.ts.map +1 -0
  550. package/build/transaction/interfaces/ITransactionResponses.js +1 -0
  551. package/build/transaction/interfaces/ITransactionResponses.js.map +1 -0
  552. package/build/transaction/interfaces/ITweakedTransactionData.d.ts +21 -8
  553. package/build/transaction/interfaces/ITweakedTransactionData.d.ts.map +1 -0
  554. package/build/transaction/interfaces/ITweakedTransactionData.js +1 -0
  555. package/build/transaction/interfaces/ITweakedTransactionData.js.map +1 -0
  556. package/build/transaction/interfaces/IWeb3ProviderTypes.d.ts +29 -3
  557. package/build/transaction/interfaces/IWeb3ProviderTypes.d.ts.map +1 -0
  558. package/build/transaction/interfaces/IWeb3ProviderTypes.js +2 -1
  559. package/build/transaction/interfaces/IWeb3ProviderTypes.js.map +1 -0
  560. package/build/transaction/interfaces/Tap.d.ts +4 -3
  561. package/build/transaction/interfaces/Tap.d.ts.map +1 -0
  562. package/build/transaction/interfaces/Tap.js +1 -0
  563. package/build/transaction/interfaces/Tap.js.map +1 -0
  564. package/build/transaction/mineable/IP2WSHAddress.d.ts +2 -1
  565. package/build/transaction/mineable/IP2WSHAddress.d.ts.map +1 -0
  566. package/build/transaction/mineable/IP2WSHAddress.js +1 -0
  567. package/build/transaction/mineable/IP2WSHAddress.js.map +1 -0
  568. package/build/transaction/mineable/TimelockGenerator.d.ts +13 -4
  569. package/build/transaction/mineable/TimelockGenerator.d.ts.map +1 -0
  570. package/build/transaction/mineable/TimelockGenerator.js +12 -3
  571. package/build/transaction/mineable/TimelockGenerator.js.map +1 -0
  572. package/build/transaction/offline/OfflineTransactionManager.d.ts +193 -12
  573. package/build/transaction/offline/OfflineTransactionManager.d.ts.map +1 -0
  574. package/build/transaction/offline/OfflineTransactionManager.js +192 -8
  575. package/build/transaction/offline/OfflineTransactionManager.js.map +1 -0
  576. package/build/transaction/offline/TransactionReconstructor.d.ts +56 -6
  577. package/build/transaction/offline/TransactionReconstructor.d.ts.map +1 -0
  578. package/build/transaction/offline/TransactionReconstructor.js +111 -75
  579. package/build/transaction/offline/TransactionReconstructor.js.map +1 -0
  580. package/build/transaction/offline/TransactionSerializer.d.ts +54 -3
  581. package/build/transaction/offline/TransactionSerializer.d.ts.map +1 -0
  582. package/build/transaction/offline/TransactionSerializer.js +206 -95
  583. package/build/transaction/offline/TransactionSerializer.js.map +1 -0
  584. package/build/transaction/offline/TransactionStateCapture.d.ts +66 -7
  585. package/build/transaction/offline/TransactionStateCapture.d.ts.map +1 -0
  586. package/build/transaction/offline/TransactionStateCapture.js +124 -60
  587. package/build/transaction/offline/TransactionStateCapture.js.map +1 -0
  588. package/build/transaction/offline/interfaces/ISerializableState.d.ts +72 -1
  589. package/build/transaction/offline/interfaces/ISerializableState.d.ts.map +1 -0
  590. package/build/transaction/offline/interfaces/ISerializableState.js +10 -1
  591. package/build/transaction/offline/interfaces/ISerializableState.js.map +1 -0
  592. package/build/transaction/offline/interfaces/ITypeSpecificData.d.ts +77 -1
  593. package/build/transaction/offline/interfaces/ITypeSpecificData.d.ts.map +1 -0
  594. package/build/transaction/offline/interfaces/ITypeSpecificData.js +19 -0
  595. package/build/transaction/offline/interfaces/ITypeSpecificData.js.map +1 -0
  596. package/build/transaction/psbt/PSBTTypes.d.ts +1 -0
  597. package/build/transaction/psbt/PSBTTypes.d.ts.map +1 -0
  598. package/build/transaction/psbt/PSBTTypes.js +1 -0
  599. package/build/transaction/psbt/PSBTTypes.js.map +1 -0
  600. package/build/transaction/shared/P2TR_MS.d.ts +11 -2
  601. package/build/transaction/shared/P2TR_MS.d.ts.map +1 -0
  602. package/build/transaction/shared/P2TR_MS.js +10 -0
  603. package/build/transaction/shared/P2TR_MS.js.map +1 -0
  604. package/build/transaction/shared/TweakedTransaction.d.ts +281 -38
  605. package/build/transaction/shared/TweakedTransaction.d.ts.map +1 -0
  606. package/build/transaction/shared/TweakedTransaction.js +576 -114
  607. package/build/transaction/shared/TweakedTransaction.js.map +1 -0
  608. package/build/transaction/utils/WitnessUtils.d.ts +7 -1
  609. package/build/transaction/utils/WitnessUtils.d.ts.map +1 -0
  610. package/build/transaction/utils/WitnessUtils.js +17 -3
  611. package/build/transaction/utils/WitnessUtils.js.map +1 -0
  612. package/build/tsconfig.build.tsbuildinfo +1 -1
  613. package/build/utils/BitcoinUtils.d.ts +19 -0
  614. package/build/utils/BitcoinUtils.d.ts.map +1 -0
  615. package/build/utils/BitcoinUtils.js +19 -0
  616. package/build/utils/BitcoinUtils.js.map +1 -0
  617. package/build/utils/BufferHelper.d.ts +2 -1
  618. package/build/utils/BufferHelper.d.ts.map +1 -0
  619. package/build/utils/BufferHelper.js +38 -32
  620. package/build/utils/BufferHelper.js.map +1 -0
  621. package/build/utils/StringToBuffer.d.ts +1 -0
  622. package/build/utils/StringToBuffer.d.ts.map +1 -0
  623. package/build/utils/StringToBuffer.js +1 -0
  624. package/build/utils/StringToBuffer.js.map +1 -0
  625. package/build/utils/lengths.d.ts +1 -0
  626. package/build/utils/lengths.d.ts.map +1 -0
  627. package/build/utils/lengths.js +1 -0
  628. package/build/utils/lengths.js.map +1 -0
  629. package/build/utils/types.d.ts +1 -0
  630. package/build/utils/types.d.ts.map +1 -0
  631. package/build/utils/types.js +2 -1
  632. package/build/utils/types.js.map +1 -0
  633. package/build/utxo/OPNetLimitedProvider.d.ts +39 -3
  634. package/build/utxo/OPNetLimitedProvider.d.ts.map +1 -0
  635. package/build/utxo/OPNetLimitedProvider.js +41 -3
  636. package/build/utxo/OPNetLimitedProvider.js.map +1 -0
  637. package/build/utxo/interfaces/BroadcastResponse.d.ts +1 -0
  638. package/build/utxo/interfaces/BroadcastResponse.d.ts.map +1 -0
  639. package/build/utxo/interfaces/BroadcastResponse.js +1 -0
  640. package/build/utxo/interfaces/BroadcastResponse.js.map +1 -0
  641. package/build/utxo/interfaces/IUTXO.d.ts +13 -7
  642. package/build/utxo/interfaces/IUTXO.d.ts.map +1 -0
  643. package/build/utxo/interfaces/IUTXO.js +1 -0
  644. package/build/utxo/interfaces/IUTXO.js.map +1 -0
  645. package/build/verification/TapscriptVerificator.d.ts +12 -10
  646. package/build/verification/TapscriptVerificator.d.ts.map +1 -0
  647. package/build/verification/TapscriptVerificator.js +28 -38
  648. package/build/verification/TapscriptVerificator.js.map +1 -0
  649. package/eslint.config.js +0 -1
  650. package/package.json +12 -35
  651. package/src/abi/ABICoder.ts +0 -13
  652. package/src/branded/Branded.ts +5 -0
  653. package/src/buffer/BinaryReader.ts +7 -7
  654. package/src/buffer/BinaryWriter.ts +29 -24
  655. package/src/bytecode/Compressor.ts +1 -1
  656. package/src/chain/ChainData.ts +34 -27
  657. package/src/consensus/ConsensusConfig.ts +1 -1
  658. package/src/consensus/IConsensusConfig.ts +0 -17
  659. package/src/consensus/metadata/RoswellConsensus.ts +1 -17
  660. package/src/deterministic/AddressMap.ts +5 -1
  661. package/src/deterministic/AddressSet.ts +5 -1
  662. package/src/deterministic/CustomMap.ts +6 -2
  663. package/src/deterministic/DeterministicMap.ts +8 -4
  664. package/src/deterministic/DeterministicSet.ts +6 -2
  665. package/src/deterministic/ExtendedAddressMap.ts +9 -4
  666. package/src/deterministic/FastMap.ts +9 -5
  667. package/src/ecc/backend.ts +17 -0
  668. package/src/epoch/ChallengeSolution.ts +3 -3
  669. package/src/epoch/interfaces/IChallengeSolution.ts +13 -13
  670. package/src/epoch/validator/EpochValidator.ts +24 -43
  671. package/src/generators/AddressGenerator.ts +6 -6
  672. package/src/generators/Features.ts +3 -3
  673. package/src/generators/Generator.ts +42 -26
  674. package/src/generators/builders/CalldataGenerator.ts +26 -24
  675. package/src/generators/builders/CustomGenerator.ts +4 -4
  676. package/src/generators/builders/DeploymentGenerator.ts +25 -23
  677. package/src/generators/builders/HashCommitmentGenerator.ts +31 -31
  678. package/src/generators/builders/LegacyCalldataGenerator.ts +26 -24
  679. package/src/generators/builders/MultiSignGenerator.ts +12 -12
  680. package/src/generators/builders/P2WDAGenerator.ts +10 -10
  681. package/src/keypair/Address.ts +114 -71
  682. package/src/keypair/AddressVerificator.ts +16 -147
  683. package/src/keypair/EcKeyPair.ts +105 -114
  684. package/src/keypair/MessageSigner.ts +70 -150
  685. package/src/keypair/Wallet.ts +59 -240
  686. package/src/metadata/ContractBaseMetadata.ts +2 -2
  687. package/src/mnemonic/Mnemonic.ts +32 -221
  688. package/src/opnet.ts +12 -6
  689. package/src/p2wda/P2WDADetector.ts +23 -72
  690. package/src/polyfill/disposable.ts +29 -0
  691. package/src/signer/AddressRotation.ts +1 -1
  692. package/src/signer/IRotationSigner.ts +3 -3
  693. package/src/signer/ParallelSignerAdapter.ts +59 -0
  694. package/src/signer/SignerUtils.ts +4 -4
  695. package/src/signer/TweakedSigner.ts +28 -13
  696. package/src/transaction/ContractAddress.ts +3 -7
  697. package/src/transaction/TransactionFactory.ts +28 -50
  698. package/src/transaction/browser/BrowserSignerBase.ts +12 -6
  699. package/src/transaction/browser/Web3Provider.ts +3 -3
  700. package/src/transaction/browser/extensions/UnisatSigner.ts +52 -48
  701. package/src/transaction/browser/extensions/XverseSigner.ts +55 -38
  702. package/src/transaction/browser/types/OPWallet.ts +2 -2
  703. package/src/transaction/browser/types/Unisat.ts +1 -1
  704. package/src/transaction/builders/CancelTransaction.ts +59 -24
  705. package/src/transaction/builders/ChallengeSolutionTransaction.ts +3 -3
  706. package/src/transaction/builders/ConsolidatedInteractionTransaction.ts +39 -34
  707. package/src/transaction/builders/CustomScriptTransaction.ts +79 -56
  708. package/src/transaction/builders/DeploymentTransaction.ts +82 -63
  709. package/src/transaction/builders/FundingTransaction.ts +11 -11
  710. package/src/transaction/builders/InteractionTransaction.ts +10 -10
  711. package/src/transaction/builders/InteractionTransactionP2WDA.ts +38 -40
  712. package/src/transaction/builders/MultiSignTransaction.ts +68 -61
  713. package/src/transaction/builders/SharedInteractionTransaction.ts +81 -57
  714. package/src/transaction/builders/TransactionBuilder.ts +101 -79
  715. package/src/transaction/interfaces/ICancelTransactionParameters.ts +2 -2
  716. package/src/transaction/interfaces/IConsolidatedTransactionParameters.ts +5 -5
  717. package/src/transaction/interfaces/ICustomTransactionParameters.ts +5 -5
  718. package/src/transaction/interfaces/ITransactionParameters.ts +15 -15
  719. package/src/transaction/interfaces/ITransactionResponses.ts +2 -2
  720. package/src/transaction/interfaces/ITweakedTransactionData.ts +17 -8
  721. package/src/transaction/interfaces/IWeb3ProviderTypes.ts +3 -3
  722. package/src/transaction/interfaces/Tap.ts +3 -3
  723. package/src/transaction/mineable/IP2WSHAddress.ts +1 -1
  724. package/src/transaction/mineable/TimelockGenerator.ts +19 -12
  725. package/src/transaction/offline/OfflineTransactionManager.ts +22 -23
  726. package/src/transaction/offline/TransactionReconstructor.ts +83 -91
  727. package/src/transaction/offline/TransactionSerializer.ts +151 -101
  728. package/src/transaction/offline/TransactionStateCapture.ts +83 -79
  729. package/src/transaction/offline/interfaces/ISerializableState.ts +1 -1
  730. package/src/transaction/offline/interfaces/ITypeSpecificData.ts +1 -1
  731. package/src/transaction/shared/P2TR_MS.ts +4 -4
  732. package/src/transaction/shared/TweakedTransaction.ts +326 -124
  733. package/src/transaction/utils/WitnessUtils.ts +18 -9
  734. package/src/utils/BufferHelper.ts +39 -37
  735. package/src/utxo/OPNetLimitedProvider.ts +7 -7
  736. package/src/utxo/interfaces/IUTXO.ts +7 -7
  737. package/src/verification/TapscriptVerificator.ts +73 -86
  738. package/test/address-rotation.test.ts +24 -24
  739. package/test/address.test.ts +12 -12
  740. package/test/addressmap.test.ts +30 -30
  741. package/test/binary-reader-writer.test.ts +8 -8
  742. package/test/browser/offline-transaction.test.ts +2206 -0
  743. package/test/browser/parallel-signing.test.ts +316 -0
  744. package/test/browser/setup.ts +11 -0
  745. package/test/browser/transaction-signing.test.ts +416 -0
  746. package/test/buffer-helper.test.ts +287 -0
  747. package/test/derivePath.test.ts +4 -3
  748. package/test/disposable.test.ts +279 -0
  749. package/test/fastmap-setall.test.ts +1 -1
  750. package/test/fastmap.test.ts +3 -3
  751. package/test/messagesigner-mldsa.test.ts +3 -3
  752. package/test/messagesigner-schnorr.test.ts +9 -9
  753. package/test/offline-transaction.test.ts +461 -288
  754. package/test/old/FastBigIntMap.ts +3 -3
  755. package/test/oldfastmap.test.ts +6 -6
  756. package/test/transaction-builders.test.ts +321 -0
  757. package/tsconfig.base.json +34 -18
  758. package/tsconfig.browser.json +15 -0
  759. package/tsconfig.json +3 -8
  760. package/vite.config.browser.ts +4 -5
  761. package/vitest.config.browser.ts +68 -0
  762. package/vitest.config.ts +1 -1
  763. package/browser/valibot.js +0 -4948
  764. package/tsconfig.webpack.json +0 -18
@@ -1,30 +1,47 @@
1
- import { PaymentType, toXOnly, } from '@btc-vision/bitcoin';
1
+ import { PaymentType, Psbt, toXOnly, } from '@btc-vision/bitcoin';
2
+ import {} from '@btc-vision/ecpair';
3
+ import { isUniversalSigner } from '../../signer/TweakedSigner.js';
2
4
  import { MINIMUM_AMOUNT_REWARD, TransactionBuilder } from './TransactionBuilder.js';
5
+ import { TransactionType } from '../enums/TransactionType.js';
3
6
  import { CalldataGenerator } from '../../generators/builders/CalldataGenerator.js';
4
7
  import { Compressor } from '../../bytecode/Compressor.js';
5
8
  import { EcKeyPair } from '../../keypair/EcKeyPair.js';
6
9
  import { BitcoinUtils } from '../../utils/BitcoinUtils.js';
10
+ import { UnisatSigner } from '../browser/extensions/UnisatSigner.js';
7
11
  import { TimeLockGenerator } from '../mineable/TimelockGenerator.js';
12
+ /**
13
+ * Shared interaction transaction
14
+ * @class SharedInteractionTransaction
15
+ */
8
16
  export class SharedInteractionTransaction extends TransactionBuilder {
17
+ static MAXIMUM_CALLDATA_SIZE = 1024 * 1024; // 1MB
18
+ /**
19
+ * Random salt for the interaction
20
+ * @type {Buffer}
21
+ */
22
+ randomBytes;
23
+ targetScriptRedeem = null;
24
+ leftOverFundsScriptRedeem = null;
25
+ challenge;
26
+ epochChallenge;
27
+ calldataGenerator;
28
+ /**
29
+ * Calldata for the interaction
30
+ * @protected
31
+ */
32
+ calldata;
33
+ /**
34
+ * Script signer for the interaction
35
+ * @protected
36
+ */
37
+ scriptSigner;
38
+ /**
39
+ * Disable auto refund
40
+ * @protected
41
+ */
42
+ disableAutoRefund;
9
43
  constructor(parameters) {
10
44
  super(parameters);
11
- this.targetScriptRedeem = null;
12
- this.leftOverFundsScriptRedeem = null;
13
- this.customFinalizer = (_inputIndex, input) => {
14
- if (!this.tapLeafScript) {
15
- throw new Error('Tap leaf script is required');
16
- }
17
- if (!this.contractSecret) {
18
- throw new Error('Contract secret is required');
19
- }
20
- const scriptSolution = this.getScriptSolution(input);
21
- const witness = scriptSolution
22
- .concat(this.tapLeafScript.script)
23
- .concat(this.tapLeafScript.controlBlock);
24
- return {
25
- finalScriptWitness: TransactionBuilder.witnessStackToScriptWitness(witness),
26
- };
27
- };
28
45
  if (!parameters.calldata) {
29
46
  throw new Error('Calldata is required');
30
47
  }
@@ -38,26 +55,57 @@ export class SharedInteractionTransaction extends TransactionBuilder {
38
55
  this.calldata = Compressor.compress(parameters.calldata);
39
56
  this.randomBytes = parameters.randomBytes || BitcoinUtils.rndBytes();
40
57
  this.scriptSigner = this.generateKeyPairFromSeed();
41
- this.calldataGenerator = new CalldataGenerator(Buffer.from(this.signer.publicKey), this.scriptSignerXOnlyPubKey(), this.network);
58
+ this.calldataGenerator = new CalldataGenerator(this.signer.publicKey, this.scriptSignerXOnlyPubKey(), this.network);
42
59
  }
43
60
  exportCompiledTargetScript() {
44
61
  return this.compiledTargetScript;
45
62
  }
63
+ /**
64
+ * Get the contract secret
65
+ * @returns {Buffer} The contract secret
66
+ */
46
67
  getContractSecret() {
47
68
  return this.contractSecret;
48
69
  }
70
+ /**
71
+ * Get the random bytes used for the interaction
72
+ * @returns {Buffer} The random bytes
73
+ */
49
74
  getRndBytes() {
50
75
  return this.randomBytes;
51
76
  }
77
+ /**
78
+ * Get the preimage
79
+ */
52
80
  getChallenge() {
53
81
  return this.challenge;
54
82
  }
83
+ /**
84
+ * Get the internal pubkey as an x-only key
85
+ * @protected
86
+ * @returns {Buffer} The internal pubkey as an x-only key
87
+ */
55
88
  scriptSignerXOnlyPubKey() {
56
- return toXOnly(Buffer.from(this.scriptSigner.publicKey));
89
+ return toXOnly(this.scriptSigner.publicKey);
57
90
  }
91
+ /**
92
+ * Generate a key pair from the seed
93
+ * @protected
94
+ *
95
+ * @returns {UniversalSigner} The key pair
96
+ */
58
97
  generateKeyPairFromSeed() {
59
98
  return EcKeyPair.fromSeedKeyPair(this.randomBytes, this.network);
60
99
  }
100
+ /**
101
+ * Build the transaction
102
+ * @protected
103
+ *
104
+ * @throws {Error} If the left over funds script redeem is required
105
+ * @throws {Error} If the left over funds script redeem version is required
106
+ * @throws {Error} If the left over funds script redeem output is required
107
+ * @throws {Error} If the to address is required
108
+ */
61
109
  async buildTransaction() {
62
110
  const selectedRedeem = this.scriptSigner
63
111
  ? this.targetScriptRedeem
@@ -81,6 +129,11 @@ export class SharedInteractionTransaction extends TransactionBuilder {
81
129
  }
82
130
  await this.createMineableRewardOutputs();
83
131
  }
132
+ /**
133
+ * Sign the inputs
134
+ * @param {Psbt} transaction The transaction to sign
135
+ * @protected
136
+ */
84
137
  async signInputs(transaction) {
85
138
  if (!this.scriptSigner) {
86
139
  await super.signInputs(transaction);
@@ -119,6 +172,13 @@ export class SharedInteractionTransaction extends TransactionBuilder {
119
172
  name: PaymentType.P2TR,
120
173
  };
121
174
  }
175
+ /**
176
+ * Generate the script solution
177
+ * @param {PsbtInput} input The input
178
+ * @protected
179
+ *
180
+ * @returns {Buffer[]} The script solution
181
+ */
122
182
  getScriptSolution(input) {
123
183
  if (!input.tapScriptSig) {
124
184
  throw new Error('Tap script signature is required');
@@ -129,6 +189,12 @@ export class SharedInteractionTransaction extends TransactionBuilder {
129
189
  input.tapScriptSig[1].signature,
130
190
  ];
131
191
  }
192
+ /**
193
+ * Get the script tree
194
+ * @private
195
+ *
196
+ * @returns {Taptree} The script tree
197
+ */
132
198
  getScriptTree() {
133
199
  if (!this.calldata) {
134
200
  throw new Error('Calldata is required');
@@ -145,10 +211,34 @@ export class SharedInteractionTransaction extends TransactionBuilder {
145
211
  },
146
212
  ];
147
213
  }
214
+ /**
215
+ * Transaction finalizer
216
+ * @param {number} _inputIndex The input index
217
+ * @param {PsbtInput} input The input
218
+ */
219
+ customFinalizer = (_inputIndex, input) => {
220
+ if (!this.tapLeafScript) {
221
+ throw new Error('Tap leaf script is required');
222
+ }
223
+ if (!this.contractSecret) {
224
+ throw new Error('Contract secret is required');
225
+ }
226
+ const scriptSolution = this.getScriptSolution(input);
227
+ const witness = scriptSolution
228
+ .concat(this.tapLeafScript.script)
229
+ .concat(this.tapLeafScript.controlBlock);
230
+ return {
231
+ finalScriptWitness: TransactionBuilder.witnessStackToScriptWitness(witness),
232
+ };
233
+ };
234
+ // custom for interactions
148
235
  async signInputsWalletBased(transaction) {
149
236
  const signer = this.signer;
237
+ // first, we sign the first input with the script signer.
150
238
  await this.signInput(transaction, transaction.data.inputs[0], 0, this.scriptSigner);
239
+ // then, we sign all the remaining inputs with the wallet signer.
151
240
  await signer.multiSignPsbt([transaction]);
241
+ // Then, we finalize every input.
152
242
  for (let i = 0; i < transaction.data.inputs.length; i++) {
153
243
  if (i === 0) {
154
244
  transaction.finalizeInput(i, this.customFinalizer.bind(this));
@@ -164,41 +254,69 @@ export class SharedInteractionTransaction extends TransactionBuilder {
164
254
  }
165
255
  }
166
256
  async signInputsNonWalletBased(transaction) {
167
- for (let i = 0; i < transaction.data.inputs.length; i++) {
168
- if (i === 0) {
169
- await this.signInput(transaction, transaction.data.inputs[i], i, this.scriptSigner);
170
- await this.signInput(transaction, transaction.data.inputs[i], i, this.getSignerKey());
171
- transaction.finalizeInput(0, this.customFinalizer.bind(this));
172
- }
173
- else {
174
- await this.signInput(transaction, transaction.data.inputs[i], i, this.signer);
175
- try {
176
- transaction.finalizeInput(i, this.customFinalizerP2SH.bind(this));
257
+ // Input 0: always sequential (needs scriptSigner + main signer, custom finalizer)
258
+ await this.signInput(transaction, transaction.data.inputs[0], 0, this.scriptSigner);
259
+ await this.signInput(transaction, transaction.data.inputs[0], 0, this.getSignerKey());
260
+ transaction.finalizeInput(0, this.customFinalizer.bind(this));
261
+ // Inputs 1+: parallel key-path if available, then sequential for remaining
262
+ if (this.canUseParallelSigning && isUniversalSigner(this.signer)) {
263
+ let parallelSignedIndices = new Set();
264
+ try {
265
+ const result = await this.signKeyPathInputsParallel(transaction, new Set([0]));
266
+ if (result.success) {
267
+ parallelSignedIndices = new Set(result.signatures.keys());
177
268
  }
178
- catch (e) {
179
- transaction.finalizeInput(i);
269
+ }
270
+ catch (e) {
271
+ this.error(`Parallel signing failed, falling back to sequential: ${e.message}`);
272
+ }
273
+ // Sign remaining inputs 1+ that weren't handled by parallel signing
274
+ for (let i = 1; i < transaction.data.inputs.length; i++) {
275
+ if (!parallelSignedIndices.has(i)) {
276
+ await this.signInput(transaction, transaction.data.inputs[i], i, this.signer);
180
277
  }
181
278
  }
182
279
  }
280
+ else {
281
+ for (let i = 1; i < transaction.data.inputs.length; i++) {
282
+ await this.signInput(transaction, transaction.data.inputs[i], i, this.signer);
283
+ }
284
+ }
285
+ // Finalize inputs 1+
286
+ for (let i = 1; i < transaction.data.inputs.length; i++) {
287
+ try {
288
+ transaction.finalizeInput(i, this.customFinalizerP2SH.bind(this));
289
+ }
290
+ catch {
291
+ transaction.finalizeInput(i);
292
+ }
293
+ }
294
+ this.finalized = true;
183
295
  }
184
296
  async createMineableRewardOutputs() {
185
297
  if (!this.to)
186
298
  throw new Error('To address is required');
187
299
  const opnetFee = this.getTransactionOPNetFee();
300
+ // Add the output to challenge address
188
301
  this.addFeeToOutput(opnetFee, this.to, this.epochChallenge, false);
302
+ // Get the actual amount added to outputs (might be MINIMUM_AMOUNT_REWARD if opnetFee is too small)
189
303
  const actualOutputAmount = opnetFee < MINIMUM_AMOUNT_REWARD ? MINIMUM_AMOUNT_REWARD : opnetFee;
190
304
  const optionalAmount = this.addOptionalOutputsAndGetAmount();
191
305
  if (!this.disableAutoRefund) {
306
+ // Pass the TOTAL amount spent: actual output amount + optional outputs
192
307
  await this.addRefundOutput(actualOutputAmount + optionalAmount);
193
308
  }
194
309
  }
195
- getPubKeys() {
196
- const pubKeys = [Buffer.from(this.signer.publicKey)];
197
- if (this.scriptSigner) {
198
- pubKeys.push(Buffer.from(this.scriptSigner.publicKey));
199
- }
200
- return pubKeys;
201
- }
310
+ /**
311
+ * Generate the redeem scripts
312
+ * @private
313
+ *
314
+ * @throws {Error} If the public keys are required
315
+ * @throws {Error} If the leaf script is required
316
+ * @throws {Error} If the leaf script version is required
317
+ * @throws {Error} If the leaf script output is required
318
+ * @throws {Error} If the target script redeem is required
319
+ */
202
320
  generateRedeemScripts() {
203
321
  this.targetScriptRedeem = {
204
322
  name: PaymentType.P2TR,
@@ -212,4 +330,4 @@ export class SharedInteractionTransaction extends TransactionBuilder {
212
330
  };
213
331
  }
214
332
  }
215
- SharedInteractionTransaction.MAXIMUM_CALLDATA_SIZE = 1024 * 1024;
333
+ //# sourceMappingURL=SharedInteractionTransaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SharedInteractionTransaction.js","sourceRoot":"","sources":["../../../src/transaction/builders/SharedInteractionTransaction.ts"],"names":[],"mappings":"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"}
@@ -1,85 +1,315 @@
1
- import { Network, Psbt, PsbtInputExtended, PsbtOutputExtended, Signer, Transaction } from '@btc-vision/bitcoin';
2
- import { UpdateInput } from '../interfaces/Tap.js';
1
+ import type { Script } from '@btc-vision/bitcoin';
2
+ import { type Network, Psbt, type PsbtInputExtended, type PsbtOutputExtended, type Signer, Transaction } from '@btc-vision/bitcoin';
3
+ import type { UpdateInput } from '../interfaces/Tap.js';
3
4
  import { TransactionType } from '../enums/TransactionType.js';
4
- import { IFundingTransactionParameters, ITransactionParameters } from '../interfaces/ITransactionParameters.js';
5
- import { UTXO } from '../../utxo/interfaces/IUTXO.js';
6
- import { ECPairInterface } from 'ecpair';
5
+ import type { IFundingTransactionParameters, ITransactionParameters } from '../interfaces/ITransactionParameters.js';
6
+ import type { UTXO } from '../../utxo/interfaces/IUTXO.js';
7
+ import { type UniversalSigner } from '@btc-vision/ecpair';
7
8
  import { TweakedTransaction } from '../shared/TweakedTransaction.js';
8
9
  import { UnisatSigner } from '../browser/extensions/UnisatSigner.js';
9
- import { IP2WSHAddress } from '../mineable/IP2WSHAddress.js';
10
- import { Feature, Features } from '../../generators/Features.js';
10
+ import type { IP2WSHAddress } from '../mineable/IP2WSHAddress.js';
11
+ import { type Feature, Features } from '../../generators/Features.js';
11
12
  export declare const MINIMUM_AMOUNT_REWARD: bigint;
12
13
  export declare const MINIMUM_AMOUNT_CA: bigint;
13
- export declare const ANCHOR_SCRIPT: Buffer<ArrayBuffer>;
14
+ export declare const ANCHOR_SCRIPT: Uint8Array<ArrayBufferLike>;
15
+ /**
16
+ * Allows to build a transaction like you would on Ethereum.
17
+ * @description The transaction builder class
18
+ * @abstract
19
+ * @class TransactionBuilder
20
+ */
14
21
  export declare abstract class TransactionBuilder<T extends TransactionType> extends TweakedTransaction {
15
22
  static readonly MINIMUM_DUST: bigint;
16
23
  abstract readonly type: T;
17
24
  readonly logColor: string;
18
25
  debugFees: boolean;
19
- LOCK_LEAF_SCRIPT: Buffer;
26
+ LOCK_LEAF_SCRIPT: Script;
27
+ /**
28
+ * @description The overflow fees of the transaction
29
+ * @public
30
+ */
20
31
  overflowFees: bigint;
32
+ /**
33
+ * @description Cost in satoshis of the transaction fee
34
+ */
21
35
  transactionFee: bigint;
36
+ /**
37
+ * @description The estimated fees of the transaction
38
+ */
22
39
  estimatedFees: bigint;
40
+ /**
41
+ * @param {ITransactionParameters} parameters - The transaction parameters
42
+ */
23
43
  optionalOutputs: PsbtOutputExtended[] | undefined;
44
+ /**
45
+ * @description The transaction itself.
46
+ */
24
47
  protected transaction: Psbt;
48
+ /**
49
+ * @description Inputs to update later on.
50
+ */
25
51
  protected readonly updateInputs: UpdateInput[];
52
+ /**
53
+ * @description The outputs of the transaction
54
+ */
26
55
  protected readonly outputs: PsbtOutputExtended[];
56
+ /**
57
+ * @description Output that will be used to pay the fees
58
+ */
27
59
  protected feeOutput: PsbtOutputExtended | null;
60
+ /**
61
+ * @description The total amount of satoshis in the inputs
62
+ */
28
63
  protected totalInputAmount: bigint;
29
- protected readonly signer: Signer | ECPairInterface | UnisatSigner;
64
+ /**
65
+ * @description The signer of the transaction
66
+ */
67
+ protected readonly signer: Signer | UniversalSigner | UnisatSigner;
68
+ /**
69
+ * @description The network where the transaction will be broadcasted
70
+ */
30
71
  protected readonly network: Network;
72
+ /**
73
+ * @description The fee rate of the transaction
74
+ */
31
75
  protected readonly feeRate: number;
76
+ /**
77
+ * @description The opnet priority fee of the transaction
78
+ */
32
79
  protected priorityFee: bigint;
33
80
  protected gasSatFee: bigint;
81
+ /**
82
+ * @description The utxos used in the transaction
83
+ */
34
84
  protected utxos: UTXO[];
85
+ /**
86
+ * @description The inputs of the transaction
87
+ * @protected
88
+ */
35
89
  protected optionalInputs: UTXO[];
90
+ /**
91
+ * @description The address where the transaction is sent to
92
+ * @protected
93
+ */
36
94
  protected to: string | undefined;
95
+ /**
96
+ * @description The address where the transaction is sent from
97
+ * @protected
98
+ */
37
99
  protected from: string;
100
+ /**
101
+ * @description The maximum fee rate of the transaction
102
+ */
38
103
  protected _maximumFeeRate: number;
104
+ /**
105
+ * @description Is the destionation P2PK
106
+ * @protected
107
+ */
39
108
  protected isPubKeyDestination: boolean;
109
+ /**
110
+ * @description If the transaction need an anchor output
111
+ * @protected
112
+ */
40
113
  protected anchor: boolean;
41
- protected note?: Buffer;
114
+ protected note?: Uint8Array;
42
115
  private optionalOutputsAdded;
43
116
  protected constructor(parameters: ITransactionParameters);
44
- static getFrom(from: string | undefined, keypair: ECPairInterface | Signer, network: Network): string;
45
- static witnessStackToScriptWitness(witness: Buffer[]): Buffer;
46
- addOPReturn(buffer: Buffer): void;
117
+ [Symbol.dispose](): void;
118
+ static getFrom(from: string | undefined, keypair: UniversalSigner | Signer, network: Network): string;
119
+ /**
120
+ * @description Converts the witness stack to a script witness
121
+ * @param {Buffer[]} witness - The witness stack
122
+ * @protected
123
+ * @returns {Buffer}
124
+ */
125
+ static witnessStackToScriptWitness(witness: Uint8Array[]): Uint8Array;
126
+ addOPReturn(buffer: Uint8Array): void;
47
127
  addAnchor(): void;
48
128
  getFundingTransactionParameters(): Promise<IFundingTransactionParameters>;
129
+ /**
130
+ * Set the destination address of the transaction
131
+ * @param {string} address - The address to set
132
+ */
49
133
  setDestinationAddress(address: string): void;
134
+ /**
135
+ * Set the maximum fee rate of the transaction in satoshis per byte
136
+ * @param {number} feeRate - The fee rate to set
137
+ * @public
138
+ */
50
139
  setMaximumFeeRate(feeRate: number): void;
140
+ /**
141
+ * @description Signs the transaction
142
+ * @public
143
+ * @returns {Promise<Transaction>} - The signed transaction in hex format
144
+ * @throws {Error} - If something went wrong
145
+ */
51
146
  signTransaction(): Promise<Transaction>;
147
+ /**
148
+ * @description Generates the transaction minimal signatures
149
+ * @public
150
+ */
52
151
  generateTransactionMinimalSignatures(checkPartialSigs?: boolean): Promise<void>;
152
+ /**
153
+ * @description Signs the transaction
154
+ * @public
155
+ * @returns {Promise<Psbt>} - The signed transaction in hex format
156
+ * @throws {Error} - If something went wrong
157
+ */
53
158
  signPSBT(): Promise<Psbt>;
159
+ /**
160
+ * Add an input to the transaction.
161
+ * @param {PsbtInputExtended} input - The input to add
162
+ * @public
163
+ * @returns {void}
164
+ */
54
165
  addInput(input: PsbtInputExtended): void;
166
+ /**
167
+ * Add an output to the transaction.
168
+ * @param {PsbtOutputExtended} output - The output to add
169
+ * @param bypassMinCheck
170
+ * @public
171
+ * @returns {void}
172
+ */
55
173
  addOutput(output: PsbtOutputExtended, bypassMinCheck?: boolean): void;
174
+ /**
175
+ * Returns the total value of all outputs added so far (excluding the fee/change output).
176
+ * @public
177
+ * @returns {bigint}
178
+ */
56
179
  getTotalOutputValue(): bigint;
180
+ /**
181
+ * Receiver address.
182
+ * @public
183
+ * @returns {string} - The receiver address
184
+ */
57
185
  toAddress(): string | undefined;
186
+ /**
187
+ * @description Returns the script address
188
+ * @returns {string} - The script address
189
+ */
58
190
  address(): string | undefined;
191
+ /**
192
+ * Estimates the transaction fees with accurate size calculation.
193
+ * @public
194
+ * @returns {Promise<bigint>}
195
+ */
59
196
  estimateTransactionFees(): Promise<bigint>;
60
197
  rebuildFromBase64(base64: string): Promise<Psbt>;
61
198
  setPSBT(psbt: Psbt): void;
199
+ /**
200
+ * Returns the inputs of the transaction.
201
+ * @protected
202
+ * @returns {PsbtInputExtended[]}
203
+ */
62
204
  getInputs(): PsbtInputExtended[];
205
+ /**
206
+ * Returns the outputs of the transaction.
207
+ * @protected
208
+ * @returns {PsbtOutputExtended[]}
209
+ */
63
210
  getOutputs(): PsbtOutputExtended[];
64
211
  getOptionalOutputValue(): bigint;
65
212
  protected addRefundOutput(amountSpent: bigint, expectRefund?: boolean): Promise<void>;
66
- protected defineLockScript(): Buffer;
213
+ protected defineLockScript(): Script;
214
+ /**
215
+ * @description Adds the value to the output
216
+ * @param {number | bigint} value - The value to add
217
+ * @protected
218
+ * @returns {void}
219
+ */
67
220
  protected addValueToToOutput(value: number | bigint): void;
68
- protected generateLegacySignature(): Buffer;
69
- protected generateMLDSASignature(): Buffer;
221
+ protected generateLegacySignature(): Uint8Array;
222
+ protected generateMLDSASignature(): Uint8Array;
70
223
  protected generateMLDSALinkRequest(parameters: ITransactionParameters, features: Feature<Features>[]): void;
224
+ /**
225
+ * @description Returns the transaction opnet fee
226
+ * @protected
227
+ * @returns {bigint}
228
+ */
71
229
  protected getTransactionOPNetFee(): bigint;
230
+ /**
231
+ * @description Returns the total amount of satoshis in the inputs
232
+ * @protected
233
+ * @returns {bigint}
234
+ */
72
235
  protected calculateTotalUTXOAmount(): bigint;
236
+ /**
237
+ * @description Returns the total amount of satoshis in the outputs
238
+ * @protected
239
+ * @returns {bigint}
240
+ */
73
241
  protected calculateTotalVOutAmount(): bigint;
242
+ /**
243
+ * @description Adds optional outputs to transaction and returns their total value in satoshi to calculate refund transaction
244
+ * @protected
245
+ * @returns {bigint}
246
+ */
74
247
  protected addOptionalOutputsAndGetAmount(): bigint;
248
+ /**
249
+ * @description Adds the inputs from the utxos
250
+ * @protected
251
+ * @returns {void}
252
+ */
75
253
  protected addInputsFromUTXO(): void;
254
+ /**
255
+ * Internal init.
256
+ * @protected
257
+ */
76
258
  protected internalInit(): void;
259
+ /**
260
+ * Builds the transaction.
261
+ * @protected
262
+ * @returns {Promise<void>}
263
+ */
77
264
  protected abstract buildTransaction(): Promise<void>;
265
+ /**
266
+ * Add an input update
267
+ * @param {UpdateInput} input - The input to update
268
+ * @protected
269
+ * @returns {void}
270
+ */
78
271
  protected updateInput(input: UpdateInput): void;
272
+ /**
273
+ * Adds the fee to the output.
274
+ * @param amountSpent
275
+ * @param contractAddress
276
+ * @param epochChallenge
277
+ * @param addContractOutput
278
+ * @protected
279
+ */
79
280
  protected addFeeToOutput(amountSpent: bigint, contractAddress: string, epochChallenge: IP2WSHAddress, addContractOutput: boolean): void;
80
- protected getWitness(): Buffer;
81
- protected getTapOutput(): Buffer;
281
+ /**
282
+ * Returns the witness of the tap transaction.
283
+ * @protected
284
+ * @returns {Buffer}
285
+ */
286
+ protected getWitness(): Uint8Array;
287
+ /**
288
+ * Returns the tap output.
289
+ * @protected
290
+ * @returns {Buffer}
291
+ */
292
+ protected getTapOutput(): Uint8Array;
293
+ /**
294
+ * Verifies that the utxos are valid.
295
+ * @protected
296
+ */
82
297
  protected verifyUTXOValidity(): void;
298
+ /**
299
+ * Set transaction fee output.
300
+ * @param {PsbtOutputExtended} output - The output to set the fees
301
+ * @protected
302
+ * @returns {Promise<void>}
303
+ */
83
304
  protected setFeeOutput(output: PsbtOutputExtended): Promise<void>;
305
+ /**
306
+ * Builds the transaction.
307
+ * @param {Psbt} transaction - The transaction to build
308
+ * @param checkPartialSigs
309
+ * @protected
310
+ * @returns {Promise<boolean>}
311
+ * @throws {Error} - If something went wrong while building the transaction
312
+ */
84
313
  protected internalBuildTransaction(transaction: Psbt, checkPartialSigs?: boolean): Promise<boolean>;
85
314
  }
315
+ //# sourceMappingURL=TransactionBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TransactionBuilder.d.ts","sourceRoot":"","sources":["../../../src/transaction/builders/TransactionBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAgB,EAKZ,KAAK,OAAO,EAEZ,IAAI,EACJ,KAAK,iBAAiB,EACtB,KAAK,kBAAkB,EAEvB,KAAK,MAAM,EAGX,WAAW,EACd,MAAM,qBAAqB,CAAC;AAG7B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,KAAK,EACR,6BAA6B,EAC7B,sBAAsB,EACzB,MAAM,yCAAyC,CAAC;AAEjD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,gCAAgC,CAAC;AAC3D,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AACrE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAElE,OAAO,EAAE,KAAK,OAAO,EAAmB,QAAQ,EAAyB,MAAM,8BAA8B,CAAC;AAS9G,eAAO,MAAM,qBAAqB,EAAE,MAAa,CAAC;AAClD,eAAO,MAAM,iBAAiB,EAAE,MAAa,CAAC;AAC9C,eAAO,MAAM,aAAa,6BAAsB,CAAC;AAEjD;;;;;GAKG;AACH,8BAAsB,kBAAkB,CAAC,CAAC,SAAS,eAAe,CAAE,SAAQ,kBAAkB;IAC1F,gBAAuB,YAAY,EAAE,MAAM,CAAQ;IAEnD,kBAAyB,IAAI,EAAE,CAAC,CAAC;IACjC,SAAyB,QAAQ,EAAE,MAAM,CAAa;IAC/C,SAAS,EAAE,OAAO,CAAS;IAG3B,gBAAgB,EAAE,MAAM,CAAC;IAEhC;;;OAGG;IACI,YAAY,EAAE,MAAM,CAAM;IAEjC;;OAEG;IACI,cAAc,EAAE,MAAM,CAAM;IAEnC;;OAEG;IACI,aAAa,EAAE,MAAM,CAAM;IAElC;;OAEG;IACI,eAAe,EAAE,kBAAkB,EAAE,GAAG,SAAS,CAAC;IAEzD;;OAEG;IACH,SAAS,CAAC,WAAW,EAAE,IAAI,CAAC;IAE5B;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,WAAW,EAAE,CAAM;IAEpD;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,kBAAkB,EAAE,CAAM;IAEtD;;OAEG;IACH,SAAS,CAAC,SAAS,EAAE,kBAAkB,GAAG,IAAI,CAAQ;IAEtD;;OAEG;IACH,SAAS,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAEnC;;OAEG;IACH,mBAA4B,MAAM,EAAE,MAAM,GAAG,eAAe,GAAG,YAAY,CAAC;IAE5E;;OAEG;IACH,mBAA4B,OAAO,EAAE,OAAO,CAAC;IAE7C;;OAEG;IACH,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IAEnC;;OAEG;IACH,SAAS,CAAC,WAAW,EAAE,MAAM,CAAC;IAC9B,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC;IAE5B;;OAEG;IACH,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC;IAExB;;;OAGG;IACH,SAAS,CAAC,cAAc,EAAE,IAAI,EAAE,CAAC;IAEjC;;;OAGG;IACH,SAAS,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,CAAC;IAEjC;;;OAGG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,CAAC;IAEvB;;OAEG;IACH,SAAS,CAAC,eAAe,EAAE,MAAM,CAAa;IAE9C;;;OAGG;IACH,SAAS,CAAC,mBAAmB,EAAE,OAAO,CAAC;IAEvC;;;OAGG;IACH,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC;IAE1B,SAAS,CAAC,IAAI,CAAC,EAAE,UAAU,CAAC;IAE5B,OAAO,CAAC,oBAAoB,CAAkB;IAE9C,SAAS,aAAa,UAAU,EAAE,sBAAsB;IAkDxC,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,IAAI;WAW1B,OAAO,CACjB,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,OAAO,EAAE,eAAe,GAAG,MAAM,EACjC,OAAO,EAAE,OAAO,GACjB,MAAM;IAIT;;;;;OAKG;WACW,2BAA2B,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,UAAU;IAIrE,WAAW,CAAC,MAAM,EAAE,UAAU,GAAG,IAAI;IASrC,SAAS,IAAI,IAAI;IAOX,+BAA+B,IAAI,OAAO,CAAC,6BAA6B,CAAC;IAqBtF;;;OAGG;IACI,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAInD;;;;OAIG;IACI,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAI/C;;;;;OAKG;IACU,eAAe,IAAI,OAAO,CAAC,WAAW,CAAC;IAgCpD;;;OAGG;IACU,oCAAoC,CAC7C,gBAAgB,GAAE,OAAe,GAClC,OAAO,CAAC,IAAI,CAAC;IA4BhB;;;;;OAKG;IACU,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IAQtC;;;;;OAKG;IACI,QAAQ,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI;IAI/C;;;;;;OAMG;IACI,SAAS,CAAC,MAAM,EAAE,kBAAkB,EAAE,cAAc,GAAE,OAAe,GAAG,IAAI;IA+BnF;;;;OAIG;IACI,mBAAmB,IAAI,MAAM;IAIpC;;;;OAIG;IACI,SAAS,IAAI,MAAM,GAAG,SAAS;IAItC;;;OAGG;IACI,OAAO,IAAI,MAAM,GAAG,SAAS;IAIpC;;;;OAIG;IACU,uBAAuB,IAAI,OAAO,CAAC,MAAM,CAAC;IA6N1C,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAatD,OAAO,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI;IAIhC;;;;OAIG;IACI,SAAS,IAAI,iBAAiB,EAAE;IAIvC;;;;OAIG;IACI,UAAU,IAAI,kBAAkB,EAAE;IAOlC,sBAAsB,IAAI,MAAM;cAWvB,eAAe,CAC3B,WAAW,EAAE,MAAM,EACnB,YAAY,GAAE,OAAe,GAC9B,OAAO,CAAC,IAAI,CAAC;IAwGhB,SAAS,CAAC,gBAAgB,IAAI,MAAM;IAIpC;;;;;OAKG;IACH,SAAS,CAAC,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI;IAqB1D,SAAS,CAAC,uBAAuB,IAAI,UAAU;IAoC/C,SAAS,CAAC,sBAAsB,IAAI,UAAU;IAiD9C,SAAS,CAAC,wBAAwB,CAC9B,UAAU,EAAE,sBAAsB,EAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE,GAC9B,IAAI;IAyBP;;;;OAIG;IACH,SAAS,CAAC,sBAAsB,IAAI,MAAM;IAS1C;;;;OAIG;IACH,SAAS,CAAC,wBAAwB,IAAI,MAAM;IAa5C;;;;OAIG;IACH,SAAS,CAAC,wBAAwB,IAAI,MAAM;IAa5C;;;;OAIG;IACH,SAAS,CAAC,8BAA8B,IAAI,MAAM;IAelD;;;;OAIG;IACH,SAAS,CAAC,iBAAiB,IAAI,IAAI;IAsCnC;;;OAGG;cACgB,YAAY,IAAI,IAAI;IAMvC;;;;OAIG;IACH,SAAS,CAAC,QAAQ,CAAC,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC;IAEpD;;;;;OAKG;IACH,SAAS,CAAC,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI;IAI/C;;;;;;;OAOG;IACH,SAAS,CAAC,cAAc,CACpB,WAAW,EAAE,MAAM,EACnB,eAAe,EAAE,MAAM,EACvB,cAAc,EAAE,aAAa,EAC7B,iBAAiB,EAAE,OAAO,GAC3B,IAAI;IA+CP;;;;OAIG;IACH,SAAS,CAAC,UAAU,IAAI,UAAU;IAYlC;;;;OAIG;IACH,SAAS,CAAC,YAAY,IAAI,UAAU;IAQpC;;;OAGG;IACH,SAAS,CAAC,kBAAkB,IAAI,IAAI;IAcpC;;;;;OAKG;cACa,YAAY,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC;IAkGvE;;;;;;;OAOG;cACa,wBAAwB,CACpC,WAAW,EAAE,IAAI,EACjB,gBAAgB,GAAE,OAAe,GAClC,OAAO,CAAC,OAAO,CAAC;CAiCtB"}