@bsv/wallet-toolbox 1.7.18 → 1.7.20

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 (38) hide show
  1. package/docs/client.md +132 -57
  2. package/docs/services.md +13 -1
  3. package/docs/storage.md +13 -1
  4. package/docs/wallet.md +132 -57
  5. package/out/src/WalletPermissionsManager.d.ts +48 -1
  6. package/out/src/WalletPermissionsManager.d.ts.map +1 -1
  7. package/out/src/WalletPermissionsManager.js +775 -124
  8. package/out/src/WalletPermissionsManager.js.map +1 -1
  9. package/out/src/__tests/WalletPermissionsManager.fixtures.d.ts.map +1 -1
  10. package/out/src/__tests/WalletPermissionsManager.fixtures.js +9 -0
  11. package/out/src/__tests/WalletPermissionsManager.fixtures.js.map +1 -1
  12. package/out/src/__tests/WalletPermissionsManager.flows.test.js +121 -0
  13. package/out/src/__tests/WalletPermissionsManager.flows.test.js.map +1 -1
  14. package/out/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.d.ts +1 -1
  15. package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.js +3 -1
  16. package/out/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.js.map +1 -1
  17. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.d.ts.map +1 -1
  18. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js +12 -0
  19. package/out/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.js.map +1 -1
  20. package/out/src/storage/StorageProvider.d.ts +16 -2
  21. package/out/src/storage/StorageProvider.d.ts.map +1 -1
  22. package/out/src/storage/StorageProvider.js +33 -4
  23. package/out/src/storage/StorageProvider.js.map +1 -1
  24. package/out/src/storage/methods/__test/offsetKey.test.js +266 -100
  25. package/out/src/storage/methods/__test/offsetKey.test.js.map +1 -1
  26. package/out/src/storage/methods/getBeefForTransaction.js +1 -1
  27. package/out/src/storage/methods/getBeefForTransaction.js.map +1 -1
  28. package/out/tsconfig.all.tsbuildinfo +1 -1
  29. package/package.json +2 -2
  30. package/src/WalletPermissionsManager.ts +973 -129
  31. package/src/__tests/WalletPermissionsManager.fixtures.ts +9 -0
  32. package/src/__tests/WalletPermissionsManager.flows.test.ts +157 -0
  33. package/src/services/chaintracker/chaintracks/Ingest/BulkIngestorWhatsOnChainCdn.ts +1 -1
  34. package/src/services/chaintracker/chaintracks/__tests/Chaintracks.test.ts +2 -1
  35. package/src/services/chaintracker/chaintracks/util/validBulkHeaderFilesByFileHash.ts +12 -0
  36. package/src/storage/StorageProvider.ts +38 -5
  37. package/src/storage/methods/__test/offsetKey.test.ts +299 -103
  38. package/src/storage/methods/getBeefForTransaction.ts +3 -1
package/docs/client.md CHANGED
@@ -14,52 +14,54 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
14
14
 
15
15
  | | | |
16
16
  | --- | --- | --- |
