@bsv/wallet-toolbox 1.1.0
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/.env.template +22 -0
- package/.github/ISSUE_TEMPLATE/bug_report.md +40 -0
- package/.github/ISSUE_TEMPLATE/discussion.md +24 -0
- package/.github/pull_request_template.md +24 -0
- package/.github/workflows/push.yaml +66 -0
- package/.prettierrc +10 -0
- package/CONTRIBUTING.md +89 -0
- package/LICENSE.txt +28 -0
- package/README.md +124 -0
- package/dev.sqlite3 +0 -0
- package/docs/README.md +15 -0
- package/docs/client.md +6812 -0
- package/docs/monitor.md +648 -0
- package/docs/services.md +496 -0
- package/docs/storage.md +1884 -0
- package/docs/wallet.md +6812 -0
- package/jest.config.ts +29 -0
- package/knexfile.js +9 -0
- package/license.md +1 -0
- package/out/src/Wallet.d.ts +83 -0
- package/out/src/Wallet.d.ts.map +1 -0
- package/out/src/Wallet.js +415 -0
- package/out/src/Wallet.js.map +1 -0
- package/out/src/index.all.d.ts +9 -0
- package/out/src/index.all.d.ts.map +1 -0
- package/out/src/index.all.js +48 -0
- package/out/src/index.all.js.map +1 -0
- package/out/src/index.client.d.ts +8 -0
- package/out/src/index.client.d.ts.map +1 -0
- package/out/src/index.client.js +47 -0
- package/out/src/index.client.js.map +1 -0
- package/out/src/index.d.ts +3 -0
- package/out/src/index.d.ts.map +1 -0
- package/out/src/index.js +42 -0
- package/out/src/index.js.map +1 -0
- package/out/src/monitor/Monitor.d.ts +89 -0
- package/out/src/monitor/Monitor.d.ts.map +1 -0
- package/out/src/monitor/Monitor.js +253 -0
- package/out/src/monitor/Monitor.js.map +1 -0
- package/out/src/monitor/MonitorDaemon.d.ts +30 -0
- package/out/src/monitor/MonitorDaemon.d.ts.map +1 -0
- package/out/src/monitor/MonitorDaemon.js +135 -0
- package/out/src/monitor/MonitorDaemon.js.map +1 -0
- package/out/src/monitor/__test/MonitorDaemon.man.test.d.ts +2 -0
- package/out/src/monitor/__test/MonitorDaemon.man.test.d.ts.map +1 -0
- package/out/src/monitor/__test/MonitorDaemon.man.test.js +50 -0
- package/out/src/monitor/__test/MonitorDaemon.man.test.js.map +1 -0
- package/out/src/monitor/tasks/TaskCheckForProofs.d.ts +53 -0
- package/out/src/monitor/tasks/TaskCheckForProofs.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskCheckForProofs.js +197 -0
- package/out/src/monitor/tasks/TaskCheckForProofs.js.map +1 -0
- package/out/src/monitor/tasks/TaskClock.d.ts +14 -0
- package/out/src/monitor/tasks/TaskClock.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskClock.js +27 -0
- package/out/src/monitor/tasks/TaskClock.js.map +1 -0
- package/out/src/monitor/tasks/TaskFailAbandoned.d.ts +20 -0
- package/out/src/monitor/tasks/TaskFailAbandoned.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskFailAbandoned.js +52 -0
- package/out/src/monitor/tasks/TaskFailAbandoned.js.map +1 -0
- package/out/src/monitor/tasks/TaskNewHeader.d.ts +15 -0
- package/out/src/monitor/tasks/TaskNewHeader.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskNewHeader.js +45 -0
- package/out/src/monitor/tasks/TaskNewHeader.js.map +1 -0
- package/out/src/monitor/tasks/TaskPurge.d.ts +45 -0
- package/out/src/monitor/tasks/TaskPurge.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskPurge.js +35 -0
- package/out/src/monitor/tasks/TaskPurge.js.map +1 -0
- package/out/src/monitor/tasks/TaskReviewStatus.d.ts +26 -0
- package/out/src/monitor/tasks/TaskReviewStatus.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskReviewStatus.js +44 -0
- package/out/src/monitor/tasks/TaskReviewStatus.js.map +1 -0
- package/out/src/monitor/tasks/TaskSendWaiting.d.ts +32 -0
- package/out/src/monitor/tasks/TaskSendWaiting.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskSendWaiting.js +99 -0
- package/out/src/monitor/tasks/TaskSendWaiting.js.map +1 -0
- package/out/src/monitor/tasks/TaskSyncWhenIdle.d.ts +12 -0
- package/out/src/monitor/tasks/TaskSyncWhenIdle.d.ts.map +1 -0
- package/out/src/monitor/tasks/TaskSyncWhenIdle.js +22 -0
- package/out/src/monitor/tasks/TaskSyncWhenIdle.js.map +1 -0
- package/out/src/monitor/tasks/WalletMonitorTask.d.ts +40 -0
- package/out/src/monitor/tasks/WalletMonitorTask.d.ts.map +1 -0
- package/out/src/monitor/tasks/WalletMonitorTask.js +37 -0
- package/out/src/monitor/tasks/WalletMonitorTask.js.map +1 -0
- package/out/src/sdk/CertOps.d.ts +66 -0
- package/out/src/sdk/CertOps.d.ts.map +1 -0
- package/out/src/sdk/CertOps.js +198 -0
- package/out/src/sdk/CertOps.js.map +1 -0
- package/out/src/sdk/PrivilegedKeyManager.d.ts +125 -0
- package/out/src/sdk/PrivilegedKeyManager.d.ts.map +1 -0
- package/out/src/sdk/PrivilegedKeyManager.js +293 -0
- package/out/src/sdk/PrivilegedKeyManager.js.map +1 -0
- package/out/src/sdk/StorageSyncReader.d.ts +121 -0
- package/out/src/sdk/StorageSyncReader.d.ts.map +1 -0
- package/out/src/sdk/StorageSyncReader.js +3 -0
- package/out/src/sdk/StorageSyncReader.js.map +1 -0
- package/out/src/sdk/StorageSyncReaderWriter.d.ts +89 -0
- package/out/src/sdk/StorageSyncReaderWriter.d.ts.map +1 -0
- package/out/src/sdk/StorageSyncReaderWriter.js +3 -0
- package/out/src/sdk/StorageSyncReaderWriter.js.map +1 -0
- package/out/src/sdk/WERR_errors.d.ts +90 -0
- package/out/src/sdk/WERR_errors.d.ts.map +1 -0
- package/out/src/sdk/WERR_errors.js +128 -0
- package/out/src/sdk/WERR_errors.js.map +1 -0
- package/out/src/sdk/WalletError.d.ts +45 -0
- package/out/src/sdk/WalletError.d.ts.map +1 -0
- package/out/src/sdk/WalletError.js +122 -0
- package/out/src/sdk/WalletError.js.map +1 -0
- package/out/src/sdk/WalletServices.interfaces.d.ts +325 -0
- package/out/src/sdk/WalletServices.interfaces.d.ts.map +1 -0
- package/out/src/sdk/WalletServices.interfaces.js +3 -0
- package/out/src/sdk/WalletServices.interfaces.js.map +1 -0
- package/out/src/sdk/WalletSigner.interfaces.d.ts +10 -0
- package/out/src/sdk/WalletSigner.interfaces.d.ts.map +1 -0
- package/out/src/sdk/WalletSigner.interfaces.js +3 -0
- package/out/src/sdk/WalletSigner.interfaces.js.map +1 -0
- package/out/src/sdk/WalletStorage.interfaces.d.ts +299 -0
- package/out/src/sdk/WalletStorage.interfaces.d.ts.map +1 -0
- package/out/src/sdk/WalletStorage.interfaces.js +3 -0
- package/out/src/sdk/WalletStorage.interfaces.js.map +1 -0
- package/out/src/sdk/__test/CertificateLifeCycle.test.d.ts +2 -0
- package/out/src/sdk/__test/CertificateLifeCycle.test.d.ts.map +1 -0
- package/out/src/sdk/__test/CertificateLifeCycle.test.js +125 -0
- package/out/src/sdk/__test/CertificateLifeCycle.test.js.map +1 -0
- package/out/src/sdk/__test/PrivilegedKeyManager.test.d.ts +2 -0
- package/out/src/sdk/__test/PrivilegedKeyManager.test.d.ts.map +1 -0
- package/out/src/sdk/__test/PrivilegedKeyManager.test.js +660 -0
- package/out/src/sdk/__test/PrivilegedKeyManager.test.js.map +1 -0
- package/out/src/sdk/index.d.ts +12 -0
- package/out/src/sdk/index.d.ts.map +1 -0
- package/out/src/sdk/index.js +28 -0
- package/out/src/sdk/index.js.map +1 -0
- package/out/src/sdk/types.d.ts +74 -0
- package/out/src/sdk/types.d.ts.map +1 -0
- package/out/src/sdk/types.js +20 -0
- package/out/src/sdk/types.js.map +1 -0
- package/out/src/sdk/validationHelpers.d.ts +288 -0
- package/out/src/sdk/validationHelpers.d.ts.map +1 -0
- package/out/src/sdk/validationHelpers.js +630 -0
- package/out/src/sdk/validationHelpers.js.map +1 -0
- package/out/src/services/ServiceCollection.d.ts +25 -0
- package/out/src/services/ServiceCollection.d.ts.map +1 -0
- package/out/src/services/ServiceCollection.js +43 -0
- package/out/src/services/ServiceCollection.js.map +1 -0
- package/out/src/services/Services.d.ts +60 -0
- package/out/src/services/Services.d.ts.map +1 -0
- package/out/src/services/Services.js +342 -0
- package/out/src/services/Services.js.map +1 -0
- package/out/src/services/__tests/getMerklePath.test.d.ts +2 -0
- package/out/src/services/__tests/getMerklePath.test.d.ts.map +1 -0
- package/out/src/services/__tests/getMerklePath.test.js +16 -0
- package/out/src/services/__tests/getMerklePath.test.js.map +1 -0
- package/out/src/services/__tests/getRawTx.test.d.ts +2 -0
- package/out/src/services/__tests/getRawTx.test.d.ts.map +1 -0
- package/out/src/services/__tests/getRawTx.test.js +13 -0
- package/out/src/services/__tests/getRawTx.test.js.map +1 -0
- package/out/src/services/__tests/postBeef.test.d.ts +2 -0
- package/out/src/services/__tests/postBeef.test.d.ts.map +1 -0
- package/out/src/services/__tests/postBeef.test.js +18 -0
- package/out/src/services/__tests/postBeef.test.js.map +1 -0
- package/out/src/services/__tests/postBeefToArcTaal.test.d.ts +2 -0
- package/out/src/services/__tests/postBeefToArcTaal.test.d.ts.map +1 -0
- package/out/src/services/__tests/postBeefToArcTaal.test.js +479 -0
- package/out/src/services/__tests/postBeefToArcTaal.test.js.map +1 -0
- package/out/src/services/__tests/postTxs.test.d.ts +2 -0
- package/out/src/services/__tests/postTxs.test.d.ts.map +1 -0
- package/out/src/services/__tests/postTxs.test.js +19 -0
- package/out/src/services/__tests/postTxs.test.js.map +1 -0
- package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts +15 -0
- package/out/src/services/chaintracker/ChaintracksChainTracker.d.ts.map +1 -0
- package/out/src/services/chaintracker/ChaintracksChainTracker.js +51 -0
- package/out/src/services/chaintracker/ChaintracksChainTracker.js.map +1 -0
- package/out/src/services/chaintracker/__tests/ChaintracksChainTracker.test.d.ts +2 -0
- package/out/src/services/chaintracker/__tests/ChaintracksChainTracker.test.d.ts.map +1 -0
- package/out/src/services/chaintracker/__tests/ChaintracksChainTracker.test.js +19 -0
- package/out/src/services/chaintracker/__tests/ChaintracksChainTracker.test.js.map +1 -0
- package/out/src/services/chaintracker/__tests/ChaintracksServiceClient.test.d.ts +2 -0
- package/out/src/services/chaintracker/__tests/ChaintracksServiceClient.test.d.ts.map +1 -0
- package/out/src/services/chaintracker/__tests/ChaintracksServiceClient.test.js +29 -0
- package/out/src/services/chaintracker/__tests/ChaintracksServiceClient.test.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/BlockHeaderApi.d.ts +98 -0
- package/out/src/services/chaintracker/chaintracks/BlockHeaderApi.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/BlockHeaderApi.js +38 -0
- package/out/src/services/chaintracker/chaintracks/BlockHeaderApi.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts +36 -0
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js +130 -0
- package/out/src/services/chaintracker/chaintracks/ChaintracksServiceClient.js.map +1 -0
- package/out/src/services/chaintracker/chaintracks/index.d.ts +3 -0
- package/out/src/services/chaintracker/chaintracks/index.d.ts.map +1 -0
- package/out/src/services/chaintracker/chaintracks/index.js +19 -0
- package/out/src/services/chaintracker/chaintracks/index.js.map +1 -0
- package/out/src/services/chaintracker/index.d.ts +3 -0
- package/out/src/services/chaintracker/index.d.ts.map +1 -0
- package/out/src/services/chaintracker/index.js +19 -0
- package/out/src/services/chaintracker/index.js.map +1 -0
- package/out/src/services/createDefaultWalletServicesOptions.d.ts +3 -0
- package/out/src/services/createDefaultWalletServicesOptions.d.ts.map +1 -0
- package/out/src/services/createDefaultWalletServicesOptions.js +34 -0
- package/out/src/services/createDefaultWalletServicesOptions.js.map +1 -0
- package/out/src/services/index.d.ts +2 -0
- package/out/src/services/index.d.ts.map +1 -0
- package/out/src/services/index.js +18 -0
- package/out/src/services/index.js.map +1 -0
- package/out/src/services/providers/arcServices.d.ts +62 -0
- package/out/src/services/providers/arcServices.d.ts.map +1 -0
- package/out/src/services/providers/arcServices.js +368 -0
- package/out/src/services/providers/arcServices.js.map +1 -0
- package/out/src/services/providers/echangeRates.d.ts +12 -0
- package/out/src/services/providers/echangeRates.d.ts.map +1 -0
- package/out/src/services/providers/echangeRates.js +237 -0
- package/out/src/services/providers/echangeRates.js.map +1 -0
- package/out/src/services/providers/whatsonchain.d.ts +17 -0
- package/out/src/services/providers/whatsonchain.d.ts.map +1 -0
- package/out/src/services/providers/whatsonchain.js +130 -0
- package/out/src/services/providers/whatsonchain.js.map +1 -0
- package/out/src/signer/WalletSigner.d.ts +11 -0
- package/out/src/signer/WalletSigner.d.ts.map +1 -0
- package/out/src/signer/WalletSigner.js +13 -0
- package/out/src/signer/WalletSigner.js.map +1 -0
- package/out/src/signer/methods/acquireDirectCertificate.d.ts +4 -0
- package/out/src/signer/methods/acquireDirectCertificate.d.ts.map +1 -0
- package/out/src/signer/methods/acquireDirectCertificate.js +47 -0
- package/out/src/signer/methods/acquireDirectCertificate.js.map +1 -0
- package/out/src/signer/methods/createAction.d.ts +7 -0
- package/out/src/signer/methods/createAction.d.ts.map +1 -0
- package/out/src/signer/methods/createAction.js +250 -0
- package/out/src/signer/methods/createAction.js.map +1 -0
- package/out/src/signer/methods/internalizeAction.d.ts +31 -0
- package/out/src/signer/methods/internalizeAction.d.ts.map +1 -0
- package/out/src/signer/methods/internalizeAction.js +95 -0
- package/out/src/signer/methods/internalizeAction.js.map +1 -0
- package/out/src/signer/methods/proveCertificate.d.ts +4 -0
- package/out/src/signer/methods/proveCertificate.d.ts.map +1 -0
- package/out/src/signer/methods/proveCertificate.js +45 -0
- package/out/src/signer/methods/proveCertificate.js.map +1 -0
- package/out/src/signer/methods/signAction.d.ts +6 -0
- package/out/src/signer/methods/signAction.d.ts.map +1 -0
- package/out/src/signer/methods/signAction.js +79 -0
- package/out/src/signer/methods/signAction.js.map +1 -0
- package/out/src/storage/StorageKnex.d.ts +176 -0
- package/out/src/storage/StorageKnex.d.ts.map +1 -0
- package/out/src/storage/StorageKnex.js +1035 -0
- package/out/src/storage/StorageKnex.js.map +1 -0
- package/out/src/storage/StorageProvider.d.ts +140 -0
- package/out/src/storage/StorageProvider.d.ts.map +1 -0
- package/out/src/storage/StorageProvider.js +539 -0
- package/out/src/storage/StorageProvider.js.map +1 -0
- package/out/src/storage/StorageReader.d.ts +76 -0
- package/out/src/storage/StorageReader.d.ts.map +1 -0
- package/out/src/storage/StorageReader.js +124 -0
- package/out/src/storage/StorageReader.js.map +1 -0
- package/out/src/storage/StorageReaderWriter.d.ts +87 -0
- package/out/src/storage/StorageReaderWriter.d.ts.map +1 -0
- package/out/src/storage/StorageReaderWriter.js +337 -0
- package/out/src/storage/StorageReaderWriter.js.map +1 -0
- package/out/src/storage/StorageSyncReader.d.ts +33 -0
- package/out/src/storage/StorageSyncReader.d.ts.map +1 -0
- package/out/src/storage/StorageSyncReader.js +142 -0
- package/out/src/storage/StorageSyncReader.js.map +1 -0
- package/out/src/storage/WalletStorageManager.d.ts +103 -0
- package/out/src/storage/WalletStorageManager.d.ts.map +1 -0
- package/out/src/storage/WalletStorageManager.js +408 -0
- package/out/src/storage/WalletStorageManager.js.map +1 -0
- package/out/src/storage/__test/WalletStorageManager.test.d.ts +2 -0
- package/out/src/storage/__test/WalletStorageManager.test.d.ts.map +1 -0
- package/out/src/storage/__test/WalletStorageManager.test.js +260 -0
- package/out/src/storage/__test/WalletStorageManager.test.js.map +1 -0
- package/out/src/storage/index.all.d.ts +11 -0
- package/out/src/storage/index.all.d.ts.map +1 -0
- package/out/src/storage/index.all.js +50 -0
- package/out/src/storage/index.all.js.map +1 -0
- package/out/src/storage/index.client.d.ts +7 -0
- package/out/src/storage/index.client.d.ts.map +1 -0
- package/out/src/storage/index.client.js +46 -0
- package/out/src/storage/index.client.js.map +1 -0
- package/out/src/storage/index.db.d.ts +1 -0
- package/out/src/storage/index.db.d.ts.map +1 -0
- package/out/src/storage/index.db.js +2 -0
- package/out/src/storage/index.db.js.map +1 -0
- package/out/src/storage/methods/__test/GenerateChange/generateChangeSdk.test.d.ts +2 -0
- package/out/src/storage/methods/__test/GenerateChange/generateChangeSdk.test.d.ts.map +1 -0
- package/out/src/storage/methods/__test/GenerateChange/generateChangeSdk.test.js +948 -0
- package/out/src/storage/methods/__test/GenerateChange/generateChangeSdk.test.js.map +1 -0
- package/out/src/storage/methods/__test/GenerateChange/randomValsUsed1.d.ts +2 -0
- package/out/src/storage/methods/__test/GenerateChange/randomValsUsed1.d.ts.map +1 -0
- package/out/src/storage/methods/__test/GenerateChange/randomValsUsed1.js +35 -0
- package/out/src/storage/methods/__test/GenerateChange/randomValsUsed1.js.map +1 -0
- package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts +27 -0
- package/out/src/storage/methods/attemptToPostReqsToNetwork.d.ts.map +1 -0
- package/out/src/storage/methods/attemptToPostReqsToNetwork.js +148 -0
- package/out/src/storage/methods/attemptToPostReqsToNetwork.js.map +1 -0
- package/out/src/storage/methods/createAction.d.ts +23 -0
- package/out/src/storage/methods/createAction.d.ts.map +1 -0
- package/out/src/storage/methods/createAction.js +663 -0
- package/out/src/storage/methods/createAction.js.map +1 -0
- package/out/src/storage/methods/generateChange.d.ts +108 -0
- package/out/src/storage/methods/generateChange.d.ts.map +1 -0
- package/out/src/storage/methods/generateChange.js +422 -0
- package/out/src/storage/methods/generateChange.js.map +1 -0
- package/out/src/storage/methods/getBeefForTransaction.d.ts +22 -0
- package/out/src/storage/methods/getBeefForTransaction.d.ts.map +1 -0
- package/out/src/storage/methods/getBeefForTransaction.js +94 -0
- package/out/src/storage/methods/getBeefForTransaction.js.map +1 -0
- package/out/src/storage/methods/getSyncChunk.d.ts +10 -0
- package/out/src/storage/methods/getSyncChunk.d.ts.map +1 -0
- package/out/src/storage/methods/getSyncChunk.js +271 -0
- package/out/src/storage/methods/getSyncChunk.js.map +1 -0
- package/out/src/storage/methods/internalizeAction.d.ts +38 -0
- package/out/src/storage/methods/internalizeAction.d.ts.map +1 -0
- package/out/src/storage/methods/internalizeAction.js +378 -0
- package/out/src/storage/methods/internalizeAction.js.map +1 -0
- package/out/src/storage/methods/listActions.d.ts +5 -0
- package/out/src/storage/methods/listActions.d.ts.map +1 -0
- package/out/src/storage/methods/listActions.js +174 -0
- package/out/src/storage/methods/listActions.js.map +1 -0
- package/out/src/storage/methods/listCertificates.d.ts +5 -0
- package/out/src/storage/methods/listCertificates.d.ts.map +1 -0
- package/out/src/storage/methods/listCertificates.js +68 -0
- package/out/src/storage/methods/listCertificates.js.map +1 -0
- package/out/src/storage/methods/listOutputs.d.ts +5 -0
- package/out/src/storage/methods/listOutputs.d.ts.map +1 -0
- package/out/src/storage/methods/listOutputs.js +189 -0
- package/out/src/storage/methods/listOutputs.js.map +1 -0
- package/out/src/storage/methods/processAction.d.ts +35 -0
- package/out/src/storage/methods/processAction.d.ts.map +1 -0
- package/out/src/storage/methods/processAction.js +271 -0
- package/out/src/storage/methods/processAction.js.map +1 -0
- package/out/src/storage/methods/purgeData.d.ts +4 -0
- package/out/src/storage/methods/purgeData.d.ts.map +1 -0
- package/out/src/storage/methods/purgeData.js +229 -0
- package/out/src/storage/methods/purgeData.js.map +1 -0
- package/out/src/storage/methods/reviewStatus.d.ts +9 -0
- package/out/src/storage/methods/reviewStatus.d.ts.map +1 -0
- package/out/src/storage/methods/reviewStatus.js +75 -0
- package/out/src/storage/methods/reviewStatus.js.map +1 -0
- package/out/src/storage/remoting/StorageClient.d.ts +56 -0
- package/out/src/storage/remoting/StorageClient.d.ts.map +1 -0
- package/out/src/storage/remoting/StorageClient.js +181 -0
- package/out/src/storage/remoting/StorageClient.js.map +1 -0
- package/out/src/storage/remoting/StorageServer.d.ts +26 -0
- package/out/src/storage/remoting/StorageServer.d.ts.map +1 -0
- package/out/src/storage/remoting/StorageServer.js +144 -0
- package/out/src/storage/remoting/StorageServer.js.map +1 -0
- package/out/src/storage/schema/KnexMigrations.d.ts +39 -0
- package/out/src/storage/schema/KnexMigrations.d.ts.map +1 -0
- package/out/src/storage/schema/KnexMigrations.js +442 -0
- package/out/src/storage/schema/KnexMigrations.js.map +1 -0
- package/out/src/storage/schema/entities/Certificate.d.ts +43 -0
- package/out/src/storage/schema/entities/Certificate.d.ts.map +1 -0
- package/out/src/storage/schema/entities/Certificate.js +162 -0
- package/out/src/storage/schema/entities/Certificate.js.map +1 -0
- package/out/src/storage/schema/entities/CertificateField.d.ts +32 -0
- package/out/src/storage/schema/entities/CertificateField.d.ts.map +1 -0
- package/out/src/storage/schema/entities/CertificateField.js +114 -0
- package/out/src/storage/schema/entities/CertificateField.js.map +1 -0
- package/out/src/storage/schema/entities/Commission.d.ts +37 -0
- package/out/src/storage/schema/entities/Commission.d.ts.map +1 -0
- package/out/src/storage/schema/entities/Commission.js +130 -0
- package/out/src/storage/schema/entities/Commission.js.map +1 -0
- package/out/src/storage/schema/entities/EntityBase.d.ts +105 -0
- package/out/src/storage/schema/entities/EntityBase.d.ts.map +1 -0
- package/out/src/storage/schema/entities/EntityBase.js +100 -0
- package/out/src/storage/schema/entities/EntityBase.js.map +1 -0
- package/out/src/storage/schema/entities/MergeEntity.d.ts +34 -0
- package/out/src/storage/schema/entities/MergeEntity.d.ts.map +1 -0
- package/out/src/storage/schema/entities/MergeEntity.js +57 -0
- package/out/src/storage/schema/entities/MergeEntity.js.map +1 -0
- package/out/src/storage/schema/entities/Output.d.ts +67 -0
- package/out/src/storage/schema/entities/Output.d.ts.map +1 -0
- package/out/src/storage/schema/entities/Output.js +281 -0
- package/out/src/storage/schema/entities/Output.js.map +1 -0
- package/out/src/storage/schema/entities/OutputBasket.d.ts +35 -0
- package/out/src/storage/schema/entities/OutputBasket.d.ts.map +1 -0
- package/out/src/storage/schema/entities/OutputBasket.js +133 -0
- package/out/src/storage/schema/entities/OutputBasket.js.map +1 -0
- package/out/src/storage/schema/entities/OutputTag.d.ts +31 -0
- package/out/src/storage/schema/entities/OutputTag.d.ts.map +1 -0
- package/out/src/storage/schema/entities/OutputTag.js +104 -0
- package/out/src/storage/schema/entities/OutputTag.js.map +1 -0
- package/out/src/storage/schema/entities/OutputTagMap.d.ts +28 -0
- package/out/src/storage/schema/entities/OutputTagMap.d.ts.map +1 -0
- package/out/src/storage/schema/entities/OutputTagMap.js +101 -0
- package/out/src/storage/schema/entities/OutputTagMap.js.map +1 -0
- package/out/src/storage/schema/entities/ProvenTx.d.ts +84 -0
- package/out/src/storage/schema/entities/ProvenTx.d.ts.map +1 -0
- package/out/src/storage/schema/entities/ProvenTx.js +283 -0
- package/out/src/storage/schema/entities/ProvenTx.js.map +1 -0
- package/out/src/storage/schema/entities/ProvenTxReq.d.ts +130 -0
- package/out/src/storage/schema/entities/ProvenTxReq.d.ts.map +1 -0
- package/out/src/storage/schema/entities/ProvenTxReq.js +521 -0
- package/out/src/storage/schema/entities/ProvenTxReq.js.map +1 -0
- package/out/src/storage/schema/entities/SyncState.d.ts +66 -0
- package/out/src/storage/schema/entities/SyncState.d.ts.map +1 -0
- package/out/src/storage/schema/entities/SyncState.js +284 -0
- package/out/src/storage/schema/entities/SyncState.js.map +1 -0
- package/out/src/storage/schema/entities/Transaction.d.ts +67 -0
- package/out/src/storage/schema/entities/Transaction.d.ts.map +1 -0
- package/out/src/storage/schema/entities/Transaction.js +264 -0
- package/out/src/storage/schema/entities/Transaction.js.map +1 -0
- package/out/src/storage/schema/entities/TxLabel.d.ts +31 -0
- package/out/src/storage/schema/entities/TxLabel.d.ts.map +1 -0
- package/out/src/storage/schema/entities/TxLabel.js +104 -0
- package/out/src/storage/schema/entities/TxLabel.js.map +1 -0
- package/out/src/storage/schema/entities/TxLabelMap.d.ts +28 -0
- package/out/src/storage/schema/entities/TxLabelMap.d.ts.map +1 -0
- package/out/src/storage/schema/entities/TxLabelMap.js +103 -0
- package/out/src/storage/schema/entities/TxLabelMap.js.map +1 -0
- package/out/src/storage/schema/entities/User.d.ts +29 -0
- package/out/src/storage/schema/entities/User.d.ts.map +1 -0
- package/out/src/storage/schema/entities/User.js +100 -0
- package/out/src/storage/schema/entities/User.js.map +1 -0
- package/out/src/storage/schema/entities/__tests/CertificateFieldTests.test.d.ts +2 -0
- package/out/src/storage/schema/entities/__tests/CertificateFieldTests.test.d.ts.map +1 -0
- package/out/src/storage/schema/entities/__tests/CertificateFieldTests.test.js +588 -0
- package/out/src/storage/schema/entities/__tests/CertificateFieldTests.test.js.map +1 -0
- package/out/src/storage/schema/entities/__tests/CertificateTests.test.d.ts +2 -0
- package/out/src/storage/schema/entities/__tests/CertificateTests.test.d.ts.map +1 -0
- package/out/src/storage/schema/entities/__tests/CertificateTests.test.js +449 -0
- package/out/src/storage/schema/entities/__tests/CertificateTests.test.js.map +1 -0
- package/out/src/storage/schema/entities/__tests/CommissionTests.test.d.ts +2 -0
- package/out/src/storage/schema/entities/__tests/CommissionTests.test.d.ts.map +1 -0
- package/out/src/storage/schema/entities/__tests/CommissionTests.test.js +602 -0
- package/out/src/storage/schema/entities/__tests/CommissionTests.test.js.map +1 -0
- package/out/src/storage/schema/entities/__tests/OutputBasketTests.test.d.ts +2 -0
- package/out/src/storage/schema/entities/__tests/OutputBasketTests.test.d.ts.map +1 -0
- package/out/src/storage/schema/entities/__tests/OutputBasketTests.test.js +515 -0
- package/out/src/storage/schema/entities/__tests/OutputBasketTests.test.js.map +1 -0
- package/out/src/storage/schema/entities/__tests/OutputTagMapTests.test.d.ts +2 -0
- package/out/src/storage/schema/entities/__tests/OutputTagMapTests.test.d.ts.map +1 -0
- package/out/src/storage/schema/entities/__tests/OutputTagMapTests.test.js +478 -0
- package/out/src/storage/schema/entities/__tests/OutputTagMapTests.test.js.map +1 -0
- package/out/src/storage/schema/entities/__tests/OutputTagTests.test.d.ts +2 -0
- package/out/src/storage/schema/entities/__tests/OutputTagTests.test.d.ts.map +1 -0
- package/out/src/storage/schema/entities/__tests/OutputTagTests.test.js +440 -0
- package/out/src/storage/schema/entities/__tests/OutputTagTests.test.js.map +1 -0
- package/out/src/storage/schema/entities/__tests/OutputTests.test.d.ts +2 -0
- package/out/src/storage/schema/entities/__tests/OutputTests.test.d.ts.map +1 -0
- package/out/src/storage/schema/entities/__tests/OutputTests.test.js +626 -0
- package/out/src/storage/schema/entities/__tests/OutputTests.test.js.map +1 -0
- package/out/src/storage/schema/entities/__tests/ProvenTxReqTests.test.d.ts +2 -0
- package/out/src/storage/schema/entities/__tests/ProvenTxReqTests.test.d.ts.map +1 -0
- package/out/src/storage/schema/entities/__tests/ProvenTxReqTests.test.js +585 -0
- package/out/src/storage/schema/entities/__tests/ProvenTxReqTests.test.js.map +1 -0
- package/out/src/storage/schema/entities/__tests/ProvenTxTests.test.d.ts +2 -0
- package/out/src/storage/schema/entities/__tests/ProvenTxTests.test.d.ts.map +1 -0
- package/out/src/storage/schema/entities/__tests/ProvenTxTests.test.js +628 -0
- package/out/src/storage/schema/entities/__tests/ProvenTxTests.test.js.map +1 -0
- package/out/src/storage/schema/entities/__tests/SyncStateTests.test.d.ts +2 -0
- package/out/src/storage/schema/entities/__tests/SyncStateTests.test.d.ts.map +1 -0
- package/out/src/storage/schema/entities/__tests/SyncStateTests.test.js +307 -0
- package/out/src/storage/schema/entities/__tests/SyncStateTests.test.js.map +1 -0
- package/out/src/storage/schema/entities/__tests/TransactionTests.test.d.ts +2 -0
- package/out/src/storage/schema/entities/__tests/TransactionTests.test.d.ts.map +1 -0
- package/out/src/storage/schema/entities/__tests/TransactionTests.test.js +823 -0
- package/out/src/storage/schema/entities/__tests/TransactionTests.test.js.map +1 -0
- package/out/src/storage/schema/entities/__tests/TxLabelMapTests.test.d.ts +2 -0
- package/out/src/storage/schema/entities/__tests/TxLabelMapTests.test.d.ts.map +1 -0
- package/out/src/storage/schema/entities/__tests/TxLabelMapTests.test.js +442 -0
- package/out/src/storage/schema/entities/__tests/TxLabelMapTests.test.js.map +1 -0
- package/out/src/storage/schema/entities/__tests/TxLabelTests.test.d.ts +2 -0
- package/out/src/storage/schema/entities/__tests/TxLabelTests.test.d.ts.map +1 -0
- package/out/src/storage/schema/entities/__tests/TxLabelTests.test.js +313 -0
- package/out/src/storage/schema/entities/__tests/TxLabelTests.test.js.map +1 -0
- package/out/src/storage/schema/entities/__tests/stampLogTests.test.d.ts +2 -0
- package/out/src/storage/schema/entities/__tests/stampLogTests.test.d.ts.map +1 -0
- package/out/src/storage/schema/entities/__tests/stampLogTests.test.js +81 -0
- package/out/src/storage/schema/entities/__tests/stampLogTests.test.js.map +1 -0
- package/out/src/storage/schema/entities/__tests/usersTests.test.d.ts +2 -0
- package/out/src/storage/schema/entities/__tests/usersTests.test.d.ts.map +1 -0
- package/out/src/storage/schema/entities/__tests/usersTests.test.js +418 -0
- package/out/src/storage/schema/entities/__tests/usersTests.test.js.map +1 -0
- package/out/src/storage/schema/entities/index.d.ts +17 -0
- package/out/src/storage/schema/entities/index.d.ts.map +1 -0
- package/out/src/storage/schema/entities/index.js +33 -0
- package/out/src/storage/schema/entities/index.js.map +1 -0
- package/out/src/storage/schema/tables/Certificate.d.ts +20 -0
- package/out/src/storage/schema/tables/Certificate.d.ts.map +1 -0
- package/out/src/storage/schema/tables/Certificate.js +3 -0
- package/out/src/storage/schema/tables/Certificate.js.map +1 -0
- package/out/src/storage/schema/tables/CertificateField.d.ts +12 -0
- package/out/src/storage/schema/tables/CertificateField.d.ts.map +1 -0
- package/out/src/storage/schema/tables/CertificateField.js +3 -0
- package/out/src/storage/schema/tables/CertificateField.js.map +1 -0
- package/out/src/storage/schema/tables/Commission.d.ts +13 -0
- package/out/src/storage/schema/tables/Commission.d.ts.map +1 -0
- package/out/src/storage/schema/tables/Commission.js +3 -0
- package/out/src/storage/schema/tables/Commission.js.map +1 -0
- package/out/src/storage/schema/tables/MonitorEvent.d.ts +9 -0
- package/out/src/storage/schema/tables/MonitorEvent.d.ts.map +1 -0
- package/out/src/storage/schema/tables/MonitorEvent.js +3 -0
- package/out/src/storage/schema/tables/MonitorEvent.js.map +1 -0
- package/out/src/storage/schema/tables/Output.d.ts +36 -0
- package/out/src/storage/schema/tables/Output.d.ts.map +1 -0
- package/out/src/storage/schema/tables/Output.js +31 -0
- package/out/src/storage/schema/tables/Output.js.map +1 -0
- package/out/src/storage/schema/tables/OutputBasket.d.ts +12 -0
- package/out/src/storage/schema/tables/OutputBasket.d.ts.map +1 -0
- package/out/src/storage/schema/tables/OutputBasket.js +3 -0
- package/out/src/storage/schema/tables/OutputBasket.js.map +1 -0
- package/out/src/storage/schema/tables/OutputTag.d.ts +10 -0
- package/out/src/storage/schema/tables/OutputTag.d.ts.map +1 -0
- package/out/src/storage/schema/tables/OutputTag.js +3 -0
- package/out/src/storage/schema/tables/OutputTag.js.map +1 -0
- package/out/src/storage/schema/tables/OutputTagMap.d.ts +9 -0
- package/out/src/storage/schema/tables/OutputTagMap.d.ts.map +1 -0
- package/out/src/storage/schema/tables/OutputTagMap.js +3 -0
- package/out/src/storage/schema/tables/OutputTagMap.js.map +1 -0
- package/out/src/storage/schema/tables/ProvenTx.d.ts +14 -0
- package/out/src/storage/schema/tables/ProvenTx.d.ts.map +1 -0
- package/out/src/storage/schema/tables/ProvenTx.js +3 -0
- package/out/src/storage/schema/tables/ProvenTx.js.map +1 -0
- package/out/src/storage/schema/tables/ProvenTxReq.d.ts +64 -0
- package/out/src/storage/schema/tables/ProvenTxReq.d.ts.map +1 -0
- package/out/src/storage/schema/tables/ProvenTxReq.js +3 -0
- package/out/src/storage/schema/tables/ProvenTxReq.js.map +1 -0
- package/out/src/storage/schema/tables/Settings.d.ts +17 -0
- package/out/src/storage/schema/tables/Settings.d.ts.map +1 -0
- package/out/src/storage/schema/tables/Settings.js +3 -0
- package/out/src/storage/schema/tables/Settings.js.map +1 -0
- package/out/src/storage/schema/tables/SyncState.d.ts +18 -0
- package/out/src/storage/schema/tables/SyncState.d.ts.map +1 -0
- package/out/src/storage/schema/tables/SyncState.js +3 -0
- package/out/src/storage/schema/tables/SyncState.js.map +1 -0
- package/out/src/storage/schema/tables/Transaction.d.ts +37 -0
- package/out/src/storage/schema/tables/Transaction.d.ts.map +1 -0
- package/out/src/storage/schema/tables/Transaction.js +21 -0
- package/out/src/storage/schema/tables/Transaction.js.map +1 -0
- package/out/src/storage/schema/tables/TxLabel.d.ts +10 -0
- package/out/src/storage/schema/tables/TxLabel.d.ts.map +1 -0
- package/out/src/storage/schema/tables/TxLabel.js +3 -0
- package/out/src/storage/schema/tables/TxLabel.js.map +1 -0
- package/out/src/storage/schema/tables/TxLabelMap.d.ts +9 -0
- package/out/src/storage/schema/tables/TxLabelMap.d.ts.map +1 -0
- package/out/src/storage/schema/tables/TxLabelMap.js +3 -0
- package/out/src/storage/schema/tables/TxLabelMap.js.map +1 -0
- package/out/src/storage/schema/tables/User.d.ts +16 -0
- package/out/src/storage/schema/tables/User.d.ts.map +1 -0
- package/out/src/storage/schema/tables/User.js +3 -0
- package/out/src/storage/schema/tables/User.js.map +1 -0
- package/out/src/storage/schema/tables/index.d.ts +17 -0
- package/out/src/storage/schema/tables/index.d.ts.map +1 -0
- package/out/src/storage/schema/tables/index.js +33 -0
- package/out/src/storage/schema/tables/index.js.map +1 -0
- package/out/src/storage/sync/StorageMySQLDojoReader.d.ts +71 -0
- package/out/src/storage/sync/StorageMySQLDojoReader.d.ts.map +1 -0
- package/out/src/storage/sync/StorageMySQLDojoReader.js +612 -0
- package/out/src/storage/sync/StorageMySQLDojoReader.js.map +1 -0
- package/out/src/storage/sync/index.d.ts +2 -0
- package/out/src/storage/sync/index.d.ts.map +1 -0
- package/out/src/storage/sync/index.js +18 -0
- package/out/src/storage/sync/index.js.map +1 -0
- package/out/src/utility/ScriptTemplateSABPPP.d.ts +25 -0
- package/out/src/utility/ScriptTemplateSABPPP.d.ts.map +1 -0
- package/out/src/utility/ScriptTemplateSABPPP.js +46 -0
- package/out/src/utility/ScriptTemplateSABPPP.js.map +1 -0
- package/out/src/utility/index.all.d.ts +7 -0
- package/out/src/utility/index.all.d.ts.map +1 -0
- package/out/src/utility/index.all.js +23 -0
- package/out/src/utility/index.all.js.map +1 -0
- package/out/src/utility/index.client.d.ts +7 -0
- package/out/src/utility/index.client.d.ts.map +1 -0
- package/out/src/utility/index.client.js +23 -0
- package/out/src/utility/index.client.js.map +1 -0
- package/out/src/utility/parseTxScriptOffsets.d.ts +14 -0
- package/out/src/utility/parseTxScriptOffsets.d.ts.map +1 -0
- package/out/src/utility/parseTxScriptOffsets.js +26 -0
- package/out/src/utility/parseTxScriptOffsets.js.map +1 -0
- package/out/src/utility/stampLog.d.ts +18 -0
- package/out/src/utility/stampLog.d.ts.map +1 -0
- package/out/src/utility/stampLog.js +72 -0
- package/out/src/utility/stampLog.js.map +1 -0
- package/out/src/utility/tscProofToMerklePath.d.ts +8 -0
- package/out/src/utility/tscProofToMerklePath.d.ts.map +1 -0
- package/out/src/utility/tscProofToMerklePath.js +41 -0
- package/out/src/utility/tscProofToMerklePath.js.map +1 -0
- package/out/src/utility/utilityHelpers.buffer.d.ts +18 -0
- package/out/src/utility/utilityHelpers.buffer.d.ts.map +1 -0
- package/out/src/utility/utilityHelpers.buffer.js +45 -0
- package/out/src/utility/utilityHelpers.buffer.js.map +1 -0
- package/out/src/utility/utilityHelpers.d.ts +129 -0
- package/out/src/utility/utilityHelpers.d.ts.map +1 -0
- package/out/src/utility/utilityHelpers.js +268 -0
- package/out/src/utility/utilityHelpers.js.map +1 -0
- package/out/src/utility/utilityHelpers.noBuffer.d.ts +9 -0
- package/out/src/utility/utilityHelpers.noBuffer.d.ts.map +1 -0
- package/out/src/utility/utilityHelpers.noBuffer.js +23 -0
- package/out/src/utility/utilityHelpers.noBuffer.js.map +1 -0
- package/out/test/Wallet/StorageClient/storageClient.man.test.d.ts +2 -0
- package/out/test/Wallet/StorageClient/storageClient.man.test.d.ts.map +1 -0
- package/out/test/Wallet/StorageClient/storageClient.man.test.js +45 -0
- package/out/test/Wallet/StorageClient/storageClient.man.test.js.map +1 -0
- package/out/test/Wallet/action/internalizeAction.a.test.d.ts +2 -0
- package/out/test/Wallet/action/internalizeAction.a.test.d.ts.map +1 -0
- package/out/test/Wallet/action/internalizeAction.a.test.js +243 -0
- package/out/test/Wallet/action/internalizeAction.a.test.js.map +1 -0
- package/out/test/Wallet/certificate/acquireCertificate.test.d.ts +2 -0
- package/out/test/Wallet/certificate/acquireCertificate.test.d.ts.map +1 -0
- package/out/test/Wallet/certificate/acquireCertificate.test.js +213 -0
- package/out/test/Wallet/certificate/acquireCertificate.test.js.map +1 -0
- package/out/test/Wallet/certificate/listCertificates.test.d.ts +2 -0
- package/out/test/Wallet/certificate/listCertificates.test.d.ts.map +1 -0
- package/out/test/Wallet/certificate/listCertificates.test.js +305 -0
- package/out/test/Wallet/certificate/listCertificates.test.js.map +1 -0
- package/out/test/Wallet/get/getHeaderForHeight.test.d.ts +2 -0
- package/out/test/Wallet/get/getHeaderForHeight.test.d.ts.map +1 -0
- package/out/test/Wallet/get/getHeaderForHeight.test.js +68 -0
- package/out/test/Wallet/get/getHeaderForHeight.test.js.map +1 -0
- package/out/test/Wallet/get/getHeight.test.d.ts +2 -0
- package/out/test/Wallet/get/getHeight.test.d.ts.map +1 -0
- package/out/test/Wallet/get/getHeight.test.js +45 -0
- package/out/test/Wallet/get/getHeight.test.js.map +1 -0
- package/out/test/Wallet/get/getKnownTxids.test.d.ts +2 -0
- package/out/test/Wallet/get/getKnownTxids.test.d.ts.map +1 -0
- package/out/test/Wallet/get/getKnownTxids.test.js +73 -0
- package/out/test/Wallet/get/getKnownTxids.test.js.map +1 -0
- package/out/test/Wallet/get/getNetwork.test.d.ts +2 -0
- package/out/test/Wallet/get/getNetwork.test.d.ts.map +1 -0
- package/out/test/Wallet/get/getNetwork.test.js +26 -0
- package/out/test/Wallet/get/getNetwork.test.js.map +1 -0
- package/out/test/Wallet/get/getVersion.test.d.ts +2 -0
- package/out/test/Wallet/get/getVersion.test.d.ts.map +1 -0
- package/out/test/Wallet/get/getVersion.test.js +25 -0
- package/out/test/Wallet/get/getVersion.test.js.map +1 -0
- package/out/test/Wallet/live/walletLive.man.test.d.ts +26 -0
- package/out/test/Wallet/live/walletLive.man.test.d.ts.map +1 -0
- package/out/test/Wallet/live/walletLive.man.test.js +389 -0
- package/out/test/Wallet/live/walletLive.man.test.js.map +1 -0
- package/out/test/Wallet/sync/Wallet.updateWalletLegacyTestData.man.test.d.ts +2 -0
- package/out/test/Wallet/sync/Wallet.updateWalletLegacyTestData.man.test.d.ts.map +1 -0
- package/out/test/Wallet/sync/Wallet.updateWalletLegacyTestData.man.test.js +153 -0
- package/out/test/Wallet/sync/Wallet.updateWalletLegacyTestData.man.test.js.map +1 -0
- package/out/test/checkDB.d.ts +4 -0
- package/out/test/checkDB.d.ts.map +1 -0
- package/out/test/checkDB.js +55 -0
- package/out/test/checkDB.js.map +1 -0
- package/out/test/examples/README.man.test.d.ts +2 -0
- package/out/test/examples/README.man.test.d.ts.map +1 -0
- package/out/test/examples/README.man.test.js +46 -0
- package/out/test/examples/README.man.test.js.map +1 -0
- package/out/test/monitor/Monitor.test.d.ts +2 -0
- package/out/test/monitor/Monitor.test.d.ts.map +1 -0
- package/out/test/monitor/Monitor.test.js +446 -0
- package/out/test/monitor/Monitor.test.js.map +1 -0
- package/out/test/services/Services.test.d.ts +2 -0
- package/out/test/services/Services.test.d.ts.map +1 -0
- package/out/test/services/Services.test.js +128 -0
- package/out/test/services/Services.test.js.map +1 -0
- package/out/test/storage/KnexMigrations.test.d.ts +2 -0
- package/out/test/storage/KnexMigrations.test.d.ts.map +1 -0
- package/out/test/storage/KnexMigrations.test.js +81 -0
- package/out/test/storage/KnexMigrations.test.js.map +1 -0
- package/out/test/storage/StorageMySQLDojoReader.man.test.d.ts +2 -0
- package/out/test/storage/StorageMySQLDojoReader.man.test.d.ts.map +1 -0
- package/out/test/storage/StorageMySQLDojoReader.man.test.js +88 -0
- package/out/test/storage/StorageMySQLDojoReader.man.test.js.map +1 -0
- package/out/test/storage/count.test.d.ts +2 -0
- package/out/test/storage/count.test.d.ts.map +1 -0
- package/out/test/storage/count.test.js +141 -0
- package/out/test/storage/count.test.js.map +1 -0
- package/out/test/storage/find.test.d.ts +2 -0
- package/out/test/storage/find.test.d.ts.map +1 -0
- package/out/test/storage/find.test.js +148 -0
- package/out/test/storage/find.test.js.map +1 -0
- package/out/test/storage/findLegacy.test.d.ts +2 -0
- package/out/test/storage/findLegacy.test.d.ts.map +1 -0
- package/out/test/storage/findLegacy.test.js +52 -0
- package/out/test/storage/findLegacy.test.js.map +1 -0
- package/out/test/storage/insert.test.d.ts +2 -0
- package/out/test/storage/insert.test.d.ts.map +1 -0
- package/out/test/storage/insert.test.js +256 -0
- package/out/test/storage/insert.test.js.map +1 -0
- package/out/test/storage/update.test.d.ts +2 -0
- package/out/test/storage/update.test.d.ts.map +1 -0
- package/out/test/storage/update.test.js +926 -0
- package/out/test/storage/update.test.js.map +1 -0
- package/out/test/storage/update2.test.d.ts +2 -0
- package/out/test/storage/update2.test.d.ts.map +1 -0
- package/out/test/storage/update2.test.js +766 -0
- package/out/test/storage/update2.test.js.map +1 -0
- package/out/test/utils/TestUtilsWalletStorage.d.ts +399 -0
- package/out/test/utils/TestUtilsWalletStorage.d.ts.map +1 -0
- package/out/test/utils/TestUtilsWalletStorage.js +1337 -0
- package/out/test/utils/TestUtilsWalletStorage.js.map +1 -0
- package/out/test/wallet/action/abortAction.test.d.ts +2 -0
- package/out/test/wallet/action/abortAction.test.d.ts.map +1 -0
- package/out/test/wallet/action/abortAction.test.js +44 -0
- package/out/test/wallet/action/abortAction.test.js.map +1 -0
- package/out/test/wallet/action/createAction.test.d.ts +2 -0
- package/out/test/wallet/action/createAction.test.d.ts.map +1 -0
- package/out/test/wallet/action/createAction.test.js +230 -0
- package/out/test/wallet/action/createAction.test.js.map +1 -0
- package/out/test/wallet/action/createActionToGenerateBeefs.man.test.d.ts +2 -0
- package/out/test/wallet/action/createActionToGenerateBeefs.man.test.d.ts.map +1 -0
- package/out/test/wallet/action/createActionToGenerateBeefs.man.test.js +273 -0
- package/out/test/wallet/action/createActionToGenerateBeefs.man.test.js.map +1 -0
- package/out/test/wallet/action/internalizeAction.test.d.ts +2 -0
- package/out/test/wallet/action/internalizeAction.test.d.ts.map +1 -0
- package/out/test/wallet/action/internalizeAction.test.js +603 -0
- package/out/test/wallet/action/internalizeAction.test.js.map +1 -0
- package/out/test/wallet/action/relinquishOutput.test.d.ts +2 -0
- package/out/test/wallet/action/relinquishOutput.test.d.ts.map +1 -0
- package/out/test/wallet/action/relinquishOutput.test.js +31 -0
- package/out/test/wallet/action/relinquishOutput.test.js.map +1 -0
- package/out/test/wallet/construct/Wallet.constructor.test.d.ts +2 -0
- package/out/test/wallet/construct/Wallet.constructor.test.d.ts.map +1 -0
- package/out/test/wallet/construct/Wallet.constructor.test.js +49 -0
- package/out/test/wallet/construct/Wallet.constructor.test.js.map +1 -0
- package/out/test/wallet/list/listActions.test.d.ts +2 -0
- package/out/test/wallet/list/listActions.test.d.ts.map +1 -0
- package/out/test/wallet/list/listActions.test.js +265 -0
- package/out/test/wallet/list/listActions.test.js.map +1 -0
- package/out/test/wallet/list/listActions2.test.d.ts +2 -0
- package/out/test/wallet/list/listActions2.test.d.ts.map +1 -0
- package/out/test/wallet/list/listActions2.test.js +423 -0
- package/out/test/wallet/list/listActions2.test.js.map +1 -0
- package/out/test/wallet/list/listCertificates.test.d.ts +2 -0
- package/out/test/wallet/list/listCertificates.test.d.ts.map +1 -0
- package/out/test/wallet/list/listCertificates.test.js +115 -0
- package/out/test/wallet/list/listCertificates.test.js.map +1 -0
- package/out/test/wallet/list/listOutputs.test.d.ts +2 -0
- package/out/test/wallet/list/listOutputs.test.d.ts.map +1 -0
- package/out/test/wallet/list/listOutputs.test.js +521 -0
- package/out/test/wallet/list/listOutputs.test.js.map +1 -0
- package/out/test/wallet/sync/Wallet.sync.test.d.ts +2 -0
- package/out/test/wallet/sync/Wallet.sync.test.d.ts.map +1 -0
- package/out/test/wallet/sync/Wallet.sync.test.js +142 -0
- package/out/test/wallet/sync/Wallet.sync.test.js.map +1 -0
- package/out/tsconfig.all.tsbuildinfo +1 -0
- package/package.json +63 -0
- package/src/Wallet.ts +771 -0
- package/src/index.all.ts +8 -0
- package/src/index.client.ts +7 -0
- package/src/index.ts +2 -0
- package/src/monitor/Monitor.ts +317 -0
- package/src/monitor/MonitorDaemon.ts +197 -0
- package/src/monitor/README.md +3 -0
- package/src/monitor/__test/MonitorDaemon.man.test.ts +17 -0
- package/src/monitor/tasks/TaskCheckForProofs.ts +235 -0
- package/src/monitor/tasks/TaskClock.ts +35 -0
- package/src/monitor/tasks/TaskFailAbandoned.ts +56 -0
- package/src/monitor/tasks/TaskNewHeader.ts +48 -0
- package/src/monitor/tasks/TaskPurge.ts +69 -0
- package/src/monitor/tasks/TaskReviewStatus.ts +51 -0
- package/src/monitor/tasks/TaskSendWaiting.ts +107 -0
- package/src/monitor/tasks/TaskSyncWhenIdle.ts +26 -0
- package/src/monitor/tasks/WalletMonitorTask.ts +47 -0
- package/src/sdk/CertOps.ts +346 -0
- package/src/sdk/PrivilegedKeyManager.ts +402 -0
- package/src/sdk/README.md +13 -0
- package/src/sdk/StorageSyncReader.ts +155 -0
- package/src/sdk/StorageSyncReaderWriter.ts +263 -0
- package/src/sdk/WERR_errors.ts +152 -0
- package/src/sdk/WalletError.ts +136 -0
- package/src/sdk/WalletServices.interfaces.ts +399 -0
- package/src/sdk/WalletSigner.interfaces.ts +38 -0
- package/src/sdk/WalletStorage.interfaces.ts +416 -0
- package/src/sdk/__test/CertificateLifeCycle.test.ts +194 -0
- package/src/sdk/__test/PrivilegedKeyManager.test.ts +775 -0
- package/src/sdk/index.ts +11 -0
- package/src/sdk/types.ts +115 -0
- package/src/sdk/validationHelpers.ts +1248 -0
- package/src/services/README.md +11 -0
- package/src/services/ServiceCollection.ts +50 -0
- package/src/services/Services.ts +461 -0
- package/src/services/__tests/getMerklePath.test.ts +16 -0
- package/src/services/__tests/getRawTx.test.ts +15 -0
- package/src/services/__tests/postBeef.test.ts +19 -0
- package/src/services/__tests/postBeefToArcTaal.test.ts +487 -0
- package/src/services/__tests/postTxs.test.ts +20 -0
- package/src/services/chaintracker/ChaintracksChainTracker.ts +78 -0
- package/src/services/chaintracker/__tests/ChaintracksChainTracker.test.ts +25 -0
- package/src/services/chaintracker/__tests/ChaintracksServiceClient.test.ts +32 -0
- package/src/services/chaintracker/chaintracks/BlockHeaderApi.ts +123 -0
- package/src/services/chaintracker/chaintracks/ChaintracksServiceClient.ts +160 -0
- package/src/services/chaintracker/chaintracks/index.ts +2 -0
- package/src/services/chaintracker/index.ts +2 -0
- package/src/services/createDefaultWalletServicesOptions.ts +38 -0
- package/src/services/index.ts +1 -0
- package/src/services/providers/arcServices.ts +570 -0
- package/src/services/providers/echangeRates.ts +276 -0
- package/src/services/providers/whatsonchain.ts +170 -0
- package/src/signer/README.md +5 -0
- package/src/signer/WalletSigner.ts +21 -0
- package/src/signer/methods/acquireDirectCertificate.ts +53 -0
- package/src/signer/methods/createAction.ts +364 -0
- package/src/signer/methods/internalizeAction.ts +142 -0
- package/src/signer/methods/proveCertificate.ts +51 -0
- package/src/signer/methods/signAction.ts +121 -0
- package/src/storage/README.md +14 -0
- package/src/storage/StorageKnex.ts +1449 -0
- package/src/storage/StorageProvider.ts +853 -0
- package/src/storage/StorageReader.ts +222 -0
- package/src/storage/StorageReaderWriter.ts +623 -0
- package/src/storage/StorageSyncReader.ts +143 -0
- package/src/storage/WalletStorageManager.ts +532 -0
- package/src/storage/__test/WalletStorageManager.test.ts +292 -0
- package/src/storage/index.all.ts +10 -0
- package/src/storage/index.client.ts +6 -0
- package/src/storage/index.db.ts +0 -0
- package/src/storage/methods/__test/GenerateChange/generateChangeSdk.test.ts +1143 -0
- package/src/storage/methods/__test/GenerateChange/randomValsUsed1.ts +31 -0
- package/src/storage/methods/attemptToPostReqsToNetwork.ts +185 -0
- package/src/storage/methods/createAction.ts +997 -0
- package/src/storage/methods/generateChange.ts +629 -0
- package/src/storage/methods/getBeefForTransaction.ts +143 -0
- package/src/storage/methods/getSyncChunk.ts +330 -0
- package/src/storage/methods/internalizeAction.ts +538 -0
- package/src/storage/methods/listActions.ts +203 -0
- package/src/storage/methods/listCertificates.ts +81 -0
- package/src/storage/methods/listOutputs.ts +219 -0
- package/src/storage/methods/processAction.ts +477 -0
- package/src/storage/methods/purgeData.ts +276 -0
- package/src/storage/methods/reviewStatus.ts +95 -0
- package/src/storage/remoting/StorageClient.ts +306 -0
- package/src/storage/remoting/StorageServer.ts +179 -0
- package/src/storage/schema/KnexMigrations.ts +488 -0
- package/src/storage/schema/entities/Certificate.ts +199 -0
- package/src/storage/schema/entities/CertificateField.ts +157 -0
- package/src/storage/schema/entities/Commission.ts +169 -0
- package/src/storage/schema/entities/EntityBase.ts +214 -0
- package/src/storage/schema/entities/MergeEntity.ts +79 -0
- package/src/storage/schema/entities/Output.ts +323 -0
- package/src/storage/schema/entities/OutputBasket.ts +165 -0
- package/src/storage/schema/entities/OutputTag.ts +138 -0
- package/src/storage/schema/entities/OutputTagMap.ts +146 -0
- package/src/storage/schema/entities/ProvenTx.ts +349 -0
- package/src/storage/schema/entities/ProvenTxReq.ts +646 -0
- package/src/storage/schema/entities/SyncState.ts +429 -0
- package/src/storage/schema/entities/Transaction.ts +334 -0
- package/src/storage/schema/entities/TxLabel.ts +135 -0
- package/src/storage/schema/entities/TxLabelMap.ts +148 -0
- package/src/storage/schema/entities/User.ts +138 -0
- package/src/storage/schema/entities/__tests/CertificateFieldTests.test.ts +663 -0
- package/src/storage/schema/entities/__tests/CertificateTests.test.ts +527 -0
- package/src/storage/schema/entities/__tests/CommissionTests.test.ts +658 -0
- package/src/storage/schema/entities/__tests/OutputBasketTests.test.ts +567 -0
- package/src/storage/schema/entities/__tests/OutputTagMapTests.test.ts +530 -0
- package/src/storage/schema/entities/__tests/OutputTagTests.test.ts +504 -0
- package/src/storage/schema/entities/__tests/OutputTests.test.ts +689 -0
- package/src/storage/schema/entities/__tests/ProvenTxReqTests.test.ts +669 -0
- package/src/storage/schema/entities/__tests/ProvenTxTests.test.ts +700 -0
- package/src/storage/schema/entities/__tests/SyncStateTests.test.ts +376 -0
- package/src/storage/schema/entities/__tests/TransactionTests.test.ts +920 -0
- package/src/storage/schema/entities/__tests/TxLabelMapTests.test.ts +512 -0
- package/src/storage/schema/entities/__tests/TxLabelTests.test.ts +350 -0
- package/src/storage/schema/entities/__tests/stampLogTests.test.ts +97 -0
- package/src/storage/schema/entities/__tests/usersTests.test.ts +485 -0
- package/src/storage/schema/entities/index.ts +16 -0
- package/src/storage/schema/tables/Certificate.ts +21 -0
- package/src/storage/schema/tables/CertificateField.ts +12 -0
- package/src/storage/schema/tables/Commission.ts +13 -0
- package/src/storage/schema/tables/MonitorEvent.ts +9 -0
- package/src/storage/schema/tables/Output.ts +64 -0
- package/src/storage/schema/tables/OutputBasket.ts +12 -0
- package/src/storage/schema/tables/OutputTag.ts +10 -0
- package/src/storage/schema/tables/OutputTagMap.ts +9 -0
- package/src/storage/schema/tables/ProvenTx.ts +14 -0
- package/src/storage/schema/tables/ProvenTxReq.ts +65 -0
- package/src/storage/schema/tables/Settings.ts +17 -0
- package/src/storage/schema/tables/SyncState.ts +18 -0
- package/src/storage/schema/tables/Transaction.ts +54 -0
- package/src/storage/schema/tables/TxLabel.ts +10 -0
- package/src/storage/schema/tables/TxLabelMap.ts +9 -0
- package/src/storage/schema/tables/User.ts +16 -0
- package/src/storage/schema/tables/index.ts +16 -0
- package/src/storage/sync/StorageMySQLDojoReader.ts +771 -0
- package/src/storage/sync/index.ts +1 -0
- package/src/utility/README.md +3 -0
- package/src/utility/ScriptTemplateSABPPP.ts +79 -0
- package/src/utility/index.all.ts +7 -0
- package/src/utility/index.client.ts +7 -0
- package/src/utility/parseTxScriptOffsets.ts +29 -0
- package/src/utility/stampLog.ts +73 -0
- package/src/utility/tscProofToMerklePath.ts +51 -0
- package/src/utility/utilityHelpers.buffer.ts +43 -0
- package/src/utility/utilityHelpers.noBuffer.ts +18 -0
- package/src/utility/utilityHelpers.ts +283 -0
- package/test/Wallet/StorageClient/storageClient.man.test.ts +55 -0
- package/test/Wallet/action/internalizeAction.a.test.ts +301 -0
- package/test/Wallet/certificate/acquireCertificate.test.ts +253 -0
- package/test/Wallet/certificate/listCertificates.test.ts +352 -0
- package/test/Wallet/get/getHeaderForHeight.test.ts +79 -0
- package/test/Wallet/get/getHeight.test.ts +52 -0
- package/test/Wallet/get/getKnownTxids.test.ts +90 -0
- package/test/Wallet/get/getNetwork.test.ts +28 -0
- package/test/Wallet/get/getVersion.test.ts +28 -0
- package/test/Wallet/live/walletLive.man.test.ts +510 -0
- package/test/Wallet/sync/Wallet.updateWalletLegacyTestData.man.test.ts +155 -0
- package/test/checkDB.ts +63 -0
- package/test/checkdb +0 -0
- package/test/examples/README.man.test.ts +53 -0
- package/test/monitor/Monitor.test.ts +536 -0
- package/test/services/Services.test.ts +149 -0
- package/test/storage/KnexMigrations.test.ts +100 -0
- package/test/storage/StorageMySQLDojoReader.man.test.ts +71 -0
- package/test/storage/count.test.ts +193 -0
- package/test/storage/find.test.ts +216 -0
- package/test/storage/findLegacy.test.ts +70 -0
- package/test/storage/insert.test.ts +294 -0
- package/test/storage/update.test.ts +1146 -0
- package/test/storage/update2.test.ts +1017 -0
- package/test/utils/TestUtilsWalletStorage.ts +1923 -0
- package/test/utils/removeFailedFromDatabase.sql +17 -0
- package/test/wallet/action/abortAction.test.ts +55 -0
- package/test/wallet/action/createAction.test.ts +266 -0
- package/test/wallet/action/createActionToGenerateBeefs.man.test.ts +297 -0
- package/test/wallet/action/internalizeAction.test.ts +729 -0
- package/test/wallet/action/relinquishOutput.test.ts +43 -0
- package/test/wallet/construct/Wallet.constructor.test.ts +57 -0
- package/test/wallet/list/listActions.test.ts +282 -0
- package/test/wallet/list/listActions2.test.ts +570 -0
- package/test/wallet/list/listCertificates.test.ts +129 -0
- package/test/wallet/list/listOutputs.test.ts +573 -0
- package/test/wallet/sync/Wallet.sync.test.ts +226 -0
- package/ts2md.json +32 -0
- package/tsconfig.all.json +29 -0
- package/tsconfig.client.json +22 -0
- package/tsconfig.json +14 -0
- package/unlock-migrations.sh +41 -0
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import { PrivateKey, CreateHmacArgs, CreateHmacResult, CreateSignatureArgs, CreateSignatureResult, GetPublicKeyArgs, PubKeyHex, RevealCounterpartyKeyLinkageArgs, RevealCounterpartyKeyLinkageResult, RevealSpecificKeyLinkageArgs, RevealSpecificKeyLinkageResult, VerifyHmacArgs, VerifyHmacResult, VerifySignatureArgs, VerifySignatureResult, WalletDecryptArgs, WalletDecryptResult, WalletEncryptArgs, WalletEncryptResult } from '@bsv/sdk';
|
|
2
|
+
/**
|
|
3
|
+
* PrivilegedKeyManager
|
|
4
|
+
*
|
|
5
|
+
* This class manages a privileged (i.e., very sensitive) private key, obtained from
|
|
6
|
+
* an external function (`keyGetter`), which might be backed by HSMs, secure enclaves,
|
|
7
|
+
* or other secure storage. The manager retains the key in memory only for a limited
|
|
8
|
+
* duration (`retentionPeriod`), uses XOR-based chunk-splitting obfuscation, and
|
|
9
|
+
* includes decoy data to raise the difficulty of discovering the real key in memory.
|
|
10
|
+
*
|
|
11
|
+
* IMPORTANT: While these measures raise the bar for attackers, JavaScript environments
|
|
12
|
+
* do not provide perfect in-memory secrecy.
|
|
13
|
+
*/
|
|
14
|
+
export declare class PrivilegedKeyManager {
|
|
15
|
+
/**
|
|
16
|
+
* Function that will retrieve the PrivateKey from a secure environment,
|
|
17
|
+
* e.g., an HSM or secure enclave. The reason for key usage is passed in
|
|
18
|
+
* to help with user consent, auditing, and access policy checks.
|
|
19
|
+
*/
|
|
20
|
+
private keyGetter;
|
|
21
|
+
/**
|
|
22
|
+
* Time (in ms) for which the obfuscated key remains in memory
|
|
23
|
+
* before being automatically destroyed.
|
|
24
|
+
*/
|
|
25
|
+
private retentionPeriod;
|
|
26
|
+
/**
|
|
27
|
+
* A list of dynamically generated property names used to store
|
|
28
|
+
* real key chunks (XORed with random pads).
|
|
29
|
+
*/
|
|
30
|
+
private chunkPropNames;
|
|
31
|
+
/**
|
|
32
|
+
* A list of dynamically generated property names used to store
|
|
33
|
+
* the random pads that correspond to the real key chunks.
|
|
34
|
+
*/
|
|
35
|
+
private chunkPadPropNames;
|
|
36
|
+
/**
|
|
37
|
+
* A list of decoy property names that will be removed
|
|
38
|
+
* when the real key is destroyed.
|
|
39
|
+
*/
|
|
40
|
+
private decoyPropNamesDestroy;
|
|
41
|
+
/**
|
|
42
|
+
* A list of decoy property names that remain in memory
|
|
43
|
+
* even after the real key is destroyed (just to cause confusion).
|
|
44
|
+
*/
|
|
45
|
+
private decoyPropNamesRemain;
|
|
46
|
+
/**
|
|
47
|
+
* Handle to the timer that will remove the key from memory
|
|
48
|
+
* after the retention period. If the key is refreshed again
|
|
49
|
+
* within that period, the timer is cleared and re-set.
|
|
50
|
+
*/
|
|
51
|
+
private destroyTimer;
|
|
52
|
+
/**
|
|
53
|
+
* Number of chunks to split the 32-byte key into.
|
|
54
|
+
* Adjust to increase or decrease obfuscation complexity.
|
|
55
|
+
*/
|
|
56
|
+
private readonly CHUNK_COUNT;
|
|
57
|
+
/**
|
|
58
|
+
* @param keyGetter - Asynchronous function that retrieves the PrivateKey from a secure environment.
|
|
59
|
+
* @param retentionPeriod - Time in milliseconds to retain the obfuscated key in memory before zeroizing.
|
|
60
|
+
*/
|
|
61
|
+
constructor(keyGetter: (reason: string) => Promise<PrivateKey>, retentionPeriod?: number);
|
|
62
|
+
/**
|
|
63
|
+
* Safely destroys the in-memory obfuscated key material by zeroizing
|
|
64
|
+
* and deleting related fields. Also destroys some (but not all) decoy
|
|
65
|
+
* properties to further confuse an attacker.
|
|
66
|
+
*/
|
|
67
|
+
destroyKey(): void;
|
|
68
|
+
/**
|
|
69
|
+
* Re/sets the destruction timer that removes the key from memory
|
|
70
|
+
* after `retentionPeriod` ms. If a timer is already running, it
|
|
71
|
+
* is cleared and re-set. This ensures the key remains in memory
|
|
72
|
+
* for exactly the desired window after its most recent acquisition.
|
|
73
|
+
*/
|
|
74
|
+
private scheduleKeyDestruction;
|
|
75
|
+
/**
|
|
76
|
+
* XOR-based obfuscation on a per-chunk basis.
|
|
77
|
+
* This function takes two equal-length byte arrays
|
|
78
|
+
* and returns the XOR combination.
|
|
79
|
+
*/
|
|
80
|
+
private xorBytes;
|
|
81
|
+
/**
|
|
82
|
+
* Splits the 32-byte key into `this.CHUNK_COUNT` smaller chunks
|
|
83
|
+
* (mostly equal length; the last chunk picks up leftover bytes
|
|
84
|
+
* if 32 is not evenly divisible).
|
|
85
|
+
*/
|
|
86
|
+
private splitKeyIntoChunks;
|
|
87
|
+
/**
|
|
88
|
+
* Reassembles the chunks from the dynamic properties, XORs them
|
|
89
|
+
* with their corresponding pads, and returns a single 32-byte
|
|
90
|
+
* Uint8Array representing the raw key.
|
|
91
|
+
*/
|
|
92
|
+
private reassembleKeyFromChunks;
|
|
93
|
+
/**
|
|
94
|
+
* Generates a random property name to store key chunks or decoy data.
|
|
95
|
+
*/
|
|
96
|
+
private generateRandomPropName;
|
|
97
|
+
/**
|
|
98
|
+
* Forces a PrivateKey to be represented as exactly 32 bytes, left-padding
|
|
99
|
+
* with zeros if its numeric value has fewer than 32 bytes.
|
|
100
|
+
*/
|
|
101
|
+
private get32ByteRepresentation;
|
|
102
|
+
/**
|
|
103
|
+
* Returns the privileged key needed to perform cryptographic operations.
|
|
104
|
+
* Uses in-memory chunk-based obfuscation if the key was already fetched.
|
|
105
|
+
* Otherwise, it calls out to `keyGetter`, splits the 32-byte representation
|
|
106
|
+
* of the key, XORs each chunk with a random pad, and stores them under
|
|
107
|
+
* dynamic property names. Also populates new decoy properties.
|
|
108
|
+
*
|
|
109
|
+
* @param reason - The reason for why the key is needed, passed to keyGetter.
|
|
110
|
+
* @returns The PrivateKey object needed for cryptographic operations.
|
|
111
|
+
*/
|
|
112
|
+
private getPrivilegedKey;
|
|
113
|
+
getPublicKey(args: GetPublicKeyArgs): Promise<{
|
|
114
|
+
publicKey: PubKeyHex;
|
|
115
|
+
}>;
|
|
116
|
+
revealCounterpartyKeyLinkage(args: RevealCounterpartyKeyLinkageArgs): Promise<RevealCounterpartyKeyLinkageResult>;
|
|
117
|
+
revealSpecificKeyLinkage(args: RevealSpecificKeyLinkageArgs): Promise<RevealSpecificKeyLinkageResult>;
|
|
118
|
+
encrypt(args: WalletEncryptArgs): Promise<WalletEncryptResult>;
|
|
119
|
+
decrypt(args: WalletDecryptArgs): Promise<WalletDecryptResult>;
|
|
120
|
+
createHmac(args: CreateHmacArgs): Promise<CreateHmacResult>;
|
|
121
|
+
verifyHmac(args: VerifyHmacArgs): Promise<VerifyHmacResult>;
|
|
122
|
+
createSignature(args: CreateSignatureArgs): Promise<CreateSignatureResult>;
|
|
123
|
+
verifySignature(args: VerifySignatureArgs): Promise<VerifySignatureResult>;
|
|
124
|
+
}
|
|
125
|
+
//# sourceMappingURL=PrivilegedKeyManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PrivilegedKeyManager.d.ts","sourceRoot":"","sources":["../../../src/sdk/PrivilegedKeyManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,UAAU,EACV,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,gBAAgB,EAEhB,SAAS,EACT,gCAAgC,EAChC,kCAAkC,EAClC,4BAA4B,EAC5B,8BAA8B,EAC9B,cAAc,EACd,gBAAgB,EAChB,mBAAmB,EACnB,qBAAqB,EACrB,iBAAiB,EACjB,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACpB,MAAM,UAAU,CAAA;AAEjB;;;;;;;;;;;GAWG;AACH,qBAAa,oBAAoB;IAC/B;;;;OAIG;IACH,OAAO,CAAC,SAAS,CAAyC;IAE1D;;;OAGG;IACH,OAAO,CAAC,eAAe,CAAQ;IAE/B;;;OAGG;IACH,OAAO,CAAC,cAAc,CAAe;IAErC;;;OAGG;IACH,OAAO,CAAC,iBAAiB,CAAe;IAExC;;;OAGG;IACH,OAAO,CAAC,qBAAqB,CAAe;IAE5C;;;OAGG;IACH,OAAO,CAAC,oBAAoB,CAAe;IAE3C;;;;OAIG;IACH,OAAO,CAAC,YAAY,CAAiB;IAErC;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAI;IAEhC;;;OAGG;gBAED,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,UAAU,CAAC,EAClD,eAAe,SAAU;IAc3B;;;;OAIG;IACH,UAAU,IAAI,IAAI;IAyClB;;;;;OAKG;IACH,OAAO,CAAC,sBAAsB;IAU9B;;;;OAIG;IACH,OAAO,CAAC,QAAQ;IAQhB;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;IAc1B;;;;OAIG;IACH,OAAO,CAAC,uBAAuB;IAiC/B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAM9B;;;OAGG;IACH,OAAO,CAAC,uBAAuB;IAe/B;;;;;;;;;OASG;YACW,gBAAgB;IA4DxB,YAAY,CAChB,IAAI,EAAE,gBAAgB,GACrB,OAAO,CAAC;QAAE,SAAS,EAAE,SAAS,CAAA;KAAE,CAAC;IAM9B,4BAA4B,CAChC,IAAI,EAAE,gCAAgC,GACrC,OAAO,CAAC,kCAAkC,CAAC;IAMxC,wBAAwB,CAC5B,IAAI,EAAE,4BAA4B,GACjC,OAAO,CAAC,8BAA8B,CAAC;IAMpC,OAAO,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAM9D,OAAO,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAM9D,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAM3D,UAAU,CAAC,IAAI,EAAE,cAAc,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAM3D,eAAe,CACnB,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,qBAAqB,CAAC;IAM3B,eAAe,CACnB,IAAI,EAAE,mBAAmB,GACxB,OAAO,CAAC,qBAAqB,CAAC;CAKlC"}
|
|
@@ -0,0 +1,293 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.PrivilegedKeyManager = void 0;
|
|
4
|
+
const sdk_1 = require("@bsv/sdk");
|
|
5
|
+
/**
|
|
6
|
+
* PrivilegedKeyManager
|
|
7
|
+
*
|
|
8
|
+
* This class manages a privileged (i.e., very sensitive) private key, obtained from
|
|
9
|
+
* an external function (`keyGetter`), which might be backed by HSMs, secure enclaves,
|
|
10
|
+
* or other secure storage. The manager retains the key in memory only for a limited
|
|
11
|
+
* duration (`retentionPeriod`), uses XOR-based chunk-splitting obfuscation, and
|
|
12
|
+
* includes decoy data to raise the difficulty of discovering the real key in memory.
|
|
13
|
+
*
|
|
14
|
+
* IMPORTANT: While these measures raise the bar for attackers, JavaScript environments
|
|
15
|
+
* do not provide perfect in-memory secrecy.
|
|
16
|
+
*/
|
|
17
|
+
class PrivilegedKeyManager {
|
|
18
|
+
/**
|
|
19
|
+
* @param keyGetter - Asynchronous function that retrieves the PrivateKey from a secure environment.
|
|
20
|
+
* @param retentionPeriod - Time in milliseconds to retain the obfuscated key in memory before zeroizing.
|
|
21
|
+
*/
|
|
22
|
+
constructor(keyGetter, retentionPeriod = 120000) {
|
|
23
|
+
/**
|
|
24
|
+
* A list of dynamically generated property names used to store
|
|
25
|
+
* real key chunks (XORed with random pads).
|
|
26
|
+
*/
|
|
27
|
+
this.chunkPropNames = [];
|
|
28
|
+
/**
|
|
29
|
+
* A list of dynamically generated property names used to store
|
|
30
|
+
* the random pads that correspond to the real key chunks.
|
|
31
|
+
*/
|
|
32
|
+
this.chunkPadPropNames = [];
|
|
33
|
+
/**
|
|
34
|
+
* A list of decoy property names that will be removed
|
|
35
|
+
* when the real key is destroyed.
|
|
36
|
+
*/
|
|
37
|
+
this.decoyPropNamesDestroy = [];
|
|
38
|
+
/**
|
|
39
|
+
* A list of decoy property names that remain in memory
|
|
40
|
+
* even after the real key is destroyed (just to cause confusion).
|
|
41
|
+
*/
|
|
42
|
+
this.decoyPropNamesRemain = [];
|
|
43
|
+
/**
|
|
44
|
+
* Number of chunks to split the 32-byte key into.
|
|
45
|
+
* Adjust to increase or decrease obfuscation complexity.
|
|
46
|
+
*/
|
|
47
|
+
this.CHUNK_COUNT = 4;
|
|
48
|
+
this.keyGetter = keyGetter;
|
|
49
|
+
this.retentionPeriod = retentionPeriod;
|
|
50
|
+
// Initialize some random decoy properties that always remain:
|
|
51
|
+
for (let i = 0; i < 2; i++) {
|
|
52
|
+
const propName = this.generateRandomPropName();
|
|
53
|
+
this[propName] = Uint8Array.from((0, sdk_1.Random)(16));
|
|
54
|
+
this.decoyPropNamesRemain.push(propName);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Safely destroys the in-memory obfuscated key material by zeroizing
|
|
59
|
+
* and deleting related fields. Also destroys some (but not all) decoy
|
|
60
|
+
* properties to further confuse an attacker.
|
|
61
|
+
*/
|
|
62
|
+
destroyKey() {
|
|
63
|
+
try {
|
|
64
|
+
// Zero out real chunk data
|
|
65
|
+
for (const name of this.chunkPropNames) {
|
|
66
|
+
const data = this[name];
|
|
67
|
+
if (data) {
|
|
68
|
+
data.fill(0);
|
|
69
|
+
}
|
|
70
|
+
delete this[name];
|
|
71
|
+
}
|
|
72
|
+
for (const name of this.chunkPadPropNames) {
|
|
73
|
+
const data = this[name];
|
|
74
|
+
if (data) {
|
|
75
|
+
data.fill(0);
|
|
76
|
+
}
|
|
77
|
+
delete this[name];
|
|
78
|
+
}
|
|
79
|
+
// Destroy some decoys
|
|
80
|
+
for (const name of this.decoyPropNamesDestroy) {
|
|
81
|
+
const data = this[name];
|
|
82
|
+
if (data) {
|
|
83
|
+
data.fill(0);
|
|
84
|
+
}
|
|
85
|
+
delete this[name];
|
|
86
|
+
}
|
|
87
|
+
// Clear arrays of property names
|
|
88
|
+
this.chunkPropNames = [];
|
|
89
|
+
this.chunkPadPropNames = [];
|
|
90
|
+
this.decoyPropNamesDestroy = [];
|
|
91
|
+
}
|
|
92
|
+
catch (_) {
|
|
93
|
+
// Swallow any errors in the destruction process
|
|
94
|
+
}
|
|
95
|
+
finally {
|
|
96
|
+
if (this.destroyTimer) {
|
|
97
|
+
clearTimeout(this.destroyTimer);
|
|
98
|
+
this.destroyTimer = undefined;
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Re/sets the destruction timer that removes the key from memory
|
|
104
|
+
* after `retentionPeriod` ms. If a timer is already running, it
|
|
105
|
+
* is cleared and re-set. This ensures the key remains in memory
|
|
106
|
+
* for exactly the desired window after its most recent acquisition.
|
|
107
|
+
*/
|
|
108
|
+
scheduleKeyDestruction() {
|
|
109
|
+
if (this.destroyTimer) {
|
|
110
|
+
// TODO: Consider a constructor flag to avoid clearing timers for higher security
|
|
111
|
+
clearTimeout(this.destroyTimer);
|
|
112
|
+
}
|
|
113
|
+
this.destroyTimer = setTimeout(() => {
|
|
114
|
+
this.destroyKey();
|
|
115
|
+
}, this.retentionPeriod);
|
|
116
|
+
}
|
|
117
|
+
/**
|
|
118
|
+
* XOR-based obfuscation on a per-chunk basis.
|
|
119
|
+
* This function takes two equal-length byte arrays
|
|
120
|
+
* and returns the XOR combination.
|
|
121
|
+
*/
|
|
122
|
+
xorBytes(a, b) {
|
|
123
|
+
const out = new Uint8Array(a.length);
|
|
124
|
+
for (let i = 0; i < a.length; i++) {
|
|
125
|
+
out[i] = a[i] ^ b[i];
|
|
126
|
+
}
|
|
127
|
+
return out;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Splits the 32-byte key into `this.CHUNK_COUNT` smaller chunks
|
|
131
|
+
* (mostly equal length; the last chunk picks up leftover bytes
|
|
132
|
+
* if 32 is not evenly divisible).
|
|
133
|
+
*/
|
|
134
|
+
splitKeyIntoChunks(keyBytes) {
|
|
135
|
+
const chunkSize = Math.floor(keyBytes.length / this.CHUNK_COUNT);
|
|
136
|
+
const chunks = [];
|
|
137
|
+
let offset = 0;
|
|
138
|
+
for (let i = 0; i < this.CHUNK_COUNT; i++) {
|
|
139
|
+
const size = i === this.CHUNK_COUNT - 1 ? keyBytes.length - offset : chunkSize;
|
|
140
|
+
chunks.push(keyBytes.slice(offset, offset + size));
|
|
141
|
+
offset += size;
|
|
142
|
+
}
|
|
143
|
+
return chunks;
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Reassembles the chunks from the dynamic properties, XORs them
|
|
147
|
+
* with their corresponding pads, and returns a single 32-byte
|
|
148
|
+
* Uint8Array representing the raw key.
|
|
149
|
+
*/
|
|
150
|
+
reassembleKeyFromChunks() {
|
|
151
|
+
try {
|
|
152
|
+
const chunkArrays = [];
|
|
153
|
+
for (let i = 0; i < this.chunkPropNames.length; i++) {
|
|
154
|
+
const chunkEnc = this[this.chunkPropNames[i]];
|
|
155
|
+
const chunkPad = this[this.chunkPadPropNames[i]];
|
|
156
|
+
if (!chunkEnc || !chunkPad || chunkEnc.length !== chunkPad.length) {
|
|
157
|
+
return null;
|
|
158
|
+
}
|
|
159
|
+
const rawChunk = this.xorBytes(chunkEnc, chunkPad);
|
|
160
|
+
chunkArrays.push(rawChunk);
|
|
161
|
+
}
|
|
162
|
+
// Concat them back to a single 32-byte array:
|
|
163
|
+
const totalLength = chunkArrays.reduce((sum, c) => sum + c.length, 0);
|
|
164
|
+
if (totalLength !== 32) {
|
|
165
|
+
// We only handle 32-byte keys
|
|
166
|
+
return null;
|
|
167
|
+
}
|
|
168
|
+
const rawKey = new Uint8Array(totalLength);
|
|
169
|
+
let offset = 0;
|
|
170
|
+
for (const chunk of chunkArrays) {
|
|
171
|
+
rawKey.set(chunk, offset);
|
|
172
|
+
offset += chunk.length;
|
|
173
|
+
// Attempt to zero the ephemeral chunk
|
|
174
|
+
chunk.fill(0);
|
|
175
|
+
}
|
|
176
|
+
return rawKey;
|
|
177
|
+
}
|
|
178
|
+
catch (_) {
|
|
179
|
+
// If any property is missing or type mismatch, we return null
|
|
180
|
+
return null;
|
|
181
|
+
}
|
|
182
|
+
}
|
|
183
|
+
/**
|
|
184
|
+
* Generates a random property name to store key chunks or decoy data.
|
|
185
|
+
*/
|
|
186
|
+
generateRandomPropName() {
|
|
187
|
+
// E.g., 8 random hex characters for the property name
|
|
188
|
+
const randomHex = sdk_1.Utils.toHex((0, sdk_1.Random)(4));
|
|
189
|
+
return `_${randomHex}_${Math.floor(Math.random() * 1e6)}`;
|
|
190
|
+
}
|
|
191
|
+
/**
|
|
192
|
+
* Forces a PrivateKey to be represented as exactly 32 bytes, left-padding
|
|
193
|
+
* with zeros if its numeric value has fewer than 32 bytes.
|
|
194
|
+
*/
|
|
195
|
+
get32ByteRepresentation(privKey) {
|
|
196
|
+
// The internal "toArray()" can be up to 32 bytes, but sometimes fewer
|
|
197
|
+
// if the numeric value has leading zeros.
|
|
198
|
+
const buf = privKey.toArray();
|
|
199
|
+
if (buf.length > 32) {
|
|
200
|
+
throw new Error('PrivilegedKeyManager: Expected a 32-byte key, but got more.');
|
|
201
|
+
}
|
|
202
|
+
// Left-pad with zeros if needed
|
|
203
|
+
const keyBytes = new Uint8Array(32);
|
|
204
|
+
keyBytes.set(buf, 32 - buf.length);
|
|
205
|
+
return keyBytes;
|
|
206
|
+
}
|
|
207
|
+
/**
|
|
208
|
+
* Returns the privileged key needed to perform cryptographic operations.
|
|
209
|
+
* Uses in-memory chunk-based obfuscation if the key was already fetched.
|
|
210
|
+
* Otherwise, it calls out to `keyGetter`, splits the 32-byte representation
|
|
211
|
+
* of the key, XORs each chunk with a random pad, and stores them under
|
|
212
|
+
* dynamic property names. Also populates new decoy properties.
|
|
213
|
+
*
|
|
214
|
+
* @param reason - The reason for why the key is needed, passed to keyGetter.
|
|
215
|
+
* @returns The PrivateKey object needed for cryptographic operations.
|
|
216
|
+
*/
|
|
217
|
+
async getPrivilegedKey(reason) {
|
|
218
|
+
// If we already have chunk properties, try reassemble
|
|
219
|
+
if (this.chunkPropNames.length > 0 && this.chunkPadPropNames.length > 0) {
|
|
220
|
+
const rawKeyBytes = this.reassembleKeyFromChunks();
|
|
221
|
+
if (rawKeyBytes && rawKeyBytes.length === 32) {
|
|
222
|
+
// Convert 32 raw bytes back to a PrivateKey
|
|
223
|
+
// (Leading zeros are preserved, but PrivateKey() will parse it as a big integer.)
|
|
224
|
+
const hexKey = sdk_1.Utils.toHex([...rawKeyBytes]); // 64 hex chars
|
|
225
|
+
rawKeyBytes.fill(0); // Zero ephemeral copy
|
|
226
|
+
this.scheduleKeyDestruction();
|
|
227
|
+
return new sdk_1.PrivateKey(hexKey, 'hex');
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
// Otherwise, fetch a fresh key from the secure environment
|
|
231
|
+
const fetchedKey = await this.keyGetter(reason);
|
|
232
|
+
// Force 32‑byte representation (left-pad if necessary)
|
|
233
|
+
const keyBytes = this.get32ByteRepresentation(fetchedKey);
|
|
234
|
+
// Clean up any old data first (in case we had something stale)
|
|
235
|
+
this.destroyKey();
|
|
236
|
+
// Split the key
|
|
237
|
+
const chunks = this.splitKeyIntoChunks(keyBytes);
|
|
238
|
+
// Store new chunk data under random property names
|
|
239
|
+
for (let i = 0; i < chunks.length; i++) {
|
|
240
|
+
const chunkProp = this.generateRandomPropName();
|
|
241
|
+
const padProp = this.generateRandomPropName();
|
|
242
|
+
this.chunkPropNames.push(chunkProp);
|
|
243
|
+
this.chunkPadPropNames.push(padProp);
|
|
244
|
+
// Generate random pad of the same length as the chunk
|
|
245
|
+
const pad = Uint8Array.from((0, sdk_1.Random)(chunks[i].length));
|
|
246
|
+
// XOR the chunk to obfuscate
|
|
247
|
+
const obf = this.xorBytes(chunks[i], pad);
|
|
248
|
+
this[chunkProp] = obf;
|
|
249
|
+
this[padProp] = pad;
|
|
250
|
+
}
|
|
251
|
+
// Generate some decoy properties that will be destroyed with the key
|
|
252
|
+
for (let i = 0; i < 2; i++) {
|
|
253
|
+
const decoyProp = this.generateRandomPropName();
|
|
254
|
+
this[decoyProp] = Uint8Array.from((0, sdk_1.Random)(32));
|
|
255
|
+
this.decoyPropNamesDestroy.push(decoyProp);
|
|
256
|
+
}
|
|
257
|
+
// Zero out ephemeral original
|
|
258
|
+
keyBytes.fill(0);
|
|
259
|
+
// Schedule destruction
|
|
260
|
+
this.scheduleKeyDestruction();
|
|
261
|
+
// Return the newly fetched key as a normal PrivateKey
|
|
262
|
+
return fetchedKey;
|
|
263
|
+
}
|
|
264
|
+
async getPublicKey(args) {
|
|
265
|
+
return new sdk_1.ProtoWallet(await this.getPrivilegedKey(args.privilegedReason)).getPublicKey(args);
|
|
266
|
+
}
|
|
267
|
+
async revealCounterpartyKeyLinkage(args) {
|
|
268
|
+
return new sdk_1.ProtoWallet(await this.getPrivilegedKey(args.privilegedReason)).revealCounterpartyKeyLinkage(args);
|
|
269
|
+
}
|
|
270
|
+
async revealSpecificKeyLinkage(args) {
|
|
271
|
+
return new sdk_1.ProtoWallet(await this.getPrivilegedKey(args.privilegedReason)).revealSpecificKeyLinkage(args);
|
|
272
|
+
}
|
|
273
|
+
async encrypt(args) {
|
|
274
|
+
return new sdk_1.ProtoWallet(await this.getPrivilegedKey(args.privilegedReason)).encrypt(args);
|
|
275
|
+
}
|
|
276
|
+
async decrypt(args) {
|
|
277
|
+
return new sdk_1.ProtoWallet(await this.getPrivilegedKey(args.privilegedReason)).decrypt(args);
|
|
278
|
+
}
|
|
279
|
+
async createHmac(args) {
|
|
280
|
+
return new sdk_1.ProtoWallet(await this.getPrivilegedKey(args.privilegedReason)).createHmac(args);
|
|
281
|
+
}
|
|
282
|
+
async verifyHmac(args) {
|
|
283
|
+
return new sdk_1.ProtoWallet(await this.getPrivilegedKey(args.privilegedReason)).verifyHmac(args);
|
|
284
|
+
}
|
|
285
|
+
async createSignature(args) {
|
|
286
|
+
return new sdk_1.ProtoWallet(await this.getPrivilegedKey(args.privilegedReason)).createSignature(args);
|
|
287
|
+
}
|
|
288
|
+
async verifySignature(args) {
|
|
289
|
+
return new sdk_1.ProtoWallet(await this.getPrivilegedKey(args.privilegedReason)).verifySignature(args);
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
exports.PrivilegedKeyManager = PrivilegedKeyManager;
|
|
293
|
+
//# sourceMappingURL=PrivilegedKeyManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PrivilegedKeyManager.js","sourceRoot":"","sources":["../../../src/sdk/PrivilegedKeyManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { sdk, table } from '../index.client';
|
|
2
|
+
/**
|
|
3
|
+
* This is the minimal interface required for a WalletStorageProvider to export data to another provider.
|
|
4
|
+
*/
|
|
5
|
+
export interface StorageSyncReader {
|
|
6
|
+
isAvailable(): boolean;
|
|
7
|
+
makeAvailable(): Promise<table.Settings>;
|
|
8
|
+
destroy(): Promise<void>;
|
|
9
|
+
getSettings(): table.Settings;
|
|
10
|
+
findUserByIdentityKey(key: string): Promise<table.User | undefined>;
|
|
11
|
+
findSyncStates(args: sdk.FindSyncStatesArgs): Promise<table.SyncState[]>;
|
|
12
|
+
findCertificateFields(args: sdk.FindCertificateFieldsArgs): Promise<table.CertificateField[]>;
|
|
13
|
+
findCertificates(args: sdk.FindCertificatesArgs): Promise<table.Certificate[]>;
|
|
14
|
+
findCommissions(args: sdk.FindCommissionsArgs): Promise<table.Commission[]>;
|
|
15
|
+
findOutputBaskets(args: sdk.FindOutputBasketsArgs): Promise<table.OutputBasket[]>;
|
|
16
|
+
findOutputs(args: sdk.FindOutputsArgs): Promise<table.Output[]>;
|
|
17
|
+
findOutputTags(args: sdk.FindOutputTagsArgs): Promise<table.OutputTag[]>;
|
|
18
|
+
findTransactions(args: sdk.FindTransactionsArgs): Promise<table.Transaction[]>;
|
|
19
|
+
findTxLabels(args: sdk.FindTxLabelsArgs): Promise<table.TxLabel[]>;
|
|
20
|
+
getProvenTxsForUser(args: sdk.FindForUserSincePagedArgs): Promise<table.ProvenTx[]>;
|
|
21
|
+
getProvenTxReqsForUser(args: sdk.FindForUserSincePagedArgs): Promise<table.ProvenTxReq[]>;
|
|
22
|
+
getTxLabelMapsForUser(args: sdk.FindForUserSincePagedArgs): Promise<table.TxLabelMap[]>;
|
|
23
|
+
getOutputTagMapsForUser(args: sdk.FindForUserSincePagedArgs): Promise<table.OutputTagMap[]>;
|
|
24
|
+
getSyncChunk(args: RequestSyncChunkArgs): Promise<SyncChunk>;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* success: Last sync of this user from this storage was successful.
|
|
28
|
+
*
|
|
29
|
+
* error: Last sync protocol operation for this user to this storage threw and error.
|
|
30
|
+
*
|
|
31
|
+
* identified: Configured sync storage has been identified but not sync'ed.
|
|
32
|
+
*
|
|
33
|
+
* unknown: Sync protocol state is unknown.
|
|
34
|
+
*/
|
|
35
|
+
export type SyncStatus = 'success' | 'error' | 'identified' | 'updated' | 'unknown';
|
|
36
|
+
export type SyncProtocolVersion = '0.1.0';
|
|
37
|
+
export interface RequestSyncChunkArgs {
|
|
38
|
+
/**
|
|
39
|
+
* The storageIdentityKey of the storage supplying the update SyncChunk data.
|
|
40
|
+
*/
|
|
41
|
+
fromStorageIdentityKey: string;
|
|
42
|
+
/**
|
|
43
|
+
* The storageIdentityKey of the storage consuming the update SyncChunk data.
|
|
44
|
+
*/
|
|
45
|
+
toStorageIdentityKey: string;
|
|
46
|
+
/**
|
|
47
|
+
* The identity of whose data is being requested
|
|
48
|
+
*/
|
|
49
|
+
identityKey: string;
|
|
50
|
+
/**
|
|
51
|
+
* The max updated_at time received from the storage service receiving the request.
|
|
52
|
+
* Will be undefiend if this is the first request or if no data was previously sync'ed.
|
|
53
|
+
*
|
|
54
|
+
* `since` must include items if 'updated_at' is greater or equal. Thus, when not undefined, a sync request should always return at least one item already seen.
|
|
55
|
+
*/
|
|
56
|
+
since?: Date;
|
|
57
|
+
/**
|
|
58
|
+
* A rough limit on how large the response should be.
|
|
59
|
+
* The item that exceeds the limit is included and ends adding more items.
|
|
60
|
+
*/
|
|
61
|
+
maxRoughSize: number;
|
|
62
|
+
/**
|
|
63
|
+
* The maximum number of items (records) to be returned.
|
|
64
|
+
*/
|
|
65
|
+
maxItems: number;
|
|
66
|
+
/**
|
|
67
|
+
* For each entity in dependency order, the offset at which to start returning items
|
|
68
|
+
* from `since`.
|
|
69
|
+
*
|
|
70
|
+
* The entity order is:
|
|
71
|
+
* 0 ProvenTxs
|
|
72
|
+
* 1 ProvenTxReqs
|
|
73
|
+
* 2 OutputBaskets
|
|
74
|
+
* 3 TxLabels
|
|
75
|
+
* 4 OutputTags
|
|
76
|
+
* 5 Transactions
|
|
77
|
+
* 6 TxLabelMaps
|
|
78
|
+
* 7 Commissions
|
|
79
|
+
* 8 Outputs
|
|
80
|
+
* 9 OutputTagMaps
|
|
81
|
+
* 10 Certificates
|
|
82
|
+
* 11 CertificateFields
|
|
83
|
+
*/
|
|
84
|
+
offsets: {
|
|
85
|
+
name: string;
|
|
86
|
+
offset: number;
|
|
87
|
+
}[];
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Result received from remote `WalletStorage` in response to a `RequestSyncChunkArgs` request.
|
|
91
|
+
*
|
|
92
|
+
* Each property is undefined if there was no attempt to update it. Typically this is caused by size and count limits on this result.
|
|
93
|
+
*
|
|
94
|
+
* If all properties are empty arrays the sync process has received all available new and updated items.
|
|
95
|
+
*/
|
|
96
|
+
export interface SyncChunk {
|
|
97
|
+
fromStorageIdentityKey: string;
|
|
98
|
+
toStorageIdentityKey: string;
|
|
99
|
+
userIdentityKey: string;
|
|
100
|
+
user?: table.User;
|
|
101
|
+
provenTxs?: table.ProvenTx[];
|
|
102
|
+
provenTxReqs?: table.ProvenTxReq[];
|
|
103
|
+
outputBaskets?: table.OutputBasket[];
|
|
104
|
+
txLabels?: table.TxLabel[];
|
|
105
|
+
outputTags?: table.OutputTag[];
|
|
106
|
+
transactions?: table.Transaction[];
|
|
107
|
+
txLabelMaps?: table.TxLabelMap[];
|
|
108
|
+
commissions?: table.Commission[];
|
|
109
|
+
outputs?: table.Output[];
|
|
110
|
+
outputTagMaps?: table.OutputTagMap[];
|
|
111
|
+
certificates?: table.Certificate[];
|
|
112
|
+
certificateFields?: table.CertificateField[];
|
|
113
|
+
}
|
|
114
|
+
export interface ProcessSyncChunkResult {
|
|
115
|
+
done: boolean;
|
|
116
|
+
maxUpdated_at: Date | undefined;
|
|
117
|
+
updates: number;
|
|
118
|
+
inserts: number;
|
|
119
|
+
error?: sdk.WalletError;
|
|
120
|
+
}
|
|
121
|
+
//# sourceMappingURL=StorageSyncReader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StorageSyncReader.d.ts","sourceRoot":"","sources":["../../../src/sdk/StorageSyncReader.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StorageSyncReader.js","sourceRoot":"","sources":["../../../src/sdk/StorageSyncReader.ts"],"names":[],"mappings":""}
|