@bsv/wallet-toolbox 1.5.11 → 1.5.13

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 (111) hide show
  1. package/docs/client.md +189 -84
  2. package/docs/monitor.md +39 -2
  3. package/docs/setup.md +8 -8
  4. package/docs/wallet.md +189 -84
  5. package/mobile/out/src/SetupClient.d.ts +2 -2
  6. package/mobile/out/src/SetupClient.d.ts.map +1 -1
  7. package/mobile/out/src/SetupClient.js +2 -2
  8. package/mobile/out/src/SetupClient.js.map +1 -1
  9. package/mobile/out/src/SetupWallet.d.ts +2 -2
  10. package/mobile/out/src/SetupWallet.d.ts.map +1 -1
  11. package/mobile/out/src/Wallet.d.ts +3 -3
  12. package/mobile/out/src/Wallet.d.ts.map +1 -1
  13. package/mobile/out/src/Wallet.js.map +1 -1
  14. package/mobile/out/src/monitor/Monitor.d.ts +23 -0
  15. package/mobile/out/src/monitor/Monitor.d.ts.map +1 -1
  16. package/mobile/out/src/monitor/Monitor.js +26 -16
  17. package/mobile/out/src/monitor/Monitor.js.map +1 -1
  18. package/mobile/out/src/monitor/tasks/TaskCheckForProofs.d.ts.map +1 -1
  19. package/mobile/out/src/monitor/tasks/TaskCheckForProofs.js +8 -0
  20. package/mobile/out/src/monitor/tasks/TaskCheckForProofs.js.map +1 -1
  21. package/mobile/out/src/monitor/tasks/TaskSendWaiting.d.ts.map +1 -1
  22. package/mobile/out/src/monitor/tasks/TaskSendWaiting.js +9 -0
  23. package/mobile/out/src/monitor/tasks/TaskSendWaiting.js.map +1 -1
  24. package/mobile/out/src/sdk/types.d.ts +11 -0
  25. package/mobile/out/src/sdk/types.d.ts.map +1 -1
  26. package/mobile/out/src/sdk/types.js.map +1 -1
  27. package/mobile/out/src/signer/WalletSigner.d.ts +3 -3
  28. package/mobile/out/src/signer/WalletSigner.d.ts.map +1 -1
  29. package/mobile/out/src/signer/WalletSigner.js.map +1 -1
  30. package/mobile/out/src/storage/methods/processAction.d.ts.map +1 -1
  31. package/mobile/out/src/storage/methods/processAction.js +6 -64
  32. package/mobile/out/src/storage/methods/processAction.js.map +1 -1
  33. package/mobile/out/src/utility/ScriptTemplateBRC29.d.ts.map +1 -1
  34. package/mobile/out/src/utility/ScriptTemplateBRC29.js +1 -1
  35. package/mobile/out/src/utility/ScriptTemplateBRC29.js.map +1 -1
  36. package/mobile/out/src/utility/aggregateResults.d.ts +8 -0
  37. package/mobile/out/src/utility/aggregateResults.d.ts.map +1 -0
  38. package/mobile/out/src/utility/aggregateResults.js +59 -0
  39. package/mobile/out/src/utility/aggregateResults.js.map +1 -0
  40. package/mobile/package-lock.json +6 -7
  41. package/mobile/package.json +2 -2
  42. package/out/src/Setup.d.ts +2 -2
  43. package/out/src/Setup.d.ts.map +1 -1
  44. package/out/src/Setup.js +2 -2
  45. package/out/src/Setup.js.map +1 -1
  46. package/out/src/SetupClient.d.ts +2 -2
  47. package/out/src/SetupClient.d.ts.map +1 -1
  48. package/out/src/SetupClient.js +2 -2
  49. package/out/src/SetupClient.js.map +1 -1
  50. package/out/src/SetupWallet.d.ts +2 -2
  51. package/out/src/SetupWallet.d.ts.map +1 -1
  52. package/out/src/Wallet.d.ts +3 -3
  53. package/out/src/Wallet.d.ts.map +1 -1
  54. package/out/src/Wallet.js.map +1 -1
  55. package/out/src/__tests/WalletPermissionsManager.proxying.test.js +1 -1
  56. package/out/src/__tests/WalletPermissionsManager.proxying.test.js.map +1 -1
  57. package/out/src/monitor/Monitor.d.ts +23 -0
  58. package/out/src/monitor/Monitor.d.ts.map +1 -1
  59. package/out/src/monitor/Monitor.js +26 -16
  60. package/out/src/monitor/Monitor.js.map +1 -1
  61. package/out/src/monitor/tasks/TaskCheckForProofs.d.ts.map +1 -1
  62. package/out/src/monitor/tasks/TaskCheckForProofs.js +8 -0
  63. package/out/src/monitor/tasks/TaskCheckForProofs.js.map +1 -1
  64. package/out/src/monitor/tasks/TaskSendWaiting.d.ts.map +1 -1
  65. package/out/src/monitor/tasks/TaskSendWaiting.js +9 -0
  66. package/out/src/monitor/tasks/TaskSendWaiting.js.map +1 -1
  67. package/out/src/sdk/types.d.ts +11 -0
  68. package/out/src/sdk/types.d.ts.map +1 -1
  69. package/out/src/sdk/types.js.map +1 -1
  70. package/out/src/services/__tests/ARC.timeout.man.test.js +1 -1
  71. package/out/src/signer/WalletSigner.d.ts +3 -3
  72. package/out/src/signer/WalletSigner.d.ts.map +1 -1
  73. package/out/src/signer/WalletSigner.js.map +1 -1
  74. package/out/src/storage/methods/processAction.d.ts.map +1 -1
  75. package/out/src/storage/methods/processAction.js +6 -64
  76. package/out/src/storage/methods/processAction.js.map +1 -1
  77. package/out/src/utility/ScriptTemplateBRC29.d.ts.map +1 -1
  78. package/out/src/utility/ScriptTemplateBRC29.js +1 -1
  79. package/out/src/utility/ScriptTemplateBRC29.js.map +1 -1
  80. package/out/src/utility/aggregateResults.d.ts +8 -0
  81. package/out/src/utility/aggregateResults.d.ts.map +1 -0
  82. package/out/src/utility/aggregateResults.js +59 -0
  83. package/out/src/utility/aggregateResults.js.map +1 -0
  84. package/out/test/Wallet/live/walletLive.man.test.d.ts.map +1 -1
  85. package/out/test/Wallet/live/walletLive.man.test.js +1 -1
  86. package/out/test/Wallet/live/walletLive.man.test.js.map +1 -1
  87. package/out/test/monitor/Monitor.test.js +101 -0
  88. package/out/test/monitor/Monitor.test.js.map +1 -1
  89. package/out/test/utils/TestUtilsWalletStorage.d.ts +4 -4
  90. package/out/test/utils/TestUtilsWalletStorage.d.ts.map +1 -1
  91. package/out/test/utils/TestUtilsWalletStorage.js +3 -3
  92. package/out/test/utils/TestUtilsWalletStorage.js.map +1 -1
  93. package/out/tsconfig.all.tsbuildinfo +1 -1
  94. package/package.json +2 -2
  95. package/src/Setup.ts +5 -3
  96. package/src/SetupClient.ts +5 -3
  97. package/src/SetupWallet.ts +2 -2
  98. package/src/Wallet.ts +4 -3
  99. package/src/__tests/WalletPermissionsManager.proxying.test.ts +1 -1
  100. package/src/monitor/Monitor.ts +36 -15
  101. package/src/monitor/tasks/TaskCheckForProofs.ts +9 -0
  102. package/src/monitor/tasks/TaskSendWaiting.ts +12 -1
  103. package/src/sdk/types.ts +12 -0
  104. package/src/services/__tests/ARC.timeout.man.test.ts +1 -1
  105. package/src/signer/WalletSigner.ts +3 -3
  106. package/src/storage/methods/processAction.ts +7 -78
  107. package/src/utility/ScriptTemplateBRC29.ts +3 -2
  108. package/src/utility/aggregateResults.ts +68 -0
  109. package/test/Wallet/live/walletLive.man.test.ts +2 -1
  110. package/test/monitor/Monitor.test.ts +123 -1
  111. package/test/utils/TestUtilsWalletStorage.ts +8 -6
