@btc-vision/transaction 1.0.59 → 1.0.61

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 (273) hide show
  1. package/.gitattributes +2 -2
  2. package/browser/_version.d.ts +1 -1
  3. package/browser/index.js +1 -1
  4. package/browser/transaction/builders/TapUnwarpTransaction.d.ts +40 -40
  5. package/browser/transaction/builders/UnwarpTransaction.d.ts +34 -34
  6. package/browser/utxo/UTXOManager.d.ts +7 -7
  7. package/build/Utils.d.ts +0 -0
  8. package/build/Utils.js +1 -0
  9. package/build/_version.d.ts +1 -1
  10. package/build/_version.js +1 -1
  11. package/build/consensus/metadata/RoswsellConsensus.d.ts +2 -0
  12. package/build/consensus/metadata/RoswsellConsensus.js +4 -0
  13. package/build/contracts/ContractMetadataManager.d.ts +0 -0
  14. package/build/contracts/ContractMetadataManager.js +1 -0
  15. package/build/generators/OPNetAddressGenerator.d.ts +0 -0
  16. package/build/generators/OPNetAddressGenerator.js +1 -0
  17. package/build/generators/builders/UnwrapGenerator.d.ts +8 -0
  18. package/build/generators/builders/UnwrapGenerator.js +79 -0
  19. package/build/keypair/interfaces/GeneratedWallet.d.ts +5 -0
  20. package/build/keypair/interfaces/GeneratedWallet.js +1 -0
  21. package/build/metadata/CommonContracts.d.ts +6 -0
  22. package/build/metadata/CommonContracts.js +5 -0
  23. package/build/metadata/ContractMetadataManager.d.ts +1 -0
  24. package/build/metadata/ContractMetadataManager.js +9 -0
  25. package/build/metadata/contracts/ContractBase.d.ts +9 -0
  26. package/build/metadata/contracts/ContractBase.js +13 -0
  27. package/build/metadata/contracts/ContractBaseMetadata.d.ts +9 -0
  28. package/build/metadata/contracts/ContractBaseMetadata.js +13 -0
  29. package/build/metadata/contracts/ContractMetadataManager.d.ts +0 -0
  30. package/build/metadata/contracts/ContractMetadataManager.js +1 -0
  31. package/build/network/NetworkConverter.d.ts +0 -0
  32. package/build/network/NetworkConverter.js +14 -0
  33. package/build/scripts/Regtest.d.ts +2 -0
  34. package/build/scripts/Regtest.js +15 -0
  35. package/build/scripts/test.d.ts +1 -0
  36. package/build/scripts/test.js +74 -0
  37. package/build/signer/Regtest.d.ts +2 -0
  38. package/build/signer/Regtest.js +15 -0
  39. package/build/tests/Regtest.d.ts +3 -0
  40. package/build/tests/Regtest.js +29 -0
  41. package/build/tests/adaptPSBT.d.ts +1 -0
  42. package/build/tests/adaptPSBT.js +44 -0
  43. package/build/tests/btc/send.d.ts +1 -0
  44. package/build/tests/btc/send.js +35 -0
  45. package/build/tests/btc/transfer.d.ts +1 -0
  46. package/build/tests/btc/transfer.js +35 -0
  47. package/build/tests/createPairReg.d.ts +1 -0
  48. package/build/tests/createPairReg.js +73 -0
  49. package/build/tests/deploy/deployMoto.d.ts +4 -0
  50. package/build/tests/deploy/deployMoto.js +89 -0
  51. package/build/tests/deploy/deployPool.d.ts +1 -0
  52. package/build/tests/deploy/deployPool.js +5 -0
  53. package/build/tests/deploy/deployStep1.d.ts +1 -0
  54. package/build/tests/deploy/deployStep1.js +5 -0
  55. package/build/tests/deploy/deployStep2.d.ts +1 -0
  56. package/build/tests/deploy/deployStep2.js +5 -0
  57. package/build/tests/deploy/deployStep3.d.ts +1 -0
  58. package/build/tests/deploy/deployStep3.js +5 -0
  59. package/build/tests/deploy.d.ts +1 -0
  60. package/build/tests/deploy.js +41 -0
  61. package/build/tests/deployMotoRegStep1.d.ts +1 -0
  62. package/build/tests/deployMotoRegStep1.js +85 -0
  63. package/build/tests/deployReg.d.ts +1 -0
  64. package/build/tests/deployReg.js +85 -0
  65. package/build/tests/factory/createPairReg.d.ts +1 -0
  66. package/build/tests/factory/createPairReg.js +13 -0
  67. package/build/tests/gen.d.ts +1 -0
  68. package/build/tests/gen.js +19 -0
  69. package/build/tests/interaction.d.ts +5 -0
  70. package/build/tests/interaction.js +62 -0
  71. package/build/tests/massWrapReg.d.ts +1 -0
  72. package/build/tests/massWrapReg.js +105 -0
  73. package/build/tests/mineReg.d.ts +1 -0
  74. package/build/tests/mineReg.js +19 -0
  75. package/build/tests/moto/airdropToken.d.ts +1 -0
  76. package/build/tests/moto/airdropToken.js +21 -0
  77. package/build/tests/moto/airdropTokens.d.ts +1 -0
  78. package/build/tests/moto/airdropTokens.js +60 -0
  79. package/build/tests/moto/allowance.d.ts +1 -0
  80. package/build/tests/moto/allowance.js +6 -0
  81. package/build/tests/moto/approve.d.ts +1 -0
  82. package/build/tests/moto/approve.js +10 -0
  83. package/build/tests/moto/approveWBTC.d.ts +1 -0
  84. package/build/tests/moto/approveWBTC.js +12 -0
  85. package/build/tests/moto/balanceOf.d.ts +1 -0
  86. package/build/tests/moto/balanceOf.js +12 -0
  87. package/build/tests/moto/transfer.d.ts +1 -0
  88. package/build/tests/moto/transfer.js +16 -0
  89. package/build/tests/motoswap/airdropToken.d.ts +11 -0
  90. package/build/tests/motoswap/airdropToken.js +36 -0
  91. package/build/tests/motoswap/deployMoto.d.ts +4 -0
  92. package/build/tests/motoswap/deployMoto.js +89 -0
  93. package/build/tests/motoswap/deployMotoRegStep1.d.ts +1 -0
  94. package/build/tests/motoswap/deployMotoRegStep1.js +91 -0
  95. package/build/tests/motoswap/deployMotoRegStep2.d.ts +1 -0
  96. package/build/tests/motoswap/deployMotoRegStep2.js +91 -0
  97. package/build/tests/motoswap/deployPool.d.ts +1 -0
  98. package/build/tests/motoswap/deployPool.js +5 -0
  99. package/build/tests/motoswap/deployStep1.d.ts +1 -0
  100. package/build/tests/motoswap/deployStep1.js +5 -0
  101. package/build/tests/motoswap/deployStep2.d.ts +1 -0
  102. package/build/tests/motoswap/deployStep2.js +5 -0
  103. package/build/tests/motoswap/deployStep3.d.ts +1 -0
  104. package/build/tests/motoswap/deployStep3.js +5 -0
  105. package/build/tests/motoswap/interaction.d.ts +3 -0
  106. package/build/tests/motoswap/interaction.js +63 -0
  107. package/build/tests/motoswap/routerAddLiquidity.d.ts +11 -0
  108. package/build/tests/motoswap/routerAddLiquidity.js +35 -0
  109. package/build/tests/motoswap-router/addLiquidity.d.ts +11 -0
  110. package/build/tests/motoswap-router/addLiquidity.js +36 -0
  111. package/build/tests/motoswap-router/deployMoto.d.ts +4 -0
  112. package/build/tests/motoswap-router/deployMoto.js +89 -0
  113. package/build/tests/motoswap-router/deployPool.d.ts +1 -0
  114. package/build/tests/motoswap-router/deployPool.js +5 -0
  115. package/build/tests/motoswap-router/deployStep1.d.ts +1 -0
  116. package/build/tests/motoswap-router/deployStep1.js +5 -0
  117. package/build/tests/motoswap-router/deployStep2.d.ts +1 -0
  118. package/build/tests/motoswap-router/deployStep2.js +5 -0
  119. package/build/tests/motoswap-router/deployStep3.d.ts +1 -0
  120. package/build/tests/motoswap-router/deployStep3.js +5 -0
  121. package/build/tests/motoswap-router/getAmountsOut.d.ts +5 -0
  122. package/build/tests/motoswap-router/getAmountsOut.js +34 -0
  123. package/build/tests/motoswap-router/routerAddLiquidity.d.ts +11 -0
  124. package/build/tests/motoswap-router/routerAddLiquidity.js +35 -0
  125. package/build/tests/motoswap-router/swap.d.ts +8 -0
  126. package/build/tests/motoswap-router/swap.js +24 -0
  127. package/build/tests/multisign.d.ts +1 -0
  128. package/build/tests/multisign.js +47 -0
  129. package/build/tests/multisign2.d.ts +1 -0
  130. package/build/tests/multisign2.js +27 -0
  131. package/build/tests/pool/DecodePoolAddress.d.ts +6 -0
  132. package/build/tests/pool/DecodePoolAddress.js +12 -0
  133. package/build/tests/pool/decodeReserves.d.ts +5 -0
  134. package/build/tests/pool/decodeReserves.js +13 -0
  135. package/build/tests/pool/reserves.d.ts +1 -0
  136. package/build/tests/pool/reserves.js +18 -0
  137. package/build/tests/shared/Utils.d.ts +2 -0
  138. package/build/tests/shared/Utils.js +14 -0
  139. package/build/tests/shared/interaction.d.ts +7 -0
  140. package/build/tests/shared/interaction.js +85 -0
  141. package/build/tests/shared/tokens.d.ts +6 -0
  142. package/build/tests/shared/tokens.js +5 -0
  143. package/build/tests/stakeReg.d.ts +1 -0
  144. package/build/tests/stakeReg.js +73 -0
  145. package/build/tests/stakedReg.d.ts +1 -0
  146. package/build/tests/stakedReg.js +28 -0
  147. package/build/tests/test.d.ts +1 -0
  148. package/build/tests/test.js +51 -0
  149. package/build/tests/test2.d.ts +1 -0
  150. package/build/tests/test2.js +73 -0
  151. package/build/tests/testReg.d.ts +1 -0
  152. package/build/tests/testReg.js +91 -0
  153. package/build/tests/tokens.d.ts +6 -0
  154. package/build/tests/tokens.js +5 -0
  155. package/build/tests/totalRewardReg.d.ts +1 -0
  156. package/build/tests/totalRewardReg.js +28 -0
  157. package/build/tests/transfer.d.ts +1 -0
  158. package/build/tests/transfer.js +74 -0
  159. package/build/tests/transferReg.d.ts +1 -0
  160. package/build/tests/transferReg.js +74 -0
  161. package/build/tests/unStakeReg.d.ts +1 -0
  162. package/build/tests/unStakeReg.js +72 -0
  163. package/build/tests/unwrapReg.d.ts +1 -0
  164. package/build/tests/unwrapReg.js +61 -0
  165. package/build/tests/unwrapReg2.d.ts +1 -0
  166. package/build/tests/unwrapReg2.js +56 -0
  167. package/build/tests/unwrapRegSegwit.d.ts +1 -0
  168. package/build/tests/unwrapRegSegwit.js +83 -0
  169. package/build/tests/wbtc/approve.d.ts +1 -0
  170. package/build/tests/wbtc/approve.js +6 -0
  171. package/build/tests/wbtc/approveWBTC.d.ts +1 -0
  172. package/build/tests/wbtc/approveWBTC.js +12 -0
  173. package/build/tests/wbtc/massWrapReg.d.ts +1 -0
  174. package/build/tests/wbtc/massWrapReg.js +105 -0
  175. package/build/tests/wbtc/transfer.d.ts +1 -0
  176. package/build/tests/wbtc/transfer.js +16 -0
  177. package/build/tests/wbtc/transferReg.d.ts +1 -0
  178. package/build/tests/wbtc/transferReg.js +16 -0
  179. package/build/tests/wbtc/unStakeReg.d.ts +1 -0
  180. package/build/tests/wbtc/unStakeReg.js +72 -0
  181. package/build/tests/wbtc/unwrapReg.d.ts +1 -0
  182. package/build/tests/wbtc/unwrapReg.js +60 -0
  183. package/build/tests/wbtc/unwrapRegSegwit.d.ts +1 -0
  184. package/build/tests/wbtc/unwrapRegSegwit.js +83 -0
  185. package/build/tests/wbtc/withdrawalRequestReg.d.ts +1 -0
  186. package/build/tests/wbtc/withdrawalRequestReg.js +71 -0
  187. package/build/tests/wbtc/wrapReg.d.ts +1 -0
  188. package/build/tests/wbtc/wrapReg.js +65 -0
  189. package/build/tests/wbtc/wrapTest.d.ts +1 -0
  190. package/build/tests/wbtc/wrapTest.js +66 -0
  191. package/build/tests/withdrawalRequestReg.d.ts +1 -0
  192. package/build/tests/withdrawalRequestReg.js +71 -0
  193. package/build/tests/wrap.d.ts +1 -0
  194. package/build/tests/wrap.js +65 -0
  195. package/build/tests/wrapReg.d.ts +1 -0
  196. package/build/tests/wrapReg.js +68 -0
  197. package/build/tests/wrapTest.d.ts +1 -0
  198. package/build/tests/wrapTest.js +66 -0
  199. package/build/tests/wrapTestg.d.ts +1 -0
  200. package/build/tests/wrapTestg.js +66 -0
  201. package/build/tests/writers/allowance.d.ts +3 -0
  202. package/build/tests/writers/allowance.js +10 -0
  203. package/build/tests/writers/approve.d.ts +4 -0
  204. package/build/tests/writers/approve.js +11 -0
  205. package/build/transaction/TransactionBuilder.d.ts +60 -0
  206. package/build/transaction/TransactionBuilder.js +244 -0
  207. package/build/transaction/TransactionFactory.js +3 -2
  208. package/build/transaction/browser/BrowserSigner.d.ts +11 -0
  209. package/build/transaction/browser/BrowserSigner.js +10 -0
  210. package/build/transaction/browser/extensions/Unisat.d.ts +54 -0
  211. package/build/transaction/browser/extensions/Unisat.js +11 -0
  212. package/build/transaction/builders/GenericTransaction.d.ts +11 -0
  213. package/build/transaction/builders/GenericTransaction.js +23 -0
  214. package/build/transaction/builders/TapUnwarpTransaction.d.ts +37 -0
  215. package/build/transaction/builders/TapUnwarpTransaction.js +201 -0
  216. package/build/transaction/builders/TransactionBuilder.js +1 -1
  217. package/build/transaction/builders/UnwarpSegwitTransaction.d.ts +34 -0
  218. package/build/transaction/builders/UnwarpSegwitTransaction.js +184 -0
  219. package/build/transaction/builders/UnwarpTransaction.d.ts +35 -0
  220. package/build/transaction/builders/UnwarpTransaction.js +199 -0
  221. package/build/transaction/interfaces/ITransactions.d.ts +32 -0
  222. package/build/transaction/interfaces/ITransactions.js +1 -0
  223. package/build/utxo/IUTXO.d.ts +0 -0
  224. package/build/utxo/IUTXO.js +1 -0
  225. package/build/utxo/OPNetUtils.d.ts +7 -0
  226. package/build/utxo/OPNetUtils.js +47 -0
  227. package/build/utxo/UTXOManager.d.ts +7 -0
  228. package/build/utxo/UTXOManager.js +47 -0
  229. package/build/wbtc/BroadcastResponse.d.ts +0 -0
  230. package/build/wbtc/BroadcastResponse.js +1 -0
  231. package/gulpfile.js +152 -152
  232. package/package.json +1 -1
  233. package/src/_version.ts +1 -1
  234. package/src/consensus/Consensus.ts +36 -36
  235. package/src/consensus/ConsensusConfig.ts +39 -39
  236. package/src/crypto/crypto-browser.js +75 -75
  237. package/src/generators/AddressGenerator.ts +24 -24
  238. package/src/generators/Features.ts +5 -5
  239. package/src/generators/Generator.ts +75 -75
  240. package/src/generators/builders/CalldataGenerator.ts +148 -148
  241. package/src/generators/builders/DeploymentGenerator.ts +66 -66
  242. package/src/index.ts +4 -4
  243. package/src/keypair/AddressVerificator.ts +40 -40
  244. package/src/keypair/EcKeyPair.ts +282 -282
  245. package/src/keypair/Wallet.ts +97 -97
  246. package/src/keypair/interfaces/IWallet.ts +19 -19
  247. package/src/metadata/ContractBaseMetadata.ts +23 -23
  248. package/src/network/NetworkInformation.ts +7 -7
  249. package/src/opnet.ts +84 -84
  250. package/src/transaction/TransactionFactory.ts +3 -2
  251. package/src/transaction/browser/BrowserSignerBase.ts +37 -37
  252. package/src/transaction/browser/Web3Provider.ts +46 -46
  253. package/src/transaction/browser/extensions/UnisatSigner.ts +218 -218
  254. package/src/transaction/browser/types/Unisat.ts +80 -80
  255. package/src/transaction/builders/FundingTransaction.ts +40 -40
  256. package/src/transaction/builders/InteractionTransaction.ts +38 -38
  257. package/src/transaction/builders/SharedInteractionTransaction.ts +368 -368
  258. package/src/transaction/builders/TransactionBuilder.ts +665 -665
  259. package/src/transaction/interfaces/Tap.ts +26 -26
  260. package/src/transaction/psbt/PSBTTypes.ts +3 -3
  261. package/src/transaction/shared/TweakedTransaction.ts +537 -537
  262. package/src/utxo/OPNetLimitedProvider.ts +244 -244
  263. package/src/utxo/interfaces/BroadcastResponse.ts +10 -10
  264. package/src/utxo/interfaces/IUTXO.ts +29 -29
  265. package/src/verification/TapscriptVerificator.ts +89 -89
  266. package/src/wbtc/Generate.ts +40 -40
  267. package/src/wbtc/UnwrapGeneration.ts +13 -13
  268. package/src/wbtc/WrappedGenerationParameters.ts +33 -33
  269. package/webpack.config.js +78 -78
  270. /package/build/generators/builders/{MultiSignGenerator.d.ts → MultisignGenerator.d.ts} +0 -0
  271. /package/build/generators/builders/{MultiSignGenerator.js → MultisignGenerator.js} +0 -0
  272. /package/build/generators/{Features.d.ts → features.d.ts} +0 -0
  273. /package/build/generators/{Features.js → features.js} +0 -0
