@bitgo-beta/sdk-coin-btc 1.2.3-alpha.10 → 1.2.3-alpha.100

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.
package/CHANGELOG.md CHANGED
@@ -3,6 +3,292 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [1.7.29](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.29) (2024-01-26)
7
+
8
+ ### Bug Fixes
9
+
10
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
11
+
12
+ ## [1.7.28](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.28) (2024-01-26)
13
+
14
+ ### Bug Fixes
15
+
16
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
17
+
18
+ ## [1.7.27](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.27) (2024-01-25)
19
+
20
+ ### Bug Fixes
21
+
22
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
23
+
24
+ ## [1.7.26](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.26) (2024-01-22)
25
+
26
+ ### Bug Fixes
27
+
28
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
29
+
30
+ ## [1.7.25](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.25) (2024-01-09)
31
+
32
+ ### Bug Fixes
33
+
34
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
35
+
36
+ ## [1.7.24](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.24) (2024-01-03)
37
+
38
+ ### Bug Fixes
39
+
40
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
41
+
42
+ ## [1.7.23](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.23) (2023-12-18)
43
+
44
+ ### Bug Fixes
45
+
46
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
47
+
48
+ ## [1.7.22](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.22) (2023-12-12)
49
+
50
+ ### Bug Fixes
51
+
52
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
53
+
54
+ ## [1.7.21](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.21) (2023-12-09)
55
+
56
+ ### Bug Fixes
57
+
58
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
59
+
60
+ ## [1.7.20](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.20) (2023-12-05)
61
+
62
+ ### Bug Fixes
63
+
64
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
65
+
66
+ ## [1.7.19](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.19) (2023-11-28)
67
+
68
+ ### Bug Fixes
69
+
70
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
71
+
72
+ ## [1.7.18](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.18) (2023-11-24)
73
+
74
+ ### Bug Fixes
75
+
76
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
77
+
78
+ ## [1.7.17](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.17) (2023-11-17)
79
+
80
+ ### Bug Fixes
81
+
82
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
83
+
84
+ ## [1.7.16](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.16) (2023-11-13)
85
+
86
+ ### Bug Fixes
87
+
88
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
89
+
90
+ ## [1.7.15](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.15) (2023-11-13)
91
+
92
+ ### Bug Fixes
93
+
94
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
95
+
96
+ ## [1.7.14](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.14) (2023-11-13)
97
+
98
+ ### Bug Fixes
99
+
100
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
101
+
102
+ ## [1.7.13](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.13) (2023-10-20)
103
+
104
+ ### Bug Fixes
105
+
106
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
107
+
108
+ ## [1.7.12](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.12) (2023-10-18)
109
+
110
+ ### Bug Fixes
111
+
112
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
113
+
114
+ ## [1.7.11](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.11) (2023-09-25)
115
+
116
+ ### Bug Fixes
117
+
118
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
119
+
120
+ ## [1.7.10](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.10) (2023-09-09)
121
+
122
+ ### Bug Fixes
123
+
124
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
125
+
126
+ ## [1.7.9](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.9) (2023-09-09)
127
+
128
+ ### Bug Fixes
129
+
130
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
131
+
132
+ ## [1.7.8](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.8) (2023-09-07)
133
+
134
+ ### Bug Fixes
135
+
136
+ - **abstract-utxo:** upper case address should return false ([f0b6c46](https://github.com/BitGo/BitGoJS/commit/f0b6c467daaa0e43bb2923993fb238c7a4ce6f59))
137
+
138
+ ## [1.7.7](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.7) (2023-09-05)
139
+
140
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
141
+
142
+ ## [1.7.6](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.6) (2023-09-01)
143
+
144
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
145
+
146
+ ## [1.7.5](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.5) (2023-08-29)
147
+
148
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
149
+
150
+ ## [1.7.4](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.4) (2023-08-25)
151
+
152
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
153
+
154
+ ## [1.7.3](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.3) (2023-08-24)
155
+
156
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
157
+
158
+ ## [1.7.2](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.2) (2023-08-16)
159
+
160
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
161
+
162
+ ## [1.7.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.7.0...@bitgo/sdk-coin-btc@1.7.1) (2023-08-16)
163
+
164
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
165
+
166
+ # [1.7.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.5.8...@bitgo/sdk-coin-btc@1.7.0) (2023-08-04)
167
+
168
+ ### Features
169
+
170
+ - **root:** add node 18 to engines and CI ([9cc6a70](https://github.com/BitGo/BitGoJS/commit/9cc6a70ba807161b7c6a0ebe3d7c47f25c7c8eca))
171
+ - **root:** remove node 14 from engines ([6ec47cb](https://github.com/BitGo/BitGoJS/commit/6ec47cbd7996cc78bbf2cf7f16595c24fe43cd41))
172
+
173
+ # [1.6.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.5.8...@bitgo/sdk-coin-btc@1.6.0) (2023-07-28)
174
+
175
+ ### Features
176
+
177
+ - **root:** add node 18 to engines and CI ([9cc6a70](https://github.com/BitGo/BitGoJS/commit/9cc6a70ba807161b7c6a0ebe3d7c47f25c7c8eca))
178
+ - **root:** remove node 14 from engines ([6ec47cb](https://github.com/BitGo/BitGoJS/commit/6ec47cbd7996cc78bbf2cf7f16595c24fe43cd41))
179
+
180
+ ## [1.5.8](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.5.7...@bitgo/sdk-coin-btc@1.5.8) (2023-07-18)
181
+
182
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
183
+
184
+ ## [1.5.7](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.5.6...@bitgo/sdk-coin-btc@1.5.7) (2023-06-21)
185
+
186
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
187
+
188
+ ## [1.5.6](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.5.5...@bitgo/sdk-coin-btc@1.5.6) (2023-06-14)
189
+
190
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
191
+
192
+ ## [1.5.5](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.5.4...@bitgo/sdk-coin-btc@1.5.5) (2023-06-13)
193
+
194
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
195
+
196
+ ## [1.5.4](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.5.3...@bitgo/sdk-coin-btc@1.5.4) (2023-06-07)
197
+
198
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
199
+
200
+ ## [1.5.3](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.5.2...@bitgo/sdk-coin-btc@1.5.3) (2023-06-05)
201
+
202
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
203
+
204
+ ## [1.5.2](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.5.1...@bitgo/sdk-coin-btc@1.5.2) (2023-05-25)
205
+
206
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
207
+
208
+ ## [1.5.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.5.0...@bitgo/sdk-coin-btc@1.5.1) (2023-05-17)
209
+
210
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
211
+
212
+ # [1.5.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.4.3...@bitgo/sdk-coin-btc@1.5.0) (2023-05-10)
213
+
214
+ ### Features
215
+
216
+ - **sdk-coin-btc:** find & use supplementary unspents in case ([fc321ee](https://github.com/BitGo/BitGoJS/commit/fc321ee1fccfae2d6676070fb32d8d4dee531aaf))
217
+
218
+ ## [1.4.3](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.4.2...@bitgo/sdk-coin-btc@1.4.3) (2023-05-03)
219
+
220
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
221
+
222
+ ## [1.4.2](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.4.1...@bitgo/sdk-coin-btc@1.4.2) (2023-04-25)
223
+
224
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
225
+
226
+ ## [1.4.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.4.0...@bitgo/sdk-coin-btc@1.4.1) (2023-04-20)
227
+
228
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
229
+
230
+ # [1.4.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.3.6...@bitgo/sdk-coin-btc@1.4.0) (2023-04-13)
231
+
232
+ ### Bug Fixes
233
+
234
+ - fix error when using feeOutput ([4fb6214](https://github.com/BitGo/BitGoJS/commit/4fb6214a2596c33563eceae4f360302e95060354))
235
+ - **sdk-coin-btc:** convert unspent value to BigInt ([ed7d967](https://github.com/BitGo/BitGoJS/commit/ed7d96717919eb266a6a319e8c53552a058d5edf))
236
+ - **sdk-coin-btc:** get rootwalletkeys for inscription transfer ([b160186](https://github.com/BitGo/BitGoJS/commit/b16018643273e20ea6908f51149139def7209932))
237
+ - use half signed commit txn when signing reveal ([c0fb50b](https://github.com/BitGo/BitGoJS/commit/c0fb50bd6b3b5f4322420a8574a1a661d15ee21d))
238
+ - use p2wsh and internalChainCode for changeAddress creation ([4a5b79c](https://github.com/BitGo/BitGoJS/commit/4a5b79cce0e41ebe31e5d1ee7c5c05b2f7c3d414))
239
+ - used derived keys and use xonly public key for script ([382ce07](https://github.com/BitGo/BitGoJS/commit/382ce073b660f2d002176e3a8fdcadcf5bbaff6a))
240
+
241
+ ### Features
242
+
243
+ - add inscription builder class ([214eafe](https://github.com/BitGo/BitGoJS/commit/214eafe48e8d12fd5d58efac289bab33bbd46fd3))
244
+ - **sdk-coin-btc:** transfer an inscription ([bc2eda8](https://github.com/BitGo/BitGoJS/commit/bc2eda86f73a4e4451fd6accbc2a794f08649b78))
245
+
246
+ ## [1.3.6](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.3.5...@bitgo/sdk-coin-btc@1.3.6) (2023-02-17)
247
+
248
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
249
+
250
+ ## [1.3.5](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.3.2...@bitgo/sdk-coin-btc@1.3.5) (2023-02-16)
251
+
252
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
253
+
254
+ ## [1.3.4](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.3.2...@bitgo/sdk-coin-btc@1.3.4) (2023-02-08)
255
+
256
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
257
+
258
+ ## [1.3.3](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.3.2...@bitgo/sdk-coin-btc@1.3.3) (2023-01-30)
259
+
260
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
261
+
262
+ ## [1.3.2](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.3.1...@bitgo/sdk-coin-btc@1.3.2) (2023-01-25)
263
+
264
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
265
+
266
+ ## [1.3.1](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.3.0...@bitgo/sdk-coin-btc@1.3.1) (2022-12-23)
267
+
268
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
269
+
270
+ # [1.3.0](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.2.8...@bitgo/sdk-coin-btc@1.3.0) (2022-12-20)
271
+
272
+ ### Features
273
+
274
+ - **core:** add register to base interface ([2c08793](https://github.com/BitGo/BitGoJS/commit/2c087937608f6fa6246cf44a29c91ef40713fb74))
275
+
276
+ ## [1.2.8](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.2.7...@bitgo/sdk-coin-btc@1.2.8) (2022-12-09)
277
+
278
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
279
+
280
+ ## [1.2.7](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.2.6...@bitgo/sdk-coin-btc@1.2.7) (2022-12-06)
281
+
282
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
283
+
284
+ ## [1.2.6](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.2.5...@bitgo/sdk-coin-btc@1.2.6) (2022-12-01)
285
+
286
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
287
+
288
+ ## [1.2.5](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.2.0...@bitgo/sdk-coin-btc@1.2.5) (2022-11-29)
289
+
290
+ **Note:** Version bump only for package @bitgo/sdk-coin-btc
291
+
6
292
  ## [1.2.4](https://github.com/BitGo/BitGoJS/compare/@bitgo/sdk-coin-btc@1.2.0...@bitgo/sdk-coin-btc@1.2.4) (2022-11-04)
7
293
 
8
294
  **Note:** Version bump only for package @bitgo/sdk-coin-btc
package/dist/src/btc.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { AbstractUtxoCoin, UtxoNetwork } from '@bitgo-beta/abstract-utxo';
2
- import { BitGoBase, BaseCoin, VerifyRecoveryTransactionOptions as BaseVerifyRecoveryTransactionOptions } from '@bitgo-beta/sdk-core';
2
+ import { BitGoBase, BaseCoin, VerifyRecoveryTransactionOptions as BaseVerifyRecoveryTransactionOptions, Wallet } from '@bitgo-beta/sdk-core';
3
+ import { InscriptionBuilder } from './inscriptionBuilder';
3
4
  export interface VerifyRecoveryTransactionOptions extends BaseVerifyRecoveryTransactionOptions {
4
5
  transactionHex: string;
5
6
  }
@@ -11,5 +12,6 @@ export declare class Btc extends AbstractUtxoCoin {
11
12
  getFullName(): string;
12
13
  supportsBlockTarget(): boolean;
13
14
  supportsLightning(): boolean;
15
+ getInscriptionBuilder(wallet: Wallet): InscriptionBuilder;
14
16
  }
15
17
  //# sourceMappingURL=btc.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"btc.d.ts","sourceRoot":"","sources":["../../src/btc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EACL,SAAS,EACT,QAAQ,EACR,gCAAgC,IAAI,oCAAoC,EACzE,MAAM,sBAAsB,CAAC;AAG9B,MAAM,WAAW,gCAAiC,SAAQ,oCAAoC;IAC5F,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,GAAI,SAAQ,gBAAgB;gBAC3B,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,WAAW;IAInD,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,QAAQ;IAIjD,QAAQ,IAAI,MAAM;IAIlB,SAAS,IAAI,MAAM;IAInB,WAAW,IAAI,MAAM;IAIrB,mBAAmB,IAAI,OAAO;IAI9B,iBAAiB,IAAI,OAAO;CAG7B"}
1
+ {"version":3,"file":"btc.d.ts","sourceRoot":"","sources":["../../src/btc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EACL,SAAS,EACT,QAAQ,EACR,gCAAgC,IAAI,oCAAoC,EACxE,MAAM,EACP,MAAM,sBAAsB,CAAC;AAE9B,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,WAAW,gCAAiC,SAAQ,oCAAoC;IAC5F,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,GAAI,SAAQ,gBAAgB;gBAC3B,KAAK,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,WAAW;IAInD,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,QAAQ;IAIjD,QAAQ,IAAI,MAAM;IAIlB,SAAS,IAAI,MAAM;IAInB,WAAW,IAAI,MAAM;IAIrB,mBAAmB,IAAI,OAAO;IAI9B,iBAAiB,IAAI,OAAO;IAI5B,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB;CAG1D"}
package/dist/src/btc.js CHANGED
@@ -22,6 +22,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
22
22
  exports.Btc = void 0;
23
23
  const abstract_utxo_1 = require("@bitgo-beta/abstract-utxo");
24
24
  const utxolib = __importStar(require("@bitgo-beta/utxo-lib"));
25
+ const inscriptionBuilder_1 = require("./inscriptionBuilder");
25
26
  class Btc extends abstract_utxo_1.AbstractUtxoCoin {
26
27
  constructor(bitgo, network) {
27
28
  super(bitgo, network || utxolib.networks.bitcoin);
@@ -44,6 +45,9 @@ class Btc extends abstract_utxo_1.AbstractUtxoCoin {
44
45
  supportsLightning() {
45
46
  return true;
46
47
  }
48
+ getInscriptionBuilder(wallet) {
49
+ return new inscriptionBuilder_1.InscriptionBuilder(wallet, this);
50
+ }
47
51
  }
48
52
  exports.Btc = Btc;
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnRjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2J0Yy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkRBQTBFO0FBTTFFLDhEQUFnRDtBQU1oRCxNQUFhLEdBQUksU0FBUSxnQ0FBZ0I7SUFDdkMsWUFBWSxLQUFnQixFQUFFLE9BQXFCO1FBQ2pELEtBQUssQ0FBQyxLQUFLLEVBQUUsT0FBTyxJQUFJLE9BQU8sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsS0FBZ0I7UUFDcEMsT0FBTyxJQUFJLEdBQUcsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRUQsUUFBUTtRQUNOLE9BQU8sS0FBSyxDQUFDO0lBQ2YsQ0FBQztJQUVELFNBQVM7UUFDUCxPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxXQUFXO1FBQ1QsT0FBTyxTQUFTLENBQUM7SUFDbkIsQ0FBQztJQUVELG1CQUFtQjtRQUNqQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFRCxpQkFBaUI7UUFDZixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7Q0FDRjtBQTVCRCxrQkE0QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdFV0eG9Db2luLCBVdHhvTmV0d29yayB9IGZyb20gJ0BiaXRnby1iZXRhL2Fic3RyYWN0LXV0eG8nO1xuaW1wb3J0IHtcbiAgQml0R29CYXNlLFxuICBCYXNlQ29pbixcbiAgVmVyaWZ5UmVjb3ZlcnlUcmFuc2FjdGlvbk9wdGlvbnMgYXMgQmFzZVZlcmlmeVJlY292ZXJ5VHJhbnNhY3Rpb25PcHRpb25zLFxufSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5pbXBvcnQgKiBhcyB1dHhvbGliIGZyb20gJ0BiaXRnby1iZXRhL3V0eG8tbGliJztcblxuZXhwb3J0IGludGVyZmFjZSBWZXJpZnlSZWNvdmVyeVRyYW5zYWN0aW9uT3B0aW9ucyBleHRlbmRzIEJhc2VWZXJpZnlSZWNvdmVyeVRyYW5zYWN0aW9uT3B0aW9ucyB7XG4gIHRyYW5zYWN0aW9uSGV4OiBzdHJpbmc7XG59XG5cbmV4cG9ydCBjbGFzcyBCdGMgZXh0ZW5kcyBBYnN0cmFjdFV0eG9Db2luIHtcbiAgY29uc3RydWN0b3IoYml0Z286IEJpdEdvQmFzZSwgbmV0d29yaz86IFV0eG9OZXR3b3JrKSB7XG4gICAgc3VwZXIoYml0Z28sIG5ldHdvcmsgfHwgdXR4b2xpYi5uZXR3b3Jrcy5iaXRjb2luKTtcbiAgfVxuXG4gIHN0YXRpYyBjcmVhdGVJbnN0YW5jZShiaXRnbzogQml0R29CYXNlKTogQmFzZUNvaW4ge1xuICAgIHJldHVybiBuZXcgQnRjKGJpdGdvKTtcbiAgfVxuXG4gIGdldENoYWluKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdidGMnO1xuICB9XG5cbiAgZ2V0RmFtaWx5KCk6IHN0cmluZyB7XG4gICAgcmV0dXJuICdidGMnO1xuICB9XG5cbiAgZ2V0RnVsbE5hbWUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ0JpdGNvaW4nO1xuICB9XG5cbiAgc3VwcG9ydHNCbG9ja1RhcmdldCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIHN1cHBvcnRzTGlnaHRuaW5nKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG59XG4iXX0=
53
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnRjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2J0Yy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkRBQTBFO0FBTzFFLDhEQUFnRDtBQUNoRCw2REFBMEQ7QUFNMUQsTUFBYSxHQUFJLFNBQVEsZ0NBQWdCO0lBQ3ZDLFlBQVksS0FBZ0IsRUFBRSxPQUFxQjtRQUNqRCxLQUFLLENBQUMsS0FBSyxFQUFFLE9BQU8sSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRCxNQUFNLENBQUMsY0FBYyxDQUFDLEtBQWdCO1FBQ3BDLE9BQU8sSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDeEIsQ0FBQztJQUVELFFBQVE7UUFDTixPQUFPLEtBQUssQ0FBQztJQUNmLENBQUM7SUFFRCxTQUFTO1FBQ1AsT0FBTyxLQUFLLENBQUM7SUFDZixDQUFDO0lBRUQsV0FBVztRQUNULE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRCxtQkFBbUI7UUFDakIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsaUJBQWlCO1FBQ2YsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQscUJBQXFCLENBQUMsTUFBYztRQUNsQyxPQUFPLElBQUksdUNBQWtCLENBQUMsTUFBTSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQzlDLENBQUM7Q0FDRjtBQWhDRCxrQkFnQ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdFV0eG9Db2luLCBVdHhvTmV0d29yayB9IGZyb20gJ0BiaXRnby1iZXRhL2Fic3RyYWN0LXV0eG8nO1xuaW1wb3J0IHtcbiAgQml0R29CYXNlLFxuICBCYXNlQ29pbixcbiAgVmVyaWZ5UmVjb3ZlcnlUcmFuc2FjdGlvbk9wdGlvbnMgYXMgQmFzZVZlcmlmeVJlY292ZXJ5VHJhbnNhY3Rpb25PcHRpb25zLFxuICBXYWxsZXQsXG59IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCAqIGFzIHV0eG9saWIgZnJvbSAnQGJpdGdvLWJldGEvdXR4by1saWInO1xuaW1wb3J0IHsgSW5zY3JpcHRpb25CdWlsZGVyIH0gZnJvbSAnLi9pbnNjcmlwdGlvbkJ1aWxkZXInO1xuXG5leHBvcnQgaW50ZXJmYWNlIFZlcmlmeVJlY292ZXJ5VHJhbnNhY3Rpb25PcHRpb25zIGV4dGVuZHMgQmFzZVZlcmlmeVJlY292ZXJ5VHJhbnNhY3Rpb25PcHRpb25zIHtcbiAgdHJhbnNhY3Rpb25IZXg6IHN0cmluZztcbn1cblxuZXhwb3J0IGNsYXNzIEJ0YyBleHRlbmRzIEFic3RyYWN0VXR4b0NvaW4ge1xuICBjb25zdHJ1Y3RvcihiaXRnbzogQml0R29CYXNlLCBuZXR3b3JrPzogVXR4b05ldHdvcmspIHtcbiAgICBzdXBlcihiaXRnbywgbmV0d29yayB8fCB1dHhvbGliLm5ldHdvcmtzLmJpdGNvaW4pO1xuICB9XG5cbiAgc3RhdGljIGNyZWF0ZUluc3RhbmNlKGJpdGdvOiBCaXRHb0Jhc2UpOiBCYXNlQ29pbiB7XG4gICAgcmV0dXJuIG5ldyBCdGMoYml0Z28pO1xuICB9XG5cbiAgZ2V0Q2hhaW4oKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ2J0Yyc7XG4gIH1cblxuICBnZXRGYW1pbHkoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ2J0Yyc7XG4gIH1cblxuICBnZXRGdWxsTmFtZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiAnQml0Y29pbic7XG4gIH1cblxuICBzdXBwb3J0c0Jsb2NrVGFyZ2V0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0cnVlO1xuICB9XG5cbiAgc3VwcG9ydHNMaWdodG5pbmcoKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRydWU7XG4gIH1cblxuICBnZXRJbnNjcmlwdGlvbkJ1aWxkZXIod2FsbGV0OiBXYWxsZXQpOiBJbnNjcmlwdGlvbkJ1aWxkZXIge1xuICAgIHJldHVybiBuZXcgSW5zY3JpcHRpb25CdWlsZGVyKHdhbGxldCwgdGhpcyk7XG4gIH1cbn1cbiJdfQ==
@@ -1,3 +1,4 @@
1
1
  export * from './btc';
2
2
  export * from './tbtc';
3
+ export * from './register';
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC"}
package/dist/src/index.js CHANGED
@@ -12,4 +12,5 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  __exportStar(require("./btc"), exports);
14
14
  __exportStar(require("./tbtc"), exports);
15
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsd0NBQXNCO0FBQ3RCLHlDQUF1QiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vYnRjJztcbmV4cG9ydCAqIGZyb20gJy4vdGJ0Yyc7XG4iXX0=
15
+ __exportStar(require("./register"), exports);
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsd0NBQXNCO0FBQ3RCLHlDQUF1QjtBQUN2Qiw2Q0FBMkIiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2J0Yyc7XG5leHBvcnQgKiBmcm9tICcuL3RidGMnO1xuZXhwb3J0ICogZnJvbSAnLi9yZWdpc3Rlcic7XG4iXX0=
@@ -0,0 +1,51 @@
1
+ /// <reference types="node" />
2
+ import { AbstractUtxoCoin } from '@bitgo-beta/abstract-utxo';
3
+ import { IInscriptionBuilder, IWallet, PrebuildTransactionResult, PreparedInscriptionRevealData, SubmitTransactionResponse } from '@bitgo-beta/sdk-core';
4
+ import * as utxolib from '@bitgo-beta/utxo-lib';
5
+ export declare class InscriptionBuilder implements IInscriptionBuilder {
6
+ private readonly wallet;
7
+ private readonly coin;
8
+ constructor(wallet: IWallet, coin: AbstractUtxoCoin);
9
+ prepareReveal(inscriptionData: Buffer, contentType: string): Promise<PreparedInscriptionRevealData>;
10
+ private prepareTransferWithExtraInputs;
11
+ /**
12
+ * Build a transaction to send an inscription
13
+ * @param satPoint Satpoint you want to send
14
+ * @param recipient Address you want to send to
15
+ * @param feeRateSatKB Fee rate for transaction
16
+ * @param signer first signer of the transaction
17
+ * @param cosigner second signer of the transaction
18
+ * @param inscriptionConstraints.minChangeOutput (optional) the minimum size of the change output
19
+ * @param inscriptionConstraints.minInscriptionOutput (optional) the minimum number of sats of the output containing the inscription
20
+ * @param inscriptionConstraints.maxInscriptionOutput (optional) the maximum number of sats of the output containing the inscription
21
+ * @param changeAddressType Address type of the change address
22
+ */
23
+ prepareTransfer(satPoint: string, recipient: string, feeRateSatKB: number, { signer, cosigner, inscriptionConstraints, changeAddressType, }: {
24
+ signer?: utxolib.bitgo.KeyName;
25
+ cosigner?: utxolib.bitgo.KeyName;
26
+ inscriptionConstraints?: {
27
+ minChangeOutput?: bigint;
28
+ minInscriptionOutput?: bigint;
29
+ maxInscriptionOutput?: bigint;
30
+ };
31
+ changeAddressType?: utxolib.bitgo.outputScripts.ScriptType2Of3;
32
+ }): Promise<PrebuildTransactionResult>;
33
+ /**
34
+ *
35
+ * @param walletPassphrase
36
+ * @param tapLeafScript
37
+ * @param commitAddress
38
+ * @param unsignedCommitTx
39
+ * @param commitTransactionUnspents
40
+ * @param recipientAddress
41
+ * @param inscriptionData
42
+ */
43
+ signAndSendReveal(walletPassphrase: string, tapLeafScript: utxolib.bitgo.TapLeafScript, commitAddress: string, unsignedCommitTx: Buffer, commitTransactionUnspents: utxolib.bitgo.WalletUnspent[], recipientAddress: string, inscriptionData: Buffer): Promise<SubmitTransactionResponse>;
44
+ /**
45
+ * Sign and send a transaction that transfers an inscription
46
+ * @param walletPassphrase passphrase to unlock your keys
47
+ * @param txPrebuild this is the output of `inscription.prepareTransfer`
48
+ */
49
+ signAndSendTransfer(walletPassphrase: string, txPrebuild: PrebuildTransactionResult): Promise<SubmitTransactionResponse>;
50
+ }
51
+ //# sourceMappingURL=inscriptionBuilder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"inscriptionBuilder.d.ts","sourceRoot":"","sources":["../../src/inscriptionBuilder.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,gBAAgB,EAAiC,MAAM,2BAA2B,CAAC;AAC5F,OAAO,EAEL,mBAAmB,EACnB,OAAO,EAEP,yBAAyB,EACzB,6BAA6B,EAC7B,yBAAyB,EAG1B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAiBhD,qBAAa,kBAAmB,YAAW,mBAAmB;IAC5D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAU;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAmB;gBAE5B,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,gBAAgB;IAK7C,aAAa,CAAC,eAAe,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,6BAA6B,CAAC;YAW3F,8BAA8B;IAuE5C;;;;;;;;;;;OAWG;IACG,eAAe,CACnB,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,MAAM,EACpB,EACE,MAAe,EACf,QAAkB,EAClB,sBAAsD,EACtD,iBAA2B,GAC5B,EAAE;QACD,MAAM,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;QAC/B,QAAQ,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC;QACjC,sBAAsB,CAAC,EAAE;YACvB,eAAe,CAAC,EAAE,MAAM,CAAC;YACzB,oBAAoB,CAAC,EAAE,MAAM,CAAC;YAC9B,oBAAoB,CAAC,EAAE,MAAM,CAAC;SAC/B,CAAC;QACF,iBAAiB,CAAC,EAAE,OAAO,CAAC,KAAK,CAAC,aAAa,CAAC,cAAc,CAAC;KAChE,GACA,OAAO,CAAC,yBAAyB,CAAC;IAyCrC;;;;;;;;;OASG;IACG,iBAAiB,CACrB,gBAAgB,EAAE,MAAM,EACxB,aAAa,EAAE,OAAO,CAAC,KAAK,CAAC,aAAa,EAC1C,aAAa,EAAE,MAAM,EACrB,gBAAgB,EAAE,MAAM,EACxB,yBAAyB,EAAE,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,EACxD,gBAAgB,EAAE,MAAM,EACxB,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,yBAAyB,CAAC;IAgCrC;;;;OAIG;IACG,mBAAmB,CACvB,gBAAgB,EAAE,MAAM,EACxB,UAAU,EAAE,yBAAyB,GACpC,OAAO,CAAC,yBAAyB,CAAC;CAOtC"}
@@ -0,0 +1,169 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ var __importDefault = (this && this.__importDefault) || function (mod) {
22
+ return (mod && mod.__esModule) ? mod : { "default": mod };
23
+ };
24
+ Object.defineProperty(exports, "__esModule", { value: true });
25
+ exports.InscriptionBuilder = void 0;
26
+ const abstract_utxo_1 = require("@bitgo-beta/abstract-utxo");
27
+ const sdk_core_1 = require("@bitgo-beta/sdk-core");
28
+ const utxolib = __importStar(require("@bitgo-beta/utxo-lib"));
29
+ const utxo_ord_1 = require("@bitgo-beta/utxo-ord");
30
+ const assert_1 = __importDefault(require("assert"));
31
+ const SUPPLEMENTARY_UNSPENTS_MIN_VALUE_SATS = [0, 20000, 200000];
32
+ class InscriptionBuilder {
33
+ constructor(wallet, coin) {
34
+ this.wallet = wallet;
35
+ this.coin = coin;
36
+ }
37
+ async prepareReveal(inscriptionData, contentType) {
38
+ const user = await this.wallet.baseCoin.keychains().get({ id: this.wallet.keyIds()[sdk_core_1.KeyIndices.USER] });
39
+ assert_1.default(user.pub);
40
+ const derived = this.coin.deriveKeyWithSeed({ key: user.pub, seed: inscriptionData.toString() });
41
+ const compressedPublicKey = sdk_core_1.xpubToCompressedPub(derived.key);
42
+ const xOnlyPublicKey = utxolib.bitgo.outputScripts.toXOnlyPublicKey(Buffer.from(compressedPublicKey, 'hex'));
43
+ return utxo_ord_1.inscriptions.createInscriptionRevealData(xOnlyPublicKey, contentType, inscriptionData, this.coin.network);
44
+ }
45
+ async prepareTransferWithExtraInputs(satPoint, feeRateSatKB, { signer, cosigner, inscriptionConstraints, }, rootWalletKeys, outputs, inscriptionUnspents, supplementaryUnspentsMinValue) {
46
+ let supplementaryUnspents = [];
47
+ if (supplementaryUnspentsMinValue > 0) {
48
+ const response = await this.wallet.unspents({
49
+ minValue: supplementaryUnspentsMinValue,
50
+ });
51
+ // Filter out the inscription unspent from the supplementary unspents
52
+ supplementaryUnspents = response.unspents
53
+ .filter((unspent) => unspent.id !== inscriptionUnspents[0].id)
54
+ .slice(0, utxo_ord_1.MAX_UNSPENTS_FOR_OUTPUT_LAYOUT - 1)
55
+ .map((unspent) => {
56
+ unspent.value = BigInt(unspent.value);
57
+ return unspent;
58
+ });
59
+ }
60
+ const psbt = utxo_ord_1.createPsbtForSingleInscriptionPassingTransaction(this.coin.network, {
61
+ walletKeys: rootWalletKeys,
62
+ signer,
63
+ cosigner,
64
+ }, inscriptionUnspents, satPoint, outputs, { feeRateSatKB, ...inscriptionConstraints }, { supplementaryUnspents });
65
+ if (!psbt) {
66
+ throw new Error('Fee too high for the selected unspent with this fee rate');
67
+ }
68
+ const allUnspents = [...inscriptionUnspents, ...supplementaryUnspents];
69
+ // TODO: Remove the call to this function because it's already called inside the createPsbt function above.
70
+ // Create & use a getFee function inside the created PSBT instead, lack of which necessitates a duplicate call here.
71
+ const outputLayout = utxo_ord_1.findOutputLayoutForWalletUnspents(allUnspents, satPoint, outputs, {
72
+ feeRateSatKB,
73
+ ...inscriptionConstraints,
74
+ });
75
+ if (!outputLayout) {
76
+ throw new Error('Fee too high for the selected unspent with this fee rate');
77
+ }
78
+ return {
79
+ walletId: this.wallet.id(),
80
+ txHex: psbt.getUnsignedTx().toHex(),
81
+ txInfo: { unspents: allUnspents },
82
+ feeInfo: { fee: Number(outputLayout.layout.feeOutput), feeString: outputLayout.layout.feeOutput.toString() },
83
+ };
84
+ }
85
+ /**
86
+ * Build a transaction to send an inscription
87
+ * @param satPoint Satpoint you want to send
88
+ * @param recipient Address you want to send to
89
+ * @param feeRateSatKB Fee rate for transaction
90
+ * @param signer first signer of the transaction
91
+ * @param cosigner second signer of the transaction
92
+ * @param inscriptionConstraints.minChangeOutput (optional) the minimum size of the change output
93
+ * @param inscriptionConstraints.minInscriptionOutput (optional) the minimum number of sats of the output containing the inscription
94
+ * @param inscriptionConstraints.maxInscriptionOutput (optional) the maximum number of sats of the output containing the inscription
95
+ * @param changeAddressType Address type of the change address
96
+ */
97
+ async prepareTransfer(satPoint, recipient, feeRateSatKB, { signer = 'user', cosigner = 'bitgo', inscriptionConstraints = utxo_ord_1.DefaultInscriptionConstraints, changeAddressType = 'p2wsh', }) {
98
+ assert_1.default(utxo_ord_1.isSatPoint(satPoint));
99
+ const rootWalletKeys = await abstract_utxo_1.getWalletKeys(this.coin, this.wallet);
100
+ const parsedSatPoint = utxo_ord_1.parseSatPoint(satPoint);
101
+ const transaction = await this.wallet.getTransaction({ txHash: parsedSatPoint.txid });
102
+ const unspents = [transaction.outputs[parsedSatPoint.vout]];
103
+ unspents[0].value = BigInt(unspents[0].value);
104
+ const changeAddress = await this.wallet.createAddress({
105
+ chain: utxolib.bitgo.getInternalChainCode(changeAddressType),
106
+ });
107
+ const outputs = {
108
+ inscriptionRecipient: recipient,
109
+ changeOutputs: [
110
+ { chain: changeAddress.chain, index: changeAddress.index },
111
+ { chain: changeAddress.chain, index: changeAddress.index },
112
+ ],
113
+ };
114
+ for (const supplementaryUnspentsMinValue of SUPPLEMENTARY_UNSPENTS_MIN_VALUE_SATS) {
115
+ try {
116
+ return await this.prepareTransferWithExtraInputs(satPoint, feeRateSatKB, { signer, cosigner, inscriptionConstraints }, rootWalletKeys, outputs, unspents, supplementaryUnspentsMinValue);
117
+ }
118
+ catch (error) {
119
+ if (!(error instanceof utxo_ord_1.ErrorNoLayout)) {
120
+ throw error; // Propagate error if it's not an ErrorNoLayout
121
+ } // Otherwise continue trying with higher minValue for supplementary unspents
122
+ }
123
+ }
124
+ throw new Error('Fee too high for the selected unspent with this fee rate'); // Exhausted all tries to supplement
125
+ }
126
+ /**
127
+ *
128
+ * @param walletPassphrase
129
+ * @param tapLeafScript
130
+ * @param commitAddress
131
+ * @param unsignedCommitTx
132
+ * @param commitTransactionUnspents
133
+ * @param recipientAddress
134
+ * @param inscriptionData
135
+ */
136
+ async signAndSendReveal(walletPassphrase, tapLeafScript, commitAddress, unsignedCommitTx, commitTransactionUnspents, recipientAddress, inscriptionData) {
137
+ const userKeychain = await this.wallet.baseCoin.keychains().get({ id: this.wallet.keyIds()[sdk_core_1.KeyIndices.USER] });
138
+ const xprv = await this.wallet.getUserPrv({ keychain: userKeychain, walletPassphrase });
139
+ const halfSignedCommitTransaction = (await this.wallet.signTransaction({
140
+ prv: xprv,
141
+ txPrebuild: {
142
+ txHex: unsignedCommitTx.toString('hex'),
143
+ txInfo: { unspents: commitTransactionUnspents },
144
+ },
145
+ }));
146
+ const derived = this.coin.deriveKeyWithSeed({ key: xprv, seed: inscriptionData.toString() });
147
+ const prv = sdk_core_1.xprvToRawPrv(derived.key);
148
+ const fullySignedRevealTransaction = await utxo_ord_1.inscriptions.signRevealTransaction(Buffer.from(prv, 'hex'), tapLeafScript, commitAddress, recipientAddress, Buffer.from(halfSignedCommitTransaction.txHex, 'hex'), this.coin.network);
149
+ return this.wallet.submitTransaction({
150
+ halfSigned: {
151
+ txHex: halfSignedCommitTransaction.txHex,
152
+ signedChildPsbt: fullySignedRevealTransaction.toHex(),
153
+ },
154
+ });
155
+ }
156
+ /**
157
+ * Sign and send a transaction that transfers an inscription
158
+ * @param walletPassphrase passphrase to unlock your keys
159
+ * @param txPrebuild this is the output of `inscription.prepareTransfer`
160
+ */
161
+ async signAndSendTransfer(walletPassphrase, txPrebuild) {
162
+ const userKeychain = await this.wallet.baseCoin.keychains().get({ id: this.wallet.keyIds()[sdk_core_1.KeyIndices.USER] });
163
+ const prv = this.wallet.getUserPrv({ keychain: userKeychain, walletPassphrase });
164
+ const halfSigned = (await this.wallet.signTransaction({ prv, txPrebuild }));
165
+ return this.wallet.submitTransaction({ halfSigned });
166
+ }
167
+ }
168
+ exports.InscriptionBuilder = InscriptionBuilder;
169
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5zY3JpcHRpb25CdWlsZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2luc2NyaXB0aW9uQnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsNkRBQTRGO0FBQzVGLG1EQVU4QjtBQUM5Qiw4REFBZ0Q7QUFDaEQsbURBVzhCO0FBQzlCLG9EQUE0QjtBQUU1QixNQUFNLHFDQUFxQyxHQUFHLENBQUMsQ0FBQyxFQUFFLEtBQU0sRUFBRSxNQUFPLENBQUMsQ0FBQztBQUVuRSxNQUFhLGtCQUFrQjtJQUk3QixZQUFZLE1BQWUsRUFBRSxJQUFzQjtRQUNqRCxJQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztRQUNyQixJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQztJQUNuQixDQUFDO0lBRUQsS0FBSyxDQUFDLGFBQWEsQ0FBQyxlQUF1QixFQUFFLFdBQW1CO1FBQzlELE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsU0FBUyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsRUFBRSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxFQUFFLENBQUMscUJBQVUsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDdkcsZ0JBQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7UUFFakIsTUFBTSxPQUFPLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksRUFBRSxlQUFlLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ2pHLE1BQU0sbUJBQW1CLEdBQUcsOEJBQW1CLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzdELE1BQU0sY0FBYyxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsYUFBYSxD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QUFVLENBQUMsRUFBRSxRQUFRLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFFLENBQUMsQ0FBQztRQUVqRixNQUFNLFVBQVUsR0FBRyxDQUFDLE1BQU0sSUFBSSxDQUFDLE1BQU0sQ0FBQyxlQUFlLENBQUMsRUFBRSxHQUFHLEVBQUUsVUFBVSxFQUFFLENBQUMsQ0FBOEIsQ0FBQztRQUN6RyxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsaUJBQWlCLENBQUMsRUFBRSxVQUFVLEVBQUUsQ0FBQyxDQUFDO0lBQ3ZELENBQUM7Q0FDRjtBQXBPRCxnREFvT0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBYnN0cmFjdFV0eG9Db2luLCBnZXRXYWxsZXRLZXlzLCBSb290V2FsbGV0S2V5cyB9IGZyb20gJ0BiaXRnby1iZXRhL2Fic3RyYWN0LXV0eG8nO1xuaW1wb3J0IHtcbiAgSGFsZlNpZ25lZFV0eG9UcmFuc2FjdGlvbixcbiAgSUluc2NyaXB0aW9uQnVpbGRlcixcbiAgSVdhbGxldCxcbiAgS2V5SW5kaWNlcyxcbiAgUHJlYnVpbGRUcmFuc2FjdGlvblJlc3VsdCxcbiAgUHJlcGFyZWRJbnNjcmlwdGlvblJldmVhbERhdGEsXG4gIFN1Ym1pdFRyYW5zYWN0aW9uUmVzcG9uc2UsXG4gIHhwcnZUb1Jhd1BydixcbiAgeHB1YlRvQ29tcHJlc3NlZFB1Yixcbn0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICdAYml0Z28tYmV0YS91dHhvLWxpYic7XG5pbXBvcnQge1xuICBjcmVhdGVQc2J0Rm9yU2luZ2xlSW5zY3JpcHRpb25QYXNzaW5nVHJhbnNhY3Rpb24sXG4gIERlZmF1bHRJbnNjcmlwdGlvbkNvbnN0cmFpbnRzLFxuICBJbnNjcmlwdGlvbk91dHB1dHMsXG4gIGluc2NyaXB0aW9ucyxcbiAgcGFyc2VTYXRQb2ludCxcbiAgaXNTYXRQb2ludCxcbiAgRXJyb3JOb0xheW91dCxcbiAgZmluZE91dHB1dExheW91dEZvcldhbGxldFVuc3BlbnRzLFxuICBNQVhfVU5TUEVOVFNfRk9SX09VVFBVVF9MQVlPVVQsXG4gIFNhdFBvaW50LFxufSBmcm9tICdAYml0Z28tYmV0YS91dHhvLW9yZCc7XG5pbXBvcnQgYXNzZXJ0IGZyb20gJ2Fzc2VydCc7XG5cbmNvbnN0IFNVUFBMRU1FTlRBUllfVU5TUEVOVFNfTUlOX1ZBTFVFX1NBVFMgPSBbMCwgMjBfMDAwLCAyMDBfMDAwXTtcblxuZXhwb3J0IGNsYXNzIEluc2NyaXB0aW9uQnVpbGRlciBpbXBsZW1lbnRzIElJbnNjcmlwdGlvbkJ1aWxkZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IHdhbGxldDogSVdhbGxldDtcbiAgcHJpdmF0ZSByZWFkb25seSBjb2luOiBBYnN0cmFjdFV0eG9Db2luO1xuXG4gIGNvbnN0cnVjdG9yKHdhbGxldDogSVdhbGxldCwgY29pbjogQWJzdHJhY3RVdHhvQ29pbikge1xuICAgIHRoaXMud2FsbGV0ID0gd2FsbGV0O1xuICAgIHRoaXMuY29pbiA9IGNvaW47XG4gIH1cblxuICBhc3luYyBwcmVwYXJlUmV2ZWFsKGluc2NyaXB0aW9uRGF0YTogQnVmZmVyLCBjb250ZW50VHlwZTogc3RyaW5nKTogUHJvbWlzZTxQcmVwYXJlZEluc2NyaXB0aW9uUmV2ZWFsRGF0YT4ge1xuICAgIGNvbnN0IHVzZXIgPSBhd2FpdCB0aGlzLndhbGxldC5iYXNlQ29pbi5rZXljaGFpbnMoKS5nZXQoeyBpZDogdGhpcy53YWxsZXQua2V5SWRzKClbS2V5SW5kaWNlcy5VU0VSXSB9KTtcbiAgICBhc3NlcnQodXNlci5wdWIpO1xuXG4gICAgY29uc3QgZGVyaXZlZCA9IHRoaXMuY29pbi5kZXJpdmVLZXlXaXRoU2VlZCh7IGtleTogdXNlci5wdWIsIHNlZWQ6IGluc2NyaXB0aW9uRGF0YS50b1N0cmluZygpIH0pO1xuICAgIGNvbnN0IGNvbXByZXNzZWRQdWJsaWNLZXkgPSB4cHViVG9Db21wcmVzc2VkUHViKGRlcml2ZWQua2V5KTtcbiAgICBjb25zdCB4T25seVB1YmxpY0tleSA9IHV0eG9saWIuYml0Z28ub3V0cHV0U2NyaXB0cy50b1hPbmx5UHVibGljS2V5KEJ1ZmZlci5mcm9tKGNvbXByZXNzZWRQdWJsaWNLZXksICdoZXgnKSk7XG5cbiAgICByZXR1cm4gaW5zY3JpcHRpb25zLmNyZWF0ZUluc2NyaXB0aW9uUmV2ZWFsRGF0YSh4T25seVB1YmxpY0tleSwgY29udGVudFR5cGUsIGluc2NyaXB0aW9uRGF0YSwgdGhpcy5jb2luLm5ldHdvcmspO1xuICB9XG5cbiAgcHJpdmF0ZSBhc3luYyBwcmVwYXJlVHJhbnNmZXJXaXRoRXh0cmFJbnB1dHMoXG4gICAgc2F0UG9pbnQ6IFNhdFBvaW50LFxuICAgIGZlZVJhdGVTYXRLQjogbnVtYmVyLFxuICAgIHtcbiAgICAgIHNpZ25lcixcbiAgICAgIGNvc2lnbmVyLFxuICAgICAgaW5zY3JpcHRpb25Db25zdHJhaW50cyxcbiAgICB9OiB7XG4gICAgICBzaWduZXI6IHV0eG9saWIuYml0Z28uS2V5TmFtZTtcbiAgICAgIGNvc2lnbmVyOiB1dHhvbGliLmJpdGdvLktleU5hbWU7XG4gICAgICBpbnNjcmlwdGlvbkNvbnN0cmFpbnRzOiB7XG4gICAgICAgIG1pbkNoYW5nZU91dHB1dD86IGJpZ2ludDtcbiAgICAgICAgbWluSW5zY3JpcHRpb25PdXRwdXQ/OiBiaWdpbnQ7XG4gICAgICAgIG1heEluc2NyaXB0aW9uT3V0cHV0PzogYmlnaW50O1xuICAgICAgfTtcbiAgICB9LFxuICAgIHJvb3RXYWxsZXRLZXlzOiBSb290V2FsbGV0S2V5cyxcbiAgICBvdXRwdXRzOiBJbnNjcmlwdGlvbk91dHB1dHMsXG4gICAgaW5zY3JpcHRpb25VbnNwZW50czogdXR4b2xpYi5iaXRnby5XYWxsZXRVbnNwZW50PGJpZ2ludD5bXSxcbiAgICBzdXBwbGVtZW50YXJ5VW5zcGVudHNNaW5WYWx1ZTogbnVtYmVyXG4gICk6IFByb21pc2U8UHJlYnVpbGRUcmFuc2FjdGlvblJlc3VsdD4ge1xuICAgIGxldCBzdXBwbGVtZW50YXJ5VW5zcGVudHM6IHV0eG9saWIuYml0Z28uV2FsbGV0VW5zcGVudDxiaWdpbnQ+W10gPSBbXTtcbiAgICBpZiAoc3VwcGxlbWVudGFyeVVuc3BlbnRzTWluVmFsdWUgPiAwKSB7XG4gICAgICBjb25zdCByZXNwb25zZSA9IGF3YWl0IHRoaXMud2FsbGV0LnVuc3BlbnRzKHtcbiAgICAgICAgbWluVmFsdWU6IHN1cHBsZW1lbnRhcnlVbnNwZW50c01pblZhbHVlLFxuICAgICAgfSk7XG4gICAgICAvLyBGaWx0ZXIgb3V0IHRoZSBpbnNjcmlwdGlvbiB1bnNwZW50IGZyb20gdGhlIHN1cHBsZW1lbnRhcnkgdW5zcGVudHNcbiAgICAgIHN1cHBsZW1lbnRhcnlVbnNwZW50cyA9IHJlc3BvbnNlLnVuc3BlbnRzXG4gICAgICAgIC5maWx0ZXIoKHVuc3BlbnQpID0+IHVuc3BlbnQuaWQgIT09IGluc2NyaXB0aW9uVW5zcGVudHNbMF0uaWQpXG4gICAgICAgIC5zbGljZSgwLCBNQVhfVU5TUEVOVFNfRk9SX09VVFBVVF9MQVlPVVQgLSAxKVxuICAgICAgICAubWFwKCh1bnNwZW50KSA9PiB7XG4gICAgICAgICAgdW5zcGVudC52YWx1ZSA9IEJpZ0ludCh1bnNwZW50LnZhbHVlKTtcbiAgICAgICAgICByZXR1cm4gdW5zcGVudDtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIGNvbnN0IHBzYnQgPSBjcmVhdGVQc2J0Rm9yU2luZ2xlSW5zY3JpcHRpb25QYXNzaW5nVHJhbnNhY3Rpb24oXG4gICAgICB0aGlzLmNvaW4ubmV0d29yayxcbiAgICAgIHtcbiAgICAgICAgd2FsbGV0S2V5czogcm9vdFdhbGxldEtleXMsXG4gICAgICAgIHNpZ25lcixcbiAgICAgICAgY29zaWduZXIsXG4gICAgICB9LFxuICAgICAgaW5zY3JpcHRpb25VbnNwZW50cyxcbiAgICAgIHNhdFBvaW50LFxuICAgICAgb3V0cHV0cyxcbiAgICAgIHsgZmVlUmF0ZVNhdEtCLCAuLi5pbnNjcmlwdGlvbkNvbnN0cmFpbnRzIH0sXG4gICAgICB7IHN1cHBsZW1lbnRhcnlVbnNwZW50cyB9XG4gICAgKTtcbiAgICBpZiAoIXBzYnQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmVlIHRvbyBoaWdoIGZvciB0aGUgc2VsZWN0ZWQgdW5zcGVudCB3aXRoIHRoaXMgZmVlIHJhdGUnKTtcbiAgICB9XG5cbiAgICBjb25zdCBhbGxVbnNwZW50cyA9IFsuLi5pbnNjcmlwdGlvblVuc3BlbnRzLCAuLi5zdXBwbGVtZW50YXJ5VW5zcGVudHNdO1xuXG4gICAgLy8gVE9ETzogUmVtb3ZlIHRoZSBjYWxsIHRvIHRoaXMgZnVuY3Rpb24gYmVjYXVzZSBpdCdzIGFscmVhZHkgY2FsbGVkIGluc2lkZSB0aGUgY3JlYXRlUHNidCBmdW5jdGlvbiBhYm92ZS5cbiAgICAvLyBDcmVhdGUgJiB1c2UgYSBnZXRGZWUgZnVuY3Rpb24gaW5zaWRlIHRoZSBjcmVhdGVkIFBTQlQgaW5zdGVhZCwgbGFjayBvZiB3aGljaCBuZWNlc3NpdGF0ZXMgYSBkdXBsaWNhdGUgY2FsbCBoZXJlLlxuICAgIGNvbnN0IG91dHB1dExheW91dCA9IGZpbmRPdXRwdXRMYXlvdXRGb3JXYWxsZXRVbnNwZW50cyhhbGxVbnNwZW50cywgc2F0UG9pbnQsIG91dHB1dHMsIHtcbiAgICAgIGZlZVJhdGVTYXRLQixcbiAgICAgIC4uLmluc2NyaXB0aW9uQ29uc3RyYWludHMsXG4gICAgfSk7XG4gICAgaWYgKCFvdXRwdXRMYXlvdXQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignRmVlIHRvbyBoaWdoIGZvciB0aGUgc2VsZWN0ZWQgdW5zcGVudCB3aXRoIHRoaXMgZmVlIHJhdGUnKTtcbiAgICB9XG4gICAgcmV0dXJuIHtcbiAgICAgIHdhbGxldElkOiB0aGlzLndhbGxldC5pZCgpLFxuICAgICAgdHhIZXg6IHBzYnQuZ2V0VW5zaWduZWRUeCgpLnRvSGV4KCksXG4gICAgICB0eEluZm86IHsgdW5zcGVudHM6IGFsbFVuc3BlbnRzIH0sXG4gICAgICBmZWVJbmZvOiB7IGZlZTogTnVtYmVyKG91dHB1dExheW91dC5sYXlvdXQuZmVlT3V0cHV0KSwgZmVlU3RyaW5nOiBvdXRwdXRMYXlvdXQubGF5b3V0LmZlZU91dHB1dC50b1N0cmluZygpIH0sXG4gICAgfTtcbiAgfVxuXG4gIC8qKlxuICAgKiBCdWlsZCBhIHRyYW5zYWN0aW9uIHRvIHNlbmQgYW4gaW5zY3JpcHRpb25cbiAgICogQHBhcmFtIHNhdFBvaW50IFNhdHBvaW50IHlvdSB3YW50IHRvIHNlbmRcbiAgICogQHBhcmFtIHJlY2lwaWVudCBBZGRyZXNzIHlvdSB3YW50IHRvIHNlbmQgdG9cbiAgICogQHBhcmFtIGZlZVJhdGVTYXRLQiBGZWUgcmF0ZSBmb3IgdHJhbnNhY3Rpb25cbiAgICogQHBhcmFtIHNpZ25lciBmaXJzdCBzaWduZXIgb2YgdGhlIHRyYW5zYWN0aW9uXG4gICAqIEBwYXJhbSBjb3NpZ25lciBzZWNvbmQgc2lnbmVyIG9mIHRoZSB0cmFuc2FjdGlvblxuICAgKiBAcGFyYW0gaW5zY3JpcHRpb25Db25zdHJhaW50cy5taW5DaGFuZ2VPdXRwdXQgKG9wdGlvbmFsKSB0aGUgbWluaW11bSBzaXplIG9mIHRoZSBjaGFuZ2Ugb3V0cHV0XG4gICAqIEBwYXJhbSBpbnNjcmlwdGlvbkNvbnN0cmFpbnRzLm1pbkluc2NyaXB0aW9uT3V0cHV0IChvcHRpb25hbCkgdGhlIG1pbmltdW0gbnVtYmVyIG9mIHNhdHMgb2YgdGhlIG91dHB1dCBjb250YWluaW5nIHRoZSBpbnNjcmlwdGlvblxuICAgKiBAcGFyYW0gaW5zY3JpcHRpb25Db25zdHJhaW50cy5tYXhJbnNjcmlwdGlvbk91dHB1dCAob3B0aW9uYWwpIHRoZSBtYXhpbXVtIG51bWJlciBvZiBzYXRzIG9mIHRoZSBvdXRwdXQgY29udGFpbmluZyB0aGUgaW5zY3JpcHRpb25cbiAgICogQHBhcmFtIGNoYW5nZUFkZHJlc3NUeXBlIEFkZHJlc3MgdHlwZSBvZiB0aGUgY2hhbmdlIGFkZHJlc3NcbiAgICovXG4gIGFzeW5jIHByZXBhcmVUcmFuc2ZlcihcbiAgICBzYXRQb2ludDogc3RyaW5nLFxuICAgIHJlY2lwaWVudDogc3RyaW5nLFxuICAgIGZlZVJhdGVTYXRLQjogbnVtYmVyLFxuICAgIHtcbiAgICAgIHNpZ25lciA9ICd1c2VyJyxcbiAgICAgIGNvc2lnbmVyID0gJ2JpdGdvJyxcbiAgICAgIGluc2NyaXB0aW9uQ29uc3RyYWludHMgPSBEZWZhdWx0SW5zY3JpcHRpb25Db25zdHJhaW50cyxcbiAgICAgIGNoYW5nZUFkZHJlc3NUeXBlID0gJ3Ayd3NoJyxcbiAgICB9OiB7XG4gICAgICBzaWduZXI/OiB1dHhvbGliLmJpdGdvLktleU5hbWU7XG4gICAgICBjb3NpZ25lcj86IHV0eG9saWIuYml0Z28uS2V5TmFtZTtcbiAgICAgIGluc2NyaXB0aW9uQ29uc3RyYWludHM/OiB7XG4gICAgICAgIG1pbkNoYW5nZU91dHB1dD86IGJpZ2ludDtcbiAgICAgICAgbWluSW5zY3JpcHRpb25PdXRwdXQ/OiBiaWdpbnQ7XG4gICAgICAgIG1heEluc2NyaXB0aW9uT3V0cHV0PzogYmlnaW50O1xuICAgICAgfTtcbiAgICAgIGNoYW5nZUFkZHJlc3NUeXBlPzogdXR4b2xpYi5iaXRnby5vdXRwdXRTY3JpcHRzLlNjcmlwdFR5cGUyT2YzO1xuICAgIH1cbiAgKTogUHJvbWlzZTxQcmVidWlsZFRyYW5zYWN0aW9uUmVzdWx0PiB7XG4gICAgYXNzZXJ0KGlzU2F0UG9pbnQoc2F0UG9pbnQpKTtcblxuICAgIGNvbnN0IHJvb3RXYWxsZXRLZXlzID0gYXdhaXQgZ2V0V2FsbGV0S2V5cyh0aGlzLmNvaW4sIHRoaXMud2FsbGV0KTtcbiAgICBjb25zdCBwYXJzZWRTYXRQb2ludCA9IHBhcnNlU2F0UG9pbnQoc2F0UG9pbnQpO1xuICAgIGNvbnN0IHRyYW5zYWN0aW9uID0gYXdhaXQgdGhpcy53YWxsZXQuZ2V0VHJhbnNhY3Rpb24oeyB0eEhhc2g6IHBhcnNlZFNhdFBvaW50LnR4aWQgfSk7XG4gICAgY29uc3QgdW5zcGVudHM6IHV0eG9saWIuYml0Z28uV2FsbGV0VW5zcGVudDxiaWdpbnQ+W10gPSBbdHJhbnNhY3Rpb24ub3V0cHV0c1twYXJzZWRTYXRQb2ludC52b3V0XV07XG4gICAgdW5zcGVudHNbMF0udmFsdWUgPSBCaWdJbnQodW5zcGVudHNbMF0udmFsdWUpO1xuXG4gICAgY29uc3QgY2hhbmdlQWRkcmVzcyA9IGF3YWl0IHRoaXMud2FsbGV0LmNyZWF0ZUFkZHJlc3Moe1xuICAgICAgY2hhaW46IHV0eG9saWIuYml0Z28uZ2V0SW50ZXJuYWxDaGFpbkNvZGUoY2hhbmdlQWRkcmVzc1R5cGUpLFxuICAgIH0pO1xuICAgIGNvbnN0IG91dHB1dHM6IEluc2NyaXB0aW9uT3V0cHV0cyA9IHtcbiAgICAgIGluc2NyaXB0aW9uUmVjaXBpZW50OiByZWNpcGllbnQsXG4gICAgICBjaGFuZ2VPdXRwdXRzOiBbXG4gICAgICAgIHsgY2hhaW46IGNoYW5nZUFkZHJlc3MuY2hhaW4sIGluZGV4OiBjaGFuZ2VBZGRyZXNzLmluZGV4IH0sXG4gICAgICAgIHsgY2hhaW46IGNoYW5nZUFkZHJlc3MuY2hhaW4sIGluZGV4OiBjaGFuZ2VBZGRyZXNzLmluZGV4IH0sXG4gICAgICBdLFxuICAgIH07XG5cbiAgICBmb3IgKGNvbnN0IHN1cHBsZW1lbnRhcnlVbnNwZW50c01pblZhbHVlIG9mIFNVUFBMRU1FTlRBUllfVU5TUEVOVFNfTUlOX1ZBTFVFX1NBVFMpIHtcbiAgICAgIHRyeSB7XG4gICAgICAgIHJldHVybiBhd2FpdCB0aGlzLnByZXBhcmVUcmFuc2ZlcldpdGhFeHRyYUlucHV0cyhcbiAgICAgICAgICBzYXRQb2ludCxcbiAgICAgICAgICBmZWVSYXRlU2F0S0IsXG4gICAgICAgICAgeyBzaWduZXIsIGNvc2lnbmVyLCBpbnNjcmlwdGlvbkNvbnN0cmFpbnRzIH0sXG4gICAgICAgICAgcm9vdFdhbGxldEtleXMsXG4gICAgICAgICAgb3V0cHV0cyxcbiAgICAgICAgICB1bnNwZW50cyxcbiAgICAgICAgICBzdXBwbGVtZW50YXJ5VW5zcGVudHNNaW5WYWx1ZVxuICAgICAgICApO1xuICAgICAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgaWYgKCEoZXJyb3IgaW5zdGFuY2VvZiBFcnJvck5vTGF5b3V0KSkge1xuICAgICAgICAgIHRocm93IGVycm9yOyAvLyBQcm9wYWdhdGUgZXJyb3IgaWYgaXQncyBub3QgYW4gRXJyb3JOb0xheW91dFxuICAgICAgICB9IC8vIE90aGVyd2lzZSBjb250aW51ZSB0cnlpbmcgd2l0aCBoaWdoZXIgbWluVmFsdWUgZm9yIHN1cHBsZW1lbnRhcnkgdW5zcGVudHNcbiAgICAgIH1cbiAgICB9XG5cbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0ZlZSB0b28gaGlnaCBmb3IgdGhlIHNlbGVjdGVkIHVuc3BlbnQgd2l0aCB0aGlzIGZlZSByYXRlJyk7IC8vIEV4aGF1c3RlZCBhbGwgdHJpZXMgdG8gc3VwcGxlbWVudFxuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSB3YWxsZXRQYXNzcGhyYXNlXG4gICAqIEBwYXJhbSB0YXBMZWFmU2NyaXB0XG4gICAqIEBwYXJhbSBjb21taXRBZGRyZXNzXG4gICAqIEBwYXJhbSB1bnNpZ25lZENvbW1pdFR4XG4gICAqIEBwYXJhbSBjb21taXRUcmFuc2FjdGlvblVuc3BlbnRzXG4gICAqIEBwYXJhbSByZWNpcGllbnRBZGRyZXNzXG4gICAqIEBwYXJhbSBpbnNjcmlwdGlvbkRhdGFcbiAgICovXG4gIGFzeW5jIHNpZ25BbmRTZW5kUmV2ZWFsKFxuICAgIHdhbGxldFBhc3NwaHJhc2U6IHN0cmluZyxcbiAgICB0YXBMZWFmU2NyaXB0OiB1dHhvbGliLmJpdGdvLlRhcExlYWZTY3JpcHQsXG4gICAgY29tbWl0QWRkcmVzczogc3RyaW5nLFxuICAgIHVuc2lnbmVkQ29tbWl0VHg6IEJ1ZmZlcixcbiAgICBjb21taXRUcmFuc2FjdGlvblVuc3BlbnRzOiB1dHhvbGliLmJpdGdvLldhbGxldFVuc3BlbnRbXSxcbiAgICByZWNpcGllbnRBZGRyZXNzOiBzdHJpbmcsXG4gICAgaW5zY3JpcHRpb25EYXRhOiBCdWZmZXJcbiAgKTogUHJvbWlzZTxTdWJtaXRUcmFuc2FjdGlvblJlc3BvbnNlPiB7XG4gICAgY29uc3QgdXNlcktleWNoYWluID0gYXdhaXQgdGhpcy53YWxsZXQuYmFzZUNvaW4ua2V5Y2hhaW5zKCkuZ2V0KHsgaWQ6IHRoaXMud2FsbGV0LmtleUlkcygpW0tleUluZGljZXMuVVNFUl0gfSk7XG4gICAgY29uc3QgeHBydiA9IGF3YWl0IHRoaXMud2FsbGV0LmdldFVzZXJQcnYoeyBrZXljaGFpbjogdXNlcktleWNoYWluLCB3YWxsZXRQYXNzcGhyYXNlIH0pO1xuXG4gICAgY29uc3QgaGFsZlNpZ25lZENvbW1pdFRyYW5zYWN0aW9uID0gKGF3YWl0IHRoaXMud2FsbGV0LnNpZ25UcmFuc2FjdGlvbih7XG4gICAgICBwcnY6IHhwcnYsXG4gICAgICB0eFByZWJ1aWxkOiB7XG4gICAgICAgIHR4SGV4OiB1bnNpZ25lZENvbW1pdFR4LnRvU3RyaW5nKCdoZXgnKSxcbiAgICAgICAgdHhJbmZvOiB7IHVuc3BlbnRzOiBjb21taXRUcmFuc2FjdGlvblVuc3BlbnRzIH0sXG4gICAgICB9LFxuICAgIH0pKSBhcyBIYWxmU2lnbmVkVXR4b1RyYW5zYWN0aW9uO1xuXG4gICAgY29uc3QgZGVyaXZlZCA9IHRoaXMuY29pbi5kZXJpdmVLZXlXaXRoU2VlZCh7IGtleTogeHBydiwgc2VlZDogaW5zY3JpcHRpb25EYXRhLnRvU3RyaW5nKCkgfSk7XG4gICAgY29uc3QgcHJ2ID0geHBydlRvUmF3UHJ2KGRlcml2ZWQua2V5KTtcblxuICAgIGNvbnN0IGZ1bGx5U2lnbmVkUmV2ZWFsVHJhbnNhY3Rpb24gPSBhd2FpdCBpbnNjcmlwdGlvbnMuc2lnblJldmVhbFRyYW5zYWN0aW9uKFxuICAgICAgQnVmZmVyLmZyb20ocHJ2LCAnaGV4JyksXG4gICAgICB0YXBMZWFmU2NyaXB0LFxuICAgICAgY29tbWl0QWRkcmVzcyxcbiAgICAgIHJlY2lwaWVudEFkZHJlc3MsXG4gICAgICBCdWZmZXIuZnJvbShoYWxmU2lnbmVkQ29tbWl0VHJhbnNhY3Rpb24udHhIZXgsICdoZXgnKSxcbiAgICAgIHRoaXMuY29pbi5uZXR3b3JrXG4gICAgKTtcblxuICAgIHJldHVybiB0aGlzLndhbGxldC5zdWJtaXRUcmFuc2FjdGlvbih7XG4gICAgICBoYWxmU2lnbmVkOiB7XG4gICAgICAgIHR4SGV4OiBoYWxmU2lnbmVkQ29tbWl0VHJhbnNhY3Rpb24udHhIZXgsXG4gICAgICAgIHNpZ25lZENoaWxkUHNidDogZnVsbHlTaWduZWRSZXZlYWxUcmFuc2FjdGlvbi50b0hleCgpLFxuICAgICAgfSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTaWduIGFuZCBzZW5kIGEgdHJhbnNhY3Rpb24gdGhhdCB0cmFuc2ZlcnMgYW4gaW5zY3JpcHRpb25cbiAgICogQHBhcmFtIHdhbGxldFBhc3NwaHJhc2UgcGFzc3BocmFzZSB0byB1bmxvY2sgeW91ciBrZXlzXG4gICAqIEBwYXJhbSB0eFByZWJ1aWxkIHRoaXMgaXMgdGhlIG91dHB1dCBvZiBgaW5zY3JpcHRpb24ucHJlcGFyZVRyYW5zZmVyYFxuICAgKi9cbiAgYXN5bmMgc2lnbkFuZFNlbmRUcmFuc2ZlcihcbiAgICB3YWxsZXRQYXNzcGhyYXNlOiBzdHJpbmcsXG4gICAgdHhQcmVidWlsZDogUHJlYnVpbGRUcmFuc2FjdGlvblJlc3VsdFxuICApOiBQcm9taXNlPFN1Ym1pdFRyYW5zYWN0aW9uUmVzcG9uc2U+IHtcbiAgICBjb25zdCB1c2VyS2V5Y2hhaW4gPSBhd2FpdCB0aGlzLndhbGxldC5iYXNlQ29pbi5rZXljaGFpbnMoKS5nZXQoeyBpZDogdGhpcy53YWxsZXQua2V5SWRzKClbS2V5SW5kaWNlcy5VU0VSXSB9KTtcbiAgICBjb25zdCBwcnYgPSB0aGlzLndhbGxldC5nZXRVc2VyUHJ2KHsga2V5Y2hhaW46IHVzZXJLZXljaGFpbiwgd2FsbGV0UGFzc3BocmFzZSB9KTtcblxuICAgIGNvbnN0IGhhbGZTaWduZWQgPSAoYXdhaXQgdGhpcy53YWxsZXQuc2lnblRyYW5zYWN0aW9uKHsgcHJ2LCB0eFByZWJ1aWxkIH0pKSBhcyBIYWxmU2lnbmVkVXR4b1RyYW5zYWN0aW9uO1xuICAgIHJldHVybiB0aGlzLndhbGxldC5zdWJtaXRUcmFuc2FjdGlvbih7IGhhbGZTaWduZWQgfSk7XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,3 @@
1
+ import { BitGoBase } from '@bitgo-beta/sdk-core';
2
+ export declare const register: (sdk: BitGoBase) => void;
3
+ //# sourceMappingURL=register.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../src/register.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAIjD,eAAO,MAAM,QAAQ,QAAS,SAAS,KAAG,IAGzC,CAAC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.register = void 0;
4
+ const btc_1 = require("./btc");
5
+ const tbtc_1 = require("./tbtc");
6
+ const register = (sdk) => {
7
+ sdk.register('btc', btc_1.Btc.createInstance);
8
+ sdk.register('tbtc', tbtc_1.Tbtc.createInstance);
9
+ };
10
+ exports.register = register;
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnaXN0ZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvcmVnaXN0ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQ0EsK0JBQTRCO0FBQzVCLGlDQUE4QjtBQUV2QixNQUFNLFFBQVEsR0FBRyxDQUFDLEdBQWMsRUFBUSxFQUFFO0lBQy9DLEdBQUcsQ0FBQyxRQUFRLENBQUMsS0FBSyxFQUFFLFNBQUcsQ0FBQyxjQUFjLENBQUMsQ0FBQztJQUN4QyxHQUFHLENBQUMsUUFBUSxDQUFDLE1BQU0sRUFBRSxXQUFJLENBQUMsY0FBYyxDQUFDLENBQUM7QUFDNUMsQ0FBQyxDQUFDO0FBSFcsUUFBQSxRQUFRLFlBR25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQml0R29CYXNlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgQnRjIH0gZnJvbSAnLi9idGMnO1xuaW1wb3J0IHsgVGJ0YyB9IGZyb20gJy4vdGJ0Yyc7XG5cbmV4cG9ydCBjb25zdCByZWdpc3RlciA9IChzZGs6IEJpdEdvQmFzZSk6IHZvaWQgPT4ge1xuICBzZGsucmVnaXN0ZXIoJ2J0YycsIEJ0Yy5jcmVhdGVJbnN0YW5jZSk7XG4gIHNkay5yZWdpc3RlcigndGJ0YycsIFRidGMuY3JlYXRlSW5zdGFuY2UpO1xufTtcbiJdfQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bitgo-beta/sdk-coin-btc",
3
- "version": "1.2.3-alpha.10",
3
+ "version": "1.2.3-alpha.100",
4
4
  "description": "BitGo SDK coin library for Bitcoin",
5
5
  "main": "./dist/src/index.js",
6
6
  "types": "./dist/src/index.d.ts",
@@ -18,7 +18,7 @@
18
18
  "author": "BitGo SDK Team <sdkteam@bitgo.com>",
19
19
  "license": "MIT",
20
20
  "engines": {
21
- "node": ">=14 <17"
21
+ "node": ">=16 <21"
22
22
  },
23
23
  "repository": {
24
24
  "type": "git",
@@ -40,13 +40,14 @@
40
40
  ]
41
41
  },
42
42
  "dependencies": {
43
- "@bitgo-beta/abstract-utxo": "1.6.1-alpha.10",
44
- "@bitgo-beta/sdk-core": "2.4.1-alpha.10",
45
- "@bitgo-beta/utxo-lib": "4.0.1-alpha.10"
43
+ "@bitgo-beta/abstract-utxo": "1.6.1-alpha.100",
44
+ "@bitgo-beta/sdk-core": "2.4.1-alpha.100",
45
+ "@bitgo-beta/utxo-lib": "4.0.1-alpha.100",
46
+ "@bitgo-beta/utxo-ord": "1.1.3-alpha.55"
46
47
  },
47
48
  "devDependencies": {
48
- "@bitgo-beta/sdk-api": "1.6.1-alpha.10",
49
- "@bitgo-beta/sdk-test": "^1.2.4"
49
+ "@bitgo-beta/sdk-api": "1.6.1-alpha.100",
50
+ "@bitgo-beta/sdk-test": "^6.0.0"
50
51
  },
51
- "gitHead": "8c7d165bd8740d01a1248ec414f1d64702db9145"
52
+ "gitHead": "9d875e8a0ac042363b1bd44de02809f543eefdd6"
52
53
  }