@bsv/wallet-toolbox 1.1.4 → 1.1.6

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 (84) hide show
  1. package/docs/README.md +1 -1
  2. package/docs/client.md +714 -470
  3. package/docs/monitor.md +54 -37
  4. package/docs/services.md +53 -34
  5. package/docs/setup.md +326 -53
  6. package/docs/storage.md +116 -104
  7. package/docs/wallet.md +713 -470
  8. package/license.md +28 -1
  9. package/out/src/Setup.d.ts +27 -3
  10. package/out/src/Setup.d.ts.map +1 -1
  11. package/out/src/Setup.js +17 -5
  12. package/out/src/Setup.js.map +1 -1
  13. package/out/src/SetupClient.d.ts +130 -15
  14. package/out/src/SetupClient.d.ts.map +1 -1
  15. package/out/src/SetupClient.js +29 -15
  16. package/out/src/SetupClient.js.map +1 -1
  17. package/out/src/Wallet.d.ts +4 -0
  18. package/out/src/Wallet.d.ts.map +1 -1
  19. package/out/src/Wallet.js +7 -0
  20. package/out/src/Wallet.js.map +1 -1
  21. package/out/src/sdk/WalletError.d.ts +0 -1
  22. package/out/src/sdk/WalletError.d.ts.map +1 -1
  23. package/out/src/sdk/WalletError.js +0 -1
  24. package/out/src/sdk/WalletError.js.map +1 -1
  25. package/out/src/sdk/validationHelpers.d.ts +1 -0
  26. package/out/src/sdk/validationHelpers.d.ts.map +1 -1
  27. package/out/src/sdk/validationHelpers.js +2 -1
  28. package/out/src/sdk/validationHelpers.js.map +1 -1
  29. package/out/src/storage/StorageProvider.d.ts +1 -4
  30. package/out/src/storage/StorageProvider.d.ts.map +1 -1
  31. package/out/src/storage/StorageProvider.js +1 -4
  32. package/out/src/storage/StorageProvider.js.map +1 -1
  33. package/out/src/storage/WalletStorageManager.d.ts +1 -1
  34. package/out/src/storage/WalletStorageManager.js +1 -1
  35. package/out/src/storage/methods/createAction.d.ts.map +1 -1
  36. package/out/src/storage/methods/createAction.js +42 -11
  37. package/out/src/storage/methods/createAction.js.map +1 -1
  38. package/out/src/storage/methods/generateChange.js +1 -1
  39. package/out/src/storage/methods/generateChange.js.map +1 -1
  40. package/out/src/storage/methods/listOutputs.d.ts.map +1 -1
  41. package/out/src/storage/methods/listOutputs.js +4 -2
  42. package/out/src/storage/methods/listOutputs.js.map +1 -1
  43. package/out/src/storage/schema/tables/ProvenTxReq.d.ts +4 -4
  44. package/out/src/utility/ScriptTemplateSABPPP.d.ts +4 -0
  45. package/out/src/utility/ScriptTemplateSABPPP.d.ts.map +1 -1
  46. package/out/src/utility/ScriptTemplateSABPPP.js +4 -0
  47. package/out/src/utility/ScriptTemplateSABPPP.js.map +1 -1
  48. package/out/test/examples/README.man.test.js +1 -1
  49. package/out/test/utils/TestUtilsWalletStorage.d.ts +2 -1
  50. package/out/test/utils/TestUtilsWalletStorage.d.ts.map +1 -1
  51. package/out/test/utils/TestUtilsWalletStorage.js +112 -27
  52. package/out/test/utils/TestUtilsWalletStorage.js.map +1 -1
  53. package/out/test/wallet/action/createAction.test.js +31 -5
  54. package/out/test/wallet/action/createAction.test.js.map +1 -1
  55. package/out/test/wallet/action/createAction2.test.d.ts +37 -0
  56. package/out/test/wallet/action/createAction2.test.d.ts.map +1 -0
  57. package/out/test/wallet/action/createAction2.test.js +1145 -0
  58. package/out/test/wallet/action/createAction2.test.js.map +1 -0
  59. package/out/test/wallet/list/listOutputs.test.js +8 -12
  60. package/out/test/wallet/list/listOutputs.test.js.map +1 -1
  61. package/out/tsconfig.all.tsbuildinfo +1 -1
  62. package/package.json +2 -2
  63. package/src/Setup.ts +29 -5
  64. package/src/SetupClient.ts +136 -22
  65. package/src/Wallet.ts +9 -0
  66. package/src/sdk/WalletError.ts +0 -1
  67. package/src/sdk/validationHelpers.ts +3 -1
  68. package/src/storage/StorageProvider.ts +1 -4
  69. package/src/storage/WalletStorageManager.ts +1 -1
  70. package/src/storage/methods/createAction.ts +48 -12
  71. package/src/storage/methods/generateChange.ts +1 -1
  72. package/src/storage/methods/listOutputs.ts +4 -2
  73. package/src/storage/schema/tables/ProvenTxReq.ts +4 -4
  74. package/src/utility/ScriptTemplateSABPPP.ts +4 -0
  75. package/test/examples/README.man.test.ts +1 -1
  76. package/test/utils/TestUtilsWalletStorage.ts +131 -35
  77. package/test/wallet/action/createAction.test.ts +36 -5
  78. package/test/wallet/action/createAction2.test.ts +1400 -0
  79. package/test/wallet/list/listOutputs.test.ts +7 -13
  80. package/ts2md.json +6 -6
  81. package/tsconfig.all.json +1 -1
  82. package/LICENSE.txt +0 -28
  83. package/dev.sqlite3 +0 -0
  84. package/knexfile.js +0 -9
