@bsv/wallet-toolbox 1.7.18 → 1.7.19
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/docs/client.md +106 -55
- package/docs/wallet.md +106 -55
- package/out/src/WalletPermissionsManager.d.ts +42 -1
- package/out/src/WalletPermissionsManager.d.ts.map +1 -1
- package/out/src/WalletPermissionsManager.js +556 -72
- package/out/src/WalletPermissionsManager.js.map +1 -1
- package/out/src/__tests/WalletPermissionsManager.fixtures.d.ts.map +1 -1
- package/out/src/__tests/WalletPermissionsManager.fixtures.js +9 -0
- package/out/src/__tests/WalletPermissionsManager.fixtures.js.map +1 -1
- package/out/src/__tests/WalletPermissionsManager.flows.test.js +121 -0
- package/out/src/__tests/WalletPermissionsManager.flows.test.js.map +1 -1
- package/out/tsconfig.all.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/src/WalletPermissionsManager.ts +693 -80
- package/src/__tests/WalletPermissionsManager.fixtures.ts +9 -0
- package/src/__tests/WalletPermissionsManager.flows.test.ts +157 -0
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) | [
|
|
18
|
-
| [ArcConfig](#interface-arcconfig) | [
|
|
19
|
-
| [ArcMinerGetTxData](#interface-arcminergettxdata) | [
|
|
20
|
-
| [AuthId](#interface-authid) | [
|
|
21
|
-
| [AuthPayload](#interface-authpayload) | [
|
|
22
|
-
| [BaseBlockHeader](#interface-baseblockheader) | [
|
|
23
|
-
| [BitailsConfig](#interface-bitailsconfig) | [
|
|
24
|
-
| [BitailsMerkleProof](#interface-bitailsmerkleproof) | [
|
|
25
|
-
| [BlockHeader](#interface-blockheader) | [
|
|
26
|
-
| [BsvExchangeRate](#interface-bsvexchangerate) | [
|
|
27
|
-
| [BulkFileDataManagerMergeResult](#interface-bulkfiledatamanagermergeresult) | [
|
|
28
|
-
| [BulkFileDataManagerOptions](#interface-bulkfiledatamanageroptions) | [
|
|
29
|
-
| [BulkHeaderFileInfo](#interface-bulkheaderfileinfo) | [
|
|
30
|
-
| [BulkHeaderFilesInfo](#interface-bulkheaderfilesinfo) | [
|
|
31
|
-
| [BulkIngestorApi](#interface-bulkingestorapi) | [
|
|
32
|
-
| [BulkIngestorBaseOptions](#interface-bulkingestorbaseoptions) | [
|
|
33
|
-
| [BulkIngestorCDNOptions](#interface-bulkingestorcdnoptions) | [
|
|
34
|
-
| [BulkIngestorWhatsOnChainOptions](#interface-bulkingestorwhatsonchainoptions) | [
|
|
35
|
-
| [BulkStorageApi](#interface-bulkstorageapi) | [
|
|
36
|
-
| [BulkStorageBaseOptions](#interface-bulkstoragebaseoptions) | [
|
|
37
|
-
| [BulkSyncResult](#interface-bulksyncresult) | [
|
|
38
|
-
| [CertOpsWallet](#interface-certopswallet) | [
|
|
39
|
-
| [Certifier](#interface-certifier) | [
|
|
40
|
-
| [ChaintracksApi](#interface-chaintracksapi) | [
|
|
41
|
-
| [ChaintracksAppendableFileApi](#interface-chaintracksappendablefileapi) | [
|
|
42
|
-
| [ChaintracksChainTrackerOptions](#interface-chaintrackschaintrackeroptions) | [
|
|
43
|
-
| [ChaintracksClientApi](#interface-chaintracksclientapi) | [
|
|
44
|
-
| [ChaintracksFetchApi](#interface-chaintracksfetchapi) | [
|
|
45
|
-
| [ChaintracksFsApi](#interface-chaintracksfsapi) | [
|
|
46
|
-
| [ChaintracksInfoApi](#interface-chaintracksinfoapi) | [
|
|
47
|
-
| [ChaintracksManagementApi](#interface-chaintracksmanagementapi) | [
|
|
48
|
-
| [ChaintracksOptions](#interface-chaintracksoptions) | [
|
|
49
|
-
| [ChaintracksPackageInfoApi](#interface-chaintrackspackageinfoapi) | [
|
|
50
|
-
| [ChaintracksReadableFileApi](#interface-chaintracksreadablefileapi) | [
|
|
51
|
-
| [ChaintracksServiceClientOptions](#interface-chaintracksserviceclientoptions) | [
|
|
52
|
-
| [ChaintracksStorageApi](#interface-chaintracksstorageapi) | [
|
|
53
|
-
| [ChaintracksStorageBaseOptions](#interface-chaintracksstoragebaseoptions) | [
|
|
54
|
-
| [ChaintracksStorageBulkFileApi](#interface-chaintracksstoragebulkfileapi) | [
|
|
55
|
-
| [ChaintracksStorageIdbOptions](#interface-chaintracksstorageidboptions) | [
|
|
56
|
-
| [ChaintracksStorageIdbSchema](#interface-chaintracksstorageidbschema) | [
|
|
57
|
-
| [ChaintracksStorageIngestApi](#interface-chaintracksstorageingestapi) | [
|
|
58
|
-
| [ChaintracksStorageNoDbOptions](#interface-chaintracksstoragenodboptions) | [
|
|
59
|
-
| [ChaintracksStorageQueryApi](#interface-chaintracksstoragequeryapi) | [
|
|
60
|
-
| [ChaintracksWritableFileApi](#interface-chaintrackswritablefileapi) | [
|
|
61
|
-
| [CommitNewTxResults](#interface-commitnewtxresults) | [
|
|
62
|
-
| [CompleteAuthResponse](#interface-completeauthresponse) | [
|
|
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
|
|
|
@@ -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
|
|
|
@@ -14862,7 +14895,7 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
|
|
|
14862
14895
|
```ts
|
|
14863
14896
|
export class WalletPermissionsManager implements WalletInterface {
|
|
14864
14897
|
constructor(underlyingWallet: WalletInterface, adminOriginator: string, config: PermissionsManagerConfig = {})
|
|
14865
|
-
public bindCallback(eventName: keyof WalletPermissionsManagerCallbacks, handler: PermissionEventHandler | GroupedPermissionEventHandler): number
|
|
14898
|
+
public bindCallback(eventName: keyof WalletPermissionsManagerCallbacks, handler: PermissionEventHandler | GroupedPermissionEventHandler | CounterpartyPermissionEventHandler): number
|
|
14866
14899
|
public unbindCallback(eventName: keyof WalletPermissionsManagerCallbacks, reference: number | Function): boolean
|
|
14867
14900
|
public async grantPermission(params: {
|
|
14868
14901
|
requestID: string;
|
|
@@ -14877,6 +14910,13 @@ export class WalletPermissionsManager implements WalletInterface {
|
|
|
14877
14910
|
expiry?: number;
|
|
14878
14911
|
}): Promise<void>
|
|
14879
14912
|
public async denyGroupedPermission(requestID: string): Promise<void>
|
|
14913
|
+
public async dismissGroupedPermission(requestID: string): Promise<void>
|
|
14914
|
+
public async grantCounterpartyPermission(params: {
|
|
14915
|
+
requestID: string;
|
|
14916
|
+
granted: Partial<CounterpartyPermissions>;
|
|
14917
|
+
expiry?: number;
|
|
14918
|
+
}): Promise<void>
|
|
14919
|
+
public async denyCounterpartyPermission(requestID: string): Promise<void>
|
|
14880
14920
|
public async ensureProtocolPermission({ originator, privileged, protocolID, counterparty, reason, seekPermission = true, usageType }: {
|
|
14881
14921
|
originator: string;
|
|
14882
14922
|
privileged: boolean;
|
|
@@ -14995,7 +15035,7 @@ export class WalletPermissionsManager implements WalletInterface {
|
|
|
14995
15035
|
}
|
|
14996
15036
|
```
|
|
14997
15037
|
|
|
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)
|
|
15038
|
+
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
15039
|
|
|
15000
15040
|
###### Constructor
|
|
15001
15041
|
|
|
@@ -15020,9 +15060,9 @@ Argument Details
|
|
|
15020
15060
|
Binds a callback function to a named event, such as `onProtocolPermissionRequested`.
|
|
15021
15061
|
|
|
15022
15062
|
```ts
|
|
15023
|
-
public bindCallback(eventName: keyof WalletPermissionsManagerCallbacks, handler: PermissionEventHandler | GroupedPermissionEventHandler): number
|
|
15063
|
+
public bindCallback(eventName: keyof WalletPermissionsManagerCallbacks, handler: PermissionEventHandler | GroupedPermissionEventHandler | CounterpartyPermissionEventHandler): number
|
|
15024
15064
|
```
|
|
15025
|
-
See also: [GroupedPermissionEventHandler](./client.md#type-groupedpermissioneventhandler), [PermissionEventHandler](./client.md#type-permissioneventhandler), [WalletPermissionsManagerCallbacks](./client.md#interface-walletpermissionsmanagercallbacks)
|
|
15065
|
+
See also: [CounterpartyPermissionEventHandler](./client.md#type-counterpartypermissioneventhandler), [GroupedPermissionEventHandler](./client.md#type-groupedpermissioneventhandler), [PermissionEventHandler](./client.md#type-permissioneventhandler), [WalletPermissionsManagerCallbacks](./client.md#interface-walletpermissionsmanagercallbacks)
|
|
15026
15066
|
|
|
15027
15067
|
Returns
|
|
15028
15068
|
|
|
@@ -18257,7 +18297,8 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
|
|
|
18257
18297
|
|
|
18258
18298
|
| | | |
|
|
18259
18299
|
| --- | --- | --- |
|
|
18260
|
-
| [Chain](#type-chain) | [
|
|
18300
|
+
| [Chain](#type-chain) | [GetUtxoStatusService](#type-getutxostatusservice) | [ReqHistoryNote](#type-reqhistorynote) |
|
|
18301
|
+
| [CounterpartyPermissionEventHandler](#type-counterpartypermissioneventhandler) | [GroupedPermissionEventHandler](#type-groupedpermissioneventhandler) | [ReviewActionResultStatus](#type-reviewactionresultstatus) |
|
|
18261
18302
|
| [DBType](#type-dbtype) | [HeaderListener](#type-headerlistener) | [ScriptHashFormat](#type-scripthashformat) |
|
|
18262
18303
|
| [EnqueueHandler](#type-enqueuehandler) | [InsertHeaderResult](#type-insertheaderresult) | [ServicesCallHistory](#type-servicescallhistory) |
|
|
18263
18304
|
| [EntityStorage](#type-entitystorage) | [MonitorStorage](#type-monitorstorage) | [StopListenerToken](#type-stoplistenertoken) |
|
|
@@ -18267,7 +18308,6 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
|
|
|
18267
18308
|
| [GetScriptHashHistoryService](#type-getscripthashhistoryservice) | [PostTxsService](#type-posttxsservice) | [TransactionStatus](#type-transactionstatus) |
|
|
18268
18309
|
| [GetStatusForTxidsService](#type-getstatusfortxidsservice) | [ProvenTxReqStatus](#type-proventxreqstatus) | [UpdateFiatExchangeRateService](#type-updatefiatexchangerateservice) |
|
|
18269
18310
|
| [GetUtxoStatusOutputFormat](#type-getutxostatusoutputformat) | [ReorgListener](#type-reorglistener) | [WalletLoggerLevel](#type-walletloggerlevel) |
|
|
18270
|
-
| [GetUtxoStatusService](#type-getutxostatusservice) | [ReqHistoryNote](#type-reqhistorynote) | |
|
|
18271
18311
|
|
|
18272
18312
|
Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
|
|
18273
18313
|
|
|
@@ -18281,6 +18321,17 @@ export type Chain = "main" | "test"
|
|
|
18281
18321
|
|
|
18282
18322
|
Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
|
|
18283
18323
|
|
|
18324
|
+
---
|
|
18325
|
+
##### Type: CounterpartyPermissionEventHandler
|
|
18326
|
+
|
|
18327
|
+
```ts
|
|
18328
|
+
export type CounterpartyPermissionEventHandler = (request: CounterpartyPermissionRequest) => void | Promise<void>
|
|
18329
|
+
```
|
|
18330
|
+
|
|
18331
|
+
See also: [CounterpartyPermissionRequest](./client.md#interface-counterpartypermissionrequest)
|
|
18332
|
+
|
|
18333
|
+
Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
|
|
18334
|
+
|
|
18284
18335
|
---
|
|
18285
18336
|
##### Type: DBType
|
|
18286
18337
|
|
package/docs/wallet.md
CHANGED
|
@@ -13,52 +13,54 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
|
|
|
13
13
|
|
|
14
14
|
| | | |
|
|
15
15
|
| --- | --- | --- |
|
|
16
|
-
| [AdminStatsResult](#interface-adminstatsresult) | [
|
|
17
|
-
| [ArcConfig](#interface-arcconfig) | [
|
|
18
|
-
| [ArcMinerGetTxData](#interface-arcminergettxdata) | [
|
|
19
|
-
| [AuthId](#interface-authid) | [
|
|
20
|
-
| [AuthPayload](#interface-authpayload) | [
|
|
21
|
-
| [BaseBlockHeader](#interface-baseblockheader) | [
|
|
22
|
-
| [BitailsConfig](#interface-bitailsconfig) | [
|
|
23
|
-
| [BitailsMerkleProof](#interface-bitailsmerkleproof) | [
|
|
24
|
-
| [BlockHeader](#interface-blockheader) | [
|
|
25
|
-
| [BsvExchangeRate](#interface-bsvexchangerate) | [
|
|
26
|
-
| [BulkFileDataManagerMergeResult](#interface-bulkfiledatamanagermergeresult) | [
|
|
27
|
-
| [BulkFileDataManagerOptions](#interface-bulkfiledatamanageroptions) | [
|
|
28
|
-
| [BulkHeaderFileInfo](#interface-bulkheaderfileinfo) | [
|
|
29
|
-
| [BulkHeaderFilesInfo](#interface-bulkheaderfilesinfo) | [
|
|
30
|
-
| [BulkIngestorApi](#interface-bulkingestorapi) | [
|
|
31
|
-
| [BulkIngestorBaseOptions](#interface-bulkingestorbaseoptions) | [
|
|
32
|
-
| [BulkIngestorCDNOptions](#interface-bulkingestorcdnoptions) | [
|
|
33
|
-
| [BulkIngestorWhatsOnChainOptions](#interface-bulkingestorwhatsonchainoptions) | [
|
|
34
|
-
| [BulkStorageApi](#interface-bulkstorageapi) | [
|
|
35
|
-
| [BulkStorageBaseOptions](#interface-bulkstoragebaseoptions) | [
|
|
36
|
-
| [BulkSyncResult](#interface-bulksyncresult) | [
|
|
37
|
-
| [CertOpsWallet](#interface-certopswallet) | [
|
|
38
|
-
| [Certifier](#interface-certifier) | [
|
|
39
|
-
| [ChaintracksApi](#interface-chaintracksapi) | [
|
|
40
|
-
| [ChaintracksAppendableFileApi](#interface-chaintracksappendablefileapi) | [
|
|
41
|
-
| [ChaintracksChainTrackerOptions](#interface-chaintrackschaintrackeroptions) | [
|
|
42
|
-
| [ChaintracksClientApi](#interface-chaintracksclientapi) | [
|
|
43
|
-
| [ChaintracksFetchApi](#interface-chaintracksfetchapi) | [
|
|
44
|
-
| [ChaintracksFsApi](#interface-chaintracksfsapi) | [
|
|
45
|
-
| [ChaintracksInfoApi](#interface-chaintracksinfoapi) | [
|
|
46
|
-
| [ChaintracksManagementApi](#interface-chaintracksmanagementapi) | [
|
|
47
|
-
| [ChaintracksOptions](#interface-chaintracksoptions) | [
|
|
48
|
-
| [ChaintracksPackageInfoApi](#interface-chaintrackspackageinfoapi) | [
|
|
49
|
-
| [ChaintracksReadableFileApi](#interface-chaintracksreadablefileapi) | [
|
|
50
|
-
| [ChaintracksServiceClientOptions](#interface-chaintracksserviceclientoptions) | [
|
|
51
|
-
| [ChaintracksStorageApi](#interface-chaintracksstorageapi) | [
|
|
52
|
-
| [ChaintracksStorageBaseOptions](#interface-chaintracksstoragebaseoptions) | [
|
|
53
|
-
| [ChaintracksStorageBulkFileApi](#interface-chaintracksstoragebulkfileapi) | [
|
|
54
|
-
| [ChaintracksStorageIdbOptions](#interface-chaintracksstorageidboptions) | [
|
|
55
|
-
| [ChaintracksStorageIdbSchema](#interface-chaintracksstorageidbschema) | [
|
|
56
|
-
| [ChaintracksStorageIngestApi](#interface-chaintracksstorageingestapi) | [
|
|
57
|
-
| [ChaintracksStorageNoDbOptions](#interface-chaintracksstoragenodboptions) | [
|
|
58
|
-
| [ChaintracksStorageQueryApi](#interface-chaintracksstoragequeryapi) | [
|
|
59
|
-
| [ChaintracksWritableFileApi](#interface-chaintrackswritablefileapi) | [
|
|
60
|
-
| [CommitNewTxResults](#interface-commitnewtxresults) | [
|
|
61
|
-
| [CompleteAuthResponse](#interface-completeauthresponse) | [
|
|
16
|
+
| [AdminStatsResult](#interface-adminstatsresult) | [GenerateChangeSdkChangeOutput](#interface-generatechangesdkchangeoutput) | [StatusForTxidResult](#interface-statusfortxidresult) |
|
|
17
|
+
| [ArcConfig](#interface-arcconfig) | [GenerateChangeSdkInput](#interface-generatechangesdkinput) | [StorageAdminStats](#interface-storageadminstats) |
|
|
18
|
+
| [ArcMinerGetTxData](#interface-arcminergettxdata) | [GenerateChangeSdkOutput](#interface-generatechangesdkoutput) | [StorageCreateActionResult](#interface-storagecreateactionresult) |
|
|
19
|
+
| [AuthId](#interface-authid) | [GenerateChangeSdkParams](#interface-generatechangesdkparams) | [StorageCreateTransactionSdkInput](#interface-storagecreatetransactionsdkinput) |
|
|
20
|
+
| [AuthPayload](#interface-authpayload) | [GenerateChangeSdkResult](#interface-generatechangesdkresult) | [StorageCreateTransactionSdkOutput](#interface-storagecreatetransactionsdkoutput) |
|
|
21
|
+
| [BaseBlockHeader](#interface-baseblockheader) | [GenerateChangeSdkStorageChange](#interface-generatechangesdkstoragechange) | [StorageFeeModel](#interface-storagefeemodel) |
|
|
22
|
+
| [BitailsConfig](#interface-bitailsconfig) | [GetHeaderByteFileLinksResult](#interface-getheaderbytefilelinksresult) | [StorageGetBeefOptions](#interface-storagegetbeefoptions) |
|
|
23
|
+
| [BitailsMerkleProof](#interface-bitailsmerkleproof) | [GetMerklePathResult](#interface-getmerklepathresult) | [StorageIdbOptions](#interface-storageidboptions) |
|
|
24
|
+
| [BlockHeader](#interface-blockheader) | [GetRawTxResult](#interface-getrawtxresult) | [StorageIdbSchema](#interface-storageidbschema) |
|
|
25
|
+
| [BsvExchangeRate](#interface-bsvexchangerate) | [GetReqsAndBeefDetail](#interface-getreqsandbeefdetail) | [StorageIdentity](#interface-storageidentity) |
|
|
26
|
+
| [BulkFileDataManagerMergeResult](#interface-bulkfiledatamanagermergeresult) | [GetReqsAndBeefResult](#interface-getreqsandbeefresult) | [StorageInternalizeActionResult](#interface-storageinternalizeactionresult) |
|
|
27
|
+
| [BulkFileDataManagerOptions](#interface-bulkfiledatamanageroptions) | [GetScriptHashHistory](#interface-getscripthashhistory) | [StorageProcessActionArgs](#interface-storageprocessactionargs) |
|
|
28
|
+
| [BulkHeaderFileInfo](#interface-bulkheaderfileinfo) | [GetScriptHashHistoryResult](#interface-getscripthashhistoryresult) | [StorageProcessActionResults](#interface-storageprocessactionresults) |
|
|
29
|
+
| [BulkHeaderFilesInfo](#interface-bulkheaderfilesinfo) | [GetStatusForTxidsResult](#interface-getstatusfortxidsresult) | [StorageProvenOrReq](#interface-storageprovenorreq) |
|
|
30
|
+
| [BulkIngestorApi](#interface-bulkingestorapi) | [GetUtxoStatusDetails](#interface-getutxostatusdetails) | [StorageProviderOptions](#interface-storageprovideroptions) |
|
|
31
|
+
| [BulkIngestorBaseOptions](#interface-bulkingestorbaseoptions) | [GetUtxoStatusResult](#interface-getutxostatusresult) | [StorageReaderOptions](#interface-storagereaderoptions) |
|
|
32
|
+
| [BulkIngestorCDNOptions](#interface-bulkingestorcdnoptions) | [GroupedPermissionRequest](#interface-groupedpermissionrequest) | [StorageReaderWriterOptions](#interface-storagereaderwriteroptions) |
|
|
33
|
+
| [BulkIngestorWhatsOnChainOptions](#interface-bulkingestorwhatsonchainoptions) | [GroupedPermissions](#interface-groupedpermissions) | [StorageSyncReaderOptions](#interface-storagesyncreaderoptions) |
|
|
34
|
+
| [BulkStorageApi](#interface-bulkstorageapi) | [HeightRangeApi](#interface-heightrangeapi) | [SyncChunk](#interface-syncchunk) |
|
|
35
|
+
| [BulkStorageBaseOptions](#interface-bulkstoragebaseoptions) | [HeightRanges](#interface-heightranges) | [SyncError](#interface-syncerror) |
|
|
36
|
+
| [BulkSyncResult](#interface-bulksyncresult) | [KeyPair](#interface-keypair) | [SyncMap](#interface-syncmap) |
|
|
37
|
+
| [CertOpsWallet](#interface-certopswallet) | [KeyPairAddress](#interface-keypairaddress) | [TableCertificate](#interface-tablecertificate) |
|
|
38
|
+
| [Certifier](#interface-certifier) | [ListActionsSpecOp](#interface-listactionsspecop) | [TableCertificateField](#interface-tablecertificatefield) |
|
|
39
|
+
| [ChaintracksApi](#interface-chaintracksapi) | [ListOutputsSpecOp](#interface-listoutputsspecop) | [TableCertificateX](#interface-tablecertificatex) |
|
|
40
|
+
| [ChaintracksAppendableFileApi](#interface-chaintracksappendablefileapi) | [LiveBlockHeader](#interface-liveblockheader) | [TableCommission](#interface-tablecommission) |
|
|
41
|
+
| [ChaintracksChainTrackerOptions](#interface-chaintrackschaintrackeroptions) | [LiveIngestorApi](#interface-liveingestorapi) | [TableMonitorEvent](#interface-tablemonitorevent) |
|
|
42
|
+
| [ChaintracksClientApi](#interface-chaintracksclientapi) | [LiveIngestorBaseOptions](#interface-liveingestorbaseoptions) | [TableOutput](#interface-tableoutput) |
|
|
43
|
+
| [ChaintracksFetchApi](#interface-chaintracksfetchapi) | [LiveIngestorWhatsOnChainOptions](#interface-liveingestorwhatsonchainoptions) | [TableOutputBasket](#interface-tableoutputbasket) |
|
|
44
|
+
| [ChaintracksFsApi](#interface-chaintracksfsapi) | [MonitorOptions](#interface-monitoroptions) | [TableOutputTag](#interface-tableoutputtag) |
|
|
45
|
+
| [ChaintracksInfoApi](#interface-chaintracksinfoapi) | [OutPoint](#interface-outpoint) | [TableOutputTagMap](#interface-tableoutputtagmap) |
|
|
46
|
+
| [ChaintracksManagementApi](#interface-chaintracksmanagementapi) | [Paged](#interface-paged) | [TableOutputX](#interface-tableoutputx) |
|
|
47
|
+
| [ChaintracksOptions](#interface-chaintracksoptions) | [PendingSignAction](#interface-pendingsignaction) | [TableProvenTx](#interface-tableproventx) |
|
|
48
|
+
| [ChaintracksPackageInfoApi](#interface-chaintrackspackageinfoapi) | [PendingStorageInput](#interface-pendingstorageinput) | [TableProvenTxReq](#interface-tableproventxreq) |
|
|
49
|
+
| [ChaintracksReadableFileApi](#interface-chaintracksreadablefileapi) | [PermissionRequest](#interface-permissionrequest) | [TableProvenTxReqDynamics](#interface-tableproventxreqdynamics) |
|
|
50
|
+
| [ChaintracksServiceClientOptions](#interface-chaintracksserviceclientoptions) | [PermissionToken](#interface-permissiontoken) | [TableSettings](#interface-tablesettings) |
|
|
51
|
+
| [ChaintracksStorageApi](#interface-chaintracksstorageapi) | [PermissionsManagerConfig](#interface-permissionsmanagerconfig) | [TableSyncState](#interface-tablesyncstate) |
|
|
52
|
+
| [ChaintracksStorageBaseOptions](#interface-chaintracksstoragebaseoptions) | [PermissionsModule](#interface-permissionsmodule) | [TableTransaction](#interface-tabletransaction) |
|
|
53
|
+
| [ChaintracksStorageBulkFileApi](#interface-chaintracksstoragebulkfileapi) | [PostBeefResult](#interface-postbeefresult) | [TableTxLabel](#interface-tabletxlabel) |
|
|
54
|
+
| [ChaintracksStorageIdbOptions](#interface-chaintracksstorageidboptions) | [PostBeefResultForTxidApi](#interface-postbeefresultfortxidapi) | [TableTxLabelMap](#interface-tabletxlabelmap) |
|
|
55
|
+
| [ChaintracksStorageIdbSchema](#interface-chaintracksstorageidbschema) | [PostReqsToNetworkDetails](#interface-postreqstonetworkdetails) | [TableUser](#interface-tableuser) |
|
|
56
|
+
| [ChaintracksStorageIngestApi](#interface-chaintracksstorageingestapi) | [PostReqsToNetworkResult](#interface-postreqstonetworkresult) | [TaskPurgeParams](#interface-taskpurgeparams) |
|
|
57
|
+
| [ChaintracksStorageNoDbOptions](#interface-chaintracksstoragenodboptions) | [PostTxResultForTxid](#interface-posttxresultfortxid) | [TrustSettings](#interface-trustsettings) |
|
|
58
|
+
| [ChaintracksStorageQueryApi](#interface-chaintracksstoragequeryapi) | [PostTxResultForTxidError](#interface-posttxresultfortxiderror) | [TrxToken](#interface-trxtoken) |
|
|
59
|
+
| [ChaintracksWritableFileApi](#interface-chaintrackswritablefileapi) | [PostTxsResult](#interface-posttxsresult) | [TscMerkleProofApi](#interface-tscmerkleproofapi) |
|
|
60
|
+
| [CommitNewTxResults](#interface-commitnewtxresults) | [ProcessSyncChunkResult](#interface-processsyncchunkresult) | [TxScriptOffsets](#interface-txscriptoffsets) |
|
|
61
|
+
| [CompleteAuthResponse](#interface-completeauthresponse) | [Profile](#interface-profile) | [UMPToken](#interface-umptoken) |
|
|
62
|
+
| [CounterpartyPermissionRequest](#interface-counterpartypermissionrequest) | [ProvenOrRawTx](#interface-provenorrawtx) | [UMPTokenInteractor](#interface-umptokeninteractor) |
|
|
63
|
+
| [CounterpartyPermissions](#interface-counterpartypermissions) | [ProvenTransactionStatus](#interface-proventransactionstatus) | [UpdateProvenTxReqWithNewProvenTxArgs](#interface-updateproventxreqwithnewproventxargs) |
|
|
62
64
|
| [CreateActionResultX](#interface-createactionresultx) | [ProvenTxFromTxidResult](#interface-proventxfromtxidresult) | [UpdateProvenTxReqWithNewProvenTxResult](#interface-updateproventxreqwithnewproventxresult) |
|
|
63
65
|
| [DeactivedHeader](#interface-deactivedheader) | [ProvenTxReqHistory](#interface-proventxreqhistory) | [ValidateGenerateChangeSdkParamsResult](#interface-validategeneratechangesdkparamsresult) |
|
|
64
66
|
| [EntitySyncMap](#interface-entitysyncmap) | [ProvenTxReqHistorySummaryApi](#interface-proventxreqhistorysummaryapi) | [VerifyAndRepairBeefResult](#interface-verifyandrepairbeefresult) |
|
|
@@ -85,8 +87,6 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
|
|
|
85
87
|
| [FindTxLabelsArgs](#interface-findtxlabelsargs) | [SetupWalletIdbArgs](#interface-setupwalletidbargs) | [WocGetHeadersHeader](#interface-wocgetheadersheader) |
|
|
86
88
|
| [FindUsersArgs](#interface-findusersargs) | [SignActionResultX](#interface-signactionresultx) | [WocHeader](#interface-wocheader) |
|
|
87
89
|
| [GenerateChangeSdkChangeInput](#interface-generatechangesdkchangeinput) | [StartAuthResponse](#interface-startauthresponse) | [XValidCreateActionOutput](#interface-xvalidcreateactionoutput) |
|
|
88
|
-
| [GenerateChangeSdkChangeOutput](#interface-generatechangesdkchangeoutput) | [StatusForTxidResult](#interface-statusfortxidresult) | |
|
|
89
|
-
| [GenerateChangeSdkInput](#interface-generatechangesdkinput) | [StorageAdminStats](#interface-storageadminstats) | |
|
|
90
90
|
|
|
91
91
|
Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
|
|
92
92
|
|
|
@@ -2314,6 +2314,38 @@ export interface CompleteAuthResponse {
|
|
|
2314
2314
|
|
|
2315
2315
|
Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
|
|
2316
2316
|
|
|
2317
|
+
---
|
|
2318
|
+
##### Interface: CounterpartyPermissionRequest
|
|
2319
|
+
|
|
2320
|
+
```ts
|
|
2321
|
+
export interface CounterpartyPermissionRequest {
|
|
2322
|
+
originator: string;
|
|
2323
|
+
requestID: string;
|
|
2324
|
+
counterparty: PubKeyHex;
|
|
2325
|
+
counterpartyLabel?: string;
|
|
2326
|
+
permissions: CounterpartyPermissions;
|
|
2327
|
+
}
|
|
2328
|
+
```
|
|
2329
|
+
|
|
2330
|
+
See also: [CounterpartyPermissions](./client.md#interface-counterpartypermissions)
|
|
2331
|
+
|
|
2332
|
+
Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
|
|
2333
|
+
|
|
2334
|
+
---
|
|
2335
|
+
##### Interface: CounterpartyPermissions
|
|
2336
|
+
|
|
2337
|
+
```ts
|
|
2338
|
+
export interface CounterpartyPermissions {
|
|
2339
|
+
description?: string;
|
|
2340
|
+
protocols: Array<{
|
|
2341
|
+
protocolID: WalletProtocol;
|
|
2342
|
+
description: string;
|
|
2343
|
+
}>;
|
|
2344
|
+
}
|
|
2345
|
+
```
|
|
2346
|
+
|
|
2347
|
+
Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
|
|
2348
|
+
|
|
2317
2349
|
---
|
|
2318
2350
|
##### Interface: CreateActionResultX
|
|
2319
2351
|
|
|
@@ -7230,10 +7262,11 @@ export interface WalletPermissionsManagerCallbacks {
|
|
|
7230
7262
|
onCertificateAccessRequested?: PermissionEventHandler[];
|
|
7231
7263
|
onSpendingAuthorizationRequested?: PermissionEventHandler[];
|
|
7232
7264
|
onGroupedPermissionRequested?: GroupedPermissionEventHandler[];
|
|
7265
|
+
onCounterpartyPermissionRequested?: CounterpartyPermissionEventHandler[];
|
|
7233
7266
|
}
|
|
7234
7267
|
```
|
|
7235
7268
|
|
|
7236
|
-
See also: [GroupedPermissionEventHandler](./client.md#type-groupedpermissioneventhandler), [PermissionEventHandler](./client.md#type-permissioneventhandler)
|
|
7269
|
+
See also: [CounterpartyPermissionEventHandler](./client.md#type-counterpartypermissioneventhandler), [GroupedPermissionEventHandler](./client.md#type-groupedpermissioneventhandler), [PermissionEventHandler](./client.md#type-permissioneventhandler)
|
|
7237
7270
|
|
|
7238
7271
|
Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
|
|
7239
7272
|
|
|
@@ -14861,7 +14894,7 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
|
|
|
14861
14894
|
```ts
|
|
14862
14895
|
export class WalletPermissionsManager implements WalletInterface {
|
|
14863
14896
|
constructor(underlyingWallet: WalletInterface, adminOriginator: string, config: PermissionsManagerConfig = {})
|
|
14864
|
-
public bindCallback(eventName: keyof WalletPermissionsManagerCallbacks, handler: PermissionEventHandler | GroupedPermissionEventHandler): number
|
|
14897
|
+
public bindCallback(eventName: keyof WalletPermissionsManagerCallbacks, handler: PermissionEventHandler | GroupedPermissionEventHandler | CounterpartyPermissionEventHandler): number
|
|
14865
14898
|
public unbindCallback(eventName: keyof WalletPermissionsManagerCallbacks, reference: number | Function): boolean
|
|
14866
14899
|
public async grantPermission(params: {
|
|
14867
14900
|
requestID: string;
|
|
@@ -14876,6 +14909,13 @@ export class WalletPermissionsManager implements WalletInterface {
|
|
|
14876
14909
|
expiry?: number;
|
|
14877
14910
|
}): Promise<void>
|
|
14878
14911
|
public async denyGroupedPermission(requestID: string): Promise<void>
|
|
14912
|
+
public async dismissGroupedPermission(requestID: string): Promise<void>
|
|
14913
|
+
public async grantCounterpartyPermission(params: {
|
|
14914
|
+
requestID: string;
|
|
14915
|
+
granted: Partial<CounterpartyPermissions>;
|
|
14916
|
+
expiry?: number;
|
|
14917
|
+
}): Promise<void>
|
|
14918
|
+
public async denyCounterpartyPermission(requestID: string): Promise<void>
|
|
14879
14919
|
public async ensureProtocolPermission({ originator, privileged, protocolID, counterparty, reason, seekPermission = true, usageType }: {
|
|
14880
14920
|
originator: string;
|
|
14881
14921
|
privileged: boolean;
|
|
@@ -14994,7 +15034,7 @@ export class WalletPermissionsManager implements WalletInterface {
|
|
|
14994
15034
|
}
|
|
14995
15035
|
```
|
|
14996
15036
|
|
|
14997
|
-
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)
|
|
15037
|
+
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)
|
|
14998
15038
|
|
|
14999
15039
|
###### Constructor
|
|
15000
15040
|
|
|
@@ -15019,9 +15059,9 @@ Argument Details
|
|
|
15019
15059
|
Binds a callback function to a named event, such as `onProtocolPermissionRequested`.
|
|
15020
15060
|
|
|
15021
15061
|
```ts
|
|
15022
|
-
public bindCallback(eventName: keyof WalletPermissionsManagerCallbacks, handler: PermissionEventHandler | GroupedPermissionEventHandler): number
|
|
15062
|
+
public bindCallback(eventName: keyof WalletPermissionsManagerCallbacks, handler: PermissionEventHandler | GroupedPermissionEventHandler | CounterpartyPermissionEventHandler): number
|
|
15023
15063
|
```
|
|
15024
|
-
See also: [GroupedPermissionEventHandler](./client.md#type-groupedpermissioneventhandler), [PermissionEventHandler](./client.md#type-permissioneventhandler), [WalletPermissionsManagerCallbacks](./client.md#interface-walletpermissionsmanagercallbacks)
|
|
15064
|
+
See also: [CounterpartyPermissionEventHandler](./client.md#type-counterpartypermissioneventhandler), [GroupedPermissionEventHandler](./client.md#type-groupedpermissioneventhandler), [PermissionEventHandler](./client.md#type-permissioneventhandler), [WalletPermissionsManagerCallbacks](./client.md#interface-walletpermissionsmanagercallbacks)
|
|
15025
15065
|
|
|
15026
15066
|
Returns
|
|
15027
15067
|
|
|
@@ -18256,7 +18296,8 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
|
|
|
18256
18296
|
|
|
18257
18297
|
| | | |
|
|
18258
18298
|
| --- | --- | --- |
|
|
18259
|
-
| [Chain](#type-chain) | [
|
|
18299
|
+
| [Chain](#type-chain) | [GetUtxoStatusService](#type-getutxostatusservice) | [ReqHistoryNote](#type-reqhistorynote) |
|
|
18300
|
+
| [CounterpartyPermissionEventHandler](#type-counterpartypermissioneventhandler) | [GroupedPermissionEventHandler](#type-groupedpermissioneventhandler) | [ReviewActionResultStatus](#type-reviewactionresultstatus) |
|
|
18260
18301
|
| [DBType](#type-dbtype) | [HeaderListener](#type-headerlistener) | [ScriptHashFormat](#type-scripthashformat) |
|
|
18261
18302
|
| [EnqueueHandler](#type-enqueuehandler) | [InsertHeaderResult](#type-insertheaderresult) | [ServicesCallHistory](#type-servicescallhistory) |
|
|
18262
18303
|
| [EntityStorage](#type-entitystorage) | [MonitorStorage](#type-monitorstorage) | [StopListenerToken](#type-stoplistenertoken) |
|
|
@@ -18266,7 +18307,6 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
|
|
|
18266
18307
|
| [GetScriptHashHistoryService](#type-getscripthashhistoryservice) | [PostTxsService](#type-posttxsservice) | [TransactionStatus](#type-transactionstatus) |
|
|
18267
18308
|
| [GetStatusForTxidsService](#type-getstatusfortxidsservice) | [ProvenTxReqStatus](#type-proventxreqstatus) | [UpdateFiatExchangeRateService](#type-updatefiatexchangerateservice) |
|
|
18268
18309
|
| [GetUtxoStatusOutputFormat](#type-getutxostatusoutputformat) | [ReorgListener](#type-reorglistener) | [WalletLoggerLevel](#type-walletloggerlevel) |
|
|
18269
|
-
| [GetUtxoStatusService](#type-getutxostatusservice) | [ReqHistoryNote](#type-reqhistorynote) | |
|
|
18270
18310
|
|
|
18271
18311
|
Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
|
|
18272
18312
|
|
|
@@ -18280,6 +18320,17 @@ export type Chain = "main" | "test"
|
|
|
18280
18320
|
|
|
18281
18321
|
Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
|
|
18282
18322
|
|
|
18323
|
+
---
|
|
18324
|
+
##### Type: CounterpartyPermissionEventHandler
|
|
18325
|
+
|
|
18326
|
+
```ts
|
|
18327
|
+
export type CounterpartyPermissionEventHandler = (request: CounterpartyPermissionRequest) => void | Promise<void>
|
|
18328
|
+
```
|
|
18329
|
+
|
|
18330
|
+
See also: [CounterpartyPermissionRequest](./client.md#interface-counterpartypermissionrequest)
|
|
18331
|
+
|
|
18332
|
+
Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
|
|
18333
|
+
|
|
18283
18334
|
---
|
|
18284
18335
|
##### Type: DBType
|
|
18285
18336
|
|
|
@@ -68,6 +68,21 @@ export interface GroupedPermissionRequest {
|
|
|
68
68
|
* Signature for functions that handle a grouped permission request event.
|
|
69
69
|
*/
|
|
70
70
|
export type GroupedPermissionEventHandler = (request: GroupedPermissionRequest) => void | Promise<void>;
|
|
71
|
+
export interface CounterpartyPermissions {
|
|
72
|
+
description?: string;
|
|
73
|
+
protocols: Array<{
|
|
74
|
+
protocolID: WalletProtocol;
|
|
75
|
+
description: string;
|
|
76
|
+
}>;
|
|
77
|
+
}
|
|
78
|
+
export interface CounterpartyPermissionRequest {
|
|
79
|
+
originator: string;
|
|
80
|
+
requestID: string;
|
|
81
|
+
counterparty: PubKeyHex;
|
|
82
|
+
counterpartyLabel?: string;
|
|
83
|
+
permissions: CounterpartyPermissions;
|
|
84
|
+
}
|
|
85
|
+
export type CounterpartyPermissionEventHandler = (request: CounterpartyPermissionRequest) => void | Promise<void>;
|
|
71
86
|
/**
|
|
72
87
|
* Describes a single requested permission that the user must either grant or deny.
|
|
73
88
|
*
|
|
@@ -175,6 +190,7 @@ export interface WalletPermissionsManagerCallbacks {
|
|
|
175
190
|
onCertificateAccessRequested?: PermissionEventHandler[];
|
|
176
191
|
onSpendingAuthorizationRequested?: PermissionEventHandler[];
|
|
177
192
|
onGroupedPermissionRequested?: GroupedPermissionEventHandler[];
|
|
193
|
+
onCounterpartyPermissionRequested?: CounterpartyPermissionEventHandler[];
|
|
178
194
|
}
|
|
179
195
|
/**
|
|
180
196
|
* Configuration object for the WalletPermissionsManager. If a given option is `false`,
|
|
@@ -335,6 +351,10 @@ export declare class WalletPermissionsManager implements WalletInterface {
|
|
|
335
351
|
/** Cache recently confirmed permissions to avoid repeated lookups. */
|
|
336
352
|
private permissionCache;
|
|
337
353
|
private recentGrants;
|
|
354
|
+
private manifestCache;
|
|
355
|
+
private manifestFetchInProgress;
|
|
356
|
+
private static readonly MANIFEST_CACHE_TTL_MS;
|
|
357
|
+
private pactEstablishedCache;
|
|
338
358
|
/** How long a cached permission remains valid (5 minutes). */
|
|
339
359
|
private static readonly CACHE_TTL_MS;
|
|
340
360
|
/** Window during which freshly granted permissions are auto-allowed (except spending). */
|
|
@@ -376,7 +396,7 @@ export declare class WalletPermissionsManager implements WalletInterface {
|
|
|
376
396
|
* @param handler A function that handles the event
|
|
377
397
|
* @returns A numeric ID you can use to unbind later
|
|
378
398
|
*/
|
|
379
|
-
bindCallback(eventName: keyof WalletPermissionsManagerCallbacks, handler: PermissionEventHandler | GroupedPermissionEventHandler): number;
|
|
399
|
+
bindCallback(eventName: keyof WalletPermissionsManagerCallbacks, handler: PermissionEventHandler | GroupedPermissionEventHandler | CounterpartyPermissionEventHandler): number;
|
|
380
400
|
/**
|
|
381
401
|
* Unbinds a previously registered callback by either its numeric ID (returned by `bindCallback`)
|
|
382
402
|
* or by exact function reference.
|
|
@@ -433,6 +453,13 @@ export declare class WalletPermissionsManager implements WalletInterface {
|
|
|
433
453
|
* @param requestID The ID of the request being denied.
|
|
434
454
|
*/
|
|
435
455
|
denyGroupedPermission(requestID: string): Promise<void>;
|
|
456
|
+
dismissGroupedPermission(requestID: string): Promise<void>;
|
|
457
|
+
grantCounterpartyPermission(params: {
|
|
458
|
+
requestID: string;
|
|
459
|
+
granted: Partial<CounterpartyPermissions>;
|
|
460
|
+
expiry?: number;
|
|
461
|
+
}): Promise<void>;
|
|
462
|
+
denyCounterpartyPermission(requestID: string): Promise<void>;
|
|
436
463
|
/**
|
|
437
464
|
* Ensures the originator has protocol usage permission.
|
|
438
465
|
* If no valid (unexpired) permission token is found, triggers a permission request flow.
|
|
@@ -497,6 +524,20 @@ export declare class WalletPermissionsManager implements WalletInterface {
|
|
|
497
524
|
seekPermission?: boolean;
|
|
498
525
|
usageType: 'apply' | 'list';
|
|
499
526
|
}): Promise<boolean>;
|
|
527
|
+
private validateCounterpartyPermissions;
|
|
528
|
+
private fetchManifestPermissions;
|
|
529
|
+
private fetchManifestGroupPermissions;
|
|
530
|
+
private filterAlreadyGrantedPermissions;
|
|
531
|
+
private hasAnyPermissionsToRequest;
|
|
532
|
+
private hasGroupedPermissionRequestedHandlers;
|
|
533
|
+
private hasCounterpartyPermissionRequestedHandlers;
|
|
534
|
+
private hasPactEstablished;
|
|
535
|
+
private markPactEstablished;
|
|
536
|
+
private maybeRequestPact;
|
|
537
|
+
private maybeRequestPeerGroupedLevel2ProtocolPermissions;
|
|
538
|
+
private checkSpecificPermissionAfterGroupFlow;
|
|
539
|
+
private isRequestIncludedInGroupPermissions;
|
|
540
|
+
private maybeRequestGroupedPermissions;
|
|
500
541
|
/**
|
|
501
542
|
* A central method that triggers the permission request flow.
|
|
502
543
|
* - It checks if there's already an active request for the same key
|