package/docs/client.md CHANGED
@@ -14,72 +14,72 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
14
14
 
15
15
  | | | |
16
16
  | --- | --- | --- |
17
- | [AdminStatsResult](#interface-adminstatsresult) | [PendingSignAction](#interface-pendingsignaction) | [TableOutputBasket](#interface-tableoutputbasket) |
18
- | [ArcConfig](#interface-arcconfig) | [PendingStorageInput](#interface-pendingstorageinput) | [TableOutputTag](#interface-tableoutputtag) |
19
- | [ArcMinerGetTxData](#interface-arcminergettxdata) | [PermissionRequest](#interface-permissionrequest) | [TableOutputTagMap](#interface-tableoutputtagmap) |
20
- | [AuthId](#interface-authid) | [PermissionToken](#interface-permissiontoken) | [TableOutputX](#interface-tableoutputx) |
21
- | [AuthPayload](#interface-authpayload) | [PermissionsManagerConfig](#interface-permissionsmanagerconfig) | [TableProvenTx](#interface-tableproventx) |
22
- | [BaseBlockHeader](#interface-baseblockheader) | [PostBeefResult](#interface-postbeefresult) | [TableProvenTxReq](#interface-tableproventxreq) |
23
- | [BaseBlockHeader](#interface-baseblockheader) | [PostBeefResultForTxidApi](#interface-postbeefresultfortxidapi) | [TableProvenTxReqDynamics](#interface-tableproventxreqdynamics) |
24
- | [BitailsConfig](#interface-bitailsconfig) | [PostReqsToNetworkDetails](#interface-postreqstonetworkdetails) | [TableSettings](#interface-tablesettings) |
25
- | [BitailsMerkleProof](#interface-bitailsmerkleproof) | [PostReqsToNetworkResult](#interface-postreqstonetworkresult) | [TableSyncState](#interface-tablesyncstate) |
26
- | [BlockHeader](#interface-blockheader) | [PostTxResultForTxid](#interface-posttxresultfortxid) | [TableTransaction](#interface-tabletransaction) |
27
- | [BlockHeader](#interface-blockheader) | [PostTxResultForTxidError](#interface-posttxresultfortxiderror) | [TableTxLabel](#interface-tabletxlabel) |
28
- | [BsvExchangeRate](#interface-bsvexchangerate) | [PostTxsResult](#interface-posttxsresult) | [TableTxLabelMap](#interface-tabletxlabelmap) |
29
- | [CertOpsWallet](#interface-certopswallet) | [ProcessSyncChunkResult](#interface-processsyncchunkresult) | [TableUser](#interface-tableuser) |
30
- | [Certifier](#interface-certifier) | [Profile](#interface-profile) | [TaskPurgeParams](#interface-taskpurgeparams) |
31
- | [CommitNewTxResults](#interface-commitnewtxresults) | [ProvenOrRawTx](#interface-provenorrawtx) | [TrustSettings](#interface-trustsettings) |
32
- | [CompleteAuthResponse](#interface-completeauthresponse) | [ProvenTxFromTxidResult](#interface-proventxfromtxidresult) | [TrxToken](#interface-trxtoken) |
33
- | [CreateActionResultX](#interface-createactionresultx) | [ProvenTxReqHistory](#interface-proventxreqhistory) | [TscMerkleProofApi](#interface-tscmerkleproofapi) |
34
- | [EntitySyncMap](#interface-entitysyncmap) | [ProvenTxReqHistorySummaryApi](#interface-proventxreqhistorysummaryapi) | [TxScriptOffsets](#interface-txscriptoffsets) |
35
- | [EntityTimeStamp](#interface-entitytimestamp) | [ProvenTxReqNotify](#interface-proventxreqnotify) | [UMPToken](#interface-umptoken) |
36
- | [ExchangeRatesIoApi](#interface-exchangeratesioapi) | [ProviderCallHistory](#interface-providercallhistory) | [UMPTokenInteractor](#interface-umptokeninteractor) |
37
- | [ExtendedVerifiableCertificate](#interface-extendedverifiablecertificate) | [PurgeParams](#interface-purgeparams) | [UpdateProvenTxReqWithNewProvenTxArgs](#interface-updateproventxreqwithnewproventxargs) |
38
- | [FiatExchangeRates](#interface-fiatexchangerates) | [PurgeResults](#interface-purgeresults) | [UpdateProvenTxReqWithNewProvenTxResult](#interface-updateproventxreqwithnewproventxresult) |
39
- | [FindCertificateFieldsArgs](#interface-findcertificatefieldsargs) | [RequestSyncChunkArgs](#interface-requestsyncchunkargs) | [ValidAbortActionArgs](#interface-validabortactionargs) |
40
- | [FindCertificatesArgs](#interface-findcertificatesargs) | [ReviewActionResult](#interface-reviewactionresult) | [ValidAcquireCertificateArgs](#interface-validacquirecertificateargs) |
41
- | [FindCommissionsArgs](#interface-findcommissionsargs) | [ScriptTemplateParamsBRC29](#interface-scripttemplateparamsbrc29) | [ValidAcquireDirectCertificateArgs](#interface-validacquiredirectcertificateargs) |
42
- | [FindForUserSincePagedArgs](#interface-findforusersincepagedargs) | [ScriptTemplateUnlock](#interface-scripttemplateunlock) | [ValidAcquireIssuanceCertificateArgs](#interface-validacquireissuancecertificateargs) |
43
- | [FindMonitorEventsArgs](#interface-findmonitoreventsargs) | [ServiceCall](#interface-servicecall) | [ValidBasketInsertion](#interface-validbasketinsertion) |
44
- | [FindOutputBasketsArgs](#interface-findoutputbasketsargs) | [ServiceCall](#interface-servicecall) | [ValidCreateActionArgs](#interface-validcreateactionargs) |
45
- | [FindOutputTagMapsArgs](#interface-findoutputtagmapsargs) | [ServiceCallHistory](#interface-servicecallhistory) | [ValidCreateActionInput](#interface-validcreateactioninput) |
46
- | [FindOutputTagsArgs](#interface-findoutputtagsargs) | [ServiceCallHistoryCounts](#interface-servicecallhistorycounts) | [ValidCreateActionOptions](#interface-validcreateactionoptions) |
47
- | [FindOutputsArgs](#interface-findoutputsargs) | [ServiceToCall](#interface-servicetocall) | [ValidCreateActionOutput](#interface-validcreateactionoutput) |
48
- | [FindPartialSincePagedArgs](#interface-findpartialsincepagedargs) | [SetupClientWalletArgs](#interface-setupclientwalletargs) | [ValidDiscoverByAttributesArgs](#interface-validdiscoverbyattributesargs) |
49
- | [FindProvenTxReqsArgs](#interface-findproventxreqsargs) | [SetupClientWalletClientArgs](#interface-setupclientwalletclientargs) | [ValidDiscoverByIdentityKeyArgs](#interface-validdiscoverbyidentitykeyargs) |
50
- | [FindProvenTxsArgs](#interface-findproventxsargs) | [SetupWallet](#interface-setupwallet) | [ValidInternalizeActionArgs](#interface-validinternalizeactionargs) |
51
- | [FindSincePagedArgs](#interface-findsincepagedargs) | [SetupWalletClient](#interface-setupwalletclient) | [ValidInternalizeOutput](#interface-validinternalizeoutput) |
52
- | [FindSyncStatesArgs](#interface-findsyncstatesargs) | [SetupWalletIdb](#interface-setupwalletidb) | [ValidListActionsArgs](#interface-validlistactionsargs) |
53
- | [FindTransactionsArgs](#interface-findtransactionsargs) | [SetupWalletIdbArgs](#interface-setupwalletidbargs) | [ValidListCertificatesArgs](#interface-validlistcertificatesargs) |
54
- | [FindTxLabelMapsArgs](#interface-findtxlabelmapsargs) | [SignActionResultX](#interface-signactionresultx) | [ValidListOutputsArgs](#interface-validlistoutputsargs) |
55
- | [FindTxLabelsArgs](#interface-findtxlabelsargs) | [StartAuthResponse](#interface-startauthresponse) | [ValidProcessActionArgs](#interface-validprocessactionargs) |
56
- | [FindUsersArgs](#interface-findusersargs) | [StatusForTxidResult](#interface-statusfortxidresult) | [ValidProcessActionOptions](#interface-validprocessactionoptions) |
57
- | [GenerateChangeSdkChangeInput](#interface-generatechangesdkchangeinput) | [StorageAdminStats](#interface-storageadminstats) | [ValidProveCertificateArgs](#interface-validprovecertificateargs) |
58
- | [GenerateChangeSdkChangeOutput](#interface-generatechangesdkchangeoutput) | [StorageCreateActionResult](#interface-storagecreateactionresult) | [ValidRelinquishCertificateArgs](#interface-validrelinquishcertificateargs) |
59
- | [GenerateChangeSdkInput](#interface-generatechangesdkinput) | [StorageCreateTransactionSdkInput](#interface-storagecreatetransactionsdkinput) | [ValidRelinquishOutputArgs](#interface-validrelinquishoutputargs) |
60
- | [GenerateChangeSdkOutput](#interface-generatechangesdkoutput) | [StorageCreateTransactionSdkOutput](#interface-storagecreatetransactionsdkoutput) | [ValidSignActionArgs](#interface-validsignactionargs) |
61
- | [GenerateChangeSdkParams](#interface-generatechangesdkparams) | [StorageFeeModel](#interface-storagefeemodel) | [ValidSignActionOptions](#interface-validsignactionoptions) |
62
- | [GenerateChangeSdkResult](#interface-generatechangesdkresult) | [StorageGetBeefOptions](#interface-storagegetbeefoptions) | [ValidWalletPayment](#interface-validwalletpayment) |
63
- | [GenerateChangeSdkStorageChange](#interface-generatechangesdkstoragechange) | [StorageIdbOptions](#interface-storageidboptions) | [ValidWalletSignerArgs](#interface-validwalletsignerargs) |
64
- | [GetMerklePathResult](#interface-getmerklepathresult) | [StorageIdbSchema](#interface-storageidbschema) | [ValidateGenerateChangeSdkParamsResult](#interface-validategeneratechangesdkparamsresult) |
65
- | [GetRawTxResult](#interface-getrawtxresult) | [StorageIdentity](#interface-storageidentity) | [WalletArgs](#interface-walletargs) |
66
- | [GetReqsAndBeefDetail](#interface-getreqsandbeefdetail) | [StorageInternalizeActionResult](#interface-storageinternalizeactionresult) | [WalletBalance](#interface-walletbalance) |
67
- | [GetReqsAndBeefResult](#interface-getreqsandbeefresult) | [StorageProcessActionArgs](#interface-storageprocessactionargs) | [WalletPermissionsManagerCallbacks](#interface-walletpermissionsmanagercallbacks) |
68
- | [GetScriptHashHistory](#interface-getscripthashhistory) | [StorageProcessActionResults](#interface-storageprocessactionresults) | [WalletServices](#interface-walletservices) |
69
- | [GetScriptHashHistoryResult](#interface-getscripthashhistoryresult) | [StorageProvenOrReq](#interface-storageprovenorreq) | [WalletServicesOptions](#interface-walletservicesoptions) |
70
- | [GetStatusForTxidsResult](#interface-getstatusfortxidsresult) | [StorageProviderOptions](#interface-storageprovideroptions) | [WalletSettings](#interface-walletsettings) |
71
- | [GetUtxoStatusDetails](#interface-getutxostatusdetails) | [StorageReaderOptions](#interface-storagereaderoptions) | [WalletSettingsManagerConfig](#interface-walletsettingsmanagerconfig) |
72
- | [GetUtxoStatusResult](#interface-getutxostatusresult) | [StorageReaderWriterOptions](#interface-storagereaderwriteroptions) | [WalletSigner](#interface-walletsigner) |
73
- | [GroupedPermissionRequest](#interface-groupedpermissionrequest) | [StorageSyncReaderOptions](#interface-storagesyncreaderoptions) | [WalletStorage](#interface-walletstorage) |
74
- | [GroupedPermissions](#interface-groupedpermissions) | [SyncChunk](#interface-syncchunk) | [WalletStorageInfo](#interface-walletstorageinfo) |
75
- | [KeyPair](#interface-keypair) | [SyncError](#interface-syncerror) | [WalletStorageProvider](#interface-walletstorageprovider) |
76
- | [KeyPairAddress](#interface-keypairaddress) | [SyncMap](#interface-syncmap) | [WalletStorageReader](#interface-walletstoragereader) |
77
- | [ListActionsSpecOp](#interface-listactionsspecop) | [TableCertificate](#interface-tablecertificate) | [WalletStorageSync](#interface-walletstoragesync) |
78
- | [ListOutputsSpecOp](#interface-listoutputsspecop) | [TableCertificateField](#interface-tablecertificatefield) | [WalletStorageSyncReader](#interface-walletstoragesyncreader) |
79
- | [LiveBlockHeader](#interface-liveblockheader) | [TableCertificateX](#interface-tablecertificatex) | [WalletStorageWriter](#interface-walletstoragewriter) |
80
- | [MonitorOptions](#interface-monitoroptions) | [TableCommission](#interface-tablecommission) | [WalletTheme](#interface-wallettheme) |
81
- | [OutPoint](#interface-outpoint) | [TableMonitorEvent](#interface-tablemonitorevent) | [XValidCreateActionOutput](#interface-xvalidcreateactionoutput) |
82
- | [Paged](#interface-paged) | [TableOutput](#interface-tableoutput) | |
17
+ | [AdminStatsResult](#interface-adminstatsresult) | [PendingSignAction](#interface-pendingsignaction) | [TableOutput](#interface-tableoutput) |
18
+ | [ArcConfig](#interface-arcconfig) | [PendingStorageInput](#interface-pendingstorageinput) | [TableOutputBasket](#interface-tableoutputbasket) |
19
+ | [ArcMinerGetTxData](#interface-arcminergettxdata) | [PermissionRequest](#interface-permissionrequest) | [TableOutputTag](#interface-tableoutputtag) |
20
+ | [AuthId](#interface-authid) | [PermissionToken](#interface-permissiontoken) | [TableOutputTagMap](#interface-tableoutputtagmap) |
21
+ | [AuthPayload](#interface-authpayload) | [PermissionsManagerConfig](#interface-permissionsmanagerconfig) | [TableOutputX](#interface-tableoutputx) |
22
+ | [BaseBlockHeader](#interface-baseblockheader) | [PostBeefResult](#interface-postbeefresult) | [TableProvenTx](#interface-tableproventx) |
23
+ | [BaseBlockHeader](#interface-baseblockheader) | [PostBeefResultForTxidApi](#interface-postbeefresultfortxidapi) | [TableProvenTxReq](#interface-tableproventxreq) |
24
+ | [BitailsConfig](#interface-bitailsconfig) | [PostReqsToNetworkDetails](#interface-postreqstonetworkdetails) | [TableProvenTxReqDynamics](#interface-tableproventxreqdynamics) |
25
+ | [BitailsMerkleProof](#interface-bitailsmerkleproof) | [PostReqsToNetworkResult](#interface-postreqstonetworkresult) | [TableSettings](#interface-tablesettings) |
26
+ | [BlockHeader](#interface-blockheader) | [PostTxResultForTxid](#interface-posttxresultfortxid) | [TableSyncState](#interface-tablesyncstate) |
27
+ | [BlockHeader](#interface-blockheader) | [PostTxResultForTxidError](#interface-posttxresultfortxiderror) | [TableTransaction](#interface-tabletransaction) |
28
+ | [BsvExchangeRate](#interface-bsvexchangerate) | [PostTxsResult](#interface-posttxsresult) | [TableTxLabel](#interface-tabletxlabel) |
29
+ | [CertOpsWallet](#interface-certopswallet) | [ProcessSyncChunkResult](#interface-processsyncchunkresult) | [TableTxLabelMap](#interface-tabletxlabelmap) |
30
+ | [Certifier](#interface-certifier) | [Profile](#interface-profile) | [TableUser](#interface-tableuser) |
31
+ | [CommitNewTxResults](#interface-commitnewtxresults) | [ProvenOrRawTx](#interface-provenorrawtx) | [TaskPurgeParams](#interface-taskpurgeparams) |
32
+ | [CompleteAuthResponse](#interface-completeauthresponse) | [ProvenTransactionStatus](#interface-proventransactionstatus) | [TrustSettings](#interface-trustsettings) |
33
+ | [CreateActionResultX](#interface-createactionresultx) | [ProvenTxFromTxidResult](#interface-proventxfromtxidresult) | [TrxToken](#interface-trxtoken) |
34
+ | [EntitySyncMap](#interface-entitysyncmap) | [ProvenTxReqHistory](#interface-proventxreqhistory) | [TscMerkleProofApi](#interface-tscmerkleproofapi) |
35
+ | [EntityTimeStamp](#interface-entitytimestamp) | [ProvenTxReqHistorySummaryApi](#interface-proventxreqhistorysummaryapi) | [TxScriptOffsets](#interface-txscriptoffsets) |
36
+ | [ExchangeRatesIoApi](#interface-exchangeratesioapi) | [ProvenTxReqNotify](#interface-proventxreqnotify) | [UMPToken](#interface-umptoken) |
37
+ | [ExtendedVerifiableCertificate](#interface-extendedverifiablecertificate) | [ProviderCallHistory](#interface-providercallhistory) | [UMPTokenInteractor](#interface-umptokeninteractor) |
38
+ | [FiatExchangeRates](#interface-fiatexchangerates) | [PurgeParams](#interface-purgeparams) | [UpdateProvenTxReqWithNewProvenTxArgs](#interface-updateproventxreqwithnewproventxargs) |
39
+ | [FindCertificateFieldsArgs](#interface-findcertificatefieldsargs) | [PurgeResults](#interface-purgeresults) | [UpdateProvenTxReqWithNewProvenTxResult](#interface-updateproventxreqwithnewproventxresult) |
40
+ | [FindCertificatesArgs](#interface-findcertificatesargs) | [RequestSyncChunkArgs](#interface-requestsyncchunkargs) | [ValidAbortActionArgs](#interface-validabortactionargs) |
41
+ | [FindCommissionsArgs](#interface-findcommissionsargs) | [ReviewActionResult](#interface-reviewactionresult) | [ValidAcquireCertificateArgs](#interface-validacquirecertificateargs) |
42
+ | [FindForUserSincePagedArgs](#interface-findforusersincepagedargs) | [ScriptTemplateParamsBRC29](#interface-scripttemplateparamsbrc29) | [ValidAcquireDirectCertificateArgs](#interface-validacquiredirectcertificateargs) |
43
+ | [FindMonitorEventsArgs](#interface-findmonitoreventsargs) | [ScriptTemplateUnlock](#interface-scripttemplateunlock) | [ValidAcquireIssuanceCertificateArgs](#interface-validacquireissuancecertificateargs) |
44
+ | [FindOutputBasketsArgs](#interface-findoutputbasketsargs) | [ServiceCall](#interface-servicecall) | [ValidBasketInsertion](#interface-validbasketinsertion) |
45
+ | [FindOutputTagMapsArgs](#interface-findoutputtagmapsargs) | [ServiceCall](#interface-servicecall) | [ValidCreateActionArgs](#interface-validcreateactionargs) |
46
+ | [FindOutputTagsArgs](#interface-findoutputtagsargs) | [ServiceCallHistory](#interface-servicecallhistory) | [ValidCreateActionInput](#interface-validcreateactioninput) |
47
+ | [FindOutputsArgs](#interface-findoutputsargs) | [ServiceCallHistoryCounts](#interface-servicecallhistorycounts) | [ValidCreateActionOptions](#interface-validcreateactionoptions) |
48
+ | [FindPartialSincePagedArgs](#interface-findpartialsincepagedargs) | [ServiceToCall](#interface-servicetocall) | [ValidCreateActionOutput](#interface-validcreateactionoutput) |
49
+ | [FindProvenTxReqsArgs](#interface-findproventxreqsargs) | [SetupClientWalletArgs](#interface-setupclientwalletargs) | [ValidDiscoverByAttributesArgs](#interface-validdiscoverbyattributesargs) |
50
+ | [FindProvenTxsArgs](#interface-findproventxsargs) | [SetupClientWalletClientArgs](#interface-setupclientwalletclientargs) | [ValidDiscoverByIdentityKeyArgs](#interface-validdiscoverbyidentitykeyargs) |
51
+ | [FindSincePagedArgs](#interface-findsincepagedargs) | [SetupWallet](#interface-setupwallet) | [ValidInternalizeActionArgs](#interface-validinternalizeactionargs) |
52
+ | [FindSyncStatesArgs](#interface-findsyncstatesargs) | [SetupWalletClient](#interface-setupwalletclient) | [ValidInternalizeOutput](#interface-validinternalizeoutput) |
53
+ | [FindTransactionsArgs](#interface-findtransactionsargs) | [SetupWalletIdb](#interface-setupwalletidb) | [ValidListActionsArgs](#interface-validlistactionsargs) |
54
+ | [FindTxLabelMapsArgs](#interface-findtxlabelmapsargs) | [SetupWalletIdbArgs](#interface-setupwalletidbargs) | [ValidListCertificatesArgs](#interface-validlistcertificatesargs) |
55
+ | [FindTxLabelsArgs](#interface-findtxlabelsargs) | [SignActionResultX](#interface-signactionresultx) | [ValidListOutputsArgs](#interface-validlistoutputsargs) |
56
+ | [FindUsersArgs](#interface-findusersargs) | [StartAuthResponse](#interface-startauthresponse) | [ValidProcessActionArgs](#interface-validprocessactionargs) |
57
+ | [GenerateChangeSdkChangeInput](#interface-generatechangesdkchangeinput) | [StatusForTxidResult](#interface-statusfortxidresult) | [ValidProcessActionOptions](#interface-validprocessactionoptions) |
58
+ | [GenerateChangeSdkChangeOutput](#interface-generatechangesdkchangeoutput) | [StorageAdminStats](#interface-storageadminstats) | [ValidProveCertificateArgs](#interface-validprovecertificateargs) |
59
+ | [GenerateChangeSdkInput](#interface-generatechangesdkinput) | [StorageCreateActionResult](#interface-storagecreateactionresult) | [ValidRelinquishCertificateArgs](#interface-validrelinquishcertificateargs) |
60
+ | [GenerateChangeSdkOutput](#interface-generatechangesdkoutput) | [StorageCreateTransactionSdkInput](#interface-storagecreatetransactionsdkinput) | [ValidRelinquishOutputArgs](#interface-validrelinquishoutputargs) |
61
+ | [GenerateChangeSdkParams](#interface-generatechangesdkparams) | [StorageCreateTransactionSdkOutput](#interface-storagecreatetransactionsdkoutput) | [ValidSignActionArgs](#interface-validsignactionargs) |
62
+ | [GenerateChangeSdkResult](#interface-generatechangesdkresult) | [StorageFeeModel](#interface-storagefeemodel) | [ValidSignActionOptions](#interface-validsignactionoptions) |
63
+ | [GenerateChangeSdkStorageChange](#interface-generatechangesdkstoragechange) | [StorageGetBeefOptions](#interface-storagegetbeefoptions) | [ValidWalletPayment](#interface-validwalletpayment) |
64
+ | [GetMerklePathResult](#interface-getmerklepathresult) | [StorageIdbOptions](#interface-storageidboptions) | [ValidWalletSignerArgs](#interface-validwalletsignerargs) |
65
+ | [GetRawTxResult](#interface-getrawtxresult) | [StorageIdbSchema](#interface-storageidbschema) | [ValidateGenerateChangeSdkParamsResult](#interface-validategeneratechangesdkparamsresult) |
66
+ | [GetReqsAndBeefDetail](#interface-getreqsandbeefdetail) | [StorageIdentity](#interface-storageidentity) | [WalletArgs](#interface-walletargs) |
67
+ | [GetReqsAndBeefResult](#interface-getreqsandbeefresult) | [StorageInternalizeActionResult](#interface-storageinternalizeactionresult) | [WalletBalance](#interface-walletbalance) |
68
+ | [GetScriptHashHistory](#interface-getscripthashhistory) | [StorageProcessActionArgs](#interface-storageprocessactionargs) | [WalletPermissionsManagerCallbacks](#interface-walletpermissionsmanagercallbacks) |
69
+ | [GetScriptHashHistoryResult](#interface-getscripthashhistoryresult) | [StorageProcessActionResults](#interface-storageprocessactionresults) | [WalletServices](#interface-walletservices) |
70
+ | [GetStatusForTxidsResult](#interface-getstatusfortxidsresult) | [StorageProvenOrReq](#interface-storageprovenorreq) | [WalletServicesOptions](#interface-walletservicesoptions) |
71
+ | [GetUtxoStatusDetails](#interface-getutxostatusdetails) | [StorageProviderOptions](#interface-storageprovideroptions) | [WalletSettings](#interface-walletsettings) |
72
+ | [GetUtxoStatusResult](#interface-getutxostatusresult) | [StorageReaderOptions](#interface-storagereaderoptions) | [WalletSettingsManagerConfig](#interface-walletsettingsmanagerconfig) |
73
+ | [GroupedPermissionRequest](#interface-groupedpermissionrequest) | [StorageReaderWriterOptions](#interface-storagereaderwriteroptions) | [WalletSigner](#interface-walletsigner) |
74
+ | [GroupedPermissions](#interface-groupedpermissions) | [StorageSyncReaderOptions](#interface-storagesyncreaderoptions) | [WalletStorage](#interface-walletstorage) |
75
+ | [KeyPair](#interface-keypair) | [SyncChunk](#interface-syncchunk) | [WalletStorageInfo](#interface-walletstorageinfo) |
76
+ | [KeyPairAddress](#interface-keypairaddress) | [SyncError](#interface-syncerror) | [WalletStorageProvider](#interface-walletstorageprovider) |
77
+ | [ListActionsSpecOp](#interface-listactionsspecop) | [SyncMap](#interface-syncmap) | [WalletStorageReader](#interface-walletstoragereader) |
78
+ | [ListOutputsSpecOp](#interface-listoutputsspecop) | [TableCertificate](#interface-tablecertificate) | [WalletStorageSync](#interface-walletstoragesync) |
79
+ | [LiveBlockHeader](#interface-liveblockheader) | [TableCertificateField](#interface-tablecertificatefield) | [WalletStorageSyncReader](#interface-walletstoragesyncreader) |
80
+ | [MonitorOptions](#interface-monitoroptions) | [TableCertificateX](#interface-tablecertificatex) | [WalletStorageWriter](#interface-walletstoragewriter) |
81
+ | [OutPoint](#interface-outpoint) | [TableCommission](#interface-tablecommission) | [WalletTheme](#interface-wallettheme) |
82
+ | [Paged](#interface-paged) | [TableMonitorEvent](#interface-tablemonitorevent) | [XValidCreateActionOutput](#interface-xvalidcreateactionoutput) |
83
83
 
84
84
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
85
85
 
@@ -1610,10 +1610,12 @@ export interface MonitorOptions {
1610
1610
  abandonedMsecs: number;
1611
1611
  unprovenAttemptsLimitTest: number;
1612
1612
  unprovenAttemptsLimitMain: number;
1613
+ onTransactionBroadcasted?: (broadcastResult: sdk.ReviewActionResult) => Promise<void>;
1614
+ onTransactionProven?: (txStatus: sdk.ProvenTransactionStatus) => Promise<void>;
1613
1615
  }
1614
1616
  ```
1615
1617
 
1616
- See also: [Chain](./client.md#type-chain), [MonitorStorage](./monitor.md#type-monitorstorage), [Services](./services.md#class-services)
1618
+ See also: [Chain](./client.md#type-chain), [MonitorStorage](./monitor.md#type-monitorstorage), [ProvenTransactionStatus](./client.md#interface-proventransactionstatus), [ReviewActionResult](./client.md#interface-reviewactionresult), [Services](./services.md#class-services)
1617
1619
 
1618
1620
  ###### Property msecsWaitPerMerkleProofServiceReq
1619
1621
 
@@ -1623,6 +1625,15 @@ How many msecs to wait after each getMerkleProof service request.
1623
1625
  msecsWaitPerMerkleProofServiceReq: number
1624
1626
  ```
1625
1627
 
1628
+ ###### Property onTransactionBroadcasted
1629
+
1630
+ These are hooks for a wallet-toolbox client to get transaction updates.
1631
+
1632
+ ```ts
1633
+ onTransactionBroadcasted?: (broadcastResult: sdk.ReviewActionResult) => Promise<void>
1634
+ ```
1635
+ See also: [ReviewActionResult](./client.md#interface-reviewactionresult)
1636
+
1626
1637
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
1627
1638
 
1628
1639
  ---
@@ -2412,6 +2423,24 @@ See also: [TableProvenTx](./storage.md#interface-tableproventx)
2412
2423
 
2413
2424
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
2414
2425
 
2426
+ ---
2427
+ ##### Interface: ProvenTransactionStatus
2428
+
2429
+ The transaction status that a client will receive when subscribing to transaction updates in the Monitor.
2430
+
2431
+ ```ts
2432
+ export interface ProvenTransactionStatus {
2433
+ txid: string;
2434
+ txIndex: number;
2435
+ blockHeight: number;
2436
+ blockHash: string;
2437
+ merklePath: number[];
2438
+ merkleRoot: string;
2439
+ }
2440
+ ```
2441
+
2442
+ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
2443
+
2415
2444
  ---
2416
2445
  ##### Interface: ProvenTxFromTxidResult
2417
2446
 
@@ -3034,7 +3063,7 @@ and customization.
3034
3063
  export interface SetupWallet {
3035
3064
  rootKey: PrivateKey;
3036
3065
  identityKey: string;
3037
- keyDeriver: KeyDeriver;
3066
+ keyDeriver: KeyDeriverApi;
3038
3067
  chain: sdk.Chain;
3039
3068
  storage: WalletStorageManager;
3040
3069
  services: Services;
@@ -3067,7 +3096,7 @@ identityKey: string
3067
3096
  The `KeyDeriver` component used by the wallet for key derivation and cryptographic functions.
3068
3097
 
3069
3098
  ```ts
3070
- keyDeriver: KeyDeriver
3099
+ keyDeriver: KeyDeriverApi
3071
3100
  ```
3072
3101
 
3073
3102
  ###### Property monitor
@@ -3158,7 +3187,7 @@ export interface SetupWalletIdb extends SetupWallet {
3158
3187
  userId: number;
3159
3188
  rootKey: PrivateKey;
3160
3189
  identityKey: string;
3161
- keyDeriver: KeyDeriver;
3190
+ keyDeriver: KeyDeriverApi;
3162
3191
  chain: sdk.Chain;
3163
3192
  storage: WalletStorageManager;
3164
3193
  services: Services;
@@ -5277,7 +5306,7 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
5277
5306
  ```ts
5278
5307
  export interface WalletArgs {
5279
5308
  chain: sdk.Chain;
5280
- keyDeriver: KeyDeriver;
5309
+ keyDeriver: KeyDeriverApi;
5281
5310
  storage: WalletStorageManager;
5282
5311
  services?: sdk.WalletServices;
5283
5312
  monitor?: Monitor;
@@ -7419,6 +7448,8 @@ export class Monitor {
7419
7448
  chain: sdk.Chain;
7420
7449
  storage: MonitorStorage;
7421
7450
  chaintracks: ChaintracksServiceClient;
7451
+ onTransactionBroadcasted?: (broadcastResult: sdk.ReviewActionResult) => Promise<void>;
7452
+ onTransactionProven?: (txStatus: sdk.ProvenTransactionStatus) => Promise<void>;
7422
7453
  constructor(options: MonitorOptions)
7423
7454
  oneSecond = 1000;
7424
7455
  oneMinute = 60 * this.oneSecond;
@@ -7451,11 +7482,13 @@ export class Monitor {
7451
7482
  lastNewHeader: BlockHeader | undefined;
7452
7483
  lastNewHeaderWhen: Date | undefined;
7453
7484
  processNewBlockHeader(header: BlockHeader): void
7485
+ callOnBroadcastedTransaction(broadcastResult: sdk.ReviewActionResult): void
7486
+ callOnProvenTransaction(txStatus: sdk.ProvenTransactionStatus): void
7454
7487
  processReorg(depth: number, oldTip: BlockHeader, newTip: BlockHeader): void
7455
7488
  }
7456
7489
  ```
7457
7490
 
7458
- See also: [BlockHeader](./services.md#interface-blockheader), [Chain](./client.md#type-chain), [MonitorOptions](./monitor.md#interface-monitoroptions), [MonitorStorage](./monitor.md#type-monitorstorage), [Services](./services.md#class-services), [TaskPurgeParams](./monitor.md#interface-taskpurgeparams), [WalletMonitorTask](./monitor.md#class-walletmonitortask)
7491
+ See also: [BlockHeader](./services.md#interface-blockheader), [Chain](./client.md#type-chain), [MonitorOptions](./monitor.md#interface-monitoroptions), [MonitorStorage](./monitor.md#type-monitorstorage), [ProvenTransactionStatus](./client.md#interface-proventransactionstatus), [ReviewActionResult](./client.md#interface-reviewactionresult), [Services](./services.md#class-services), [TaskPurgeParams](./monitor.md#interface-taskpurgeparams), [WalletMonitorTask](./monitor.md#class-walletmonitortask)
7459
7492
 
7460
7493
  ###### Property _otherTasks
7461
7494
 
@@ -7493,6 +7526,28 @@ without sync'ing enabled.
7493
7526
  addMultiUserTasks(): void
7494
7527
  ```
7495
7528
 
7529
+ ###### Method callOnBroadcastedTransaction
7530
+
7531
+ This is a function run from a TaskSendWaiting Monitor task.
7532
+
7533
+ This allows the user of wallet-toolbox to 'subscribe' for transaction broadcast updates.
7534
+
7535
+ ```ts
7536
+ callOnBroadcastedTransaction(broadcastResult: sdk.ReviewActionResult): void
7537
+ ```
7538
+ See also: [ReviewActionResult](./client.md#interface-reviewactionresult)
7539
+
7540
+ ###### Method callOnProvenTransaction
7541
+
7542
+ This is a function run from a TaskCheckForProofs Monitor task.
7543
+
7544
+ This allows the user of wallet-toolbox to 'subscribe' for transaction updates.
7545
+
7546
+ ```ts
7547
+ callOnProvenTransaction(txStatus: sdk.ProvenTransactionStatus): void
7548
+ ```
7549
+ See also: [ProvenTransactionStatus](./client.md#interface-proventransactionstatus)
7550
+
7496
7551
  ###### Method processNewBlockHeader
7497
7552
 
7498
7553
  Process new chain header event received from Chaintracks
@@ -7910,7 +7965,7 @@ export abstract class SetupClient {
7910
7965
  const chain = args.chain;
7911
7966
  const rootKey = PrivateKey.fromHex(args.rootKeyHex);
7912
7967
  const identityKey = rootKey.toPublicKey().toString();
7913
- const keyDeriver = new KeyDeriver(rootKey);
7968
+ const keyDeriver = new CachedKeyDeriver(rootKey);
7914
7969
  const storage = new WalletStorageManager(identityKey, args.active, args.backups);
7915
7970
  if (storage.canMakeAvailable())
7916
7971
  await storage.makeAvailable();
@@ -8071,7 +8126,7 @@ static async createWallet(args: SetupClientWalletArgs): Promise<SetupWallet> {
8071
8126
  const chain = args.chain;
8072
8127
  const rootKey = PrivateKey.fromHex(args.rootKeyHex);
8073
8128
  const identityKey = rootKey.toPublicKey().toString();
8074
- const keyDeriver = new KeyDeriver(rootKey);
8129
+ const keyDeriver = new CachedKeyDeriver(rootKey);
8075
8130
  const storage = new WalletStorageManager(identityKey, args.active, args.backups);
8076
8131
  if (storage.canMakeAvailable())
8077
8132
  await storage.makeAvailable();
@@ -10403,7 +10458,7 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
10403
10458
  ```ts
10404
10459
  export class Wallet implements WalletInterface, ProtoWallet {
10405
10460
  chain: sdk.Chain;
10406
- keyDeriver: KeyDeriver;
10461
+ keyDeriver: KeyDeriverApi;
10407
10462
  storage: WalletStorageManager;
10408
10463
  settingsManager: WalletSettingsManager;
10409
10464
  lookupResolver: LookupResolver;
@@ -11411,9 +11466,9 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
11411
11466
  export class WalletSigner {
11412
11467
  isWalletSigner: true = true;
11413
11468
  chain: sdk.Chain;
11414
- keyDeriver: KeyDeriver;
11469
+ keyDeriver: KeyDeriverApi;
11415
11470
  storage: WalletStorageManager;
11416
- constructor(chain: sdk.Chain, keyDeriver: KeyDeriver, storage: WalletStorageManager)
11471
+ constructor(chain: sdk.Chain, keyDeriver: KeyDeriverApi, storage: WalletStorageManager)
11417
11472
  }
11418
11473
  ```
11419
11474
 
@@ -13857,17 +13912,17 @@ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](
13857
13912
 
13858
13913
  | | |
13859
13914
  | --- | --- |
13860
- | [DEFAULT_PROFILE_ID](#variable-default_profile_id) | [parseResults](#variable-parseresults) |
13861
- | [DEFAULT_SETTINGS](#variable-default_settings) | [queryOverlay](#variable-queryoverlay) |
13862
- | [PBKDF2_NUM_ROUNDS](#variable-pbkdf2_num_rounds) | [specOpFailedActions](#variable-specopfailedactions) |
13863
- | [ProvenTxReqNonTerminalStatus](#variable-proventxreqnonterminalstatus) | [specOpInvalidChange](#variable-specopinvalidchange) |
13864
- | [ProvenTxReqTerminalStatus](#variable-proventxreqterminalstatus) | [specOpNoSendActions](#variable-specopnosendactions) |
13865
- | [TESTNET_DEFAULT_SETTINGS](#variable-testnet_default_settings) | [specOpSetWalletChangeParams](#variable-specopsetwalletchangeparams) |
13915
+ | [DEFAULT_PROFILE_ID](#variable-default_profile_id) | [outputColumnsWithoutLockingScript](#variable-outputcolumnswithoutlockingscript) |
13916
+ | [DEFAULT_SETTINGS](#variable-default_settings) | [parseResults](#variable-parseresults) |
13917
+ | [PBKDF2_NUM_ROUNDS](#variable-pbkdf2_num_rounds) | [queryOverlay](#variable-queryoverlay) |
13918
+ | [ProvenTxReqNonTerminalStatus](#variable-proventxreqnonterminalstatus) | [specOpFailedActions](#variable-specopfailedactions) |
13919
+ | [ProvenTxReqTerminalStatus](#variable-proventxreqterminalstatus) | [specOpInvalidChange](#variable-specopinvalidchange) |
13920
+ | [TESTNET_DEFAULT_SETTINGS](#variable-testnet_default_settings) | [specOpNoSendActions](#variable-specopnosendactions) |
13921
+ | [aggregateActionResults](#variable-aggregateactionresults) | [specOpSetWalletChangeParams](#variable-specopsetwalletchangeparams) |
13866
13922
  | [brc29ProtocolID](#variable-brc29protocolid) | [specOpThrowReviewActions](#variable-specopthrowreviewactions) |
13867
13923
  | [getBasketToSpecOp](#variable-getbaskettospecop) | [specOpWalletBalance](#variable-specopwalletbalance) |
13868
13924
  | [getLabelToSpecOp](#variable-getlabeltospecop) | [transactionColumnsWithoutRawTx](#variable-transactioncolumnswithoutrawtx) |
13869
13925
  | [maxPossibleSatoshis](#variable-maxpossiblesatoshis) | [transformVerifiableCertificatesWithTrust](#variable-transformverifiablecertificateswithtrust) |
13870
- | [outputColumnsWithoutLockingScript](#variable-outputcolumnswithoutlockingscript) | |
13871
13926
 
13872
13927
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
13873
13928
 
@@ -13974,6 +14029,56 @@ See also: [DEFAULT_SETTINGS](./client.md#variable-default_settings), [WalletSett
13974
14029
 
13975
14030
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
13976
14031
 
14032
+ ---
14033
+ ##### Variable: aggregateActionResults
14034
+
14035
+ ```ts
14036
+ aggregateActionResults = async (storage: StorageProvider, sendWithResultReqs: SendWithResult[], postToNetworkResult: PostReqsToNetworkResult): Promise<{
14037
+ swr: SendWithResult[];
14038
+ rar: ReviewActionResult[];
14039
+ }> => {
14040
+ const swr: SendWithResult[] = [];
14041
+ const rar: ReviewActionResult[] = [];
14042
+ for (const ar of sendWithResultReqs) {
14043
+ const txid = ar.txid;
14044
+ const d = postToNetworkResult.details.find(d => d.txid === txid);
14045
+ if (!d)
14046
+ throw new WERR_INTERNAL(`missing details for ${txid}`);
14047
+ const arNdr: ReviewActionResult = { txid: d.txid, status: "success", competingTxs: d.competingTxs };
14048
+ switch (d.status) {
14049
+ case "success":
14050
+ ar.status = "unproven";
14051
+ break;
14052
+ case "doubleSpend":
14053
+ ar.status = "failed";
14054
+ arNdr.status = "doubleSpend";
14055
+ if (d.competingTxs)
14056
+ arNdr.competingBeef = await createMergedBeefOfTxids(d.competingTxs, storage);
14057
+ break;
14058
+ case "serviceError":
14059
+ ar.status = "sending";
14060
+ arNdr.status = "serviceError";
14061
+ break;
14062
+ case "invalidTx":
14063
+ ar.status = "failed";
14064
+ arNdr.status = "invalidTx";
14065
+ break;
14066
+ case "unknown":
14067
+ case "invalid":
14068
+ default:
14069
+ throw new WERR_INTERNAL(`processAction with notDelayed status ${d.status} should not occur.`);
14070
+ }
14071
+ swr.push({ txid, status: ar.status });
14072
+ rar.push(arNdr);
14073
+ }
14074
+ return { swr, rar };
14075
+ }
14076
+ ```
14077
+
14078
+ See also: [PostReqsToNetworkResult](./storage.md#interface-postreqstonetworkresult), [ReviewActionResult](./client.md#interface-reviewactionresult), [StorageProvider](./storage.md#class-storageprovider), [WERR_INTERNAL](./client.md#class-werr_internal), [processAction](./storage.md#function-processaction)
14079
+
14080
+ Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
14081
+
13977
14082
  ---
13978
14083
  ##### Variable: brc29ProtocolID
13979
14084
 
package/docs/monitor.md CHANGED
@@ -65,10 +65,12 @@ export interface MonitorOptions {
65
65
  abandonedMsecs: number;
66
66
  unprovenAttemptsLimitTest: number;
67
67
  unprovenAttemptsLimitMain: number;
68
+ onTransactionBroadcasted?: (broadcastResult: sdk.ReviewActionResult) => Promise<void>;
69
+ onTransactionProven?: (txStatus: sdk.ProvenTransactionStatus) => Promise<void>;
68
70
  }
69
71
  ```
70
72
 
71
- See also: [Chain](./client.md#type-chain), [MonitorStorage](./monitor.md#type-monitorstorage), [Services](./services.md#class-services)
73
+ See also: [Chain](./client.md#type-chain), [MonitorStorage](./monitor.md#type-monitorstorage), [ProvenTransactionStatus](./client.md#interface-proventransactionstatus), [ReviewActionResult](./client.md#interface-reviewactionresult), [Services](./services.md#class-services)
72
74
 
73
75
  ###### Property msecsWaitPerMerkleProofServiceReq
74
76
 
@@ -78,6 +80,15 @@ How many msecs to wait after each getMerkleProof service request.
78
80
  msecsWaitPerMerkleProofServiceReq: number
79
81
  ```
80
82
 
83
+ ###### Property onTransactionBroadcasted
84
+
85
+ These are hooks for a wallet-toolbox client to get transaction updates.
86
+
87
+ ```ts
88
+ onTransactionBroadcasted?: (broadcastResult: sdk.ReviewActionResult) => Promise<void>
89
+ ```
90
+ See also: [ReviewActionResult](./client.md#interface-reviewactionresult)
91
+
81
92
  Links: [API](#api), [Interfaces](#interfaces), [Classes](#classes), [Functions](#functions), [Types](#types), [Variables](#variables)
82
93
 
83
94
  ---
@@ -146,6 +157,8 @@ export class Monitor {
146
157
  chain: sdk.Chain;
147
158
  storage: MonitorStorage;
148
159
  chaintracks: ChaintracksServiceClient;
160
+ onTransactionBroadcasted?: (broadcastResult: sdk.ReviewActionResult) => Promise<void>;
161
+ onTransactionProven?: (txStatus: sdk.ProvenTransactionStatus) => Promise<void>;
149
162
  constructor(options: MonitorOptions)
150
163
  oneSecond = 1000;
151
164
  oneMinute = 60 * this.oneSecond;
@@ -178,11 +191,13 @@ export class Monitor {
178
191
  lastNewHeader: BlockHeader | undefined;
179
192
  lastNewHeaderWhen: Date | undefined;
180
193
  processNewBlockHeader(header: BlockHeader): void
194
+ callOnBroadcastedTransaction(broadcastResult: sdk.ReviewActionResult): void
195
+ callOnProvenTransaction(txStatus: sdk.ProvenTransactionStatus): void
181
196
  processReorg(depth: number, oldTip: BlockHeader, newTip: BlockHeader): void
182
197
  }
183
198
  ```
184
199
 
185
- See also: [BlockHeader](./services.md#interface-blockheader), [Chain](./client.md#type-chain), [MonitorOptions](./monitor.md#interface-monitoroptions), [MonitorStorage](./monitor.md#type-monitorstorage), [Services](./services.md#class-services), [TaskPurgeParams](./monitor.md#interface-taskpurgeparams), [WalletMonitorTask](./monitor.md#class-walletmonitortask)
200
+ See also: [BlockHeader](./services.md#interface-blockheader), [Chain](./client.md#type-chain), [MonitorOptions](./monitor.md#interface-monitoroptions), [MonitorStorage](./monitor.md#type-monitorstorage), [ProvenTransactionStatus](./client.md#interface-proventransactionstatus), [ReviewActionResult](./client.md#interface-reviewactionresult), [Services](./services.md#class-services), [TaskPurgeParams](./monitor.md#interface-taskpurgeparams), [WalletMonitorTask](./monitor.md#class-walletmonitortask)
186
201
 
187
202
  ###### Property _otherTasks
188
203
 
@@ -220,6 +235,28 @@ without sync'ing enabled.
220
235
  addMultiUserTasks(): void
221
236
  ```
222
237
 
238
+ ###### Method callOnBroadcastedTransaction
239
+
240
+ This is a function run from a TaskSendWaiting Monitor task.
241
+
242
+ This allows the user of wallet-toolbox to 'subscribe' for transaction broadcast updates.
243
+
244
+ ```ts
245
+ callOnBroadcastedTransaction(broadcastResult: sdk.ReviewActionResult): void
246
+ ```
247
+ See also: [ReviewActionResult](./client.md#interface-reviewactionresult)
248
+
249
+ ###### Method callOnProvenTransaction
250
+
251
+ This is a function run from a TaskCheckForProofs Monitor task.
252
+
253
+ This allows the user of wallet-toolbox to 'subscribe' for transaction updates.
254
+
255
+ ```ts
256
+ callOnProvenTransaction(txStatus: sdk.ProvenTransactionStatus): void
257
+ ```
258
+ See also: [ProvenTransactionStatus](./client.md#interface-proventransactionstatus)
259
+
223
260
  ###### Method processNewBlockHeader
224
261
 
225
262
  Process new chain header event received from Chaintracks
package/docs/setup.md CHANGED
@@ -222,7 +222,7 @@ and customization.
222
222
  export interface SetupWallet {
223
223
  rootKey: PrivateKey;
224
224
  identityKey: string;
225
- keyDeriver: KeyDeriver;
225
+ keyDeriver: KeyDeriverApi;
226
226
  chain: sdk.Chain;
227
227
  storage: WalletStorageManager;
228
228
  services: Services;
@@ -255,7 +255,7 @@ identityKey: string
255
255
  The `KeyDeriver` component used by the wallet for key derivation and cryptographic functions.
256
256
 
257
257
  ```ts
258
- keyDeriver: KeyDeriver
258
+ keyDeriver: KeyDeriverApi
259
259
  ```
260
260
 
261
261
  ###### Property monitor
@@ -444,7 +444,7 @@ export interface SetupWalletIdb extends SetupWallet {
444
444
  userId: number;
445
445
  rootKey: PrivateKey;
446
446
  identityKey: string;
447
- keyDeriver: KeyDeriver;
447
+ keyDeriver: KeyDeriverApi;
448
448
  chain: sdk.Chain;
449
449
  storage: WalletStorageManager;
450
450
  services: Services;
@@ -479,7 +479,7 @@ export interface SetupWalletKnex extends SetupWallet {
479
479
  userId: number;
480
480
  rootKey: PrivateKey;
481
481
  identityKey: string;
482
- keyDeriver: KeyDeriver;
482
+ keyDeriver: KeyDeriverApi;
483
483
  chain: sdk.Chain;
484
484
  storage: WalletStorageManager;
485
485
  services: Services;
@@ -607,7 +607,7 @@ DEV_KEYS = '{
607
607
  args.rootKeyHex ||= args.env.devKeys[args.env.identityKey];
608
608
  const rootKey = PrivateKey.fromHex(args.rootKeyHex);
609
609
  const identityKey = rootKey.toPublicKey().toString();
610
- const keyDeriver = new KeyDeriver(rootKey);
610
+ const keyDeriver = new CachedKeyDeriver(rootKey);
611
611
  const storage = new WalletStorageManager(identityKey, args.active, args.backups);
612
612
  if (storage.canMakeAvailable())
613
613
  await storage.makeAvailable();
@@ -804,7 +804,7 @@ static async createWallet(args: SetupWalletArgs): Promise<SetupWallet> {
804
804
  args.rootKeyHex ||= args.env.devKeys[args.env.identityKey];
805
805
  const rootKey = PrivateKey.fromHex(args.rootKeyHex);
806
806
  const identityKey = rootKey.toPublicKey().toString();
807
- const keyDeriver = new KeyDeriver(rootKey);
807
+ const keyDeriver = new CachedKeyDeriver(rootKey);
808
808
  const storage = new WalletStorageManager(identityKey, args.active, args.backups);
809
809
  if (storage.canMakeAvailable())
810
810
  await storage.makeAvailable();
@@ -1005,7 +1005,7 @@ export abstract class SetupClient {
1005
1005
  const chain = args.chain;
1006
1006
  const rootKey = PrivateKey.fromHex(args.rootKeyHex);
1007
1007
  const identityKey = rootKey.toPublicKey().toString();
1008
- const keyDeriver = new KeyDeriver(rootKey);
1008
+ const keyDeriver = new CachedKeyDeriver(rootKey);
1009
1009
  const storage = new WalletStorageManager(identityKey, args.active, args.backups);
1010
1010
  if (storage.canMakeAvailable())
1011
1011
  await storage.makeAvailable();
@@ -1166,7 +1166,7 @@ static async createWallet(args: SetupClientWalletArgs): Promise<SetupWallet> {
1166
1166
  const chain = args.chain;
1167
1167
  const rootKey = PrivateKey.fromHex(args.rootKeyHex);
1168
1168
  const identityKey = rootKey.toPublicKey().toString();
1169
- const keyDeriver = new KeyDeriver(rootKey);
1169
+ const keyDeriver = new CachedKeyDeriver(rootKey);
1170
1170
  const storage = new WalletStorageManager(identityKey, args.active, args.backups);
1171
1171
  if (storage.canMakeAvailable())
1172
1172
  await storage.makeAvailable();