package/docs/monitor.md CHANGED
@@ -1,8 +1,23 @@
1
- # API
1
+ # MONITOR: BSV Wallet Toolbox API Documentation
2
+
3
+ The documentation is split into various pages, this page covers the [Monitor](#class-monitor) and related API.
4
+
5
+ To function properly, a wallet must be able to perform a number of house keeping tasks:
6
+
7
+ 1. Ensure transactions are sent to the network without slowing application flow or when created while offline.
8
+ 1. Obtain and merge proofs when transactions are mined.
9
+ 1. Detect and propagate transactions that fail due to double-spend, reorgs, or other reasons.
10
+
11
+ These tasks are the responssibility of the [Monitor](#class-monitor) class.
12
+
13
+ [Return To Top](./README.md)
14
+
15
+ <!--#region ts2md-api-merged-here-->
16
+ ### API
2
17
 
3
18
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
4
19
 
5
- ## Interfaces
20
+ #### Interfaces
6
21
 
7
22
  | |
8
23
  | --- |
@@ -14,7 +29,7 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
14
29
 
15
30
  ---
16
31
 
17
- ### Interface: MonitorDaemonSetup
32
+ ##### Interface: MonitorDaemonSetup
18
33
 
19
34
  ```ts
20
35
  export interface MonitorDaemonSetup {
@@ -37,7 +52,7 @@ See also: [Chain](#type-chain), [Monitor](#class-monitor), [Services](#class-ser
37
52
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
38
53
 
39
54
  ---
40
- ### Interface: MonitorOptions
55
+ ##### Interface: MonitorOptions
41
56
 
42
57
  ```ts
43
58
  export interface MonitorOptions {
@@ -59,7 +74,7 @@ See also: [Chain](#type-chain), [MonitorStorage](#type-monitorstorage), [Service
59
74
 
60
75
  <summary>Interface MonitorOptions Details</summary>
61
76
 
62
- #### Property msecsWaitPerMerkleProofServiceReq
77
+ ###### Property msecsWaitPerMerkleProofServiceReq
63
78
 
64
79
  How many msecs to wait after each getMerkleProof service request.
65
80
 
@@ -72,7 +87,7 @@ msecsWaitPerMerkleProofServiceReq: number
72
87
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
73
88
 
74
89
  ---
75
- ### Interface: TaskPurgeParams
90
+ ##### Interface: TaskPurgeParams
76
91
 
77
92
  The database stores a variety of data that may be considered transient.
78
93
 
@@ -108,7 +123,7 @@ See also: [PurgeParams](#interface-purgeparams)
108
123
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
109
124
 
110
125
  ---
111
- ## Classes
126
+ #### Classes
112
127
 
113
128
  | |
114
129
  | --- |
@@ -128,7 +143,7 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
128
143
 
129
144
  ---
130
145
 
131
- ### Class: Monitor
146
+ ##### Class: Monitor
132
147
 
133
148
  Background task to make sure transactions are processed, transaction proofs are received and propagated,
134
149
  and potentially that reorgs update proofs that were already received.
@@ -183,7 +198,7 @@ See also: [BlockHeader](#interface-blockheader), [Chain](#type-chain), [MonitorO
183
198
 
184
199
  <summary>Class Monitor Details</summary>
185
200
 
186
- #### Property _otherTasks
201
+ ###### Property _otherTasks
187
202
 
188
203
  _otherTasks can be run by runTask but not by scheduler.
189
204
 
@@ -192,7 +207,7 @@ _otherTasks: WalletMonitorTask[] = []
192
207
  ```
193
208
  See also: [WalletMonitorTask](#class-walletmonitortask)
194
209
 
195
- #### Property _tasks
210
+ ###### Property _tasks
196
211
 
197
212
  _tasks are typically run by the scheduler but may also be run by runTask.
198
213
 
@@ -201,7 +216,7 @@ _tasks: WalletMonitorTask[] = []
201
216
  ```
202
217
  See also: [WalletMonitorTask](#class-walletmonitortask)
203
218
 
204
- #### Method addDefaultTasks
219
+ ###### Method addDefaultTasks
205
220
 
206
221
  Default tasks with settings appropriate for a single user storage
207
222
  possibly with sync'ing enabled
@@ -210,7 +225,7 @@ possibly with sync'ing enabled
210
225
  addDefaultTasks(): void
211
226
  ```
212
227
 
213
- #### Method addMultiUserTasks
228
+ ###### Method addMultiUserTasks
214
229
 
215
230
  Tasks appropriate for multi-user storage
216
231
  without sync'ing enabled.
@@ -219,7 +234,7 @@ without sync'ing enabled.
219
234
  addMultiUserTasks(): void
220
235
  ```
221
236
 
222
- #### Method processNewBlockHeader
237
+ ###### Method processNewBlockHeader
223
238
 
224
239
  Process new chain header event received from Chaintracks
225
240
 
@@ -230,7 +245,7 @@ processNewBlockHeader(header: BlockHeader): void
230
245
  ```
231
246
  See also: [BlockHeader](#interface-blockheader)
232
247
 
233
- #### Method processReorg
248
+ ###### Method processReorg
234
249
 
235
250
  Process reorg event received from Chaintracks
236
251
 
@@ -251,7 +266,7 @@ See also: [BlockHeader](#interface-blockheader)
251
266
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
252
267
 
253
268
  ---
254
- ### Class: MonitorDaemon
269
+ ##### Class: MonitorDaemon
255
270
 
256
271
  ```ts
257
272
  export class MonitorDaemon {
@@ -273,7 +288,7 @@ See also: [MonitorDaemonSetup](#interface-monitordaemonsetup)
273
288
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
274
289
 
275
290
  ---
276
- ### Class: TaskCheckForProofs
291
+ ##### Class: TaskCheckForProofs
277
292
 
278
293
  `TaskCheckForProofs` is a WalletMonitor task that retreives merkle proofs for
279
294
  transactions.
@@ -309,7 +324,7 @@ See also: [Monitor](#class-monitor), [WalletMonitorTask](#class-walletmonitortas
309
324
 
310
325
  <summary>Class TaskCheckForProofs Details</summary>
311
326
 
312
- #### Property checkNow
327
+ ###### Property checkNow
313
328
 
314
329
  An external service such as the chaintracks new block header
315
330
  listener can set this true to cause
@@ -318,7 +333,7 @@ listener can set this true to cause
318
333
  static checkNow = false
319
334
  ```
320
335
 
321
- #### Method getProofs
336
+ ###### Method getProofs
322
337
 
323
338
  Process an array of table.ProvenTxReq (typically with status 'unmined' or 'unknown')
324
339
 
@@ -343,7 +358,7 @@ Returns
343
358
 
344
359
  reqs partitioned by status
345
360
 
346
- #### Method trigger
361
+ ###### Method trigger
347
362
 
348
363
  Normally triggered by checkNow getting set by new block header found event from chaintracks
349
364
 
@@ -358,7 +373,7 @@ trigger(nowMsecsSinceEpoch: number): {
358
373
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
359
374
 
360
375
  ---
361
- ### Class: TaskClock
376
+ ##### Class: TaskClock
362
377
 
363
378
  ```ts
364
379
  export class TaskClock extends WalletMonitorTask {
@@ -378,7 +393,7 @@ See also: [Monitor](#class-monitor), [WalletMonitorTask](#class-walletmonitortas
378
393
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
379
394
 
380
395
  ---
381
- ### Class: TaskFailAbandoned
396
+ ##### Class: TaskFailAbandoned
382
397
 
383
398
  Handles transactions which do not have terminal status and have not been
384
399
  updated for an extended time period.
@@ -403,7 +418,7 @@ See also: [Monitor](#class-monitor), [WalletMonitorTask](#class-walletmonitortas
403
418
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
404
419
 
405
420
  ---
406
- ### Class: TaskNewHeader
421
+ ##### Class: TaskNewHeader
407
422
 
408
423
  ```ts
409
424
  export class TaskNewHeader extends WalletMonitorTask {
@@ -423,7 +438,7 @@ See also: [BlockHeader](#interface-blockheader), [Monitor](#class-monitor), [Wal
423
438
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
424
439
 
425
440
  ---
426
- ### Class: TaskPurge
441
+ ##### Class: TaskPurge
427
442
 
428
443
  ```ts
429
444
  export class TaskPurge extends WalletMonitorTask {
@@ -443,7 +458,7 @@ See also: [Monitor](#class-monitor), [TaskPurgeParams](#interface-taskpurgeparam
443
458
 
444
459
  <summary>Class TaskPurge Details</summary>
445
460
 
446
- #### Property checkNow
461
+ ###### Property checkNow
447
462
 
448
463
  Set to true to trigger running this task
449
464
 
@@ -456,7 +471,7 @@ static checkNow = false
456
471
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
457
472
 
458
473
  ---
459
- ### Class: TaskReviewStatus
474
+ ##### Class: TaskReviewStatus
460
475
 
461
476
  Notify Transaction records of changes in ProvenTxReq records they may have missed.
462
477
 
@@ -484,7 +499,7 @@ See also: [Monitor](#class-monitor), [WalletMonitorTask](#class-walletmonitortas
484
499
 
485
500
  <summary>Class TaskReviewStatus Details</summary>
486
501
 
487
- #### Property checkNow
502
+ ###### Property checkNow
488
503
 
489
504
  Set to true to trigger running this task
490
505
 
@@ -497,7 +512,7 @@ static checkNow = false
497
512
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
498
513
 
499
514
  ---
500
- ### Class: TaskSendWaiting
515
+ ##### Class: TaskSendWaiting
501
516
 
502
517
  ```ts
503
518
  export class TaskSendWaiting extends WalletMonitorTask {
@@ -517,7 +532,7 @@ See also: [Monitor](#class-monitor), [WalletMonitorTask](#class-walletmonitortas
517
532
 
518
533
  <summary>Class TaskSendWaiting Details</summary>
519
534
 
520
- #### Method processUnsent
535
+ ###### Method processUnsent
521
536
 
522
537
  Process an array of 'unsent' status table.ProvenTxReq
523
538
 
@@ -542,7 +557,7 @@ async processUnsent(reqApis: table.ProvenTxReq[], indent = 0): Promise<string>
542
557
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
543
558
 
544
559
  ---
545
- ### Class: TaskSyncWhenIdle
560
+ ##### Class: TaskSyncWhenIdle
546
561
 
547
562
  ```ts
548
563
  export class TaskSyncWhenIdle extends WalletMonitorTask {
@@ -560,7 +575,7 @@ See also: [Monitor](#class-monitor), [WalletMonitorTask](#class-walletmonitortas
560
575
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
561
576
 
562
577
  ---
563
- ### Class: WalletMonitorTask
578
+ ##### Class: WalletMonitorTask
564
579
 
565
580
  A monitor task performs some periodic or state triggered maintenance function
566
581
  on the data managed by a wallet (Bitcoin UTXO manager, aka wallet)
@@ -595,7 +610,7 @@ See also: [Monitor](#class-monitor), [MonitorStorage](#type-monitorstorage)
595
610
 
596
611
  <summary>Class WalletMonitorTask Details</summary>
597
612
 
598
- #### Property lastRunMsecsSinceEpoch
613
+ ###### Property lastRunMsecsSinceEpoch
599
614
 
600
615
  Set by monitor each time runTask completes
601
616
 
@@ -603,7 +618,7 @@ Set by monitor each time runTask completes
603
618
  lastRunMsecsSinceEpoch = 0
604
619
  ```
605
620
 
606
- #### Method asyncSetup
621
+ ###### Method asyncSetup
607
622
 
608
623
  Override to handle async task setup configuration.
609
624
 
@@ -613,7 +628,7 @@ Called before first call to `trigger`
613
628
  async asyncSetup(): Promise<void>
614
629
  ```
615
630
 
616
- #### Method trigger
631
+ ###### Method trigger
617
632
 
618
633
  Return true if `runTask` needs to be called now.
619
634
 
@@ -628,11 +643,11 @@ abstract trigger(nowMsecsSinceEpoch: number): {
628
643
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
629
644
 
630
645
  ---
631
- ## Functions
646
+ #### Functions
632
647
 
633
- ## Types
648
+ #### Types
634
649
 
635
- ### Type: MonitorStorage
650
+ ##### Type: MonitorStorage
636
651
 
637
652
  ```ts
638
653
  export type MonitorStorage = WalletStorageManager
@@ -643,5 +658,7 @@ See also: [WalletStorageManager](#class-walletstoragemanager)
643
658
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
644
659
 
645
660
  ---
646
- ## Variables
661
+ #### Variables
662
+
647
663
 
664
+ <!--#endregion ts2md-api-merged-here-->
package/docs/services.md CHANGED
@@ -1,8 +1,25 @@
1
- # API
1
+ # SERVICES: BSV Wallet Toolbox API Documentation
2
+
3
+ The documentation is split into various pages, this page covers the [Services](#class-services) and related API.
4
+
5
+ To function properly, a wallet makes use of a variety of services provided by the network:
6
+
7
+ 1. Broadcast new transactions.
8
+ 1. Verify the validity of unspent outputs.
9
+ 1. Obtain mined transaction proofs.
10
+ 2. Obtain block headers for proof validation.
11
+ 3. Obtain exchange rates for UI and fee calculations.
12
+
13
+ These tasks are the responssibility of the [Services](#class-services) class.
14
+
15
+ [Return To Top](./README.md)
16
+
17
+ <!--#region ts2md-api-merged-here-->
18
+ ### API
2
19
 
3
20
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
4
21
 
5
- ## Interfaces
22
+ #### Interfaces
6
23
 
7
24
  | |
8
25
  | --- |
@@ -16,7 +33,7 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
16
33
 
17
34
  ---
18
35
 
19
- ### Interface: ArcMinerGetTxData
36
+ ##### Interface: ArcMinerGetTxData
20
37
 
21
38
  ```ts
22
39
  export interface ArcMinerGetTxData {
@@ -36,7 +53,7 @@ export interface ArcMinerGetTxData {
36
53
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
37
54
 
38
55
  ---
39
- ### Interface: ArcMinerPostBeefDataApi
56
+ ##### Interface: ArcMinerPostBeefDataApi
40
57
 
41
58
  ```ts
42
59
  export interface ArcMinerPostBeefDataApi {
@@ -59,7 +76,7 @@ export interface ArcMinerPostBeefDataApi {
59
76
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
60
77
 
61
78
  ---
62
- ### Interface: ArcMinerPostTxsData
79
+ ##### Interface: ArcMinerPostTxsData
63
80
 
64
81
  ```ts
65
82
  export interface ArcMinerPostTxsData {
@@ -79,7 +96,7 @@ export interface ArcMinerPostTxsData {
79
96
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
80
97
 
81
98
  ---
82
- ### Interface: ArcServiceConfig
99
+ ##### Interface: ArcServiceConfig
83
100
 
84
101
  ```ts
85
102
  export interface ArcServiceConfig {
@@ -92,7 +109,7 @@ export interface ArcServiceConfig {
92
109
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
93
110
 
94
111
  ---
95
- ### Interface: ExchangeRatesIoApi
112
+ ##### Interface: ExchangeRatesIoApi
96
113
 
97
114
  ```ts
98
115
  export interface ExchangeRatesIoApi {
@@ -107,7 +124,7 @@ export interface ExchangeRatesIoApi {
107
124
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
108
125
 
109
126
  ---
110
- ## Classes
127
+ #### Classes
111
128
 
112
129
  | |
113
130
  | --- |
@@ -118,7 +135,7 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
118
135
 
119
136
  ---
120
137
 
121
- ### Class: ServiceCollection
138
+ ##### Class: ServiceCollection
122
139
 
123
140
  ```ts
124
141
  export class ServiceCollection<T> {
@@ -150,7 +167,7 @@ export class ServiceCollection<T> {
150
167
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
151
168
 
152
169
  ---
153
- ### Class: Services
170
+ ##### Class: Services
154
171
 
155
172
  ```ts
156
173
  export class Services implements sdk.WalletServices {
@@ -193,7 +210,7 @@ See also: [BlockHeader](#interface-blockheader), [Chain](#type-chain), [FiatExch
193
210
 
194
211
  <summary>Class Services Details</summary>
195
212
 
196
- #### Method postTxs
213
+ ###### Method postTxs
197
214
 
198
215
  The beef must contain at least each rawTx for each txid.
199
216
  Some services may require input transactions as well.
@@ -209,7 +226,7 @@ See also: [PostTxsResult](#interface-posttxsresult)
209
226
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
210
227
 
211
228
  ---
212
- ## Functions
229
+ #### Functions
213
230
 
214
231
  | | |
215
232
  | --- | --- |
@@ -228,7 +245,7 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
228
245
 
229
246
  ---
230
247
 
231
- ### Function: createDefaultWalletServicesOptions
248
+ ##### Function: createDefaultWalletServicesOptions
232
249
 
233
250
  ```ts
234
251
  export function createDefaultWalletServicesOptions(chain: sdk.Chain): sdk.WalletServicesOptions
@@ -239,7 +256,7 @@ See also: [Chain](#type-chain), [WalletServicesOptions](#interface-walletservice
239
256
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
240
257
 
241
258
  ---
242
- ### Function: getExchangeRatesIo
259
+ ##### Function: getExchangeRatesIo
243
260
 
244
261
  ```ts
245
262
  export async function getExchangeRatesIo(key: string): Promise<ExchangeRatesIoApi>
@@ -250,7 +267,7 @@ See also: [ExchangeRatesIoApi](#interface-exchangeratesioapi)
250
267
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
251
268
 
252
269
  ---
253
- ### Function: getMerklePathFromTaalARC
270
+ ##### Function: getMerklePathFromTaalARC
254
271
 
255
272
  ```ts
256
273
  export async function getMerklePathFromTaalARC(txid: string, config: ArcServiceConfig, services: sdk.WalletServices): Promise<sdk.GetMerklePathResult>
@@ -261,7 +278,7 @@ See also: [ArcServiceConfig](#interface-arcserviceconfig), [GetMerklePathResult]
261
278
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
262
279
 
263
280
  ---
264
- ### Function: getMerklePathFromWhatsOnChainTsc
281
+ ##### Function: getMerklePathFromWhatsOnChainTsc
265
282
 
266
283
  WhatOnChain.com has their own "hash/pos/R/L" proof format and a more TSC compliant proof format.
267
284
 
@@ -278,7 +295,7 @@ See also: [Chain](#type-chain), [GetMerklePathResult](#interface-getmerklepathre
278
295
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
279
296
 
280
297
  ---
281
- ### Function: getRawTxFromWhatsOnChain
298
+ ##### Function: getRawTxFromWhatsOnChain
282
299
 
283
300
  ```ts
284
301
  export async function getRawTxFromWhatsOnChain(txid: string, chain: sdk.Chain): Promise<sdk.GetRawTxResult>
@@ -289,7 +306,7 @@ See also: [Chain](#type-chain), [GetRawTxResult](#interface-getrawtxresult)
289
306
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
290
307
 
291
308
  ---
292
- ### Function: getTaalArcServiceConfig
309
+ ##### Function: getTaalArcServiceConfig
293
310
 
294
311
  ```ts
295
312
  export function getTaalArcServiceConfig(chain: sdk.Chain, apiKey: string): ArcServiceConfig
@@ -300,7 +317,7 @@ See also: [ArcServiceConfig](#interface-arcserviceconfig), [Chain](#type-chain)
300
317
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
301
318
 
302
319
  ---
303
- ### Function: getUtxoStatusFromWhatsOnChain
320
+ ##### Function: getUtxoStatusFromWhatsOnChain
304
321
 
305
322
  ```ts
306
323
  export async function getUtxoStatusFromWhatsOnChain(output: string, chain: sdk.Chain, outputFormat?: sdk.GetUtxoStatusOutputFormat): Promise<sdk.GetUtxoStatusResult>
@@ -311,7 +328,7 @@ See also: [Chain](#type-chain), [GetUtxoStatusOutputFormat](#type-getutxostatuso
311
328
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
312
329
 
313
330
  ---
314
- ### Function: makeErrorResult
331
+ ##### Function: makeErrorResult
315
332
 
316
333
  ```ts
317
334
  export function makeErrorResult(error: sdk.WalletError, miner: ArcServiceConfig, beef: number[], txids: string[], dd?: ArcMinerPostBeefDataApi): sdk.PostBeefResult
@@ -322,7 +339,7 @@ See also: [ArcMinerPostBeefDataApi](#interface-arcminerpostbeefdataapi), [ArcSer
322
339
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
323
340
 
324
341
  ---
325
- ### Function: makeGetMerklePathFromTaalARC
342
+ ##### Function: makeGetMerklePathFromTaalARC
326
343
 
327
344
  ```ts
328
345
  export function makeGetMerklePathFromTaalARC(config: ArcServiceConfig): sdk.GetMerklePathService
@@ -333,7 +350,7 @@ See also: [ArcServiceConfig](#interface-arcserviceconfig), [GetMerklePathService
333
350
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
334
351
 
335
352
  ---
336
- ### Function: makePostBeefResult
353
+ ##### Function: makePostBeefResult
337
354
 
338
355
  ```ts
339
356
  export function makePostBeefResult(dd: ArcMinerPostBeefDataApi, miner: ArcServiceConfig, beef: number[], txids: string[]): sdk.PostBeefResult
@@ -344,7 +361,7 @@ See also: [ArcMinerPostBeefDataApi](#interface-arcminerpostbeefdataapi), [ArcSer
344
361
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
345
362
 
346
363
  ---
347
- ### Function: makePostBeefToTaalARC
364
+ ##### Function: makePostBeefToTaalARC
348
365
 
349
366
  ```ts
350
367
  export function makePostBeefToTaalARC(config: ArcServiceConfig): sdk.PostBeefService
@@ -355,7 +372,7 @@ See also: [ArcServiceConfig](#interface-arcserviceconfig), [PostBeefService](#ty
355
372
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
356
373
 
357
374
  ---
358
- ### Function: makePostTxsToTaalARC
375
+ ##### Function: makePostTxsToTaalARC
359
376
 
360
377
  ```ts
361
378
  export function makePostTxsToTaalARC(config: ArcServiceConfig): sdk.PostTxsService
@@ -366,7 +383,7 @@ See also: [ArcServiceConfig](#interface-arcserviceconfig), [PostTxsService](#typ
366
383
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
367
384
 
368
385
  ---
369
- ### Function: postBeefToArcMiner
386
+ ##### Function: postBeefToArcMiner
370
387
 
371
388
  ```ts
372
389
  export async function postBeefToArcMiner(beef: Beef | number[], txids: string[], config: ArcServiceConfig): Promise<sdk.PostBeefResult>
@@ -377,7 +394,7 @@ See also: [ArcServiceConfig](#interface-arcserviceconfig), [PostBeefResult](#int
377
394
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
378
395
 
379
396
  ---
380
- ### Function: postBeefToTaalArcMiner
397
+ ##### Function: postBeefToTaalArcMiner
381
398
 
382
399
  ```ts
383
400
  export async function postBeefToTaalArcMiner(beef: Beef, txids: string[], config: ArcServiceConfig, services: sdk.WalletServices): Promise<sdk.PostBeefResult>
@@ -388,7 +405,7 @@ See also: [ArcServiceConfig](#interface-arcserviceconfig), [PostBeefResult](#int
388
405
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
389
406
 
390
407
  ---
391
- ### Function: postTxsToTaalArcMiner
408
+ ##### Function: postTxsToTaalArcMiner
392
409
 
393
410
  ```ts
394
411
  export async function postTxsToTaalArcMiner(beef: Beef, txids: string[], config: ArcServiceConfig, services: sdk.WalletServices): Promise<sdk.PostTxsResult>
@@ -410,7 +427,7 @@ Argument Details
410
427
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
411
428
 
412
429
  ---
413
- ### Function: toBinaryBaseBlockHeader
430
+ ##### Function: toBinaryBaseBlockHeader
414
431
 
415
432
  Serializes a block header as an 80 byte array.
416
433
  The exact serialized format is defined in the Bitcoin White Paper
@@ -446,7 +463,7 @@ Returns
446
463
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
447
464
 
448
465
  ---
449
- ### Function: updateBsvExchangeRate
466
+ ##### Function: updateBsvExchangeRate
450
467
 
451
468
  ```ts
452
469
  export async function updateBsvExchangeRate(rate?: sdk.BsvExchangeRate, updateMsecs?: number): Promise<sdk.BsvExchangeRate>
@@ -457,7 +474,7 @@ See also: [BsvExchangeRate](#interface-bsvexchangerate)
457
474
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
458
475
 
459
476
  ---
460
- ### Function: updateChaintracksFiatExchangeRates
477
+ ##### Function: updateChaintracksFiatExchangeRates
461
478
 
462
479
  ```ts
463
480
  export async function updateChaintracksFiatExchangeRates(targetCurrencies: string[], options: sdk.WalletServicesOptions): Promise<sdk.FiatExchangeRates>
@@ -468,7 +485,7 @@ See also: [FiatExchangeRates](#interface-fiatexchangerates), [WalletServicesOpti
468
485
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
469
486
 
470
487
  ---
471
- ### Function: updateExchangeratesapi
488
+ ##### Function: updateExchangeratesapi
472
489
 
473
490
  ```ts
474
491
  export async function updateExchangeratesapi(targetCurrencies: string[], options: sdk.WalletServicesOptions): Promise<sdk.FiatExchangeRates>
@@ -479,7 +496,7 @@ See also: [FiatExchangeRates](#interface-fiatexchangerates), [WalletServicesOpti
479
496
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
480
497
 
481
498
  ---
482
- ### Function: validateScriptHash
499
+ ##### Function: validateScriptHash
483
500
 
484
501
  ```ts
485
502
  export function validateScriptHash(output: string, outputFormat?: sdk.GetUtxoStatusOutputFormat): string
@@ -490,7 +507,9 @@ See also: [GetUtxoStatusOutputFormat](#type-getutxostatusoutputformat)
490
507
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
491
508
 
492
509
  ---
493
- ## Types
510
+ #### Types
511
+
512
+ #### Variables
494
513
 
495
- ## Variables
496
514
 
515
+ <!--#endregion ts2md-api-merged-here-->