@@ -1,97 +1,97 @@
1
- import { IWallet } from './interfaces/IWallet.js';
2
- import { ECPairInterface } from 'ecpair';
3
- import { EcKeyPair } from './EcKeyPair.js';
4
- import { Network, networks } from 'bitcoinjs-lib';
5
- import { Address } from '@btc-vision/bsi-binary';
6
- import { toXOnly } from 'bitcoinjs-lib/src/psbt/bip371.js';
7
-
8
- /**
9
- * Wallet class
10
- */
11
- export class Wallet {
12
- /**
13
- * Keypair for the wallet
14
- * @private
15
- */
16
- private readonly _keypair: ECPairInterface;
17
-
18
- /**
19
- * P2WPKH address for the wallet
20
- * @private
21
- */
22
- private readonly _p2wpkh: Address;
23
-
24
- /**
25
- * P2TR address for the wallet
26
- * @private
27
- */
28
- private readonly _p2tr: Address;
29
-
30
- constructor(
31
- wallet: IWallet,
32
- public readonly network: Network = networks.bitcoin,
33
- ) {
34
- this._keypair = EcKeyPair.fromWIF(wallet.privateKey, this.network);
35
-
36
- this._p2wpkh = EcKeyPair.getP2WPKHAddress(this._keypair, this.network);
37
- this._p2tr = EcKeyPair.getTaprootAddress(this._keypair, this.network);
38
- }
39
-
40
- /**
41
- * Get the keypair for the wallet
42
- * @returns {ECPairInterface}
43
- */
44
- public get keypair(): ECPairInterface {
45
- if (!this._keypair) throw new Error('Keypair not set');
46
-
47
- return this._keypair;
48
- }
49
-
50
- /**
51
- * Get the P2WPKH address for the wallet
52
- * @returns {Address}
53
- */
54
- public get p2wpkh(): Address {
55
- return this._p2wpkh;
56
- }
57
-
58
- /**
59
- * Get the P2TR address for the wallet
60
- * @returns {Address}
61
- */
62
- public get p2tr(): Address {
63
- return this._p2tr;
64
- }
65
-
66
- /**
67
- * Get the public key for the wallet
68
- * @protected
69
- * @returns {Buffer}
70
- */
71
- public get publicKey(): Buffer {
72
- if (!this.keypair) throw new Error('Keypair not set');
73
-
74
- return this.keypair.publicKey;
75
- }
76
-
77
- /**
78
- * Get the x-only public key for the wallet
79
- * @public
80
- * @returns {Buffer}
81
- */
82
- public get xOnly(): Buffer {
83
- if (!this.keypair) throw new Error('Keypair not set');
84
-
85
- return toXOnly(this.keypair.publicKey);
86
- }
87
-
88
- /**
89
- * Create a wallet from a WIF
90
- * @param {string} wif The WIF
91
- * @param {Network} network The network
92
- * @returns {Wallet} The wallet
93
- */
94
- public static fromWif(wif: string, network: Network = networks.bitcoin): Wallet {
95
- return new Wallet({ privateKey: wif, address: '', publicKey: '' }, network);
96
- }
97
- }
1
+ import { IWallet } from './interfaces/IWallet.js';
2
+ import { ECPairInterface } from 'ecpair';
3
+ import { EcKeyPair } from './EcKeyPair.js';
4
+ import { Network, networks } from 'bitcoinjs-lib';
5
+ import { Address } from '@btc-vision/bsi-binary';
6
+ import { toXOnly } from 'bitcoinjs-lib/src/psbt/bip371.js';
7
+
8
+ /**
9
+ * Wallet class
10
+ */
11
+ export class Wallet {
12
+ /**
13
+ * Keypair for the wallet
14
+ * @private
15
+ */
16
+ private readonly _keypair: ECPairInterface;
17
+
18
+ /**
19
+ * P2WPKH address for the wallet
20
+ * @private
21
+ */
22
+ private readonly _p2wpkh: Address;
23
+
24
+ /**
25
+ * P2TR address for the wallet
26
+ * @private
27
+ */
28
+ private readonly _p2tr: Address;
29
+
30
+ constructor(
31
+ wallet: IWallet,
32
+ public readonly network: Network = networks.bitcoin,
33
+ ) {
34
+ this._keypair = EcKeyPair.fromWIF(wallet.privateKey, this.network);
35
+
36
+ this._p2wpkh = EcKeyPair.getP2WPKHAddress(this._keypair, this.network);
37
+ this._p2tr = EcKeyPair.getTaprootAddress(this._keypair, this.network);
38
+ }
39
+
40
+ /**
41
+ * Get the keypair for the wallet
42
+ * @returns {ECPairInterface}
43
+ */
44
+ public get keypair(): ECPairInterface {
45
+ if (!this._keypair) throw new Error('Keypair not set');
46
+
47
+ return this._keypair;
48
+ }
49
+
50
+ /**
51
+ * Get the P2WPKH address for the wallet
52
+ * @returns {Address}
53
+ */
54
+ public get p2wpkh(): Address {
55
+ return this._p2wpkh;
56
+ }
57
+
58
+ /**
59
+ * Get the P2TR address for the wallet
60
+ * @returns {Address}
61
+ */
62
+ public get p2tr(): Address {
63
+ return this._p2tr;
64
+ }
65
+
66
+ /**
67
+ * Get the public key for the wallet
68
+ * @protected
69
+ * @returns {Buffer}
70
+ */
71
+ public get publicKey(): Buffer {
72
+ if (!this.keypair) throw new Error('Keypair not set');
73
+
74
+ return this.keypair.publicKey;
75
+ }
76
+
77
+ /**
78
+ * Get the x-only public key for the wallet
79
+ * @public
80
+ * @returns {Buffer}
81
+ */
82
+ public get xOnly(): Buffer {
83
+ if (!this.keypair) throw new Error('Keypair not set');
84
+
85
+ return toXOnly(this.keypair.publicKey);
86
+ }
87
+
88
+ /**
89
+ * Create a wallet from a WIF
90
+ * @param {string} wif The WIF
91
+ * @param {Network} network The network
92
+ * @returns {Wallet} The wallet
93
+ */
94
+ public static fromWif(wif: string, network: Network = networks.bitcoin): Wallet {
95
+ return new Wallet({ privateKey: wif, address: '', publicKey: '' }, network);
96
+ }
97
+ }
@@ -1,19 +1,19 @@
1
- /**
2
- * Interface for the generated wallet
3
- */
4
- export interface IWallet {
5
- /**
6
- * The address of the wallet
7
- */
8
- readonly address: string;
9
-
10
- /**
11
- * The private key of the wallet
12
- */
13
- readonly privateKey: string;
14
-
15
- /**
16
- * The public key of the wallet
17
- */
18
- readonly publicKey: string;
19
- }
1
+ /**
2
+ * Interface for the generated wallet
3
+ */
4
+ export interface IWallet {
5
+ /**
6
+ * The address of the wallet
7
+ */
8
+ readonly address: string;
9
+
10
+ /**
11
+ * The private key of the wallet
12
+ */
13
+ readonly privateKey: string;
14
+
15
+ /**
16
+ * The public key of the wallet
17
+ */
18
+ readonly publicKey: string;
19
+ }
@@ -1,23 +1,23 @@
1
- import { Address } from '@btc-vision/bsi-binary';
2
- import { Network, networks } from 'bitcoinjs-lib';
3
-
4
- export abstract class ContractBaseMetadata {
5
- protected abstract readonly address: Address;
6
-
7
- protected constructor(protected network: Network = networks.bitcoin) {}
8
-
9
- /**
10
- * @description Get the contract address
11
- * @param {Network} network - The network to get the address for
12
- */
13
- public static getAddress(network: Network = networks.bitcoin): Address {
14
- throw new Error('Method not implemented.');
15
- }
16
-
17
- /**
18
- * @description Get the contract address
19
- */
20
- public getAddress(): Address {
21
- return this.address;
22
- }
23
- }
1
+ import { Address } from '@btc-vision/bsi-binary';
2
+ import { Network, networks } from 'bitcoinjs-lib';
3
+
4
+ export abstract class ContractBaseMetadata {
5
+ protected abstract readonly address: Address;
6
+
7
+ protected constructor(protected network: Network = networks.bitcoin) {}
8
+
9
+ /**
10
+ * @description Get the contract address
11
+ * @param {Network} network - The network to get the address for
12
+ */
13
+ public static getAddress(network: Network = networks.bitcoin): Address {
14
+ throw new Error('Method not implemented.');
15
+ }
16
+
17
+ /**
18
+ * @description Get the contract address
19
+ */
20
+ public getAddress(): Address {
21
+ return this.address;
22
+ }
23
+ }
@@ -1,7 +1,7 @@
1
- import { IWallet } from '../keypair/interfaces/IWallet.js';
2
- import { BlockchainConfig } from '@btc-vision/bsi-common';
3
-
4
- export interface NetworkInformation {
5
- readonly wallet: IWallet;
6
- readonly config: BlockchainConfig;
7
- }
1
+ import { IWallet } from '../keypair/interfaces/IWallet.js';
2
+ import { BlockchainConfig } from '@btc-vision/bsi-common';
3
+
4
+ export interface NetworkInformation {
5
+ readonly wallet: IWallet;
6
+ readonly config: BlockchainConfig;
7
+ }
package/src/opnet.ts CHANGED
@@ -1,84 +1,84 @@
1
- export { version } from './_version.js';
2
-
3
- /** Bytecode */
4
- export * from './bytecode/Compressor.js';
5
-
6
- /** Generators */
7
- export * from './generators/Generator.js';
8
- export * from './generators/builders/CalldataGenerator.js';
9
- export * from './generators/builders/DeploymentGenerator.js';
10
- export * from './generators/Features.js';
11
-
12
- /** Address */
13
- export * from './generators/AddressGenerator.js';
14
- export * from './verification/TapscriptVerificator.js';
15
-
16
- /** Key Pair */
17
- export * from './keypair/EcKeyPair.js';
18
- export * from './keypair/Wallet.js';
19
- export * from './keypair/interfaces/IWallet.js';
20
- export * from './keypair/AddressVerificator.js';
21
-
22
- /** Metadata */
23
- export * from './metadata/contracts/wBTC.js';
24
- export * from './metadata/ContractBaseMetadata.js';
25
-
26
- /** Network */
27
- export * from './network/NetworkInformation.js';
28
-
29
- /** Signer */
30
- export * from './signer/TweakedSigner.js';
31
-
32
- /** Transaction */
33
- export * from './transaction/TransactionFactory.js';
34
- export * from './transaction/interfaces/ITransactionParameters.js';
35
- export * from './transaction/interfaces/Tap.js';
36
- export * from './transaction/enums/TransactionType.js';
37
-
38
- /** Builders */
39
- export * from './transaction/builders/InteractionTransaction.js';
40
- export * from './transaction/builders/FundingTransaction.js';
41
- export * from './transaction/builders/TransactionBuilder.js';
42
- export * from './transaction/builders/WrapTransaction.js';
43
- export * from './transaction/builders/SharedInteractionTransaction.js';
44
- export * from './transaction/builders/DeploymentTransaction.js';
45
-
46
- /** wBTC */
47
- export * from './wbtc/WrappedGenerationParameters.js';
48
- export * from './wbtc/Generate.js';
49
-
50
- /** Utils */
51
- export * from './utils/BitcoinUtils.js';
52
-
53
- /** UTXO */
54
- export * from './utxo/interfaces/IUTXO.js';
55
- export * from './utxo/OPNetLimitedProvider.js';
56
-
57
- /** Processor */
58
- export * from './transaction/processor/PsbtTransaction.js';
59
-
60
- /** Shared */
61
- export * from './transaction/shared/TweakedTransaction.js';
62
- export * from './utxo/interfaces/BroadcastResponse.js';
63
- export * from './transaction/psbt/PSBTTypes.js';
64
-
65
- export * from './transaction/builders/MultiSignTransaction.js';
66
- export * from './generators/builders/MultiSignGenerator.js';
67
-
68
- export * from './transaction/shared/P2TR_MS.js';
69
- export * from './transaction/builders/UnwrapTransaction.js';
70
-
71
- export * from './wbtc/UnwrapGeneration.js';
72
-
73
- /** Consensus */
74
- export * from './consensus/ConsensusConfig.js';
75
- export * from './consensus/Consensus.js';
76
- export * from './consensus/metadata/RoswellConsensus.js';
77
-
78
- /** Custom signers */
79
- export * from './transaction/browser/BrowserSignerBase.js';
80
- export * from './transaction/browser/extensions/UnisatSigner.js';
81
- export * from './transaction/browser/types/Unisat.js';
82
-
83
- export * from './transaction/browser/Web3Provider.js';
84
- export * from './metadata/tokens.js';
1
+ export { version } from './_version.js';
2
+
3
+ /** Bytecode */
4
+ export * from './bytecode/Compressor.js';
5
+
6
+ /** Generators */
7
+ export * from './generators/Generator.js';
8
+ export * from './generators/builders/CalldataGenerator.js';
9
+ export * from './generators/builders/DeploymentGenerator.js';
10
+ export * from './generators/Features.js';
11
+
12
+ /** Address */
13
+ export * from './generators/AddressGenerator.js';
14
+ export * from './verification/TapscriptVerificator.js';
15
+
16
+ /** Key Pair */
17
+ export * from './keypair/EcKeyPair.js';
18
+ export * from './keypair/Wallet.js';
19
+ export * from './keypair/interfaces/IWallet.js';
20
+ export * from './keypair/AddressVerificator.js';
21
+
22
+ /** Metadata */
23
+ export * from './metadata/contracts/wBTC.js';
24
+ export * from './metadata/ContractBaseMetadata.js';
25
+
26
+ /** Network */
27
+ export * from './network/NetworkInformation.js';
28
+
29
+ /** Signer */
30
+ export * from './signer/TweakedSigner.js';
31
+
32
+ /** Transaction */
33
+ export * from './transaction/TransactionFactory.js';
34
+ export * from './transaction/interfaces/ITransactionParameters.js';
35
+ export * from './transaction/interfaces/Tap.js';
36
+ export * from './transaction/enums/TransactionType.js';
37
+
38
+ /** Builders */
39
+ export * from './transaction/builders/InteractionTransaction.js';
40
+ export * from './transaction/builders/FundingTransaction.js';
41
+ export * from './transaction/builders/TransactionBuilder.js';
42
+ export * from './transaction/builders/WrapTransaction.js';
43
+ export * from './transaction/builders/SharedInteractionTransaction.js';
44
+ export * from './transaction/builders/DeploymentTransaction.js';
45
+
46
+ /** wBTC */
47
+ export * from './wbtc/WrappedGenerationParameters.js';
48
+ export * from './wbtc/Generate.js';
49
+
50
+ /** Utils */
51
+ export * from './utils/BitcoinUtils.js';
52
+
53
+ /** UTXO */
54
+ export * from './utxo/interfaces/IUTXO.js';
55
+ export * from './utxo/OPNetLimitedProvider.js';
56
+
57
+ /** Processor */
58
+ export * from './transaction/processor/PsbtTransaction.js';
59
+
60
+ /** Shared */
61
+ export * from './transaction/shared/TweakedTransaction.js';
62
+ export * from './utxo/interfaces/BroadcastResponse.js';
63
+ export * from './transaction/psbt/PSBTTypes.js';
64
+
65
+ export * from './transaction/builders/MultiSignTransaction.js';
66
+ export * from './generators/builders/MultiSignGenerator.js';
67
+
68
+ export * from './transaction/shared/P2TR_MS.js';
69
+ export * from './transaction/builders/UnwrapTransaction.js';
70
+
71
+ export * from './wbtc/UnwrapGeneration.js';
72
+
73
+ /** Consensus */
74
+ export * from './consensus/ConsensusConfig.js';
75
+ export * from './consensus/Consensus.js';
76
+ export * from './consensus/metadata/RoswellConsensus.js';
77
+
78
+ /** Custom signers */
79
+ export * from './transaction/browser/BrowserSignerBase.js';
80
+ export * from './transaction/browser/extensions/UnisatSigner.js';
81
+ export * from './transaction/browser/types/Unisat.js';
82
+
83
+ export * from './transaction/browser/Web3Provider.js';
84
+ export * from './metadata/tokens.js';
@@ -170,14 +170,15 @@ export class TransactionFactory {
170
170
  // We have to regenerate using the new utxo
171
171
  const outTx: Transaction = await finalTransaction.signTransaction();
172
172
 
173
+ const out2: Output = signedTransaction.outs[1];
173
174
  const refundUTXO: UTXO = {
174
175
  transactionId: signedTransaction.getId(),
175
176
  outputIndex: 1, // always 1
176
177
  scriptPubKey: {
177
- hex: out.script.toString('hex'),
178
+ hex: out2.script.toString('hex'),
178
179
  address: deploymentParameters.from,
179
180
  },
180
- value: BigInt(signedTransaction.outs[1].value),
181
+ value: BigInt(out2.value),
181
182
  };
182
183
 
183
184
  return {
@@ -1,37 +1,37 @@
1
- import { Network, Psbt, Signer } from 'bitcoinjs-lib';
2
- import { Address } from '@btc-vision/bsi-binary';
3
-
4
- /**
5
- * Create a custom keypair.
6
- * @class CustomKeypair
7
- */
8
- export abstract class CustomKeypair implements Signer {
9
- public abstract network: Network;
10
-
11
- public abstract publicKey: Buffer;
12
-
13
- public abstract addresses: Address[];
14
-
15
- public abstract p2tr: Address;
16
- public abstract p2wpkh: Address;
17
-
18
- protected constructor() {}
19
-
20
- public abstract signTaprootInput(
21
- transaction: Psbt,
22
- i: number,
23
- sighashTypes: number[],
24
- ): Promise<void>;
25
-
26
- public abstract signInput(transaction: Psbt, i: number, sighashTypes: number[]): Promise<void>;
27
-
28
- public abstract getPublicKey(): Buffer;
29
-
30
- public abstract sign(hash: Buffer, lowR?: boolean): Buffer;
31
-
32
- public abstract signSchnorr(hash: Buffer): Buffer;
33
-
34
- public abstract verify(hash: Buffer, signature: Buffer): boolean;
35
-
36
- public abstract init(): Promise<void>;
37
- }
1
+ import { Network, Psbt, Signer } from 'bitcoinjs-lib';
2
+ import { Address } from '@btc-vision/bsi-binary';
3
+
4
+ /**
5
+ * Create a custom keypair.
6
+ * @class CustomKeypair
7
+ */
8
+ export abstract class CustomKeypair implements Signer {
9
+ public abstract network: Network;
10
+
11
+ public abstract publicKey: Buffer;
12
+
13
+ public abstract addresses: Address[];
14
+
15
+ public abstract p2tr: Address;
16
+ public abstract p2wpkh: Address;
17
+
18
+ protected constructor() {}
19
+
20
+ public abstract signTaprootInput(
21
+ transaction: Psbt,
22
+ i: number,
23
+ sighashTypes: number[],
24
+ ): Promise<void>;
25
+
26
+ public abstract signInput(transaction: Psbt, i: number, sighashTypes: number[]): Promise<void>;
27
+
28
+ public abstract getPublicKey(): Buffer;
29
+
30
+ public abstract sign(hash: Buffer, lowR?: boolean): Buffer;
31
+
32
+ public abstract signSchnorr(hash: Buffer): Buffer;
33
+
34
+ public abstract verify(hash: Buffer, signature: Buffer): boolean;
35
+
36
+ public abstract init(): Promise<void>;
37
+ }
@@ -1,46 +1,46 @@
1
- import { IInteractionParameters } from '../interfaces/ITransactionParameters.js';
2
- import { UTXO } from '../../utxo/interfaces/IUTXO.js';
3
-
4
- export type InteractionParametersWithoutSigner = Omit<IInteractionParameters, 'signer'>; //| 'utxos'
5
-
6
- export interface BroadcastTransactionOptions {
7
- raw: string;
8
- psbt: boolean;
9
- }
10
-
11
- export interface BroadcastedTransaction {
12
- /** Whether the transaction was successfully broadcasted. */
13
- readonly success: boolean;
14
-
15
- /**
16
- * The result of the broadcasted transaction.
17
- */
18
- readonly result?: string;
19
-
20
- /**
21
- * The error message if the transaction was not successfully broadcasted.
22
- */
23
- readonly error?: string;
24
-
25
- /**
26
- * The number of peers that the transaction was broadcasted to.
27
- */
28
- readonly peers?: number;
29
-
30
- /**
31
- * The identifier of the transaction.
32
- */
33
- readonly identifier: bigint | string;
34
- }
35
-
36
- export interface Web3Provider {
37
- signInteraction(
38
- interactionParameters: InteractionParametersWithoutSigner,
39
- ): Promise<[string, string, UTXO[]]>;
40
-
41
- signAndBroadcastInteraction(
42
- interactionParameters: InteractionParametersWithoutSigner,
43
- ): Promise<[BroadcastedTransaction, BroadcastedTransaction, UTXO[]]>;
44
-
45
- broadcast(transactions: BroadcastTransactionOptions[]): Promise<BroadcastedTransaction[]>;
46
- }
1
+ import { IInteractionParameters } from '../interfaces/ITransactionParameters.js';
2
+ import { UTXO } from '../../utxo/interfaces/IUTXO.js';
3
+
4
+ export type InteractionParametersWithoutSigner = Omit<IInteractionParameters, 'signer'>; //| 'utxos'
5
+
6
+ export interface BroadcastTransactionOptions {
7
+ raw: string;
8
+ psbt: boolean;
9
+ }
10
+
11
+ export interface BroadcastedTransaction {
12
+ /** Whether the transaction was successfully broadcasted. */
13
+ readonly success: boolean;
14
+
15
+ /**
16
+ * The result of the broadcasted transaction.
17
+ */
18
+ readonly result?: string;
19
+
20
+ /**
21
+ * The error message if the transaction was not successfully broadcasted.
22
+ */
23
+ readonly error?: string;
24
+
25
+ /**
26
+ * The number of peers that the transaction was broadcasted to.
27
+ */
28
+ readonly peers?: number;
29
+
30
+ /**
31
+ * The identifier of the transaction.
32
+ */
33
+ readonly identifier: bigint | string;
34
+ }
35
+
36
+ export interface Web3Provider {
37
+ signInteraction(
38
+ interactionParameters: InteractionParametersWithoutSigner,
39
+ ): Promise<[string, string, UTXO[]]>;
40
+
41
+ signAndBroadcastInteraction(
42
+ interactionParameters: InteractionParametersWithoutSigner,
43
+ ): Promise<[BroadcastedTransaction, BroadcastedTransaction, UTXO[]]>;
44
+
45
+ broadcast(transactions: BroadcastTransactionOptions[]): Promise<BroadcastedTransaction[]>;
46
+ }