@brightchain/brightchain-lib 0.14.0 → 0.16.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/brightchain-lib/BROWSER_COMPAT.md +54 -0
- package/package.json +16 -4
- package/src/lib/blocks/cblBase.d.ts +16 -1
- package/src/lib/blocks/cblBase.d.ts.map +1 -1
- package/src/lib/blocks/cblBase.js +33 -4
- package/src/lib/blocks/cblBase.js.map +1 -1
- package/src/lib/blocks/extendedCbl.d.ts.map +1 -1
- package/src/lib/blocks/extendedCbl.js +2 -1
- package/src/lib/blocks/extendedCbl.js.map +1 -1
- package/src/lib/blocks/handle.d.ts +5 -0
- package/src/lib/blocks/handle.d.ts.map +1 -1
- package/src/lib/blocks/handle.js.map +1 -1
- package/src/lib/blocks/handleTuple.d.ts +9 -1
- package/src/lib/blocks/handleTuple.d.ts.map +1 -1
- package/src/lib/blocks/handleTuple.js +23 -1
- package/src/lib/blocks/handleTuple.js.map +1 -1
- package/src/lib/blocks/index.d.ts +1 -0
- package/src/lib/blocks/index.d.ts.map +1 -1
- package/src/lib/blocks/index.js +1 -0
- package/src/lib/blocks/index.js.map +1 -1
- package/src/lib/blocks/memoryTuple.d.ts +9 -2
- package/src/lib/blocks/memoryTuple.d.ts.map +1 -1
- package/src/lib/blocks/memoryTuple.js +12 -3
- package/src/lib/blocks/memoryTuple.js.map +1 -1
- package/src/lib/blocks/vcbl.d.ts +27 -0
- package/src/lib/blocks/vcbl.d.ts.map +1 -0
- package/src/lib/blocks/vcbl.js +107 -0
- package/src/lib/blocks/vcbl.js.map +1 -0
- package/src/lib/constants.d.ts +28 -1
- package/src/lib/constants.d.ts.map +1 -1
- package/src/lib/constants.js +28 -1
- package/src/lib/constants.js.map +1 -1
- package/src/lib/crypto/index.d.ts +12 -0
- package/src/lib/crypto/index.d.ts.map +1 -0
- package/src/lib/crypto/index.js +23 -0
- package/src/lib/crypto/index.js.map +1 -0
- package/src/lib/crypto/platformCrypto.d.ts +132 -0
- package/src/lib/crypto/platformCrypto.d.ts.map +1 -0
- package/src/lib/crypto/platformCrypto.js +181 -0
- package/src/lib/crypto/platformCrypto.js.map +1 -0
- package/src/lib/enumeration-translations/blockType.d.ts.map +1 -1
- package/src/lib/enumeration-translations/blockType.js +16 -0
- package/src/lib/enumeration-translations/blockType.js.map +1 -1
- package/src/lib/enumerations/blockType.d.ts +12 -0
- package/src/lib/enumerations/blockType.d.ts.map +1 -1
- package/src/lib/enumerations/blockType.js +14 -0
- package/src/lib/enumerations/blockType.js.map +1 -1
- package/src/lib/enumerations/brightChainStrings.d.ts +4 -0
- package/src/lib/enumerations/brightChainStrings.d.ts.map +1 -1
- package/src/lib/enumerations/brightChainStrings.js +4 -0
- package/src/lib/enumerations/brightChainStrings.js.map +1 -1
- package/src/lib/enumerations/cblErrorType.d.ts +2 -1
- package/src/lib/enumerations/cblErrorType.d.ts.map +1 -1
- package/src/lib/enumerations/cblErrorType.js +1 -0
- package/src/lib/enumerations/cblErrorType.js.map +1 -1
- package/src/lib/enumerations/communication.d.ts +57 -0
- package/src/lib/enumerations/communication.d.ts.map +1 -0
- package/src/lib/enumerations/communication.js +89 -0
- package/src/lib/enumerations/communication.js.map +1 -0
- package/src/lib/enumerations/deviceType.d.ts +15 -0
- package/src/lib/enumerations/deviceType.d.ts.map +1 -0
- package/src/lib/enumerations/deviceType.js +19 -0
- package/src/lib/enumerations/deviceType.js.map +1 -0
- package/src/lib/enumerations/handleTupleErrorType.d.ts +2 -1
- package/src/lib/enumerations/handleTupleErrorType.d.ts.map +1 -1
- package/src/lib/enumerations/handleTupleErrorType.js +1 -0
- package/src/lib/enumerations/handleTupleErrorType.js.map +1 -1
- package/src/lib/enumerations/index.d.ts +6 -0
- package/src/lib/enumerations/index.d.ts.map +1 -1
- package/src/lib/enumerations/index.js +11 -0
- package/src/lib/enumerations/index.js.map +1 -1
- package/src/lib/enumerations/paperKeyPurpose.d.ts +15 -0
- package/src/lib/enumerations/paperKeyPurpose.d.ts.map +1 -0
- package/src/lib/enumerations/paperKeyPurpose.js +19 -0
- package/src/lib/enumerations/paperKeyPurpose.js.map +1 -0
- package/src/lib/enumerations/proofPlatform.d.ts +24 -0
- package/src/lib/enumerations/proofPlatform.d.ts.map +1 -0
- package/src/lib/enumerations/proofPlatform.js +28 -0
- package/src/lib/enumerations/proofPlatform.js.map +1 -0
- package/src/lib/enumerations/readConcern.d.ts +22 -0
- package/src/lib/enumerations/readConcern.d.ts.map +1 -0
- package/src/lib/enumerations/readConcern.js +26 -0
- package/src/lib/enumerations/readConcern.js.map +1 -0
- package/src/lib/enumerations/tupleErrorType.d.ts +2 -1
- package/src/lib/enumerations/tupleErrorType.d.ts.map +1 -1
- package/src/lib/enumerations/tupleErrorType.js +1 -0
- package/src/lib/enumerations/tupleErrorType.js.map +1 -1
- package/src/lib/enumerations/verificationStatus.d.ts +17 -0
- package/src/lib/enumerations/verificationStatus.d.ts.map +1 -0
- package/src/lib/enumerations/verificationStatus.js +21 -0
- package/src/lib/enumerations/verificationStatus.js.map +1 -0
- package/src/lib/errors/blockFetchError.d.ts +51 -0
- package/src/lib/errors/blockFetchError.d.ts.map +1 -0
- package/src/lib/errors/blockFetchError.js +63 -0
- package/src/lib/errors/blockFetchError.js.map +1 -0
- package/src/lib/errors/cblError.d.ts.map +1 -1
- package/src/lib/errors/cblError.js +1 -0
- package/src/lib/errors/cblError.js.map +1 -1
- package/src/lib/errors/handleTupleError.d.ts +10 -1
- package/src/lib/errors/handleTupleError.d.ts.map +1 -1
- package/src/lib/errors/handleTupleError.js +10 -1
- package/src/lib/errors/handleTupleError.js.map +1 -1
- package/src/lib/errors/index.d.ts +16 -0
- package/src/lib/errors/index.d.ts.map +1 -1
- package/src/lib/errors/index.js +22 -0
- package/src/lib/errors/index.js.map +1 -1
- package/src/lib/errors/poolDeletionError.d.ts +10 -0
- package/src/lib/errors/poolDeletionError.d.ts.map +1 -0
- package/src/lib/errors/poolDeletionError.js +16 -0
- package/src/lib/errors/poolDeletionError.js.map +1 -0
- package/src/lib/errors/poolDeletionTombstoneError.d.ts +12 -0
- package/src/lib/errors/poolDeletionTombstoneError.d.ts.map +1 -0
- package/src/lib/errors/poolDeletionTombstoneError.js +18 -0
- package/src/lib/errors/poolDeletionTombstoneError.js.map +1 -0
- package/src/lib/errors/tupleError.d.ts.map +1 -1
- package/src/lib/errors/tupleError.js +1 -0
- package/src/lib/errors/tupleError.js.map +1 -1
- package/src/lib/i18n/i18n-setup.d.ts +22 -18
- package/src/lib/i18n/i18n-setup.d.ts.map +1 -1
- package/src/lib/i18n/i18n-setup.js +58 -138
- package/src/lib/i18n/i18n-setup.js.map +1 -1
- package/src/lib/i18n/strings/englishUs.d.ts.map +1 -1
- package/src/lib/i18n/strings/englishUs.js +4 -0
- package/src/lib/i18n/strings/englishUs.js.map +1 -1
- package/src/lib/i18n/strings/french.d.ts.map +1 -1
- package/src/lib/i18n/strings/french.js +4 -0
- package/src/lib/i18n/strings/french.js.map +1 -1
- package/src/lib/i18n/strings/german.d.ts.map +1 -1
- package/src/lib/i18n/strings/german.js +4 -0
- package/src/lib/i18n/strings/german.js.map +1 -1
- package/src/lib/i18n/strings/japanese.d.ts.map +1 -1
- package/src/lib/i18n/strings/japanese.js +4 -0
- package/src/lib/i18n/strings/japanese.js.map +1 -1
- package/src/lib/i18n/strings/mandarin.d.ts.map +1 -1
- package/src/lib/i18n/strings/mandarin.js +4 -0
- package/src/lib/i18n/strings/mandarin.js.map +1 -1
- package/src/lib/i18n/strings/spanish.d.ts.map +1 -1
- package/src/lib/i18n/strings/spanish.js +4 -0
- package/src/lib/i18n/strings/spanish.js.map +1 -1
- package/src/lib/i18n/strings/ukrainian.d.ts.map +1 -1
- package/src/lib/i18n/strings/ukrainian.js +4 -0
- package/src/lib/i18n/strings/ukrainian.js.map +1 -1
- package/src/lib/index.d.ts +4 -0
- package/src/lib/index.d.ts.map +1 -1
- package/src/lib/index.js +4 -0
- package/src/lib/index.js.map +1 -1
- package/src/lib/interfaces/auth/index.d.ts +4 -0
- package/src/lib/interfaces/auth/index.d.ts.map +1 -0
- package/src/lib/interfaces/auth/index.js +8 -0
- package/src/lib/interfaces/auth/index.js.map +1 -0
- package/src/lib/interfaces/auth/nodeAuthenticator.d.ts +19 -0
- package/src/lib/interfaces/auth/nodeAuthenticator.d.ts.map +1 -0
- package/src/lib/interfaces/auth/nodeAuthenticator.js +3 -0
- package/src/lib/interfaces/auth/nodeAuthenticator.js.map +1 -0
- package/src/lib/interfaces/auth/poolAcl.d.ts +65 -0
- package/src/lib/interfaces/auth/poolAcl.d.ts.map +1 -0
- package/src/lib/interfaces/auth/poolAcl.js +52 -0
- package/src/lib/interfaces/auth/poolAcl.js.map +1 -0
- package/src/lib/interfaces/availability/availabilityService.d.ts +5 -3
- package/src/lib/interfaces/availability/availabilityService.d.ts.map +1 -1
- package/src/lib/interfaces/availability/availabilityService.js.map +1 -1
- package/src/lib/interfaces/availability/blockRegistry.d.ts +52 -3
- package/src/lib/interfaces/availability/blockRegistry.d.ts.map +1 -1
- package/src/lib/interfaces/availability/blockRegistry.js +1 -1
- package/src/lib/interfaces/availability/discoveryProtocol.d.ts +81 -3
- package/src/lib/interfaces/availability/discoveryProtocol.d.ts.map +1 -1
- package/src/lib/interfaces/availability/discoveryProtocol.js.map +1 -1
- package/src/lib/interfaces/availability/gossipService.d.ts +110 -6
- package/src/lib/interfaces/availability/gossipService.d.ts.map +1 -1
- package/src/lib/interfaces/availability/gossipService.js +94 -1
- package/src/lib/interfaces/availability/gossipService.js.map +1 -1
- package/src/lib/interfaces/availability/index.d.ts +1 -0
- package/src/lib/interfaces/availability/index.d.ts.map +1 -1
- package/src/lib/interfaces/availability/index.js +1 -0
- package/src/lib/interfaces/availability/index.js.map +1 -1
- package/src/lib/interfaces/availability/locationRecord.d.ts +6 -0
- package/src/lib/interfaces/availability/locationRecord.d.ts.map +1 -1
- package/src/lib/interfaces/availability/locationRecord.js +12 -0
- package/src/lib/interfaces/availability/locationRecord.js.map +1 -1
- package/src/lib/interfaces/availability/poolDeletionTombstone.d.ts +40 -0
- package/src/lib/interfaces/availability/poolDeletionTombstone.d.ts.map +1 -0
- package/src/lib/interfaces/availability/poolDeletionTombstone.js +19 -0
- package/src/lib/interfaces/availability/poolDeletionTombstone.js.map +1 -0
- package/src/lib/interfaces/availability/reconciliationService.d.ts +52 -0
- package/src/lib/interfaces/availability/reconciliationService.d.ts.map +1 -1
- package/src/lib/interfaces/availability/reconciliationService.js.map +1 -1
- package/src/lib/interfaces/blockCapacity.d.ts +9 -0
- package/src/lib/interfaces/blockCapacity.d.ts.map +1 -1
- package/src/lib/interfaces/blockEncryption.d.ts +4 -2
- package/src/lib/interfaces/blockEncryption.d.ts.map +1 -1
- package/src/lib/interfaces/blockFetch/blockFetchTransport.d.ts +26 -0
- package/src/lib/interfaces/blockFetch/blockFetchTransport.d.ts.map +1 -0
- package/src/lib/interfaces/blockFetch/blockFetchTransport.js +12 -0
- package/src/lib/interfaces/blockFetch/blockFetchTransport.js.map +1 -0
- package/src/lib/interfaces/blockFetch/blockFetcher.d.ts +71 -0
- package/src/lib/interfaces/blockFetch/blockFetcher.d.ts.map +1 -0
- package/src/lib/interfaces/blockFetch/blockFetcher.js +22 -0
- package/src/lib/interfaces/blockFetch/blockFetcher.js.map +1 -0
- package/src/lib/interfaces/blockFetch/enrichedQueryResult.d.ts +43 -0
- package/src/lib/interfaces/blockFetch/enrichedQueryResult.d.ts.map +1 -0
- package/src/lib/interfaces/blockFetch/enrichedQueryResult.js +13 -0
- package/src/lib/interfaces/blockFetch/enrichedQueryResult.js.map +1 -0
- package/src/lib/interfaces/blockFetch/fetchQueue.d.ts +70 -0
- package/src/lib/interfaces/blockFetch/fetchQueue.d.ts.map +1 -0
- package/src/lib/interfaces/blockFetch/fetchQueue.js +18 -0
- package/src/lib/interfaces/blockFetch/fetchQueue.js.map +1 -0
- package/src/lib/interfaces/blockFetch/index.d.ts +10 -0
- package/src/lib/interfaces/blockFetch/index.d.ts.map +1 -0
- package/src/lib/interfaces/blockFetch/index.js +13 -0
- package/src/lib/interfaces/blockFetch/index.js.map +1 -0
- package/src/lib/interfaces/blocks/index.d.ts +1 -0
- package/src/lib/interfaces/blocks/index.d.ts.map +1 -1
- package/src/lib/interfaces/blocks/vcbl.d.ts +16 -0
- package/src/lib/interfaces/blocks/vcbl.d.ts.map +1 -0
- package/src/lib/interfaces/blocks/vcbl.js +3 -0
- package/src/lib/interfaces/blocks/vcbl.js.map +1 -0
- package/src/lib/interfaces/brightpass/auditLog.d.ts +25 -0
- package/src/lib/interfaces/brightpass/auditLog.d.ts.map +1 -0
- package/src/lib/interfaces/brightpass/auditLog.js +21 -0
- package/src/lib/interfaces/brightpass/auditLog.js.map +1 -0
- package/src/lib/interfaces/brightpass/emergencyAccess.d.ts +11 -0
- package/src/lib/interfaces/brightpass/emergencyAccess.d.ts.map +1 -0
- package/src/lib/interfaces/brightpass/emergencyAccess.js +3 -0
- package/src/lib/interfaces/brightpass/emergencyAccess.js.map +1 -0
- package/src/lib/interfaces/brightpass/entryPropertyRecord.d.ts +11 -0
- package/src/lib/interfaces/brightpass/entryPropertyRecord.d.ts.map +1 -0
- package/src/lib/interfaces/brightpass/entryPropertyRecord.js +3 -0
- package/src/lib/interfaces/brightpass/entryPropertyRecord.js.map +1 -0
- package/src/lib/interfaces/brightpass/importTypes.d.ts +10 -0
- package/src/lib/interfaces/brightpass/importTypes.d.ts.map +1 -0
- package/src/lib/interfaces/brightpass/importTypes.js +3 -0
- package/src/lib/interfaces/brightpass/importTypes.js.map +1 -0
- package/src/lib/interfaces/brightpass/index.d.ts +7 -0
- package/src/lib/interfaces/brightpass/index.d.ts.map +1 -0
- package/src/lib/interfaces/brightpass/index.js +10 -0
- package/src/lib/interfaces/brightpass/index.js.map +1 -0
- package/src/lib/interfaces/brightpass/vaultEntry.d.ts +48 -0
- package/src/lib/interfaces/brightpass/vaultEntry.d.ts.map +1 -0
- package/src/lib/interfaces/brightpass/vaultEntry.js +3 -0
- package/src/lib/interfaces/brightpass/vaultEntry.js.map +1 -0
- package/src/lib/interfaces/brightpass/vaultMetadata.d.ts +34 -0
- package/src/lib/interfaces/brightpass/vaultMetadata.d.ts.map +1 -0
- package/src/lib/interfaces/brightpass/vaultMetadata.js +3 -0
- package/src/lib/interfaces/brightpass/vaultMetadata.js.map +1 -0
- package/src/lib/interfaces/clusterKeys.d.ts +4 -2
- package/src/lib/interfaces/clusterKeys.d.ts.map +1 -1
- package/src/lib/interfaces/communication.d.ts +173 -0
- package/src/lib/interfaces/communication.d.ts.map +1 -0
- package/src/lib/interfaces/communication.js +17 -0
- package/src/lib/interfaces/communication.js.map +1 -0
- package/src/lib/interfaces/communicationEvents.d.ts +168 -0
- package/src/lib/interfaces/communicationEvents.d.ts.map +1 -0
- package/src/lib/interfaces/communicationEvents.js +12 -0
- package/src/lib/interfaces/communicationEvents.js.map +1 -0
- package/src/lib/interfaces/constants.d.ts +23 -0
- package/src/lib/interfaces/constants.d.ts.map +1 -1
- package/src/lib/interfaces/crypto/ethereumWallet.d.ts +72 -0
- package/src/lib/interfaces/crypto/ethereumWallet.d.ts.map +1 -0
- package/src/lib/interfaces/crypto/ethereumWallet.js +12 -0
- package/src/lib/interfaces/crypto/ethereumWallet.js.map +1 -0
- package/src/lib/interfaces/crypto/gitSignature.d.ts +95 -0
- package/src/lib/interfaces/crypto/gitSignature.d.ts.map +1 -0
- package/src/lib/interfaces/crypto/gitSignature.js +12 -0
- package/src/lib/interfaces/crypto/gitSignature.js.map +1 -0
- package/src/lib/interfaces/crypto/index.d.ts +3 -0
- package/src/lib/interfaces/crypto/index.d.ts.map +1 -0
- package/src/lib/interfaces/crypto/index.js +3 -0
- package/src/lib/interfaces/crypto/index.js.map +1 -0
- package/src/lib/interfaces/dataKeyComponents.d.ts +7 -2
- package/src/lib/interfaces/dataKeyComponents.d.ts.map +1 -1
- package/src/lib/interfaces/encryptedBlockCreator.d.ts +4 -2
- package/src/lib/interfaces/encryptedBlockCreator.d.ts.map +1 -1
- package/src/lib/interfaces/events/communicationEventEmitter.d.ts +65 -0
- package/src/lib/interfaces/events/communicationEventEmitter.d.ts.map +1 -0
- package/src/lib/interfaces/events/communicationEventEmitter.js +60 -0
- package/src/lib/interfaces/events/communicationEventEmitter.js.map +1 -0
- package/src/lib/interfaces/events/index.d.ts +2 -0
- package/src/lib/interfaces/events/index.d.ts.map +1 -0
- package/src/lib/interfaces/events/index.js +5 -0
- package/src/lib/interfaces/events/index.js.map +1 -0
- package/src/lib/interfaces/failableResult.d.ts +8 -0
- package/src/lib/interfaces/failableResult.d.ts.map +1 -0
- package/src/lib/interfaces/failableResult.js +3 -0
- package/src/lib/interfaces/failableResult.js.map +1 -0
- package/src/lib/interfaces/i18nConstants.d.ts +27 -0
- package/src/lib/interfaces/i18nConstants.d.ts.map +1 -0
- package/src/lib/interfaces/i18nConstants.js +3 -0
- package/src/lib/interfaces/i18nConstants.js.map +1 -0
- package/src/lib/interfaces/identity/device.d.ts +59 -0
- package/src/lib/interfaces/identity/device.d.ts.map +1 -0
- package/src/lib/interfaces/identity/device.js +17 -0
- package/src/lib/interfaces/identity/device.js.map +1 -0
- package/src/lib/interfaces/identity/deviceKeyStorage.d.ts +71 -0
- package/src/lib/interfaces/identity/deviceKeyStorage.d.ts.map +1 -0
- package/src/lib/interfaces/identity/deviceKeyStorage.js +16 -0
- package/src/lib/interfaces/identity/deviceKeyStorage.js.map +1 -0
- package/src/lib/interfaces/identity/identityProof.d.ts +90 -0
- package/src/lib/interfaces/identity/identityProof.d.ts.map +1 -0
- package/src/lib/interfaces/identity/identityProof.js +18 -0
- package/src/lib/interfaces/identity/identityProof.js.map +1 -0
- package/src/lib/interfaces/identity/index.d.ts +7 -0
- package/src/lib/interfaces/identity/index.d.ts.map +1 -0
- package/src/lib/interfaces/identity/index.js +3 -0
- package/src/lib/interfaces/identity/index.js.map +1 -0
- package/src/lib/interfaces/identity/paperKey.d.ts +97 -0
- package/src/lib/interfaces/identity/paperKey.d.ts.map +1 -0
- package/src/lib/interfaces/identity/paperKey.js +17 -0
- package/src/lib/interfaces/identity/paperKey.js.map +1 -0
- package/src/lib/interfaces/identity/publicProfile.d.ts +74 -0
- package/src/lib/interfaces/identity/publicProfile.d.ts.map +1 -0
- package/src/lib/interfaces/identity/publicProfile.js +18 -0
- package/src/lib/interfaces/identity/publicProfile.js.map +1 -0
- package/src/lib/interfaces/identity/splitPaperKey.d.ts +73 -0
- package/src/lib/interfaces/identity/splitPaperKey.d.ts.map +1 -0
- package/src/lib/interfaces/identity/splitPaperKey.js +20 -0
- package/src/lib/interfaces/identity/splitPaperKey.js.map +1 -0
- package/src/lib/interfaces/index.d.ts +12 -2
- package/src/lib/interfaces/index.d.ts.map +1 -1
- package/src/lib/interfaces/index.js +12 -0
- package/src/lib/interfaces/index.js.map +1 -1
- package/src/lib/interfaces/network/node.d.ts +4 -2
- package/src/lib/interfaces/network/node.d.ts.map +1 -1
- package/src/lib/interfaces/network/nodeAdvertisement.d.ts +4 -2
- package/src/lib/interfaces/network/nodeAdvertisement.d.ts.map +1 -1
- package/src/lib/interfaces/privateVotingDerivation.d.ts +7 -2
- package/src/lib/interfaces/privateVotingDerivation.d.ts.map +1 -1
- package/src/lib/interfaces/requests/communicationRequests.d.ts +154 -0
- package/src/lib/interfaces/requests/communicationRequests.d.ts.map +1 -0
- package/src/lib/interfaces/requests/communicationRequests.js +10 -0
- package/src/lib/interfaces/requests/communicationRequests.js.map +1 -0
- package/src/lib/interfaces/requests/index.d.ts +2 -0
- package/src/lib/interfaces/requests/index.d.ts.map +1 -0
- package/src/lib/interfaces/requests/index.js +3 -0
- package/src/lib/interfaces/requests/index.js.map +1 -0
- package/src/lib/interfaces/responses/blockDataResponse.d.ts +11 -0
- package/src/lib/interfaces/responses/blockDataResponse.d.ts.map +1 -0
- package/src/lib/interfaces/responses/blockDataResponse.js +3 -0
- package/src/lib/interfaces/responses/blockDataResponse.js.map +1 -0
- package/src/lib/interfaces/responses/communicationResponses.d.ts +82 -0
- package/src/lib/interfaces/responses/communicationResponses.d.ts.map +1 -0
- package/src/lib/interfaces/responses/communicationResponses.js +17 -0
- package/src/lib/interfaces/responses/communicationResponses.js.map +1 -0
- package/src/lib/interfaces/responses/cryptoResponses.d.ts +30 -0
- package/src/lib/interfaces/responses/cryptoResponses.d.ts.map +1 -0
- package/src/lib/interfaces/responses/cryptoResponses.js +12 -0
- package/src/lib/interfaces/responses/cryptoResponses.js.map +1 -0
- package/src/lib/interfaces/responses/deviceResponses.d.ts +26 -0
- package/src/lib/interfaces/responses/deviceResponses.d.ts.map +1 -0
- package/src/lib/interfaces/responses/deviceResponses.js +15 -0
- package/src/lib/interfaces/responses/deviceResponses.js.map +1 -0
- package/src/lib/interfaces/responses/directoryResponses.d.ts +26 -0
- package/src/lib/interfaces/responses/directoryResponses.d.ts.map +1 -0
- package/src/lib/interfaces/responses/directoryResponses.js +12 -0
- package/src/lib/interfaces/responses/directoryResponses.js.map +1 -0
- package/src/lib/interfaces/responses/emailResponses.d.ts +40 -0
- package/src/lib/interfaces/responses/emailResponses.d.ts.map +1 -0
- package/src/lib/interfaces/responses/emailResponses.js +18 -0
- package/src/lib/interfaces/responses/emailResponses.js.map +1 -0
- package/src/lib/interfaces/responses/explodingMessageResponses.d.ts +42 -0
- package/src/lib/interfaces/responses/explodingMessageResponses.d.ts.map +1 -0
- package/src/lib/interfaces/responses/explodingMessageResponses.js +11 -0
- package/src/lib/interfaces/responses/explodingMessageResponses.js.map +1 -0
- package/src/lib/interfaces/responses/identityProofResponses.d.ts +33 -0
- package/src/lib/interfaces/responses/identityProofResponses.d.ts.map +1 -0
- package/src/lib/interfaces/responses/identityProofResponses.js +12 -0
- package/src/lib/interfaces/responses/identityProofResponses.js.map +1 -0
- package/src/lib/interfaces/responses/index.d.ts +3 -1
- package/src/lib/interfaces/responses/index.d.ts.map +1 -1
- package/src/lib/interfaces/sealResults.d.ts +7 -2
- package/src/lib/interfaces/sealResults.d.ts.map +1 -1
- package/src/lib/interfaces/services/fecService.d.ts +7 -5
- package/src/lib/interfaces/services/fecService.d.ts.map +1 -1
- package/src/lib/interfaces/services/fecService.js +2 -0
- package/src/lib/interfaces/services/fecService.js.map +1 -1
- package/src/lib/interfaces/singleEncryptedBlockDetails.d.ts +7 -2
- package/src/lib/interfaces/singleEncryptedBlockDetails.d.ts.map +1 -1
- package/src/lib/interfaces/storage/blockMetadata.d.ts +8 -1
- package/src/lib/interfaces/storage/blockMetadata.d.ts.map +1 -1
- package/src/lib/interfaces/storage/blockMetadata.js +3 -1
- package/src/lib/interfaces/storage/blockMetadata.js.map +1 -1
- package/src/lib/interfaces/storage/cblIndex.d.ts +141 -0
- package/src/lib/interfaces/storage/cblIndex.d.ts.map +1 -0
- package/src/lib/interfaces/storage/cblIndex.js +28 -0
- package/src/lib/interfaces/storage/cblIndex.js.map +1 -0
- package/src/lib/interfaces/storage/clientSession.d.ts +8 -0
- package/src/lib/interfaces/storage/clientSession.d.ts.map +1 -0
- package/src/lib/interfaces/storage/clientSession.js +3 -0
- package/src/lib/interfaces/storage/clientSession.js.map +1 -0
- package/src/lib/interfaces/storage/collection.d.ts +9 -0
- package/src/lib/interfaces/storage/collection.d.ts.map +1 -0
- package/src/lib/interfaces/storage/collection.js +3 -0
- package/src/lib/interfaces/storage/collection.js.map +1 -0
- package/src/lib/interfaces/storage/database.d.ts +9 -0
- package/src/lib/interfaces/storage/database.d.ts.map +1 -0
- package/src/lib/interfaces/storage/database.js +3 -0
- package/src/lib/interfaces/storage/database.js.map +1 -0
- package/src/lib/interfaces/storage/databaseLifecycleHooks.d.ts +8 -0
- package/src/lib/interfaces/storage/databaseLifecycleHooks.d.ts.map +1 -0
- package/src/lib/interfaces/storage/databaseLifecycleHooks.js +3 -0
- package/src/lib/interfaces/storage/databaseLifecycleHooks.js.map +1 -0
- package/src/lib/interfaces/storage/documentTypes.d.ts +8 -0
- package/src/lib/interfaces/storage/documentTypes.d.ts.map +1 -0
- package/src/lib/interfaces/storage/documentTypes.js +3 -0
- package/src/lib/interfaces/storage/documentTypes.js.map +1 -0
- package/src/lib/interfaces/storage/encryptedPool.d.ts +64 -0
- package/src/lib/interfaces/storage/encryptedPool.d.ts.map +1 -0
- package/src/lib/interfaces/storage/encryptedPool.js +26 -0
- package/src/lib/interfaces/storage/encryptedPool.js.map +1 -0
- package/src/lib/interfaces/storage/headRegistry.d.ts +128 -0
- package/src/lib/interfaces/storage/headRegistry.d.ts.map +1 -0
- package/src/lib/interfaces/storage/headRegistry.js +3 -0
- package/src/lib/interfaces/storage/headRegistry.js.map +1 -0
- package/src/lib/interfaces/storage/index.d.ts +14 -0
- package/src/lib/interfaces/storage/index.d.ts.map +1 -1
- package/src/lib/interfaces/storage/index.js +14 -1
- package/src/lib/interfaces/storage/index.js.map +1 -1
- package/src/lib/interfaces/storage/pooledBlockStore.d.ts +163 -0
- package/src/lib/interfaces/storage/pooledBlockStore.d.ts.map +1 -0
- package/src/lib/interfaces/storage/pooledBlockStore.js +77 -0
- package/src/lib/interfaces/storage/pooledBlockStore.js.map +1 -0
- package/src/lib/interfaces/storage/readConcernBlockStore.d.ts +47 -0
- package/src/lib/interfaces/storage/readConcernBlockStore.d.ts.map +1 -0
- package/src/lib/interfaces/storage/readConcernBlockStore.js +29 -0
- package/src/lib/interfaces/storage/readConcernBlockStore.js.map +1 -0
- package/src/lib/interfaces/symmetricEncryptionResults.d.ts +7 -5
- package/src/lib/interfaces/symmetricEncryptionResults.d.ts.map +1 -1
- package/src/lib/services/blockCapacity.service.d.ts.map +1 -1
- package/src/lib/services/blockCapacity.service.js +15 -0
- package/src/lib/services/blockCapacity.service.js.map +1 -1
- package/src/lib/services/brightpass/auditLogger.d.ts +41 -0
- package/src/lib/services/brightpass/auditLogger.d.ts.map +1 -0
- package/src/lib/services/brightpass/auditLogger.js +47 -0
- package/src/lib/services/brightpass/auditLogger.js.map +1 -0
- package/src/lib/services/brightpass/breachDetector.d.ts +68 -0
- package/src/lib/services/brightpass/breachDetector.d.ts.map +1 -0
- package/src/lib/services/brightpass/breachDetector.js +102 -0
- package/src/lib/services/brightpass/breachDetector.js.map +1 -0
- package/src/lib/services/brightpass/importParser.d.ts +105 -0
- package/src/lib/services/brightpass/importParser.d.ts.map +1 -0
- package/src/lib/services/brightpass/importParser.js +380 -0
- package/src/lib/services/brightpass/importParser.js.map +1 -0
- package/src/lib/services/brightpass/index.d.ts +16 -0
- package/src/lib/services/brightpass/index.d.ts.map +1 -0
- package/src/lib/services/brightpass/index.js +19 -0
- package/src/lib/services/brightpass/index.js.map +1 -0
- package/src/lib/services/brightpass/passwordGenerator.d.ts +111 -0
- package/src/lib/services/brightpass/passwordGenerator.d.ts.map +1 -0
- package/src/lib/services/brightpass/passwordGenerator.js +162 -0
- package/src/lib/services/brightpass/passwordGenerator.js.map +1 -0
- package/src/lib/services/brightpass/totpEngine.d.ts +191 -0
- package/src/lib/services/brightpass/totpEngine.d.ts.map +1 -0
- package/src/lib/services/brightpass/totpEngine.js +198 -0
- package/src/lib/services/brightpass/totpEngine.js.map +1 -0
- package/src/lib/services/brightpass/vaultKeyDerivation.d.ts +26 -0
- package/src/lib/services/brightpass/vaultKeyDerivation.d.ts.map +1 -0
- package/src/lib/services/brightpass/vaultKeyDerivation.js +42 -0
- package/src/lib/services/brightpass/vaultKeyDerivation.js.map +1 -0
- package/src/lib/services/brightpass/vaultSerializer.d.ts +14 -0
- package/src/lib/services/brightpass/vaultSerializer.d.ts.map +1 -0
- package/src/lib/services/brightpass/vaultSerializer.js +77 -0
- package/src/lib/services/brightpass/vaultSerializer.js.map +1 -0
- package/src/lib/services/cblService.d.ts +4 -2
- package/src/lib/services/cblService.d.ts.map +1 -1
- package/src/lib/services/cblService.js +8 -4
- package/src/lib/services/cblService.js.map +1 -1
- package/src/lib/services/communication/channelService.d.ts +208 -0
- package/src/lib/services/communication/channelService.d.ts.map +1 -0
- package/src/lib/services/communication/channelService.js +575 -0
- package/src/lib/services/communication/channelService.js.map +1 -0
- package/src/lib/services/communication/conversationService.d.ts +130 -0
- package/src/lib/services/communication/conversationService.d.ts.map +1 -0
- package/src/lib/services/communication/conversationService.js +279 -0
- package/src/lib/services/communication/conversationService.js.map +1 -0
- package/src/lib/services/communication/explodingMessageService.d.ts +168 -0
- package/src/lib/services/communication/explodingMessageService.d.ts.map +1 -0
- package/src/lib/services/communication/explodingMessageService.js +287 -0
- package/src/lib/services/communication/explodingMessageService.js.map +1 -0
- package/src/lib/services/communication/groupService.d.ts +165 -0
- package/src/lib/services/communication/groupService.d.ts.map +1 -0
- package/src/lib/services/communication/groupService.js +437 -0
- package/src/lib/services/communication/groupService.js.map +1 -0
- package/src/lib/services/communication/index.d.ts +16 -0
- package/src/lib/services/communication/index.d.ts.map +1 -0
- package/src/lib/services/communication/index.js +63 -0
- package/src/lib/services/communication/index.js.map +1 -0
- package/src/lib/services/communication/messageOperationsService.d.ts +81 -0
- package/src/lib/services/communication/messageOperationsService.d.ts.map +1 -0
- package/src/lib/services/communication/messageOperationsService.js +162 -0
- package/src/lib/services/communication/messageOperationsService.js.map +1 -0
- package/src/lib/services/communication/permissionService.d.ts +47 -0
- package/src/lib/services/communication/permissionService.d.ts.map +1 -0
- package/src/lib/services/communication/permissionService.js +82 -0
- package/src/lib/services/communication/permissionService.js.map +1 -0
- package/src/lib/services/communication/searchService.d.ts +30 -0
- package/src/lib/services/communication/searchService.d.ts.map +1 -0
- package/src/lib/services/communication/searchService.js +83 -0
- package/src/lib/services/communication/searchService.js.map +1 -0
- package/src/lib/services/crypto/ethereumWalletService.d.ts +159 -0
- package/src/lib/services/crypto/ethereumWalletService.d.ts.map +1 -0
- package/src/lib/services/crypto/ethereumWalletService.js +345 -0
- package/src/lib/services/crypto/ethereumWalletService.js.map +1 -0
- package/src/lib/services/crypto/gitSigningService.d.ts +145 -0
- package/src/lib/services/crypto/gitSigningService.d.ts.map +1 -0
- package/src/lib/services/crypto/gitSigningService.js +291 -0
- package/src/lib/services/crypto/gitSigningService.js.map +1 -0
- package/src/lib/services/crypto/index.d.ts +3 -0
- package/src/lib/services/crypto/index.d.ts.map +1 -0
- package/src/lib/services/crypto/index.js +6 -0
- package/src/lib/services/crypto/index.js.map +1 -0
- package/src/lib/services/identity/deviceProvisioningService.d.ts +146 -0
- package/src/lib/services/identity/deviceProvisioningService.d.ts.map +1 -0
- package/src/lib/services/identity/deviceProvisioningService.js +219 -0
- package/src/lib/services/identity/deviceProvisioningService.js.map +1 -0
- package/src/lib/services/identity/identityProofService.d.ts +139 -0
- package/src/lib/services/identity/identityProofService.d.ts.map +1 -0
- package/src/lib/services/identity/identityProofService.js +245 -0
- package/src/lib/services/identity/identityProofService.js.map +1 -0
- package/src/lib/services/identity/index.d.ts +14 -0
- package/src/lib/services/identity/index.d.ts.map +1 -0
- package/src/lib/services/identity/index.js +17 -0
- package/src/lib/services/identity/index.js.map +1 -0
- package/src/lib/services/identity/memberIdentityProofService.d.ts +179 -0
- package/src/lib/services/identity/memberIdentityProofService.d.ts.map +1 -0
- package/src/lib/services/identity/memberIdentityProofService.js +232 -0
- package/src/lib/services/identity/memberIdentityProofService.js.map +1 -0
- package/src/lib/services/identity/memberPaperKeyService.d.ts +223 -0
- package/src/lib/services/identity/memberPaperKeyService.d.ts.map +1 -0
- package/src/lib/services/identity/memberPaperKeyService.js +279 -0
- package/src/lib/services/identity/memberPaperKeyService.js.map +1 -0
- package/src/lib/services/identity/paperKeyService.d.ts +106 -0
- package/src/lib/services/identity/paperKeyService.d.ts.map +1 -0
- package/src/lib/services/identity/paperKeyService.js +161 -0
- package/src/lib/services/identity/paperKeyService.js.map +1 -0
- package/src/lib/services/identity/publicKeyDirectoryService.d.ts +210 -0
- package/src/lib/services/identity/publicKeyDirectoryService.d.ts.map +1 -0
- package/src/lib/services/identity/publicKeyDirectoryService.js +328 -0
- package/src/lib/services/identity/publicKeyDirectoryService.js.map +1 -0
- package/src/lib/services/identity/splitPaperKeyService.d.ts +92 -0
- package/src/lib/services/identity/splitPaperKeyService.d.ts.map +1 -0
- package/src/lib/services/identity/splitPaperKeyService.js +305 -0
- package/src/lib/services/identity/splitPaperKeyService.js.map +1 -0
- package/src/lib/services/index.d.ts +4 -0
- package/src/lib/services/index.d.ts.map +1 -1
- package/src/lib/services/index.js +7 -0
- package/src/lib/services/index.js.map +1 -1
- package/src/lib/services/messaging/emailMessageService.d.ts.map +1 -1
- package/src/lib/services/messaging/emailMessageService.js +26 -9
- package/src/lib/services/messaging/emailMessageService.js.map +1 -1
- package/src/lib/services/messaging/emailParser.d.ts +18 -0
- package/src/lib/services/messaging/emailParser.d.ts.map +1 -1
- package/src/lib/services/messaging/emailParser.js +18 -0
- package/src/lib/services/messaging/emailParser.js.map +1 -1
- package/src/lib/services/tuple.service.d.ts +27 -2
- package/src/lib/services/tuple.service.d.ts.map +1 -1
- package/src/lib/services/tuple.service.js +62 -20
- package/src/lib/services/tuple.service.js.map +1 -1
- package/src/lib/services/vcblService.d.ts +36 -0
- package/src/lib/services/vcblService.d.ts.map +1 -0
- package/src/lib/services/vcblService.js +326 -0
- package/src/lib/services/vcblService.js.map +1 -0
- package/src/lib/stores/index.d.ts +1 -0
- package/src/lib/stores/index.d.ts.map +1 -1
- package/src/lib/stores/index.js +1 -0
- package/src/lib/stores/index.js.map +1 -1
- package/src/lib/stores/pooledMemoryBlockStore.d.ts +134 -0
- package/src/lib/stores/pooledMemoryBlockStore.d.ts.map +1 -0
- package/src/lib/stores/pooledMemoryBlockStore.js +583 -0
- package/src/lib/stores/pooledMemoryBlockStore.js.map +1 -0
- package/src/lib/types/checksum.d.ts +11 -0
- package/src/lib/types/checksum.d.ts.map +1 -1
- package/src/lib/types/checksum.js +11 -0
- package/src/lib/types/checksum.js.map +1 -1
- package/src/lib/utils/index.d.ts +9 -0
- package/src/lib/utils/index.d.ts.map +1 -1
- package/src/lib/utils/index.js +12 -0
- package/src/lib/utils/index.js.map +1 -1
- package/src/lib/utils/pagination.d.ts +27 -0
- package/src/lib/utils/pagination.d.ts.map +1 -0
- package/src/lib/utils/pagination.js +38 -0
- package/src/lib/utils/pagination.js.map +1 -0
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Device key storage interface for the BrightChain identity system.
|
|
3
|
+
*
|
|
4
|
+
* Provides a platform-independent abstraction for storing and retrieving
|
|
5
|
+
* device keys. Implementations can target Node.js file system, browser
|
|
6
|
+
* IndexedDB, React Native secure storage, or any other platform-specific
|
|
7
|
+
* secure storage mechanism.
|
|
8
|
+
*
|
|
9
|
+
* This interface is generic over TId to support both string-based DTOs
|
|
10
|
+
* (frontend) and GuidV4Buffer (backend) usage patterns.
|
|
11
|
+
*
|
|
12
|
+
* Requirements: 3.4
|
|
13
|
+
*/
|
|
14
|
+
import { IDeviceMetadata } from './device';
|
|
15
|
+
/**
|
|
16
|
+
* Platform-independent interface for secure device key storage.
|
|
17
|
+
*
|
|
18
|
+
* Implementations must ensure that private key material is stored
|
|
19
|
+
* securely (encrypted at rest) and that retrieval requires appropriate
|
|
20
|
+
* authentication or authorization.
|
|
21
|
+
*
|
|
22
|
+
* @example
|
|
23
|
+
* ```typescript
|
|
24
|
+
* // Node.js implementation
|
|
25
|
+
* class NodeDeviceKeyStorage implements IDeviceKeyStorage {
|
|
26
|
+
* async store(deviceMetadata: IDeviceMetadata): Promise<void> {
|
|
27
|
+
* // Write encrypted key data to disk
|
|
28
|
+
* }
|
|
29
|
+
* async retrieve(deviceId: string): Promise<IDeviceMetadata | undefined> {
|
|
30
|
+
* // Read and decrypt key data from disk
|
|
31
|
+
* }
|
|
32
|
+
* async remove(deviceId: string): Promise<boolean> {
|
|
33
|
+
* // Delete key data from disk
|
|
34
|
+
* }
|
|
35
|
+
* async list(memberId: string): Promise<ReadonlyArray<IDeviceMetadata>> {
|
|
36
|
+
* // List all device metadata for a member
|
|
37
|
+
* }
|
|
38
|
+
* }
|
|
39
|
+
* ```
|
|
40
|
+
*/
|
|
41
|
+
export interface IDeviceKeyStorage<TId = string> {
|
|
42
|
+
/**
|
|
43
|
+
* Store device metadata (including public key reference) in secure storage.
|
|
44
|
+
*
|
|
45
|
+
* @param deviceMetadata - The device metadata to persist
|
|
46
|
+
* @throws If storage fails (e.g. disk full, permission denied)
|
|
47
|
+
*/
|
|
48
|
+
store(deviceMetadata: IDeviceMetadata<TId>): Promise<void>;
|
|
49
|
+
/**
|
|
50
|
+
* Retrieve device metadata by device ID.
|
|
51
|
+
*
|
|
52
|
+
* @param deviceId - The unique device identifier
|
|
53
|
+
* @returns The device metadata, or `undefined` if not found
|
|
54
|
+
*/
|
|
55
|
+
retrieve(deviceId: TId): Promise<IDeviceMetadata<TId> | undefined>;
|
|
56
|
+
/**
|
|
57
|
+
* Remove device metadata from storage.
|
|
58
|
+
*
|
|
59
|
+
* @param deviceId - The unique device identifier to remove
|
|
60
|
+
* @returns `true` if the device was found and removed, `false` otherwise
|
|
61
|
+
*/
|
|
62
|
+
remove(deviceId: TId): Promise<boolean>;
|
|
63
|
+
/**
|
|
64
|
+
* List all stored device metadata for a given member.
|
|
65
|
+
*
|
|
66
|
+
* @param memberId - The member whose devices to list
|
|
67
|
+
* @returns Array of device metadata records
|
|
68
|
+
*/
|
|
69
|
+
list(memberId: TId): Promise<ReadonlyArray<IDeviceMetadata<TId>>>;
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=deviceKeyStorage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deviceKeyStorage.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/identity/deviceKeyStorage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,UAAU,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,WAAW,iBAAiB,CAAC,GAAG,GAAG,MAAM;IAC7C;;;;;OAKG;IACH,KAAK,CAAC,cAAc,EAAE,eAAe,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE3D;;;;;OAKG;IACH,QAAQ,CAAC,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,GAAG,SAAS,CAAC,CAAC;IAEnE;;;;;OAKG;IACH,MAAM,CAAC,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAExC;;;;;OAKG;IACH,IAAI,CAAC,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,aAAa,CAAC,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACnE"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Device key storage interface for the BrightChain identity system.
|
|
4
|
+
*
|
|
5
|
+
* Provides a platform-independent abstraction for storing and retrieving
|
|
6
|
+
* device keys. Implementations can target Node.js file system, browser
|
|
7
|
+
* IndexedDB, React Native secure storage, or any other platform-specific
|
|
8
|
+
* secure storage mechanism.
|
|
9
|
+
*
|
|
10
|
+
* This interface is generic over TId to support both string-based DTOs
|
|
11
|
+
* (frontend) and GuidV4Buffer (backend) usage patterns.
|
|
12
|
+
*
|
|
13
|
+
* Requirements: 3.4
|
|
14
|
+
*/
|
|
15
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
16
|
+
//# sourceMappingURL=deviceKeyStorage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"deviceKeyStorage.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/identity/deviceKeyStorage.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;GAYG"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Identity proof interfaces for the BrightChain identity system.
|
|
3
|
+
*
|
|
4
|
+
* Identity proofs cryptographically link a BrightChain member to an
|
|
5
|
+
* external platform account (e.g. Twitter, GitHub, a personal website,
|
|
6
|
+
* or a blockchain address). Each proof contains a signed statement
|
|
7
|
+
* that can be independently verified by anyone with the member's
|
|
8
|
+
* public key.
|
|
9
|
+
*
|
|
10
|
+
* All data interfaces are generic over TId so the same interface
|
|
11
|
+
* can serve as a DTO for React clients (string) and as the concrete
|
|
12
|
+
* type used inside Node services (GuidV4Buffer / Uint8Array).
|
|
13
|
+
*
|
|
14
|
+
* Requirements: 4.5
|
|
15
|
+
*/
|
|
16
|
+
import { ProofPlatform } from '../../enumerations/proofPlatform';
|
|
17
|
+
import { VerificationStatus } from '../../enumerations/verificationStatus';
|
|
18
|
+
/**
|
|
19
|
+
* Metadata and cryptographic data for a single identity proof.
|
|
20
|
+
*
|
|
21
|
+
* @remarks
|
|
22
|
+
* An identity proof is created when a member signs a statement claiming
|
|
23
|
+
* ownership of an external account. The signed statement is posted
|
|
24
|
+
* publicly on the target platform, and the proof URL points to that
|
|
25
|
+
* posting. The system periodically re-verifies proofs by fetching the
|
|
26
|
+
* URL and checking that the signed statement is still present
|
|
27
|
+
* (Requirement 4.10).
|
|
28
|
+
*
|
|
29
|
+
* @example
|
|
30
|
+
* ```typescript
|
|
31
|
+
* const proof: IIdentityProof = {
|
|
32
|
+
* id: 'proof-abc-123',
|
|
33
|
+
* memberId: 'member-xyz',
|
|
34
|
+
* platform: ProofPlatform.GITHUB,
|
|
35
|
+
* username: 'octocat',
|
|
36
|
+
* proofUrl: 'https://gist.github.com/octocat/abc123',
|
|
37
|
+
* signedStatement: 'I am octocat on github. My BrightChain ID is member-xyz. Timestamp: 2024-01-01T00:00:00.000Z',
|
|
38
|
+
* signature: '304402...',
|
|
39
|
+
* createdAt: new Date(),
|
|
40
|
+
* verifiedAt: new Date(),
|
|
41
|
+
* verificationStatus: VerificationStatus.VERIFIED,
|
|
42
|
+
* };
|
|
43
|
+
* ```
|
|
44
|
+
*/
|
|
45
|
+
export interface IIdentityProof<TId = string> {
|
|
46
|
+
/** Unique identifier for this identity proof record */
|
|
47
|
+
id: TId;
|
|
48
|
+
/** Identifier of the member who created this proof */
|
|
49
|
+
memberId: TId;
|
|
50
|
+
/** The external platform this proof targets */
|
|
51
|
+
platform: ProofPlatform;
|
|
52
|
+
/** The member's username on the external platform */
|
|
53
|
+
username: string;
|
|
54
|
+
/**
|
|
55
|
+
* URL where the signed statement has been posted publicly.
|
|
56
|
+
* @remarks Empty string until the member provides the URL after posting.
|
|
57
|
+
*/
|
|
58
|
+
proofUrl: string;
|
|
59
|
+
/**
|
|
60
|
+
* The plaintext statement that was signed.
|
|
61
|
+
* @remarks Format: "I am {username} on {platform}. My BrightChain ID is {memberId}. Timestamp: {ISO8601}"
|
|
62
|
+
* per Requirement 4.8.
|
|
63
|
+
*/
|
|
64
|
+
signedStatement: string;
|
|
65
|
+
/**
|
|
66
|
+
* ECDSA signature of the signed statement (hex-encoded).
|
|
67
|
+
* @remarks Produced using the member's SECP256k1 private key per Requirement 4.3.
|
|
68
|
+
*/
|
|
69
|
+
signature: string;
|
|
70
|
+
/** Timestamp when the proof was created */
|
|
71
|
+
createdAt: Date;
|
|
72
|
+
/**
|
|
73
|
+
* Timestamp when the proof was last successfully verified.
|
|
74
|
+
* @remarks Set when the proof URL is fetched and the signed statement is found.
|
|
75
|
+
*/
|
|
76
|
+
verifiedAt?: Date;
|
|
77
|
+
/**
|
|
78
|
+
* Timestamp when the proof was revoked by the member.
|
|
79
|
+
* @remarks Once revoked, the proof is no longer considered valid.
|
|
80
|
+
*/
|
|
81
|
+
revokedAt?: Date;
|
|
82
|
+
/**
|
|
83
|
+
* Timestamp when the proof URL was last checked for validity.
|
|
84
|
+
* @remarks Updated by the periodic re-verification process (Requirement 4.10).
|
|
85
|
+
*/
|
|
86
|
+
lastCheckedAt?: Date;
|
|
87
|
+
/** Current verification lifecycle state of this proof */
|
|
88
|
+
verificationStatus: VerificationStatus;
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=identityProof.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identityProof.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/identity/identityProof.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAE3E;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,WAAW,cAAc,CAAC,GAAG,GAAG,MAAM;IAC1C,uDAAuD;IACvD,EAAE,EAAE,GAAG,CAAC;IAER,sDAAsD;IACtD,QAAQ,EAAE,GAAG,CAAC;IAEd,+CAA+C;IAC/C,QAAQ,EAAE,aAAa,CAAC;IAExB,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;;OAIG;IACH,eAAe,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB,2CAA2C;IAC3C,SAAS,EAAE,IAAI,CAAC;IAEhB;;;OAGG;IACH,UAAU,CAAC,EAAE,IAAI,CAAC;IAElB;;;OAGG;IACH,SAAS,CAAC,EAAE,IAAI,CAAC;IAEjB;;;OAGG;IACH,aAAa,CAAC,EAAE,IAAI,CAAC;IAErB,yDAAyD;IACzD,kBAAkB,EAAE,kBAAkB,CAAC;CACxC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Identity proof interfaces for the BrightChain identity system.
|
|
4
|
+
*
|
|
5
|
+
* Identity proofs cryptographically link a BrightChain member to an
|
|
6
|
+
* external platform account (e.g. Twitter, GitHub, a personal website,
|
|
7
|
+
* or a blockchain address). Each proof contains a signed statement
|
|
8
|
+
* that can be independently verified by anyone with the member's
|
|
9
|
+
* public key.
|
|
10
|
+
*
|
|
11
|
+
* All data interfaces are generic over TId so the same interface
|
|
12
|
+
* can serve as a DTO for React clients (string) and as the concrete
|
|
13
|
+
* type used inside Node services (GuidV4Buffer / Uint8Array).
|
|
14
|
+
*
|
|
15
|
+
* Requirements: 4.5
|
|
16
|
+
*/
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
//# sourceMappingURL=identityProof.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"identityProof.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/identity/identityProof.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/identity/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,UAAU,CAAC;AAC9B,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/identity/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Paper key interfaces for the BrightChain identity system.
|
|
3
|
+
*
|
|
4
|
+
* Paper keys are 24-word BIP39 mnemonics used for account backup,
|
|
5
|
+
* device provisioning, and recovery. These interfaces define the
|
|
6
|
+
* metadata tracked for each paper key and the printable template
|
|
7
|
+
* generated for secure offline storage.
|
|
8
|
+
*
|
|
9
|
+
* All data interfaces are generic over TId so the same interface
|
|
10
|
+
* can serve as a DTO for React clients (string) and as the concrete
|
|
11
|
+
* type used inside Node services (GuidV4Buffer / Uint8Array).
|
|
12
|
+
*
|
|
13
|
+
* Requirements: 1.4, 1.5
|
|
14
|
+
*/
|
|
15
|
+
import { PaperKeyPurpose } from '../../enumerations/paperKeyPurpose';
|
|
16
|
+
/**
|
|
17
|
+
* Metadata tracked for each paper key throughout its lifecycle.
|
|
18
|
+
*
|
|
19
|
+
* @remarks
|
|
20
|
+
* Every generated paper key has an associated metadata record that
|
|
21
|
+
* tracks creation, usage, revocation, and purpose. This enables
|
|
22
|
+
* audit logging and lifecycle management per Requirements 1.5, 1.6, 1.7.
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* ```typescript
|
|
26
|
+
* const metadata: IPaperKeyMetadata = {
|
|
27
|
+
* id: 'pk-abc-123',
|
|
28
|
+
* createdAt: new Date(),
|
|
29
|
+
* purpose: PaperKeyPurpose.BACKUP,
|
|
30
|
+
* };
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
export interface IPaperKeyMetadata<TId = string> {
|
|
34
|
+
/** Unique identifier for this paper key record */
|
|
35
|
+
id: TId;
|
|
36
|
+
/** Timestamp when the paper key was generated */
|
|
37
|
+
createdAt: Date;
|
|
38
|
+
/**
|
|
39
|
+
* Timestamp when the paper key was used (e.g. for device provisioning)
|
|
40
|
+
* @remarks Set by markPaperKeyUsed() after successful use
|
|
41
|
+
*/
|
|
42
|
+
usedAt?: Date;
|
|
43
|
+
/**
|
|
44
|
+
* Timestamp when the paper key was revoked
|
|
45
|
+
* @remarks Once revoked, the paper key can no longer be used for recovery
|
|
46
|
+
*/
|
|
47
|
+
revokedAt?: Date;
|
|
48
|
+
/** The intended purpose of this paper key */
|
|
49
|
+
purpose: PaperKeyPurpose;
|
|
50
|
+
/**
|
|
51
|
+
* Identifier of the device provisioned with this paper key
|
|
52
|
+
* @remarks Only set when purpose is DEVICE_PROVISIONING
|
|
53
|
+
*/
|
|
54
|
+
deviceId?: TId;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* Printable paper key template for secure offline storage.
|
|
58
|
+
*
|
|
59
|
+
* @remarks
|
|
60
|
+
* Generated by the Paper Key Service, this template contains everything
|
|
61
|
+
* needed to produce a physical backup: the mnemonic words, a QR code
|
|
62
|
+
* for mobile scanning, and security warnings per Requirements 1.4, 1.8, 1.10.
|
|
63
|
+
*
|
|
64
|
+
* The template is intended to be rendered once and printed—never stored
|
|
65
|
+
* digitally after generation.
|
|
66
|
+
*
|
|
67
|
+
* @example
|
|
68
|
+
* ```typescript
|
|
69
|
+
* const template: IPaperKeyTemplate = {
|
|
70
|
+
* words: ['abandon', 'ability', ...], // 24 words
|
|
71
|
+
* qrCode: 'data:image/png;base64,...',
|
|
72
|
+
* createdAt: new Date(),
|
|
73
|
+
* memberId: 'member-xyz',
|
|
74
|
+
* instructions: 'Store this paper key in a secure location.',
|
|
75
|
+
* warnings: [
|
|
76
|
+
* 'Anyone with this paper key can access your account',
|
|
77
|
+
* 'Do not store digitally or photograph',
|
|
78
|
+
* 'Consider splitting among trusted parties',
|
|
79
|
+
* ],
|
|
80
|
+
* };
|
|
81
|
+
* ```
|
|
82
|
+
*/
|
|
83
|
+
export interface IPaperKeyTemplate<TId = string> {
|
|
84
|
+
/** The 24 BIP39 mnemonic words comprising the paper key */
|
|
85
|
+
words: string[];
|
|
86
|
+
/** QR code encoding the mnemonic, as a data URL for printing/scanning */
|
|
87
|
+
qrCode: string;
|
|
88
|
+
/** Timestamp when this template was generated */
|
|
89
|
+
createdAt: Date;
|
|
90
|
+
/** Identifier of the member this paper key belongs to */
|
|
91
|
+
memberId: TId;
|
|
92
|
+
/** Human-readable instructions for storing the paper key */
|
|
93
|
+
instructions: string;
|
|
94
|
+
/** Security warnings to display on the printed template */
|
|
95
|
+
warnings: string[];
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=paperKey.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paperKey.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/identity/paperKey.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAErE;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,iBAAiB,CAAC,GAAG,GAAG,MAAM;IAC7C,kDAAkD;IAClD,EAAE,EAAE,GAAG,CAAC;IAER,iDAAiD;IACjD,SAAS,EAAE,IAAI,CAAC;IAEhB;;;OAGG;IACH,MAAM,CAAC,EAAE,IAAI,CAAC;IAEd;;;OAGG;IACH,SAAS,CAAC,EAAE,IAAI,CAAC;IAEjB,6CAA6C;IAC7C,OAAO,EAAE,eAAe,CAAC;IAEzB;;;OAGG;IACH,QAAQ,CAAC,EAAE,GAAG,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,WAAW,iBAAiB,CAAC,GAAG,GAAG,MAAM;IAC7C,2DAA2D;IAC3D,KAAK,EAAE,MAAM,EAAE,CAAC;IAEhB,yEAAyE;IACzE,MAAM,EAAE,MAAM,CAAC;IAEf,iDAAiD;IACjD,SAAS,EAAE,IAAI,CAAC;IAEhB,yDAAyD;IACzD,QAAQ,EAAE,GAAG,CAAC;IAEd,4DAA4D;IAC5D,YAAY,EAAE,MAAM,CAAC;IAErB,2DAA2D;IAC3D,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Paper key interfaces for the BrightChain identity system.
|
|
4
|
+
*
|
|
5
|
+
* Paper keys are 24-word BIP39 mnemonics used for account backup,
|
|
6
|
+
* device provisioning, and recovery. These interfaces define the
|
|
7
|
+
* metadata tracked for each paper key and the printable template
|
|
8
|
+
* generated for secure offline storage.
|
|
9
|
+
*
|
|
10
|
+
* All data interfaces are generic over TId so the same interface
|
|
11
|
+
* can serve as a DTO for React clients (string) and as the concrete
|
|
12
|
+
* type used inside Node services (GuidV4Buffer / Uint8Array).
|
|
13
|
+
*
|
|
14
|
+
* Requirements: 1.4, 1.5
|
|
15
|
+
*/
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
//# sourceMappingURL=paperKey.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paperKey.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/identity/paperKey.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Public profile interfaces for the BrightChain identity system.
|
|
3
|
+
*
|
|
4
|
+
* A public profile represents a member's presence in the Public Key
|
|
5
|
+
* Directory. It aggregates the member's display name, public key,
|
|
6
|
+
* verified identity proofs, and optional Ethereum address into a
|
|
7
|
+
* single searchable record. Members may opt out of directory listing
|
|
8
|
+
* via the privacy mode flag.
|
|
9
|
+
*
|
|
10
|
+
* All data interfaces are generic over TId so the same interface
|
|
11
|
+
* can serve as a DTO for React clients (string) and as the concrete
|
|
12
|
+
* type used inside Node services (GuidV4Buffer / Uint8Array).
|
|
13
|
+
*
|
|
14
|
+
* Requirements: 5.1
|
|
15
|
+
*/
|
|
16
|
+
import { IIdentityProof } from './identityProof';
|
|
17
|
+
/**
|
|
18
|
+
* A member's public-facing profile in the Public Key Directory.
|
|
19
|
+
*
|
|
20
|
+
* @remarks
|
|
21
|
+
* The Public Key Directory stores public profiles that can be searched
|
|
22
|
+
* by display name, social username, or member ID (Requirement 5.2).
|
|
23
|
+
* Each profile includes the member's SECP256k1 public key and any
|
|
24
|
+
* verified identity proofs, enabling encrypted communication and
|
|
25
|
+
* cross-platform identity verification.
|
|
26
|
+
*
|
|
27
|
+
* When {@link privacyMode} is `true` the profile is excluded from
|
|
28
|
+
* search results (Requirement 5.9), though it may still be accessed
|
|
29
|
+
* directly by member ID for existing contacts.
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* ```typescript
|
|
33
|
+
* const profile: IPublicProfile = {
|
|
34
|
+
* memberId: 'member-xyz',
|
|
35
|
+
* displayName: 'Alice',
|
|
36
|
+
* publicKey: '04abcdef...',
|
|
37
|
+
* identityProofs: [],
|
|
38
|
+
* createdAt: new Date(),
|
|
39
|
+
* updatedAt: new Date(),
|
|
40
|
+
* privacyMode: false,
|
|
41
|
+
* };
|
|
42
|
+
* ```
|
|
43
|
+
*/
|
|
44
|
+
export interface IPublicProfile<TId = string> {
|
|
45
|
+
/** Unique identifier of the member this profile belongs to */
|
|
46
|
+
memberId: TId;
|
|
47
|
+
/** Human-readable display name shown in directory listings and search results */
|
|
48
|
+
displayName: string;
|
|
49
|
+
/** SECP256k1 public key in hex-encoded format, used for encrypted communication */
|
|
50
|
+
publicKey: string;
|
|
51
|
+
/**
|
|
52
|
+
* Identity proofs linked to this profile.
|
|
53
|
+
* @remarks Only verified proofs are included in search results (Requirement 5.4).
|
|
54
|
+
*/
|
|
55
|
+
identityProofs: IIdentityProof<TId>[];
|
|
56
|
+
/**
|
|
57
|
+
* Checksummed Ethereum address (EIP-55) linked to this member's identity.
|
|
58
|
+
* @remarks Populated when the member derives an Ethereum wallet (Requirement 6.6).
|
|
59
|
+
*/
|
|
60
|
+
ethereumAddress?: string;
|
|
61
|
+
/** Timestamp when the profile was first created in the directory */
|
|
62
|
+
createdAt: Date;
|
|
63
|
+
/**
|
|
64
|
+
* Timestamp when the profile was last updated.
|
|
65
|
+
* @remarks Updated whenever identity proofs are added or revoked (Requirement 5.8).
|
|
66
|
+
*/
|
|
67
|
+
updatedAt: Date;
|
|
68
|
+
/**
|
|
69
|
+
* When `true`, this profile is excluded from directory search results.
|
|
70
|
+
* @remarks Members may toggle this to opt out of public listing (Requirement 5.6).
|
|
71
|
+
*/
|
|
72
|
+
privacyMode: boolean;
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=publicProfile.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"publicProfile.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/identity/publicProfile.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEjD;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,WAAW,cAAc,CAAC,GAAG,GAAG,MAAM;IAC1C,8DAA8D;IAC9D,QAAQ,EAAE,GAAG,CAAC;IAEd,iFAAiF;IACjF,WAAW,EAAE,MAAM,CAAC;IAEpB,mFAAmF;IACnF,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,cAAc,EAAE,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;IAEtC;;;OAGG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,oEAAoE;IACpE,SAAS,EAAE,IAAI,CAAC;IAEhB;;;OAGG;IACH,SAAS,EAAE,IAAI,CAAC;IAEhB;;;OAGG;IACH,WAAW,EAAE,OAAO,CAAC;CACtB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Public profile interfaces for the BrightChain identity system.
|
|
4
|
+
*
|
|
5
|
+
* A public profile represents a member's presence in the Public Key
|
|
6
|
+
* Directory. It aggregates the member's display name, public key,
|
|
7
|
+
* verified identity proofs, and optional Ethereum address into a
|
|
8
|
+
* single searchable record. Members may opt out of directory listing
|
|
9
|
+
* via the privacy mode flag.
|
|
10
|
+
*
|
|
11
|
+
* All data interfaces are generic over TId so the same interface
|
|
12
|
+
* can serve as a DTO for React clients (string) and as the concrete
|
|
13
|
+
* type used inside Node services (GuidV4Buffer / Uint8Array).
|
|
14
|
+
*
|
|
15
|
+
* Requirements: 5.1
|
|
16
|
+
*/
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
//# sourceMappingURL=publicProfile.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"publicProfile.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/identity/publicProfile.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;GAcG"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Split paper key interfaces for the BrightChain identity system.
|
|
3
|
+
*
|
|
4
|
+
* Split paper keys use Shamir's Secret Sharing to divide a 24-word
|
|
5
|
+
* BIP39 mnemonic into N shares with a configurable threshold T.
|
|
6
|
+
* Any T shares can reconstruct the original paper key, but fewer
|
|
7
|
+
* than T shares reveal no information about it.
|
|
8
|
+
*
|
|
9
|
+
* Each share is itself encoded as BIP39 words for human readability
|
|
10
|
+
* and includes a QR code for convenient mobile scanning.
|
|
11
|
+
*
|
|
12
|
+
* All data interfaces are generic over TId so the same interface
|
|
13
|
+
* can serve as a DTO for React clients (string) and as the concrete
|
|
14
|
+
* type used inside Node services (GuidV4Buffer / Uint8Array).
|
|
15
|
+
*
|
|
16
|
+
* Requirements: 2.7
|
|
17
|
+
*/
|
|
18
|
+
/**
|
|
19
|
+
* Printable template for a single Shamir's Secret Sharing share
|
|
20
|
+
* of a split paper key.
|
|
21
|
+
*
|
|
22
|
+
* @remarks
|
|
23
|
+
* Generated by the Split Paper Key Service, each share template
|
|
24
|
+
* contains the BIP39-encoded share words, a QR code for scanning,
|
|
25
|
+
* and human-readable instructions that include the share number,
|
|
26
|
+
* total share count, and reconstruction threshold.
|
|
27
|
+
*
|
|
28
|
+
* Share templates are intended to be printed and distributed to
|
|
29
|
+
* trusted parties—never stored digitally after generation.
|
|
30
|
+
*
|
|
31
|
+
* @example
|
|
32
|
+
* ```typescript
|
|
33
|
+
* const share: ISplitPaperKeyShare = {
|
|
34
|
+
* shareNumber: 1,
|
|
35
|
+
* totalShares: 3,
|
|
36
|
+
* threshold: 2,
|
|
37
|
+
* words: ['abandon', 'ability', ...], // BIP39-encoded share
|
|
38
|
+
* qrCode: 'data:image/png;base64,...',
|
|
39
|
+
* createdAt: new Date(),
|
|
40
|
+
* instructions: 'This is share 1 of 3. You need 2 shares to recover your account.',
|
|
41
|
+
* };
|
|
42
|
+
* ```
|
|
43
|
+
*/
|
|
44
|
+
export interface ISplitPaperKeyShare {
|
|
45
|
+
/** Sequential number of this share (1-based, e.g. 1 of 3) */
|
|
46
|
+
shareNumber: number;
|
|
47
|
+
/** Total number of shares the paper key was split into */
|
|
48
|
+
totalShares: number;
|
|
49
|
+
/**
|
|
50
|
+
* Minimum number of shares required to reconstruct the paper key.
|
|
51
|
+
*
|
|
52
|
+
* @remarks
|
|
53
|
+
* Must satisfy 2 ≤ threshold ≤ totalShares. Fewer than threshold
|
|
54
|
+
* shares reveal no information about the original paper key.
|
|
55
|
+
*/
|
|
56
|
+
threshold: number;
|
|
57
|
+
/** BIP39-encoded words representing this share's secret data */
|
|
58
|
+
words: string[];
|
|
59
|
+
/** QR code encoding the share words, as a data URL for printing/scanning */
|
|
60
|
+
qrCode: string;
|
|
61
|
+
/** Timestamp when this share template was generated */
|
|
62
|
+
createdAt: Date;
|
|
63
|
+
/**
|
|
64
|
+
* Human-readable instructions for the share holder.
|
|
65
|
+
*
|
|
66
|
+
* @remarks
|
|
67
|
+
* Typically includes the share number, total shares, and threshold
|
|
68
|
+
* so the holder understands how many collaborators are needed for
|
|
69
|
+
* reconstruction.
|
|
70
|
+
*/
|
|
71
|
+
instructions: string;
|
|
72
|
+
}
|
|
73
|
+
//# sourceMappingURL=splitPaperKey.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"splitPaperKey.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/identity/splitPaperKey.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,WAAW,mBAAmB;IAClC,6DAA6D;IAC7D,WAAW,EAAE,MAAM,CAAC;IAEpB,0DAA0D;IAC1D,WAAW,EAAE,MAAM,CAAC;IAEpB;;;;;;OAMG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB,gEAAgE;IAChE,KAAK,EAAE,MAAM,EAAE,CAAC;IAEhB,4EAA4E;IAC5E,MAAM,EAAE,MAAM,CAAC;IAEf,uDAAuD;IACvD,SAAS,EAAE,IAAI,CAAC;IAEhB;;;;;;;OAOG;IACH,YAAY,EAAE,MAAM,CAAC;CACtB"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Split paper key interfaces for the BrightChain identity system.
|
|
4
|
+
*
|
|
5
|
+
* Split paper keys use Shamir's Secret Sharing to divide a 24-word
|
|
6
|
+
* BIP39 mnemonic into N shares with a configurable threshold T.
|
|
7
|
+
* Any T shares can reconstruct the original paper key, but fewer
|
|
8
|
+
* than T shares reveal no information about it.
|
|
9
|
+
*
|
|
10
|
+
* Each share is itself encoded as BIP39 words for human readability
|
|
11
|
+
* and includes a QR code for convenient mobile scanning.
|
|
12
|
+
*
|
|
13
|
+
* All data interfaces are generic over TId so the same interface
|
|
14
|
+
* can serve as a DTO for React clients (string) and as the concrete
|
|
15
|
+
* type used inside Node services (GuidV4Buffer / Uint8Array).
|
|
16
|
+
*
|
|
17
|
+
* Requirements: 2.7
|
|
18
|
+
*/
|
|
19
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
+
//# sourceMappingURL=splitPaperKey.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"splitPaperKey.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/identity/splitPaperKey.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG"}
|
|
@@ -19,14 +19,16 @@ export type * from './dto';
|
|
|
19
19
|
export type * from './encryptionConsts';
|
|
20
20
|
export type * from './encryptionLength';
|
|
21
21
|
export type * from './energyTransaction';
|
|
22
|
+
export type { IFailableResult } from './failableResult';
|
|
22
23
|
export type * from './handleableErrorOptions';
|
|
24
|
+
export type * from './i18nConstants';
|
|
23
25
|
export type * from './jsonStore';
|
|
24
26
|
export type * from './keyringConsts';
|
|
25
27
|
export type * from './keyringEntry';
|
|
26
28
|
export type * from './languageContext';
|
|
27
29
|
export type * from './member';
|
|
28
30
|
export type * from './membersHandlers';
|
|
29
|
-
export
|
|
31
|
+
export * from './network';
|
|
30
32
|
export type * from './nodeInfo';
|
|
31
33
|
export type * from './position';
|
|
32
34
|
export type * from './privateVotingDerivation';
|
|
@@ -34,6 +36,7 @@ export type * from './quoromDataRecordActionLog';
|
|
|
34
36
|
export type * from './readOnlyBasicObjectDto';
|
|
35
37
|
export type * from './readOnlyDataObjectDto';
|
|
36
38
|
export type * from './replicationNodeResult';
|
|
39
|
+
export type * from './requests';
|
|
37
40
|
export type * from './requestUser';
|
|
38
41
|
export type * from './responses';
|
|
39
42
|
export type * from './role';
|
|
@@ -51,5 +54,12 @@ export type * from './tokenUser';
|
|
|
51
54
|
export type * from './tuple';
|
|
52
55
|
export type * from './tupleConfig';
|
|
53
56
|
export type * from './walletSeed';
|
|
54
|
-
export
|
|
57
|
+
export * from './messaging';
|
|
58
|
+
export type * from './identity';
|
|
59
|
+
export type * from './communication';
|
|
60
|
+
export type * from './communicationEvents';
|
|
61
|
+
export * from './brightpass';
|
|
62
|
+
export * from './events';
|
|
63
|
+
export * from './blockFetch';
|
|
64
|
+
export * from './auth';
|
|
55
65
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/interfaces/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,kBAAkB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,UAAU,CAAC;AAC9B,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,OAAO,CAAC;AAC3B,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,0BAA0B,CAAC;AAC9C,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,gBAAgB,CAAC;AACpC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,UAAU,CAAC;AAC9B,mBAAmB,mBAAmB,CAAC;AACvC,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/interfaces/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,kBAAkB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,UAAU,CAAC;AAC9B,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,OAAO,CAAC;AAC3B,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,qBAAqB,CAAC;AACzC,YAAY,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,mBAAmB,0BAA0B,CAAC;AAC9C,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,iBAAiB,CAAC;AACrC,mBAAmB,gBAAgB,CAAC;AACpC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,UAAU,CAAC;AAC9B,mBAAmB,mBAAmB,CAAC;AACvC,cAAc,WAAW,CAAC;AAC1B,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,2BAA2B,CAAC;AAC/C,mBAAmB,6BAA6B,CAAC;AACjD,mBAAmB,0BAA0B,CAAC;AAC9C,mBAAmB,yBAAyB,CAAC;AAC7C,mBAAmB,yBAAyB,CAAC;AAC7C,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,QAAQ,CAAC;AAC5B,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,6BAA6B,CAAC;AACjD,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,+BAA+B,CAAC;AACnD,cAAc,WAAW,CAAC;AAC1B,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,8BAA8B,CAAC;AAClD,mBAAmB,aAAa,CAAC;AACjC,mBAAmB,SAAS,CAAC;AAC7B,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,cAAc,CAAC;AAGlC,cAAc,aAAa,CAAC;AAG5B,mBAAmB,YAAY,CAAC;AAGhC,mBAAmB,iBAAiB,CAAC;AAGrC,mBAAmB,uBAAuB,CAAC;AAG3C,cAAc,cAAc,CAAC;AAG7B,cAAc,UAAU,CAAC;AAGzB,cAAc,cAAc,CAAC;AAI7B,cAAc,QAAQ,CAAC"}
|
|
@@ -2,5 +2,17 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
const tslib_1 = require("tslib");
|
|
4
4
|
tslib_1.__exportStar(require("./availability"), exports);
|
|
5
|
+
tslib_1.__exportStar(require("./network"), exports);
|
|
5
6
|
tslib_1.__exportStar(require("./storage"), exports);
|
|
7
|
+
// Message passing interfaces (uses `export *` because messaging contains runtime functions like createMailbox)
|
|
8
|
+
tslib_1.__exportStar(require("./messaging"), exports);
|
|
9
|
+
// BrightPass password manager interfaces
|
|
10
|
+
tslib_1.__exportStar(require("./brightpass"), exports);
|
|
11
|
+
// Communication event emitter abstraction (real-time event system)
|
|
12
|
+
tslib_1.__exportStar(require("./events"), exports);
|
|
13
|
+
// Block fetch interfaces (remote block retrieval)
|
|
14
|
+
tslib_1.__exportStar(require("./blockFetch"), exports);
|
|
15
|
+
// Auth interfaces (node authentication, pool ACL)
|
|
16
|
+
// Uses `export *` because auth contains runtime values (PoolPermission enum, hasPermission, hasQuorum)
|
|
17
|
+
tslib_1.__exportStar(require("./auth"), exports);
|
|
6
18
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/interfaces/index.ts"],"names":[],"mappings":";;;AACA,yDAA+B;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/interfaces/index.ts"],"names":[],"mappings":";;;AACA,yDAA+B;AA6B/B,oDAA0B;AAmB1B,oDAA0B;AAQ1B,+GAA+G;AAC/G,sDAA4B;AAW5B,yCAAyC;AACzC,uDAA6B;AAE7B,mEAAmE;AACnE,mDAAyB;AAEzB,kDAAkD;AAClD,uDAA6B;AAE7B,kDAAkD;AAClD,uGAAuG;AACvG,iDAAuB"}
|
|
@@ -8,11 +8,13 @@ import { NodeConfig } from './nodeConfig';
|
|
|
8
8
|
import { NodeLocation } from './nodeLocation';
|
|
9
9
|
import { NodeResources } from './nodeResources';
|
|
10
10
|
/**
|
|
11
|
-
* Core node interface
|
|
11
|
+
* Core node interface.
|
|
12
|
+
*
|
|
13
|
+
* Uses Uint8Array for browser compatibility (Requirement 18.6).
|
|
12
14
|
*/
|
|
13
15
|
export interface INode {
|
|
14
16
|
id: GuidV4Uint8Array;
|
|
15
|
-
publicKey:
|
|
17
|
+
publicKey: Uint8Array;
|
|
16
18
|
version: string;
|
|
17
19
|
status: NodeStatus;
|
|
18
20
|
capabilities: Set<NodeCapability>;
|