17
- | [AdminStatsResult](#interface-adminstatsresult) | [GenerateChangeSdkOutput](#interface-generatechangesdkoutput) | [StorageCreateActionResult](#interface-storagecreateactionresult) |
18
- | [ArcConfig](#interface-arcconfig) | [GenerateChangeSdkParams](#interface-generatechangesdkparams) | [StorageCreateTransactionSdkInput](#interface-storagecreatetransactionsdkinput) |
19
- | [ArcMinerGetTxData](#interface-arcminergettxdata) | [GenerateChangeSdkResult](#interface-generatechangesdkresult) | [StorageCreateTransactionSdkOutput](#interface-storagecreatetransactionsdkoutput) |
20
- | [AuthId](#interface-authid) | [GenerateChangeSdkStorageChange](#interface-generatechangesdkstoragechange) | [StorageFeeModel](#interface-storagefeemodel) |
21
- | [AuthPayload](#interface-authpayload) | [GetHeaderByteFileLinksResult](#interface-getheaderbytefilelinksresult) | [StorageGetBeefOptions](#interface-storagegetbeefoptions) |
22
- | [BaseBlockHeader](#interface-baseblockheader) | [GetMerklePathResult](#interface-getmerklepathresult) | [StorageIdbOptions](#interface-storageidboptions) |
23
- | [BitailsConfig](#interface-bitailsconfig) | [GetRawTxResult](#interface-getrawtxresult) | [StorageIdbSchema](#interface-storageidbschema) |
24
- | [BitailsMerkleProof](#interface-bitailsmerkleproof) | [GetReqsAndBeefDetail](#interface-getreqsandbeefdetail) | [StorageIdentity](#interface-storageidentity) |
25
- | [BlockHeader](#interface-blockheader) | [GetReqsAndBeefResult](#interface-getreqsandbeefresult) | [StorageInternalizeActionResult](#interface-storageinternalizeactionresult) |
26
- | [BsvExchangeRate](#interface-bsvexchangerate) | [GetScriptHashHistory](#interface-getscripthashhistory) | [StorageProcessActionArgs](#interface-storageprocessactionargs) |
27
- | [BulkFileDataManagerMergeResult](#interface-bulkfiledatamanagermergeresult) | [GetScriptHashHistoryResult](#interface-getscripthashhistoryresult) | [StorageProcessActionResults](#interface-storageprocessactionresults) |
28
- | [BulkFileDataManagerOptions](#interface-bulkfiledatamanageroptions) | [GetStatusForTxidsResult](#interface-getstatusfortxidsresult) | [StorageProvenOrReq](#interface-storageprovenorreq) |
29
- | [BulkHeaderFileInfo](#interface-bulkheaderfileinfo) | [GetUtxoStatusDetails](#interface-getutxostatusdetails) | [StorageProviderOptions](#interface-storageprovideroptions) |
30
- | [BulkHeaderFilesInfo](#interface-bulkheaderfilesinfo) | [GetUtxoStatusResult](#interface-getutxostatusresult) | [StorageReaderOptions](#interface-storagereaderoptions) |
31
- | [BulkIngestorApi](#interface-bulkingestorapi) | [GroupedPermissionRequest](#interface-groupedpermissionrequest) | [StorageReaderWriterOptions](#interface-storagereaderwriteroptions) |
32
- | [BulkIngestorBaseOptions](#interface-bulkingestorbaseoptions) | [GroupedPermissions](#interface-groupedpermissions) | [StorageSyncReaderOptions](#interface-storagesyncreaderoptions) |
33
- | [BulkIngestorCDNOptions](#interface-bulkingestorcdnoptions) | [HeightRangeApi](#interface-heightrangeapi) | [SyncChunk](#interface-syncchunk) |
34
- | [BulkIngestorWhatsOnChainOptions](#interface-bulkingestorwhatsonchainoptions) | [HeightRanges](#interface-heightranges) | [SyncError](#interface-syncerror) |
35
- | [BulkStorageApi](#interface-bulkstorageapi) | [KeyPair](#interface-keypair) | [SyncMap](#interface-syncmap) |
36
- | [BulkStorageBaseOptions](#interface-bulkstoragebaseoptions) | [KeyPairAddress](#interface-keypairaddress) | [TableCertificate](#interface-tablecertificate) |
37
- | [BulkSyncResult](#interface-bulksyncresult) | [ListActionsSpecOp](#interface-listactionsspecop) | [TableCertificateField](#interface-tablecertificatefield) |
38
- | [CertOpsWallet](#interface-certopswallet) | [ListOutputsSpecOp](#interface-listoutputsspecop) | [TableCertificateX](#interface-tablecertificatex) |
39
- | [Certifier](#interface-certifier) | [LiveBlockHeader](#interface-liveblockheader) | [TableCommission](#interface-tablecommission) |
40
- | [ChaintracksApi](#interface-chaintracksapi) | [LiveIngestorApi](#interface-liveingestorapi) | [TableMonitorEvent](#interface-tablemonitorevent) |
41
- | [ChaintracksAppendableFileApi](#interface-chaintracksappendablefileapi) | [LiveIngestorBaseOptions](#interface-liveingestorbaseoptions) | [TableOutput](#interface-tableoutput) |
42
- | [ChaintracksChainTrackerOptions](#interface-chaintrackschaintrackeroptions) | [LiveIngestorWhatsOnChainOptions](#interface-liveingestorwhatsonchainoptions) | [TableOutputBasket](#interface-tableoutputbasket) |
43
- | [ChaintracksClientApi](#interface-chaintracksclientapi) | [MonitorOptions](#interface-monitoroptions) | [TableOutputTag](#interface-tableoutputtag) |
44
- | [ChaintracksFetchApi](#interface-chaintracksfetchapi) | [OutPoint](#interface-outpoint) | [TableOutputTagMap](#interface-tableoutputtagmap) |
45
- | [ChaintracksFsApi](#interface-chaintracksfsapi) | [Paged](#interface-paged) | [TableOutputX](#interface-tableoutputx) |
46
- | [ChaintracksInfoApi](#interface-chaintracksinfoapi) | [PendingSignAction](#interface-pendingsignaction) | [TableProvenTx](#interface-tableproventx) |
47
- | [ChaintracksManagementApi](#interface-chaintracksmanagementapi) | [PendingStorageInput](#interface-pendingstorageinput) | [TableProvenTxReq](#interface-tableproventxreq) |
48
- | [ChaintracksOptions](#interface-chaintracksoptions) | [PermissionRequest](#interface-permissionrequest) | [TableProvenTxReqDynamics](#interface-tableproventxreqdynamics) |
49
- | [ChaintracksPackageInfoApi](#interface-chaintrackspackageinfoapi) | [PermissionToken](#interface-permissiontoken) | [TableSettings](#interface-tablesettings) |
50
- | [ChaintracksReadableFileApi](#interface-chaintracksreadablefileapi) | [PermissionsManagerConfig](#interface-permissionsmanagerconfig) | [TableSyncState](#interface-tablesyncstate) |
51
- | [ChaintracksServiceClientOptions](#interface-chaintracksserviceclientoptions) | [PermissionsModule](#interface-permissionsmodule) | [TableTransaction](#interface-tabletransaction) |
52
- | [ChaintracksStorageApi](#interface-chaintracksstorageapi) | [PostBeefResult](#interface-postbeefresult) | [TableTxLabel](#interface-tabletxlabel) |
53
- | [ChaintracksStorageBaseOptions](#interface-chaintracksstoragebaseoptions) | [PostBeefResultForTxidApi](#interface-postbeefresultfortxidapi) | [TableTxLabelMap](#interface-tabletxlabelmap) |
54
- | [ChaintracksStorageBulkFileApi](#interface-chaintracksstoragebulkfileapi) | [PostReqsToNetworkDetails](#interface-postreqstonetworkdetails) | [TableUser](#interface-tableuser) |
55
- | [ChaintracksStorageIdbOptions](#interface-chaintracksstorageidboptions) | [PostReqsToNetworkResult](#interface-postreqstonetworkresult) | [TaskPurgeParams](#interface-taskpurgeparams) |
56
- | [ChaintracksStorageIdbSchema](#interface-chaintracksstorageidbschema) | [PostTxResultForTxid](#interface-posttxresultfortxid) | [TrustSettings](#interface-trustsettings) |
57
- | [ChaintracksStorageIngestApi](#interface-chaintracksstorageingestapi) | [PostTxResultForTxidError](#interface-posttxresultfortxiderror) | [TrxToken](#interface-trxtoken) |
58
- | [ChaintracksStorageNoDbOptions](#interface-chaintracksstoragenodboptions) | [PostTxsResult](#interface-posttxsresult) | [TscMerkleProofApi](#interface-tscmerkleproofapi) |
59
- | [ChaintracksStorageQueryApi](#interface-chaintracksstoragequeryapi) | [ProcessSyncChunkResult](#interface-processsyncchunkresult) | [TxScriptOffsets](#interface-txscriptoffsets) |
60
- | [ChaintracksWritableFileApi](#interface-chaintrackswritablefileapi) | [Profile](#interface-profile) | [UMPToken](#interface-umptoken) |
61
- | [CommitNewTxResults](#interface-commitnewtxresults) | [ProvenOrRawTx](#interface-provenorrawtx) | [UMPTokenInteractor](#interface-umptokeninteractor) |
62
- | [CompleteAuthResponse](#interface-completeauthresponse) | [ProvenTransactionStatus](#interface-proventransactionstatus) | [UpdateProvenTxReqWithNewProvenTxArgs](#interface-updateproventxreqwithnewproventxargs) |
17
+ | [AdminStatsResult](#interface-adminstatsresult) | [GenerateChangeSdkChangeOutput](#interface-generatechangesdkchangeoutput) | [StatusForTxidResult](#interface-statusfortxidresult) |
18
+ | [ArcConfig](#interface-arcconfig) | [GenerateChangeSdkInput](#interface-generatechangesdkinput) | [StorageAdminStats](#interface-storageadminstats) |
19
+ | [ArcMinerGetTxData](#interface-arcminergettxdata) | [GenerateChangeSdkOutput](#interface-generatechangesdkoutput) | [StorageCreateActionResult](#interface-storagecreateactionresult) |
20
+ | [AuthId](#interface-authid) | [GenerateChangeSdkParams](#interface-generatechangesdkparams) | [StorageCreateTransactionSdkInput](#interface-storagecreatetransactionsdkinput) |
21
+ | [AuthPayload](#interface-authpayload) | [GenerateChangeSdkResult](#interface-generatechangesdkresult) | [StorageCreateTransactionSdkOutput](#interface-storagecreatetransactionsdkoutput) |
22
+ | [BaseBlockHeader](#interface-baseblockheader) | [GenerateChangeSdkStorageChange](#interface-generatechangesdkstoragechange) | [StorageFeeModel](#interface-storagefeemodel) |
23
+ | [BitailsConfig](#interface-bitailsconfig) | [GetHeaderByteFileLinksResult](#interface-getheaderbytefilelinksresult) | [StorageGetBeefOptions](#interface-storagegetbeefoptions) |
24
+ | [BitailsMerkleProof](#interface-bitailsmerkleproof) | [GetMerklePathResult](#interface-getmerklepathresult) | [StorageIdbOptions](#interface-storageidboptions) |
25
+ | [BlockHeader](#interface-blockheader) | [GetRawTxResult](#interface-getrawtxresult) | [StorageIdbSchema](#interface-storageidbschema) |
26
+ | [BsvExchangeRate](#interface-bsvexchangerate) | [GetReqsAndBeefDetail](#interface-getreqsandbeefdetail) | [StorageIdentity](#interface-storageidentity) |
27
+ | [BulkFileDataManagerMergeResult](#interface-bulkfiledatamanagermergeresult) | [GetReqsAndBeefResult](#interface-getreqsandbeefresult) | [StorageInternalizeActionResult](#interface-storageinternalizeactionresult) |
28
+ | [BulkFileDataManagerOptions](#interface-bulkfiledatamanageroptions) | [GetScriptHashHistory](#interface-getscripthashhistory) | [StorageProcessActionArgs](#interface-storageprocessactionargs) |
29
+ | [BulkHeaderFileInfo](#interface-bulkheaderfileinfo) | [GetScriptHashHistoryResult](#interface-getscripthashhistoryresult) | [StorageProcessActionResults](#interface-storageprocessactionresults) |
30
+ | [BulkHeaderFilesInfo](#interface-bulkheaderfilesinfo) | [GetStatusForTxidsResult](#interface-getstatusfortxidsresult) | [StorageProvenOrReq](#interface-storageprovenorreq) |
31
+ | [BulkIngestorApi](#interface-bulkingestorapi) | [GetUtxoStatusDetails](#interface-getutxostatusdetails) | [StorageProviderOptions](#interface-storageprovideroptions) |
32
+ | [BulkIngestorBaseOptions](#interface-bulkingestorbaseoptions) | [GetUtxoStatusResult](#interface-getutxostatusresult) | [StorageReaderOptions](#interface-storagereaderoptions) |
33
+ | [BulkIngestorCDNOptions](#interface-bulkingestorcdnoptions) | [GroupedPermissionRequest](#interface-groupedpermissionrequest) | [StorageReaderWriterOptions](#interface-storagereaderwriteroptions) |
34
+ | [BulkIngestorWhatsOnChainOptions](#interface-bulkingestorwhatsonchainoptions) | [GroupedPermissions](#interface-groupedpermissions) | [StorageSyncReaderOptions](#interface-storagesyncreaderoptions) |
35
+ | [BulkStorageApi](#interface-bulkstorageapi) | [HeightRangeApi](#interface-heightrangeapi) | [SyncChunk](#interface-syncchunk) |
36
+ | [BulkStorageBaseOptions](#interface-bulkstoragebaseoptions) | [HeightRanges](#interface-heightranges) | [SyncError](#interface-syncerror) |
37
+ | [BulkSyncResult](#interface-bulksyncresult) | [KeyPair](#interface-keypair) | [SyncMap](#interface-syncmap) |
38
+ | [CertOpsWallet](#interface-certopswallet) | [KeyPairAddress](#interface-keypairaddress) | [TableCertificate](#interface-tablecertificate) |
39
+ | [Certifier](#interface-certifier) | [ListActionsSpecOp](#interface-listactionsspecop) | [TableCertificateField](#interface-tablecertificatefield) |
40
+ | [ChaintracksApi](#interface-chaintracksapi) | [ListOutputsSpecOp](#interface-listoutputsspecop) | [TableCertificateX](#interface-tablecertificatex) |
41
+ | [ChaintracksAppendableFileApi](#interface-chaintracksappendablefileapi) | [LiveBlockHeader](#interface-liveblockheader) | [TableCommission](#interface-tablecommission) |
42
+ | [ChaintracksChainTrackerOptions](#interface-chaintrackschaintrackeroptions) | [LiveIngestorApi](#interface-liveingestorapi) | [TableMonitorEvent](#interface-tablemonitorevent) |
43
+ | [ChaintracksClientApi](#interface-chaintracksclientapi) | [LiveIngestorBaseOptions](#interface-liveingestorbaseoptions) | [TableOutput](#interface-tableoutput) |
44
+ | [ChaintracksFetchApi](#interface-chaintracksfetchapi) | [LiveIngestorWhatsOnChainOptions](#interface-liveingestorwhatsonchainoptions) | [TableOutputBasket](#interface-tableoutputbasket) |
45
+ | [ChaintracksFsApi](#interface-chaintracksfsapi) | [MonitorOptions](#interface-monitoroptions) | [TableOutputTag](#interface-tableoutputtag) |
46
+ | [ChaintracksInfoApi](#interface-chaintracksinfoapi) | [OutPoint](#interface-outpoint) | [TableOutputTagMap](#interface-tableoutputtagmap) |
47
+ | [ChaintracksManagementApi](#interface-chaintracksmanagementapi) | [Paged](#interface-paged) | [TableOutputX](#interface-tableoutputx) |
48
+ | [ChaintracksOptions](#interface-chaintracksoptions) | [PendingSignAction](#interface-pendingsignaction) | [TableProvenTx](#interface-tableproventx) |
49
+ | [ChaintracksPackageInfoApi](#interface-chaintrackspackageinfoapi) | [PendingStorageInput](#interface-pendingstorageinput) | [TableProvenTxReq](#interface-tableproventxreq) |
50
+ | [ChaintracksReadableFileApi](#interface-chaintracksreadablefileapi) | [PermissionRequest](#interface-permissionrequest) | [TableProvenTxReqDynamics](#interface-tableproventxreqdynamics) |
51
+ | [ChaintracksServiceClientOptions](#interface-chaintracksserviceclientoptions) | [PermissionToken](#interface-permissiontoken) | [TableSettings](#interface-tablesettings) |
52
+ | [ChaintracksStorageApi](#interface-chaintracksstorageapi) | [PermissionsManagerConfig](#interface-permissionsmanagerconfig) | [TableSyncState](#interface-tablesyncstate) |
53
+ | [ChaintracksStorageBaseOptions](#interface-chaintracksstoragebaseoptions) | [PermissionsModule](#interface-permissionsmodule) | [TableTransaction](#interface-tabletransaction) |
54
+ | [ChaintracksStorageBulkFileApi](#interface-chaintracksstoragebulkfileapi) | [PostBeefResult](#interface-postbeefresult) | [TableTxLabel](#interface-tabletxlabel) |
55
+ | [ChaintracksStorageIdbOptions](#interface-chaintracksstorageidboptions) | [PostBeefResultForTxidApi](#interface-postbeefresultfortxidapi) | [TableTxLabelMap](#interface-tabletxlabelmap) |
56
+ | [ChaintracksStorageIdbSchema](#interface-chaintracksstorageidbschema) | [PostReqsToNetworkDetails](#interface-postreqstonetworkdetails) | [TableUser](#interface-tableuser) |
57
+ | [ChaintracksStorageIngestApi](#interface-chaintracksstorageingestapi) | [PostReqsToNetworkResult](#interface-postreqstonetworkresult) | [TaskPurgeParams](#interface-taskpurgeparams) |
58
+ | [ChaintracksStorageNoDbOptions](#interface-chaintracksstoragenodboptions) | [PostTxResultForTxid](#interface-posttxresultfortxid) | [TrustSettings](#interface-trustsettings) |
59
+ | [ChaintracksStorageQueryApi](#interface-chaintracksstoragequeryapi) | [PostTxResultForTxidError](#interface-posttxresultfortxiderror) | [TrxToken](#interface-trxtoken) |
60
+ | [ChaintracksWritableFileApi](#interface-chaintrackswritablefileapi) | [PostTxsResult](#interface-posttxsresult) | [TscMerkleProofApi](#interface-tscmerkleproofapi) |
61
+ | [CommitNewTxResults](#interface-commitnewtxresults) | [ProcessSyncChunkResult](#interface-processsyncchunkresult) | [TxScriptOffsets](#interface-txscriptoffsets) |
62
+ | [CompleteAuthResponse](#interface-completeauthresponse) | [Profile](#interface-profile) | [UMPToken](#interface-umptoken) |
63
+ | [CounterpartyPermissionRequest](#interface-counterpartypermissionrequest) | [ProvenOrRawTx](#interface-provenorrawtx) | [UMPTokenInteractor](#interface-umptokeninteractor) |
64
+ | [CounterpartyPermissions](#interface-counterpartypermissions) | [ProvenTransactionStatus](#interface-proventransactionstatus) | [UpdateProvenTxReqWithNewProvenTxArgs](#interface-updateproventxreqwithnewproventxargs) |
63
65
  | [CreateActionResultX](#interface-createactionresultx) | [ProvenTxFromTxidResult](#interface-proventxfromtxidresult) | [UpdateProvenTxReqWithNewProvenTxResult](#interface-updateproventxreqwithnewproventxresult) |
64
66
  | [DeactivedHeader](#interface-deactivedheader) | [ProvenTxReqHistory](#interface-proventxreqhistory) | [ValidateGenerateChangeSdkParamsResult](#interface-validategeneratechangesdkparamsresult) |
65
67
  | [EntitySyncMap](#interface-entitysyncmap) | [ProvenTxReqHistorySummaryApi](#interface-proventxreqhistorysummaryapi) | [VerifyAndRepairBeefResult](#interface-verifyandrepairbeefresult) |
@@ -86,8 +88,6 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
86
88
  | [FindTxLabelsArgs](#interface-findtxlabelsargs) | [SetupWalletIdbArgs](#interface-setupwalletidbargs) | [WocGetHeadersHeader](#interface-wocgetheadersheader) |
87
89
  | [FindUsersArgs](#interface-findusersargs) | [SignActionResultX](#interface-signactionresultx) | [WocHeader](#interface-wocheader) |
88
90
  | [GenerateChangeSdkChangeInput](#interface-generatechangesdkchangeinput) | [StartAuthResponse](#interface-startauthresponse) | [XValidCreateActionOutput](#interface-xvalidcreateactionoutput) |
89
- | [GenerateChangeSdkChangeOutput](#interface-generatechangesdkchangeoutput) | [StatusForTxidResult](#interface-statusfortxidresult) | |
90
- | [GenerateChangeSdkInput](#interface-generatechangesdkinput) | [StorageAdminStats](#interface-storageadminstats) | |
91
91
 
92
92
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
93
93
 
@@ -814,7 +814,7 @@ enableCache: boolean
814
814
 
815
815
  ###### Property idleWait
816
816
 
817
- Maximum msces of "normal" pause with no new data arriving.
817
+ Maximum msecs of "normal" pause with no new data arriving.
818
818
 
819
819
  ```ts
820
820
  idleWait: number | undefined
@@ -2315,6 +2315,38 @@ export interface CompleteAuthResponse {
2315
2315
 
2316
2316
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
2317
2317
 
2318
+ ---
2319
+ ##### Interface: CounterpartyPermissionRequest
2320
+
2321
+ ```ts
2322
+ export interface CounterpartyPermissionRequest {
2323
+ originator: string;
2324
+ requestID: string;
2325
+ counterparty: PubKeyHex;
2326
+ counterpartyLabel?: string;
2327
+ permissions: CounterpartyPermissions;
2328
+ }
2329
+ ```
2330
+
2331
+ See also: [CounterpartyPermissions](./client.md#interface-counterpartypermissions)
2332
+
2333
+ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
2334
+
2335
+ ---
2336
+ ##### Interface: CounterpartyPermissions
2337
+
2338
+ ```ts
2339
+ export interface CounterpartyPermissions {
2340
+ description?: string;
2341
+ protocols: Array<{
2342
+ protocolID: WalletProtocol;
2343
+ description: string;
2344
+ }>;
2345
+ }
2346
+ ```
2347
+
2348
+ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
2349
+
2318
2350
  ---
2319
2351
  ##### Interface: CreateActionResultX
2320
2352
 
@@ -7231,10 +7263,11 @@ export interface WalletPermissionsManagerCallbacks {
7231
7263
  onCertificateAccessRequested?: PermissionEventHandler[];
7232
7264
  onSpendingAuthorizationRequested?: PermissionEventHandler[];
7233
7265
  onGroupedPermissionRequested?: GroupedPermissionEventHandler[];
7266
+ onCounterpartyPermissionRequested?: CounterpartyPermissionEventHandler[];
7234
7267
  }
7235
7268
  ```
7236
7269
 
7237
- See also: [GroupedPermissionEventHandler](./client.md#type-groupedpermissioneventhandler), [PermissionEventHandler](./client.md#type-permissioneventhandler)
7270
+ See also: [CounterpartyPermissionEventHandler](./client.md#type-counterpartypermissioneventhandler), [GroupedPermissionEventHandler](./client.md#type-groupedpermissioneventhandler), [PermissionEventHandler](./client.md#type-permissioneventhandler)
7238
7271
 
7239
7272
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
7240
7273
 
@@ -13185,7 +13218,7 @@ export abstract class StorageProvider extends StorageReaderWriter implements Wal
13185
13218
  async listCertificates(auth: AuthId, args: Validation.ValidListCertificatesArgs): Promise<ListCertificatesResult>
13186
13219
  async verifyKnownValidTransaction(txid: string, trx?: TrxToken): Promise<boolean>
13187
13220
  async getValidBeefForKnownTxid(txid: string, mergeToBeef?: Beef, trustSelf?: TrustSelf, knownTxids?: string[], trx?: TrxToken, requiredLevels?: number): Promise<Beef>
13188
- async getValidBeefForTxid(txid: string, mergeToBeef?: Beef, trustSelf?: TrustSelf, knownTxids?: string[], trx?: TrxToken, requiredLevels?: number): Promise<Beef | undefined>
13221
+ async getValidBeefForTxid(txid: string, mergeToBeef?: Beef, trustSelf?: TrustSelf, knownTxids?: string[], trx?: TrxToken, requiredLevels?: number, chainTracker?: ChainTracker, skipInvalidProofs?: boolean): Promise<Beef | undefined>
13189
13222
  async getBeefForTransaction(txid: string, options: StorageGetBeefOptions): Promise<Beef>
13190
13223
  async findMonitorEventById(id: number, trx?: TrxToken): Promise<TableMonitorEvent | undefined>
13191
13224
  async relinquishCertificate(auth: AuthId, args: RelinquishCertificateArgs): Promise<number>
@@ -13246,6 +13279,18 @@ async getReqsAndBeefToShareWithWorld(txids: string[], knownTxids: string[], trx?
13246
13279
  ```
13247
13280
  See also: [GetReqsAndBeefResult](./storage.md#interface-getreqsandbeefresult), [TrxToken](./client.md#interface-trxtoken)
13248
13281
 
13282
+ ###### Method getValidBeefForKnownTxid
13283
+
13284
+ Pulls data from storage to build a valid beef for a txid.
13285
+
13286
+ Optionally merges the data into an existing beef.
13287
+ Optionally requires a minimum number of proof levels.
13288
+
13289
+ ```ts
13290
+ async getValidBeefForKnownTxid(txid: string, mergeToBeef?: Beef, trustSelf?: TrustSelf, knownTxids?: string[], trx?: TrxToken, requiredLevels?: number): Promise<Beef>
13291
+ ```
13292
+ See also: [TrxToken](./client.md#interface-trxtoken)
13293
+
13249
13294
  ###### Method updateProvenTxReqWithNewProvenTx
13250
13295
 
13251
13296
  Handles storage changes when a valid MerklePath and mined block header are found for a ProvenTxReq txid.
@@ -14862,7 +14907,7 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
14862
14907
  ```ts
14863
14908
  export class WalletPermissionsManager implements WalletInterface {
14864
14909
  constructor(underlyingWallet: WalletInterface, adminOriginator: string, config: PermissionsManagerConfig = {})
14865
- public bindCallback(eventName: keyof WalletPermissionsManagerCallbacks, handler: PermissionEventHandler | GroupedPermissionEventHandler): number
14910
+ public bindCallback(eventName: keyof WalletPermissionsManagerCallbacks, handler: PermissionEventHandler | GroupedPermissionEventHandler | CounterpartyPermissionEventHandler): number
14866
14911
  public unbindCallback(eventName: keyof WalletPermissionsManagerCallbacks, reference: number | Function): boolean
14867
14912
  public async grantPermission(params: {
14868
14913
  requestID: string;
@@ -14877,6 +14922,13 @@ export class WalletPermissionsManager implements WalletInterface {
14877
14922
  expiry?: number;
14878
14923
  }): Promise<void>
14879
14924
  public async denyGroupedPermission(requestID: string): Promise<void>
14925
+ public async dismissGroupedPermission(requestID: string): Promise<void>
14926
+ public async grantCounterpartyPermission(params: {
14927
+ requestID: string;
14928
+ granted: Partial<CounterpartyPermissions>;
14929
+ expiry?: number;
14930
+ }): Promise<void>
14931
+ public async denyCounterpartyPermission(requestID: string): Promise<void>
14880
14932
  public async ensureProtocolPermission({ originator, privileged, protocolID, counterparty, reason, seekPermission = true, usageType }: {
14881
14933
  originator: string;
14882
14934
  privileged: boolean;
@@ -14995,7 +15047,7 @@ export class WalletPermissionsManager implements WalletInterface {
14995
15047
  }
14996
15048
  ```
14997
15049
 
14998
- See also: [GroupedPermissionEventHandler](./client.md#type-groupedpermissioneventhandler), [GroupedPermissions](./client.md#interface-groupedpermissions), [PermissionEventHandler](./client.md#type-permissioneventhandler), [PermissionToken](./client.md#interface-permissiontoken), [PermissionsManagerConfig](./client.md#interface-permissionsmanagerconfig), [WalletPermissionsManagerCallbacks](./client.md#interface-walletpermissionsmanagercallbacks), [createAction](./storage.md#function-createaction), [internalizeAction](./storage.md#function-internalizeaction), [listActions](./storage.md#function-listactions), [listCertificates](./storage.md#function-listcertificates), [listOutputs](./storage.md#function-listoutputs), [proveCertificate](./client.md#function-provecertificate), [signAction](./client.md#function-signaction)
15050
+ See also: [CounterpartyPermissionEventHandler](./client.md#type-counterpartypermissioneventhandler), [CounterpartyPermissions](./client.md#interface-counterpartypermissions), [GroupedPermissionEventHandler](./client.md#type-groupedpermissioneventhandler), [GroupedPermissions](./client.md#interface-groupedpermissions), [PermissionEventHandler](./client.md#type-permissioneventhandler), [PermissionToken](./client.md#interface-permissiontoken), [PermissionsManagerConfig](./client.md#interface-permissionsmanagerconfig), [WalletPermissionsManagerCallbacks](./client.md#interface-walletpermissionsmanagercallbacks), [createAction](./storage.md#function-createaction), [internalizeAction](./storage.md#function-internalizeaction), [listActions](./storage.md#function-listactions), [listCertificates](./storage.md#function-listcertificates), [listOutputs](./storage.md#function-listoutputs), [proveCertificate](./client.md#function-provecertificate), [signAction](./client.md#function-signaction)
14999
15051
 
15000
15052
  ###### Constructor
15001
15053
 
@@ -15020,9 +15072,9 @@ Argument Details
15020
15072
  Binds a callback function to a named event, such as `onProtocolPermissionRequested`.
15021
15073
 
15022
15074
  ```ts
15023
- public bindCallback(eventName: keyof WalletPermissionsManagerCallbacks, handler: PermissionEventHandler | GroupedPermissionEventHandler): number
15075
+ public bindCallback(eventName: keyof WalletPermissionsManagerCallbacks, handler: PermissionEventHandler | GroupedPermissionEventHandler | CounterpartyPermissionEventHandler): number
15024
15076
  ```
15025
- See also: [GroupedPermissionEventHandler](./client.md#type-groupedpermissioneventhandler), [PermissionEventHandler](./client.md#type-permissioneventhandler), [WalletPermissionsManagerCallbacks](./client.md#interface-walletpermissionsmanagercallbacks)
15077
+ See also: [CounterpartyPermissionEventHandler](./client.md#type-counterpartypermissioneventhandler), [GroupedPermissionEventHandler](./client.md#type-groupedpermissioneventhandler), [PermissionEventHandler](./client.md#type-permissioneventhandler), [WalletPermissionsManagerCallbacks](./client.md#interface-walletpermissionsmanagercallbacks)
15026
15078
 
15027
15079
  Returns
15028
15080
 
@@ -18257,7 +18309,8 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
18257
18309
 
18258
18310
  | | | |
18259
18311
  | --- | --- | --- |
18260
- | [Chain](#type-chain) | [GroupedPermissionEventHandler](#type-groupedpermissioneventhandler) | [ReviewActionResultStatus](#type-reviewactionresultstatus) |
18312
+ | [Chain](#type-chain) | [GetUtxoStatusService](#type-getutxostatusservice) | [ReqHistoryNote](#type-reqhistorynote) |
18313
+ | [CounterpartyPermissionEventHandler](#type-counterpartypermissioneventhandler) | [GroupedPermissionEventHandler](#type-groupedpermissioneventhandler) | [ReviewActionResultStatus](#type-reviewactionresultstatus) |
18261
18314
  | [DBType](#type-dbtype) | [HeaderListener](#type-headerlistener) | [ScriptHashFormat](#type-scripthashformat) |
18262
18315
  | [EnqueueHandler](#type-enqueuehandler) | [InsertHeaderResult](#type-insertheaderresult) | [ServicesCallHistory](#type-servicescallhistory) |
18263
18316
  | [EntityStorage](#type-entitystorage) | [MonitorStorage](#type-monitorstorage) | [StopListenerToken](#type-stoplistenertoken) |
@@ -18267,7 +18320,6 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
18267
18320
  | [GetScriptHashHistoryService](#type-getscripthashhistoryservice) | [PostTxsService](#type-posttxsservice) | [TransactionStatus](#type-transactionstatus) |
18268
18321
  | [GetStatusForTxidsService](#type-getstatusfortxidsservice) | [ProvenTxReqStatus](#type-proventxreqstatus) | [UpdateFiatExchangeRateService](#type-updatefiatexchangerateservice) |
18269
18322
  | [GetUtxoStatusOutputFormat](#type-getutxostatusoutputformat) | [ReorgListener](#type-reorglistener) | [WalletLoggerLevel](#type-walletloggerlevel) |
18270
- | [GetUtxoStatusService](#type-getutxostatusservice) | [ReqHistoryNote](#type-reqhistorynote) | |
18271
18323
 
18272
18324
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
18273
18325
 
@@ -18281,6 +18333,17 @@ export type Chain = "main" | "test"
18281
18333
 
18282
18334
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
18283
18335
 
18336
+ ---
18337
+ ##### Type: CounterpartyPermissionEventHandler
18338
+
18339
+ ```ts
18340
+ export type CounterpartyPermissionEventHandler = (request: CounterpartyPermissionRequest) => void | Promise<void>
18341
+ ```
18342
+
18343
+ See also: [CounterpartyPermissionRequest](./client.md#interface-counterpartypermissionrequest)
18344
+
18345
+ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
18346
+
18284
18347
  ---
18285
18348
  ##### Type: DBType
18286
18349
 
@@ -19614,6 +19677,18 @@ validBulkHeaderFiles: BulkHeaderFileInfo[] = [
19614
19677
  prevHash: "00000000000000000e7dcc27c06ee353bd37260b2e7e664314c204f0324a5087",
19615
19678
  sourceUrl: "https://cdn.projectbabbage.com/blockheaders",
19616
19679
  validated: true
19680
+ },
19681
+ {
19682
+ chain: "main",
19683
+ count: 31772,
19684
+ fileHash: "NuVsRUrI5QnjILbYy4LS3A/Udl6PH/m8Y9uVguEsekM=",
19685
+ fileName: "mainNet_9.headers",
19686
+ firstHeight: 900000,
19687
+ lastChainWork: "0000000000000000000000000000000000000000016ab16bb9b31430588788d3",
19688
+ lastHash: "0000000000000000024a2f1caef4b0ffdc1a036b09f9ed7f48b538f619f32ef2",
19689
+ prevChainWork: "000000000000000000000000000000000000000001664db1f2d50327928007e0",
19690
+ prevHash: "00000000000000000e7dcc27c06ee353bd37260b2e7e664314c204f0324a5087",
19691
+ sourceUrl: "https://cdn.projectbabbage.com/blockheaders"
19617
19692
  }
19618
19693
  ]
19619
19694
  ```
package/docs/services.md CHANGED
@@ -610,7 +610,7 @@ enableCache: boolean
610
610
 
611
611
  ###### Property idleWait
612
612
 
613
- Maximum msces of "normal" pause with no new data arriving.
613
+ Maximum msecs of "normal" pause with no new data arriving.
614
614
 
615
615
  ```ts
616
616
  idleWait: number | undefined
@@ -6364,6 +6364,18 @@ validBulkHeaderFiles: BulkHeaderFileInfo[] = [
6364
6364
  prevHash: "00000000000000000e7dcc27c06ee353bd37260b2e7e664314c204f0324a5087",
6365
6365
  sourceUrl: "https://cdn.projectbabbage.com/blockheaders",
6366
6366
  validated: true
6367
+ },
6368
+ {
6369
+ chain: "main",
6370
+ count: 31772,
6371
+ fileHash: "NuVsRUrI5QnjILbYy4LS3A/Udl6PH/m8Y9uVguEsekM=",
6372
+ fileName: "mainNet_9.headers",
6373
+ firstHeight: 900000,
6374
+ lastChainWork: "0000000000000000000000000000000000000000016ab16bb9b31430588788d3",
6375
+ lastHash: "0000000000000000024a2f1caef4b0ffdc1a036b09f9ed7f48b538f619f32ef2",
6376
+ prevChainWork: "000000000000000000000000000000000000000001664db1f2d50327928007e0",
6377
+ prevHash: "00000000000000000e7dcc27c06ee353bd37260b2e7e664314c204f0324a5087",
6378
+ sourceUrl: "https://cdn.projectbabbage.com/blockheaders"
6367
6379
  }
6368
6380
  ]
6369
6381
  ```
package/docs/storage.md CHANGED
@@ -3949,7 +3949,7 @@ export abstract class StorageProvider extends StorageReaderWriter implements Wal
3949
3949
  async listCertificates(auth: AuthId, args: Validation.ValidListCertificatesArgs): Promise<ListCertificatesResult>
3950
3950
  async verifyKnownValidTransaction(txid: string, trx?: TrxToken): Promise<boolean>
3951
3951
  async getValidBeefForKnownTxid(txid: string, mergeToBeef?: Beef, trustSelf?: TrustSelf, knownTxids?: string[], trx?: TrxToken, requiredLevels?: number): Promise<Beef>
3952
- async getValidBeefForTxid(txid: string, mergeToBeef?: Beef, trustSelf?: TrustSelf, knownTxids?: string[], trx?: TrxToken, requiredLevels?: number): Promise<Beef | undefined>
3952
+ async getValidBeefForTxid(txid: string, mergeToBeef?: Beef, trustSelf?: TrustSelf, knownTxids?: string[], trx?: TrxToken, requiredLevels?: number, chainTracker?: ChainTracker, skipInvalidProofs?: boolean): Promise<Beef | undefined>
3953
3953
  async getBeefForTransaction(txid: string, options: StorageGetBeefOptions): Promise<Beef>
3954
3954
  async findMonitorEventById(id: number, trx?: TrxToken): Promise<TableMonitorEvent | undefined>
3955
3955
  async relinquishCertificate(auth: AuthId, args: RelinquishCertificateArgs): Promise<number>
@@ -4010,6 +4010,18 @@ async getReqsAndBeefToShareWithWorld(txids: string[], knownTxids: string[], trx?
4010
4010
  ```
4011
4011
  See also: [GetReqsAndBeefResult](./storage.md#interface-getreqsandbeefresult), [TrxToken](./client.md#interface-trxtoken)
4012
4012
 
4013
+ ###### Method getValidBeefForKnownTxid
4014
+
4015
+ Pulls data from storage to build a valid beef for a txid.
4016
+
4017
+ Optionally merges the data into an existing beef.
4018
+ Optionally requires a minimum number of proof levels.
4019
+
4020
+ ```ts
4021
+ async getValidBeefForKnownTxid(txid: string, mergeToBeef?: Beef, trustSelf?: TrustSelf, knownTxids?: string[], trx?: TrxToken, requiredLevels?: number): Promise<Beef>
4022
+ ```
4023
+ See also: [TrxToken](./client.md#interface-trxtoken)
4024
+
4013
4025
  ###### Method updateProvenTxReqWithNewProvenTx
4014
4026
 
4015
4027
  Handles storage changes when a valid MerklePath and mined block header are found for a ProvenTxReq txid.