@brightchain/brightchain-lib 0.19.0 → 0.20.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.
Files changed (273) hide show
  1. package/package.json +2 -2
  2. package/src/lib/documents/member/memberProfileHydration.d.ts.map +1 -1
  3. package/src/lib/documents/member/memberProfileHydration.js +6 -0
  4. package/src/lib/documents/member/memberProfileHydration.js.map +1 -1
  5. package/src/lib/enumerations/brightChainStrings.d.ts +39 -0
  6. package/src/lib/enumerations/brightChainStrings.d.ts.map +1 -1
  7. package/src/lib/enumerations/brightChainStrings.js +47 -0
  8. package/src/lib/enumerations/brightChainStrings.js.map +1 -1
  9. package/src/lib/enumerations/identityValidationErrorType.d.ts +11 -0
  10. package/src/lib/enumerations/identityValidationErrorType.d.ts.map +1 -0
  11. package/src/lib/enumerations/identityValidationErrorType.js +15 -0
  12. package/src/lib/enumerations/identityValidationErrorType.js.map +1 -0
  13. package/src/lib/enumerations/index.d.ts +4 -0
  14. package/src/lib/enumerations/index.d.ts.map +1 -1
  15. package/src/lib/enumerations/index.js +5 -0
  16. package/src/lib/enumerations/index.js.map +1 -1
  17. package/src/lib/enumerations/memberStatusType.d.ts +2 -1
  18. package/src/lib/enumerations/memberStatusType.d.ts.map +1 -1
  19. package/src/lib/enumerations/memberStatusType.js +1 -0
  20. package/src/lib/enumerations/memberStatusType.js.map +1 -1
  21. package/src/lib/enumerations/proposalActionType.d.ts +22 -0
  22. package/src/lib/enumerations/proposalActionType.d.ts.map +1 -0
  23. package/src/lib/enumerations/proposalActionType.js +26 -0
  24. package/src/lib/enumerations/proposalActionType.js.map +1 -0
  25. package/src/lib/enumerations/proposalStatus.d.ts +14 -0
  26. package/src/lib/enumerations/proposalStatus.d.ts.map +1 -0
  27. package/src/lib/enumerations/proposalStatus.js +18 -0
  28. package/src/lib/enumerations/proposalStatus.js.map +1 -0
  29. package/src/lib/enumerations/quorumErrorType.d.ts +30 -1
  30. package/src/lib/enumerations/quorumErrorType.d.ts.map +1 -1
  31. package/src/lib/enumerations/quorumErrorType.js +37 -0
  32. package/src/lib/enumerations/quorumErrorType.js.map +1 -1
  33. package/src/lib/enumerations/quorumOperationalMode.d.ts +16 -0
  34. package/src/lib/enumerations/quorumOperationalMode.d.ts.map +1 -0
  35. package/src/lib/enumerations/quorumOperationalMode.js +20 -0
  36. package/src/lib/enumerations/quorumOperationalMode.js.map +1 -0
  37. package/src/lib/enumerations/sealingErrorType.d.ts +3 -1
  38. package/src/lib/enumerations/sealingErrorType.d.ts.map +1 -1
  39. package/src/lib/enumerations/sealingErrorType.js +2 -0
  40. package/src/lib/enumerations/sealingErrorType.js.map +1 -1
  41. package/src/lib/errors/identityValidationError.d.ts +8 -0
  42. package/src/lib/errors/identityValidationError.d.ts.map +1 -0
  43. package/src/lib/errors/identityValidationError.js +26 -0
  44. package/src/lib/errors/identityValidationError.js.map +1 -0
  45. package/src/lib/errors/index.d.ts +4 -0
  46. package/src/lib/errors/index.d.ts.map +1 -1
  47. package/src/lib/errors/index.js +7 -0
  48. package/src/lib/errors/index.js.map +1 -1
  49. package/src/lib/errors/quorumError.d.ts.map +1 -1
  50. package/src/lib/errors/quorumError.js +37 -0
  51. package/src/lib/errors/quorumError.js.map +1 -1
  52. package/src/lib/errors/sealingError.d.ts.map +1 -1
  53. package/src/lib/errors/sealingError.js +2 -0
  54. package/src/lib/errors/sealingError.js.map +1 -1
  55. package/src/lib/i18n/strings/englishUs.d.ts.map +1 -1
  56. package/src/lib/i18n/strings/englishUs.js +45 -0
  57. package/src/lib/i18n/strings/englishUs.js.map +1 -1
  58. package/src/lib/i18n/strings/french.d.ts.map +1 -1
  59. package/src/lib/i18n/strings/french.js +37 -0
  60. package/src/lib/i18n/strings/french.js.map +1 -1
  61. package/src/lib/i18n/strings/german.d.ts.map +1 -1
  62. package/src/lib/i18n/strings/german.js +37 -0
  63. package/src/lib/i18n/strings/german.js.map +1 -1
  64. package/src/lib/i18n/strings/japanese.d.ts.map +1 -1
  65. package/src/lib/i18n/strings/japanese.js +37 -0
  66. package/src/lib/i18n/strings/japanese.js.map +1 -1
  67. package/src/lib/i18n/strings/mandarin.d.ts.map +1 -1
  68. package/src/lib/i18n/strings/mandarin.js +37 -0
  69. package/src/lib/i18n/strings/mandarin.js.map +1 -1
  70. package/src/lib/i18n/strings/spanish.d.ts.map +1 -1
  71. package/src/lib/i18n/strings/spanish.js +37 -0
  72. package/src/lib/i18n/strings/spanish.js.map +1 -1
  73. package/src/lib/i18n/strings/ukrainian.d.ts.map +1 -1
  74. package/src/lib/i18n/strings/ukrainian.js +37 -0
  75. package/src/lib/i18n/strings/ukrainian.js.map +1 -1
  76. package/src/lib/interfaces/aliasRecord.d.ts +34 -0
  77. package/src/lib/interfaces/aliasRecord.d.ts.map +1 -0
  78. package/src/lib/interfaces/aliasRecord.js +11 -0
  79. package/src/lib/interfaces/aliasRecord.js.map +1 -0
  80. package/src/lib/interfaces/api/index.d.ts +2 -0
  81. package/src/lib/interfaces/api/index.d.ts.map +1 -0
  82. package/src/lib/interfaces/api/index.js +5 -0
  83. package/src/lib/interfaces/api/index.js.map +1 -0
  84. package/src/lib/interfaces/api/quorumApi.d.ts +97 -0
  85. package/src/lib/interfaces/api/quorumApi.d.ts.map +1 -0
  86. package/src/lib/interfaces/api/quorumApi.js +12 -0
  87. package/src/lib/interfaces/api/quorumApi.js.map +1 -0
  88. package/src/lib/interfaces/auditLogEntry.d.ts +34 -0
  89. package/src/lib/interfaces/auditLogEntry.d.ts.map +1 -0
  90. package/src/lib/interfaces/auditLogEntry.js +10 -0
  91. package/src/lib/interfaces/auditLogEntry.js.map +1 -0
  92. package/src/lib/interfaces/availability/gossipService.d.ts +116 -2
  93. package/src/lib/interfaces/availability/gossipService.d.ts.map +1 -1
  94. package/src/lib/interfaces/availability/gossipService.js +62 -0
  95. package/src/lib/interfaces/availability/gossipService.js.map +1 -1
  96. package/src/lib/interfaces/chainedAuditLogEntry.d.ts +27 -0
  97. package/src/lib/interfaces/chainedAuditLogEntry.d.ts.map +1 -0
  98. package/src/lib/interfaces/chainedAuditLogEntry.js +12 -0
  99. package/src/lib/interfaces/chainedAuditLogEntry.js.map +1 -0
  100. package/src/lib/interfaces/contentWithIdentity.d.ts +39 -0
  101. package/src/lib/interfaces/contentWithIdentity.d.ts.map +1 -0
  102. package/src/lib/interfaces/contentWithIdentity.js +24 -0
  103. package/src/lib/interfaces/contentWithIdentity.js.map +1 -0
  104. package/src/lib/interfaces/energyAccount.d.ts +3 -1
  105. package/src/lib/interfaces/energyAccount.d.ts.map +1 -1
  106. package/src/lib/interfaces/identityRecoveryRecord.d.ts +41 -0
  107. package/src/lib/interfaces/identityRecoveryRecord.d.ts.map +1 -0
  108. package/src/lib/interfaces/identityRecoveryRecord.js +11 -0
  109. package/src/lib/interfaces/identityRecoveryRecord.js.map +1 -0
  110. package/src/lib/interfaces/index.d.ts +16 -0
  111. package/src/lib/interfaces/index.d.ts.map +1 -1
  112. package/src/lib/interfaces/index.js +4 -0
  113. package/src/lib/interfaces/index.js.map +1 -1
  114. package/src/lib/interfaces/initResult.d.ts +6 -6
  115. package/src/lib/interfaces/initResult.d.ts.map +1 -1
  116. package/src/lib/interfaces/member/brightChainBaseInitResult.d.ts +4 -1
  117. package/src/lib/interfaces/member/brightChainBaseInitResult.d.ts.map +1 -1
  118. package/src/lib/interfaces/member/brightChainInitResult.d.ts +1 -1
  119. package/src/lib/interfaces/member/brightChainInitResult.d.ts.map +1 -1
  120. package/src/lib/interfaces/member/memberData.d.ts +3 -0
  121. package/src/lib/interfaces/member/memberData.d.ts.map +1 -1
  122. package/src/lib/interfaces/member/profileStorage.d.ts +5 -0
  123. package/src/lib/interfaces/member/profileStorage.d.ts.map +1 -1
  124. package/src/lib/interfaces/operationalState.d.ts +20 -0
  125. package/src/lib/interfaces/operationalState.d.ts.map +1 -0
  126. package/src/lib/interfaces/operationalState.js +10 -0
  127. package/src/lib/interfaces/operationalState.js.map +1 -0
  128. package/src/lib/interfaces/proposal.d.ts +59 -0
  129. package/src/lib/interfaces/proposal.d.ts.map +1 -0
  130. package/src/lib/interfaces/proposal.js +10 -0
  131. package/src/lib/interfaces/proposal.js.map +1 -0
  132. package/src/lib/interfaces/quorumDocumentMetadata.d.ts +20 -0
  133. package/src/lib/interfaces/quorumDocumentMetadata.d.ts.map +1 -0
  134. package/src/lib/interfaces/quorumDocumentMetadata.js +10 -0
  135. package/src/lib/interfaces/quorumDocumentMetadata.js.map +1 -0
  136. package/src/lib/interfaces/quorumEpoch.d.ts +33 -0
  137. package/src/lib/interfaces/quorumEpoch.d.ts.map +1 -0
  138. package/src/lib/interfaces/quorumEpoch.js +11 -0
  139. package/src/lib/interfaces/quorumEpoch.js.map +1 -0
  140. package/src/lib/interfaces/quorumMetrics.d.ts +49 -0
  141. package/src/lib/interfaces/quorumMetrics.d.ts.map +1 -0
  142. package/src/lib/interfaces/quorumMetrics.js +10 -0
  143. package/src/lib/interfaces/quorumMetrics.js.map +1 -0
  144. package/src/lib/interfaces/redistributionJournalEntry.d.ts +25 -0
  145. package/src/lib/interfaces/redistributionJournalEntry.d.ts.map +1 -0
  146. package/src/lib/interfaces/redistributionJournalEntry.js +11 -0
  147. package/src/lib/interfaces/redistributionJournalEntry.js.map +1 -0
  148. package/src/lib/interfaces/responses/backupCodesResponseData.d.ts +3 -5
  149. package/src/lib/interfaces/responses/backupCodesResponseData.d.ts.map +1 -1
  150. package/src/lib/interfaces/responses/challengeResponseData.d.ts +5 -0
  151. package/src/lib/interfaces/responses/challengeResponseData.d.ts.map +1 -1
  152. package/src/lib/interfaces/responses/codeCountResponseData.d.ts +3 -5
  153. package/src/lib/interfaces/responses/codeCountResponseData.d.ts.map +1 -1
  154. package/src/lib/interfaces/responses/index.d.ts +4 -2
  155. package/src/lib/interfaces/responses/index.d.ts.map +1 -1
  156. package/src/lib/interfaces/responses/passwordChangeResponse.d.ts +2 -0
  157. package/src/lib/interfaces/responses/passwordChangeResponse.d.ts.map +1 -0
  158. package/src/lib/interfaces/responses/passwordChangeResponse.js +3 -0
  159. package/src/lib/interfaces/responses/passwordChangeResponse.js.map +1 -0
  160. package/src/lib/interfaces/responses/recoveryResponse.d.ts +2 -0
  161. package/src/lib/interfaces/responses/recoveryResponse.d.ts.map +1 -0
  162. package/src/lib/interfaces/responses/recoveryResponse.js +3 -0
  163. package/src/lib/interfaces/responses/recoveryResponse.js.map +1 -0
  164. package/src/lib/interfaces/responses/registrationResponseData.d.ts +2 -2
  165. package/src/lib/interfaces/responses/registrationResponseData.d.ts.map +1 -1
  166. package/src/lib/interfaces/services/contentIngestion.d.ts +61 -0
  167. package/src/lib/interfaces/services/contentIngestion.d.ts.map +1 -0
  168. package/src/lib/interfaces/services/contentIngestion.js +12 -0
  169. package/src/lib/interfaces/services/contentIngestion.js.map +1 -0
  170. package/src/lib/interfaces/services/expirationScheduler.d.ts +55 -0
  171. package/src/lib/interfaces/services/expirationScheduler.d.ts.map +1 -0
  172. package/src/lib/interfaces/services/expirationScheduler.js +11 -0
  173. package/src/lib/interfaces/services/expirationScheduler.js.map +1 -0
  174. package/src/lib/interfaces/services/identitySealingPipeline.d.ts +56 -0
  175. package/src/lib/interfaces/services/identitySealingPipeline.d.ts.map +1 -0
  176. package/src/lib/interfaces/services/identitySealingPipeline.js +12 -0
  177. package/src/lib/interfaces/services/identitySealingPipeline.js.map +1 -0
  178. package/src/lib/interfaces/services/identityValidator.d.ts +44 -0
  179. package/src/lib/interfaces/services/identityValidator.d.ts.map +1 -0
  180. package/src/lib/interfaces/services/identityValidator.js +11 -0
  181. package/src/lib/interfaces/services/identityValidator.js.map +1 -0
  182. package/src/lib/interfaces/services/index.d.ts +9 -0
  183. package/src/lib/interfaces/services/index.d.ts.map +1 -1
  184. package/src/lib/interfaces/services/membershipProof.d.ts +40 -0
  185. package/src/lib/interfaces/services/membershipProof.d.ts.map +1 -0
  186. package/src/lib/interfaces/services/membershipProof.js +11 -0
  187. package/src/lib/interfaces/services/membershipProof.js.map +1 -0
  188. package/src/lib/interfaces/services/operatorPrompt.d.ts +68 -0
  189. package/src/lib/interfaces/services/operatorPrompt.d.ts.map +1 -0
  190. package/src/lib/interfaces/services/operatorPrompt.js +11 -0
  191. package/src/lib/interfaces/services/operatorPrompt.js.map +1 -0
  192. package/src/lib/interfaces/services/quorumDatabase.d.ts +207 -0
  193. package/src/lib/interfaces/services/quorumDatabase.d.ts.map +1 -0
  194. package/src/lib/interfaces/services/quorumDatabase.js +13 -0
  195. package/src/lib/interfaces/services/quorumDatabase.js.map +1 -0
  196. package/src/lib/interfaces/services/quorumService.d.ts +3 -0
  197. package/src/lib/interfaces/services/quorumService.d.ts.map +1 -1
  198. package/src/lib/interfaces/services/quorumStateMachine.d.ts +128 -0
  199. package/src/lib/interfaces/services/quorumStateMachine.d.ts.map +1 -0
  200. package/src/lib/interfaces/services/quorumStateMachine.js +12 -0
  201. package/src/lib/interfaces/services/quorumStateMachine.js.map +1 -0
  202. package/src/lib/interfaces/services/redistributionConfig.d.ts +20 -0
  203. package/src/lib/interfaces/services/redistributionConfig.d.ts.map +1 -0
  204. package/src/lib/interfaces/services/redistributionConfig.js +10 -0
  205. package/src/lib/interfaces/services/redistributionConfig.js.map +1 -0
  206. package/src/lib/interfaces/statuteConfig.d.ts +22 -0
  207. package/src/lib/interfaces/statuteConfig.d.ts.map +1 -0
  208. package/src/lib/interfaces/statuteConfig.js +18 -0
  209. package/src/lib/interfaces/statuteConfig.js.map +1 -0
  210. package/src/lib/interfaces/storage/documentStore.d.ts +46 -24
  211. package/src/lib/interfaces/storage/documentStore.d.ts.map +1 -1
  212. package/src/lib/interfaces/storage/documentStore.js +6 -2
  213. package/src/lib/interfaces/storage/documentStore.js.map +1 -1
  214. package/src/lib/interfaces/userManagement.d.ts +49 -0
  215. package/src/lib/interfaces/userManagement.d.ts.map +1 -0
  216. package/src/lib/interfaces/userManagement.js +9 -0
  217. package/src/lib/interfaces/userManagement.js.map +1 -0
  218. package/src/lib/interfaces/vote.d.ts +45 -0
  219. package/src/lib/interfaces/vote.d.ts.map +1 -0
  220. package/src/lib/interfaces/vote.js +10 -0
  221. package/src/lib/interfaces/vote.js.map +1 -0
  222. package/src/lib/quorumDataRecord.d.ts +7 -1
  223. package/src/lib/quorumDataRecord.d.ts.map +1 -1
  224. package/src/lib/quorumDataRecord.js +12 -4
  225. package/src/lib/quorumDataRecord.js.map +1 -1
  226. package/src/lib/quorumDataRecordDto.d.ts +6 -0
  227. package/src/lib/quorumDataRecordDto.d.ts.map +1 -1
  228. package/src/lib/services/aliasRegistry.d.ts +77 -0
  229. package/src/lib/services/aliasRegistry.d.ts.map +1 -0
  230. package/src/lib/services/aliasRegistry.js +138 -0
  231. package/src/lib/services/aliasRegistry.js.map +1 -0
  232. package/src/lib/services/auditLogService.d.ts +100 -0
  233. package/src/lib/services/auditLogService.d.ts.map +1 -0
  234. package/src/lib/services/auditLogService.js +223 -0
  235. package/src/lib/services/auditLogService.js.map +1 -0
  236. package/src/lib/services/blockService.d.ts +2 -1
  237. package/src/lib/services/blockService.d.ts.map +1 -1
  238. package/src/lib/services/blockService.js +7 -2
  239. package/src/lib/services/blockService.js.map +1 -1
  240. package/src/lib/services/identitySealingPipeline.d.ts +120 -0
  241. package/src/lib/services/identitySealingPipeline.d.ts.map +1 -0
  242. package/src/lib/services/identitySealingPipeline.js +288 -0
  243. package/src/lib/services/identitySealingPipeline.js.map +1 -0
  244. package/src/lib/services/identityValidator.d.ts +75 -0
  245. package/src/lib/services/identityValidator.d.ts.map +1 -0
  246. package/src/lib/services/identityValidator.js +202 -0
  247. package/src/lib/services/identityValidator.js.map +1 -0
  248. package/src/lib/services/index.d.ts +6 -0
  249. package/src/lib/services/index.d.ts.map +1 -1
  250. package/src/lib/services/index.js +6 -0
  251. package/src/lib/services/index.js.map +1 -1
  252. package/src/lib/services/member/memberCblService.d.ts.map +1 -1
  253. package/src/lib/services/member/memberCblService.js +12 -1
  254. package/src/lib/services/member/memberCblService.js.map +1 -1
  255. package/src/lib/services/memberStore.d.ts.map +1 -1
  256. package/src/lib/services/memberStore.js +2 -0
  257. package/src/lib/services/memberStore.js.map +1 -1
  258. package/src/lib/services/membershipProofService.d.ts +90 -0
  259. package/src/lib/services/membershipProofService.d.ts.map +1 -0
  260. package/src/lib/services/membershipProofService.js +361 -0
  261. package/src/lib/services/membershipProofService.js.map +1 -0
  262. package/src/lib/services/quorumStateMachine.d.ts +336 -0
  263. package/src/lib/services/quorumStateMachine.d.ts.map +1 -0
  264. package/src/lib/services/quorumStateMachine.js +1396 -0
  265. package/src/lib/services/quorumStateMachine.js.map +1 -0
  266. package/src/lib/services/sealing.service.d.ts +80 -0
  267. package/src/lib/services/sealing.service.d.ts.map +1 -1
  268. package/src/lib/services/sealing.service.js +192 -0
  269. package/src/lib/services/sealing.service.js.map +1 -1
  270. package/src/lib/stores/energyAccountStore.d.ts +13 -11
  271. package/src/lib/stores/energyAccountStore.d.ts.map +1 -1
  272. package/src/lib/stores/energyAccountStore.js +18 -20
  273. package/src/lib/stores/energyAccountStore.js.map +1 -1
@@ -1,11 +1,9 @@
1
1
  /**
2
- * Platform-agnostic base data interface for backup code generation/reset responses.
2
+ * Platform-agnostic base data interface for backup codes responses.
3
3
  * Used by both frontend and backend consumers.
4
+ * Matches express-suite IApiBackupCodesResponse shape (minus IApiMessageResponse).
4
5
  */
5
6
  export interface IBackupCodesResponseData {
6
- /**
7
- * Array of newly generated backup codes
8
- */
9
- backupCodes: string[];
7
+ backupCodes: Array<string>;
10
8
  }
11
9
  //# sourceMappingURL=backupCodesResponseData.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"backupCodesResponseData.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/responses/backupCodesResponseData.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,wBAAwB;IACvC;;OAEG;IACH,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB"}
1
+ {"version":3,"file":"backupCodesResponseData.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/responses/backupCodesResponseData.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,WAAW,wBAAwB;IACvC,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAC5B"}
@@ -1,11 +1,16 @@
1
1
  /**
2
2
  * Platform-agnostic base data interface for login challenge generation responses.
3
3
  * Used by both frontend and backend consumers.
4
+ * Matches express-suite IApiChallengeResponse shape.
4
5
  */
5
6
  export interface IChallengeResponseData {
6
7
  /**
7
8
  * The generated challenge string
8
9
  */
9
10
  challenge: string;
11
+ /**
12
+ * Server's public key for encrypting the response
13
+ */
14
+ serverPublicKey: string;
10
15
  }
11
16
  //# sourceMappingURL=challengeResponseData.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"challengeResponseData.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/responses/challengeResponseData.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;CACnB"}
1
+ {"version":3,"file":"challengeResponseData.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/responses/challengeResponseData.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,eAAe,EAAE,MAAM,CAAC;CACzB"}
@@ -1,11 +1,9 @@
1
1
  /**
2
- * Platform-agnostic base data interface for backup code count query responses.
2
+ * Platform-agnostic base data interface for code count responses.
3
3
  * Used by both frontend and backend consumers.
4
+ * Matches express-suite IApiCodeCountResponse shape (minus IApiMessageResponse).
4
5
  */
5
6
  export interface ICodeCountResponseData {
6
- /**
7
- * Number of remaining backup codes
8
- */
9
- count: number;
7
+ codeCount: number;
10
8
  }
11
9
  //# sourceMappingURL=codeCountResponseData.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"codeCountResponseData.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/responses/codeCountResponseData.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;CACf"}
1
+ {"version":3,"file":"codeCountResponseData.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/responses/codeCountResponseData.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,SAAS,EAAE,MAAM,CAAC;CACnB"}
@@ -1,7 +1,7 @@
1
- export type * from './communicationResponses';
2
1
  export type * from './backupCodesResponseData';
3
- export type * from './challengeResponseData';
4
2
  export type * from './codeCountResponseData';
3
+ export type * from './communicationResponses';
4
+ export type * from './challengeResponseData';
5
5
  export type * from './cryptoResponses';
6
6
  export type * from './detailedHealthResponse';
7
7
  export type * from './deviceResponses';
@@ -19,8 +19,10 @@ export type * from './listNodesResponse';
19
19
  export type * from './loginResponseData';
20
20
  export type * from './membersResponseData';
21
21
  export type * from './mnemonicResponseData';
22
+ export type * from './passwordChangeResponse';
22
23
  export type * from './queryMessageResponse';
23
24
  export type * from './reconcileResponse';
25
+ export type * from './recoveryResponse';
24
26
  export type * from './registerNodeResponse';
25
27
  export type * from './registrationResponseData';
26
28
  export type * from './replicateBlockResponse';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/responses/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,0BAA0B,CAAC;AAI9C,mBAAmB,2BAA2B,CAAC;AAC/C,mBAAmB,yBAAyB,CAAC;AAC7C,mBAAmB,yBAAyB,CAAC;AAC7C,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,0BAA0B,CAAC;AAC9C,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,yBAAyB,CAAC;AAC7C,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,6BAA6B,CAAC;AACjD,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,UAAU,CAAC;AAC9B,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,0BAA0B,CAAC;AAC9C,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,uBAAuB,CAAC;AAC3C,mBAAmB,wBAAwB,CAAC;AAC5C,mBAAmB,wBAAwB,CAAC;AAC5C,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,wBAAwB,CAAC;AAC5C,mBAAmB,4BAA4B,CAAC;AAChD,mBAAmB,0BAA0B,CAAC;AAC9C,mBAAmB,2BAA2B,CAAC;AAC/C,mBAAmB,wBAAwB,CAAC;AAC5C,mBAAmB,uBAAuB,CAAC;AAC3C,mBAAmB,cAAc,CAAC;AAClC,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/responses/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,2BAA2B,CAAC;AAC/C,mBAAmB,yBAAyB,CAAC;AAC7C,mBAAmB,0BAA0B,CAAC;AAI9C,mBAAmB,yBAAyB,CAAC;AAC7C,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,0BAA0B,CAAC;AAC9C,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,yBAAyB,CAAC;AAC7C,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,6BAA6B,CAAC;AACjD,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,UAAU,CAAC;AAC9B,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,0BAA0B,CAAC;AAC9C,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,uBAAuB,CAAC;AAC3C,mBAAmB,wBAAwB,CAAC;AAC5C,mBAAmB,0BAA0B,CAAC;AAC9C,mBAAmB,wBAAwB,CAAC;AAC5C,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,wBAAwB,CAAC;AAC5C,mBAAmB,4BAA4B,CAAC;AAChD,mBAAmB,0BAA0B,CAAC;AAC9C,mBAAmB,2BAA2B,CAAC;AAC/C,mBAAmB,wBAAwB,CAAC;AAC5C,mBAAmB,uBAAuB,CAAC;AAC3C,mBAAmB,cAAc,CAAC;AAClC,mBAAmB,YAAY,CAAC;AAChC,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,uBAAuB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export type { IPasswordChangeResponse } from '../userManagement';
2
+ //# sourceMappingURL=passwordChangeResponse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"passwordChangeResponse.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/responses/passwordChangeResponse.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=passwordChangeResponse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"passwordChangeResponse.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/responses/passwordChangeResponse.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ export type { IRecoveryResponse } from '../userManagement';
2
+ //# sourceMappingURL=recoveryResponse.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recoveryResponse.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/responses/recoveryResponse.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=recoveryResponse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recoveryResponse.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/responses/recoveryResponse.ts"],"names":[],"mappings":""}
@@ -1,7 +1,7 @@
1
- import { SecureString } from '@digitaldefiance/ecies-lib';
2
1
  /**
3
2
  * Platform-agnostic base data interface for successful user registration responses.
4
3
  * Used by both frontend and backend consumers.
4
+ * Matches express-suite IApiRegistrationResponse shape.
5
5
  */
6
6
  export interface IRegistrationResponseData {
7
7
  /**
@@ -11,6 +11,6 @@ export interface IRegistrationResponseData {
11
11
  /**
12
12
  * Array of backup codes for account recovery
13
13
  */
14
- backupCodes: SecureString[];
14
+ backupCodes: Array<string>;
15
15
  }
16
16
  //# sourceMappingURL=registrationResponseData.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"registrationResponseData.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/responses/registrationResponseData.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;;GAGG;AACH,MAAM,WAAW,yBAAyB;IACxC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,WAAW,EAAE,YAAY,EAAE,CAAC;CAC7B"}
1
+ {"version":3,"file":"registrationResponseData.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/responses/registrationResponseData.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,MAAM,WAAW,yBAAyB;IACxC;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC;CAC5B"}
@@ -0,0 +1,61 @@
1
+ /**
2
+ * @fileoverview IContentIngestionService interface.
3
+ *
4
+ * Defines the contract for content ingestion middleware that validates
5
+ * identity and seals identity shards before accepting content into the block store.
6
+ *
7
+ * @see Requirements 16
8
+ * @see Design: Content Ingestion Pipeline Integration (Task 19)
9
+ */
10
+ import { PlatformID, ShortHexGuid } from '@digitaldefiance/ecies-lib';
11
+ import { IdentityValidationErrorType } from '../../enumerations/identityValidationErrorType';
12
+ import { ContentWithIdentity, IdentityMode } from '../contentWithIdentity';
13
+ /**
14
+ * Result of content ingestion processing.
15
+ * @template TID - Platform ID type for frontend/backend DTO compatibility
16
+ */
17
+ export interface ContentIngestionResult<TID extends PlatformID = Uint8Array> {
18
+ /** Whether the content was accepted */
19
+ accepted: boolean;
20
+ /** The content with identity replaced (after sealing) */
21
+ processedContent: ContentWithIdentity<TID>;
22
+ /** The identity recovery record ID (from sealing pipeline) */
23
+ recoveryRecordId: ShortHexGuid;
24
+ /** The detected identity mode */
25
+ identityMode: IdentityMode;
26
+ /** The resolved real member ID (for real/alias modes) */
27
+ resolvedMemberId?: ShortHexGuid;
28
+ }
29
+ /**
30
+ * Rejection result when content ingestion fails.
31
+ */
32
+ export interface ContentIngestionRejection {
33
+ /** Whether the content was accepted (always false) */
34
+ accepted: false;
35
+ /** The reason for rejection */
36
+ reason: string;
37
+ /** The specific error type for programmatic handling */
38
+ errorType: IdentityValidationErrorType | 'IDENTITY_SEALING_FAILED';
39
+ }
40
+ /**
41
+ * Interface for content ingestion middleware.
42
+ *
43
+ * Orchestrates the identity validation and sealing pipeline:
44
+ * 1. Validates content identity via IIdentityValidator
45
+ * 2. Seals identity via IIdentitySealingPipeline (generates shards, replaces identity)
46
+ * 3. Returns processed content ready for block store acceptance
47
+ *
48
+ * @template TID - Platform ID type for frontend/backend DTO compatibility
49
+ */
50
+ export interface IContentIngestionService<TID extends PlatformID = Uint8Array> {
51
+ /**
52
+ * Process content through identity validation and sealing before block store acceptance.
53
+ *
54
+ * @param content - The content with identity to validate and seal
55
+ * @returns Ingestion result with processed content and recovery record ID
56
+ * @throws IdentityValidationError if identity validation fails
57
+ * @throws QuorumError if identity sealing fails
58
+ */
59
+ processContent(content: ContentWithIdentity<TID>): Promise<ContentIngestionResult<TID>>;
60
+ }
61
+ //# sourceMappingURL=contentIngestion.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contentIngestion.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/services/contentIngestion.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAC7F,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAE3E;;;GAGG;AACH,MAAM,WAAW,sBAAsB,CAAC,GAAG,SAAS,UAAU,GAAG,UAAU;IACzE,uCAAuC;IACvC,QAAQ,EAAE,OAAO,CAAC;IAClB,yDAAyD;IACzD,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAC3C,8DAA8D;IAC9D,gBAAgB,EAAE,YAAY,CAAC;IAC/B,iCAAiC;IACjC,YAAY,EAAE,YAAY,CAAC;IAC3B,yDAAyD;IACzD,gBAAgB,CAAC,EAAE,YAAY,CAAC;CACjC;AAED;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,sDAAsD;IACtD,QAAQ,EAAE,KAAK,CAAC;IAChB,+BAA+B;IAC/B,MAAM,EAAE,MAAM,CAAC;IACf,wDAAwD;IACxD,SAAS,EAAE,2BAA2B,GAAG,yBAAyB,CAAC;CACpE;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,wBAAwB,CAAC,GAAG,SAAS,UAAU,GAAG,UAAU;IAC3E;;;;;;;OAOG;IACH,cAAc,CACZ,OAAO,EAAE,mBAAmB,CAAC,GAAG,CAAC,GAChC,OAAO,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC;CACzC"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview IContentIngestionService interface.
4
+ *
5
+ * Defines the contract for content ingestion middleware that validates
6
+ * identity and seals identity shards before accepting content into the block store.
7
+ *
8
+ * @see Requirements 16
9
+ * @see Design: Content Ingestion Pipeline Integration (Task 19)
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ //# sourceMappingURL=contentIngestion.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contentIngestion.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/services/contentIngestion.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * @fileoverview IExpirationScheduler interface with ExpirationSchedulerConfig and ExpirationResult.
3
+ *
4
+ * Periodic background task that purges expired IdentityRecoveryRecord entries,
5
+ * implementing the digital statute of limitations.
6
+ *
7
+ * @see Requirements 17
8
+ */
9
+ import { ShortHexGuid } from '@digitaldefiance/ecies-lib';
10
+ /**
11
+ * Configuration for the expiration scheduler.
12
+ */
13
+ export interface ExpirationSchedulerConfig {
14
+ /** Interval between expiration checks in milliseconds. Default: 86400000 (24 hours) */
15
+ intervalMs: number;
16
+ /** Number of expired records to process per batch. Default: 100 */
17
+ batchSize: number;
18
+ }
19
+ /**
20
+ * Result of a single expiration check run.
21
+ */
22
+ export interface ExpirationResult {
23
+ /** Number of identity recovery records successfully deleted */
24
+ deletedCount: number;
25
+ /** IDs of records that failed to delete */
26
+ failedIds: ShortHexGuid[];
27
+ /** True if the batch was full, indicating more expired records may exist */
28
+ nextBatchAvailable: boolean;
29
+ }
30
+ /**
31
+ * Interface for the expiration scheduler.
32
+ *
33
+ * Runs periodically to purge expired IdentityRecoveryRecord entries,
34
+ * permanently deleting identity recovery shards after the statute of
35
+ * limitations expires. Each deletion is recorded in the chained audit log.
36
+ */
37
+ export interface IExpirationScheduler {
38
+ /**
39
+ * Start the periodic expiration check.
40
+ * Uses the configured interval from ExpirationSchedulerConfig.
41
+ */
42
+ start(): void;
43
+ /**
44
+ * Stop the periodic expiration check.
45
+ */
46
+ stop(): void;
47
+ /**
48
+ * Run a single expiration check immediately.
49
+ * Queries expired records, deletes shards, appends audit entries.
50
+ * If the batch was full, sets nextBatchAvailable to true.
51
+ * @returns The result of the expiration check
52
+ */
53
+ runOnce(): Promise<ExpirationResult>;
54
+ }
55
+ //# sourceMappingURL=expirationScheduler.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expirationScheduler.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/services/expirationScheduler.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAE1D;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC,uFAAuF;IACvF,UAAU,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,+DAA+D;IAC/D,YAAY,EAAE,MAAM,CAAC;IACrB,2CAA2C;IAC3C,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B,4EAA4E;IAC5E,kBAAkB,EAAE,OAAO,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,KAAK,IAAI,IAAI,CAAC;IAEd;;OAEG;IACH,IAAI,IAAI,IAAI,CAAC;IAEb;;;;;OAKG;IACH,OAAO,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;CACtC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview IExpirationScheduler interface with ExpirationSchedulerConfig and ExpirationResult.
4
+ *
5
+ * Periodic background task that purges expired IdentityRecoveryRecord entries,
6
+ * implementing the digital statute of limitations.
7
+ *
8
+ * @see Requirements 17
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ //# sourceMappingURL=expirationScheduler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"expirationScheduler.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/services/expirationScheduler.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG"}
@@ -0,0 +1,56 @@
1
+ /**
2
+ * @fileoverview IIdentitySealingPipeline interface.
3
+ *
4
+ * Orchestrates the brokered anonymity flow: captures real identity,
5
+ * generates Shamir shards, replaces identity field, distributes
6
+ * encrypted shards, and discards plaintext.
7
+ *
8
+ * @see Requirements 14
9
+ */
10
+ import { PlatformID, ShortHexGuid } from '@digitaldefiance/ecies-lib';
11
+ import { ContentWithIdentity, IdentityMode } from '../contentWithIdentity';
12
+ /**
13
+ * Result of the identity sealing pipeline.
14
+ * @template TID - Platform ID type for frontend/backend DTO compatibility
15
+ */
16
+ export interface IdentitySealingResult<TID extends PlatformID = Uint8Array> {
17
+ /** Content with identity field replaced according to the selected mode */
18
+ modifiedContent: ContentWithIdentity<TID>;
19
+ /** ID of the stored identity recovery record */
20
+ recoveryRecordId: ShortHexGuid;
21
+ }
22
+ /**
23
+ * Interface for the identity sealing pipeline.
24
+ *
25
+ * Processes content through the brokered anonymity flow:
26
+ * 1. Captures the real creator identity
27
+ * 2. Generates Shamir shards from the identity
28
+ * 3. Replaces the identity field (real/alias/anonymous)
29
+ * 4. Encrypts shards per quorum member via ECIES
30
+ * 5. Stores the IdentityRecoveryRecord
31
+ * 6. Discards the original plaintext identity from memory
32
+ *
33
+ * @template TID - Platform ID type for frontend/backend DTO compatibility
34
+ */
35
+ export interface IIdentitySealingPipeline<TID extends PlatformID = Uint8Array> {
36
+ /**
37
+ * Process content through the identity sealing pipeline.
38
+ * Returns the content with identity replaced and the identity recovery record ID.
39
+ * @param content - The content with real identity to seal
40
+ * @param mode - The identity mode (real, alias, or anonymous)
41
+ * @param aliasName - Required when mode is Alias
42
+ * @returns The modified content and recovery record ID
43
+ * @throws QuorumError with IdentitySealingFailed if shard generation or distribution fails
44
+ * @throws QuorumError with ShardVerificationFailed if shard verification fails
45
+ */
46
+ sealIdentity(content: ContentWithIdentity<TID>, mode: IdentityMode, aliasName?: string): Promise<IdentitySealingResult<TID>>;
47
+ /**
48
+ * Recover a sealed identity given sufficient decrypted shares.
49
+ * @param recoveryRecordId - The ID of the identity recovery record
50
+ * @param decryptedShares - Map of member ID to decrypted share string
51
+ * @returns The recovered real identity
52
+ * @throws QuorumError with InsufficientSharesForReconstruction if not enough shares
53
+ */
54
+ recoverIdentity(recoveryRecordId: ShortHexGuid, decryptedShares: Map<ShortHexGuid, string>): Promise<TID>;
55
+ }
56
+ //# sourceMappingURL=identitySealingPipeline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identitySealingPipeline.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/services/identitySealingPipeline.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAE3E;;;GAGG;AACH,MAAM,WAAW,qBAAqB,CAAC,GAAG,SAAS,UAAU,GAAG,UAAU;IACxE,0EAA0E;IAC1E,eAAe,EAAE,mBAAmB,CAAC,GAAG,CAAC,CAAC;IAC1C,gDAAgD;IAChD,gBAAgB,EAAE,YAAY,CAAC;CAChC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,WAAW,wBAAwB,CAAC,GAAG,SAAS,UAAU,GAAG,UAAU;IAC3E;;;;;;;;;OASG;IACH,YAAY,CACV,OAAO,EAAE,mBAAmB,CAAC,GAAG,CAAC,EACjC,IAAI,EAAE,YAAY,EAClB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC;IAEvC;;;;;;OAMG;IACH,eAAe,CACb,gBAAgB,EAAE,YAAY,EAC9B,eAAe,EAAE,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,GACzC,OAAO,CAAC,GAAG,CAAC,CAAC;CACjB"}
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview IIdentitySealingPipeline interface.
4
+ *
5
+ * Orchestrates the brokered anonymity flow: captures real identity,
6
+ * generates Shamir shards, replaces identity field, distributes
7
+ * encrypted shards, and discards plaintext.
8
+ *
9
+ * @see Requirements 14
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ //# sourceMappingURL=identitySealingPipeline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identitySealingPipeline.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/services/identitySealingPipeline.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * @fileoverview IIdentityValidator interface with IdentityValidationResult.
3
+ *
4
+ * Validates content identity before ingestion into the block store.
5
+ * Dispatches to real identity, alias, or anonymous validation based on creatorId.
6
+ *
7
+ * @see Requirements 16
8
+ */
9
+ import { PlatformID, ShortHexGuid } from '@digitaldefiance/ecies-lib';
10
+ import { IdentityValidationErrorType } from '../../enumerations/identityValidationErrorType';
11
+ import { ContentWithIdentity, IdentityMode } from '../contentWithIdentity';
12
+ /**
13
+ * Result of content identity validation.
14
+ */
15
+ export interface IdentityValidationResult {
16
+ /** Whether the content identity is valid */
17
+ valid: boolean;
18
+ /** The detected identity mode */
19
+ identityMode: IdentityMode;
20
+ /** The resolved real member ID (for real/alias modes) */
21
+ resolvedMemberId?: ShortHexGuid;
22
+ /** Validation error type if valid is false */
23
+ errorType?: IdentityValidationErrorType;
24
+ }
25
+ /**
26
+ * Interface for node-side identity validation on content ingestion.
27
+ *
28
+ * Validates content identity before acceptance into the block store:
29
+ * - Real identity: verifies signature matches public key, checks not banned/suspended
30
+ * - Alias identity: verifies alias is registered and active, signature matches alias key
31
+ * - Anonymous identity: verifies Membership_Proof is present and valid, content-bound
32
+ *
33
+ * @template TID - Platform ID type for frontend/backend DTO compatibility
34
+ */
35
+ export interface IIdentityValidator<TID extends PlatformID = Uint8Array> {
36
+ /**
37
+ * Validate content identity before ingestion.
38
+ * @param content - The content with identity to validate
39
+ * @returns Validation result with identity mode and resolved member ID
40
+ * @throws IdentityValidationError with a specific reason on failure
41
+ */
42
+ validateContent(content: ContentWithIdentity<TID>): Promise<IdentityValidationResult>;
43
+ }
44
+ //# sourceMappingURL=identityValidator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identityValidator.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/services/identityValidator.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAC7F,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAE3E;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,4CAA4C;IAC5C,KAAK,EAAE,OAAO,CAAC;IACf,iCAAiC;IACjC,YAAY,EAAE,YAAY,CAAC;IAC3B,yDAAyD;IACzD,gBAAgB,CAAC,EAAE,YAAY,CAAC;IAChC,8CAA8C;IAC9C,SAAS,CAAC,EAAE,2BAA2B,CAAC;CACzC;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,kBAAkB,CAAC,GAAG,SAAS,UAAU,GAAG,UAAU;IACrE;;;;;OAKG;IACH,eAAe,CACb,OAAO,EAAE,mBAAmB,CAAC,GAAG,CAAC,GAChC,OAAO,CAAC,wBAAwB,CAAC,CAAC;CACtC"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview IIdentityValidator interface with IdentityValidationResult.
4
+ *
5
+ * Validates content identity before ingestion into the block store.
6
+ * Dispatches to real identity, alias, or anonymous validation based on creatorId.
7
+ *
8
+ * @see Requirements 16
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ //# sourceMappingURL=identityValidator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"identityValidator.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/services/identityValidator.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG"}
@@ -1,4 +1,13 @@
1
1
  export type * from './cblServices';
2
2
  export type * from './fecService';
3
3
  export type * from './quorumService';
4
+ export type * from './contentIngestion';
5
+ export type * from './expirationScheduler';
6
+ export type * from './identitySealingPipeline';
7
+ export type * from './identityValidator';
8
+ export type * from './membershipProof';
9
+ export type * from './operatorPrompt';
10
+ export type * from './quorumDatabase';
11
+ export type * from './quorumStateMachine';
12
+ export type * from './redistributionConfig';
4
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/services/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,cAAc,CAAC;AAClC,mBAAmB,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/services/index.ts"],"names":[],"mappings":"AAAA,mBAAmB,eAAe,CAAC;AACnC,mBAAmB,cAAc,CAAC;AAClC,mBAAmB,iBAAiB,CAAC;AAGrC,mBAAmB,oBAAoB,CAAC;AACxC,mBAAmB,uBAAuB,CAAC;AAC3C,mBAAmB,2BAA2B,CAAC;AAC/C,mBAAmB,qBAAqB,CAAC;AACzC,mBAAmB,mBAAmB,CAAC;AACvC,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,kBAAkB,CAAC;AACtC,mBAAmB,sBAAsB,CAAC;AAC1C,mBAAmB,wBAAwB,CAAC"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * @fileoverview IMembershipProofService interface.
3
+ *
4
+ * Generates and verifies ring signatures proving quorum membership
5
+ * without revealing which specific member created the content.
6
+ *
7
+ * @see Requirements 18
8
+ */
9
+ import { PlatformID } from '@digitaldefiance/ecies-lib';
10
+ /**
11
+ * Interface for ring signature membership proof generation and verification.
12
+ *
13
+ * Anonymous content carries a ring signature proving the creator is one
14
+ * of the current quorum members without revealing which one. The proof
15
+ * is bound to the specific content hash, preventing reuse across content.
16
+ *
17
+ * @template TID - Platform ID type for frontend/backend DTO compatibility
18
+ */
19
+ export interface IMembershipProofService<TID extends PlatformID = Uint8Array> {
20
+ /**
21
+ * Generate a ring signature proving the signer is one of the current quorum members.
22
+ * The proof is bound to the specific content hash.
23
+ * @param signerPrivateKey - The signer's private key
24
+ * @param memberPublicKeys - Public keys of all current quorum members
25
+ * @param contentHash - Hash of the content being signed
26
+ * @returns The ring signature proof bytes
27
+ */
28
+ generateProof(signerPrivateKey: Uint8Array, memberPublicKeys: Uint8Array[], contentHash: Uint8Array): Promise<Uint8Array>;
29
+ /**
30
+ * Verify a membership proof against the current member set and content hash.
31
+ * @param proof - The ring signature proof to verify
32
+ * @param memberPublicKeys - Public keys of all current quorum members
33
+ * @param contentHash - Hash of the content the proof should be bound to
34
+ * @returns True if the proof is valid
35
+ */
36
+ verifyProof(proof: Uint8Array, memberPublicKeys: Uint8Array[], contentHash: Uint8Array): Promise<boolean>;
37
+ /** Generic marker for DTO compatibility */
38
+ _platformId?: TID;
39
+ }
40
+ //# sourceMappingURL=membershipProof.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"membershipProof.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/services/membershipProof.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD;;;;;;;;GAQG;AACH,MAAM,WAAW,uBAAuB,CAAC,GAAG,SAAS,UAAU,GAAG,UAAU;IAC1E;;;;;;;OAOG;IACH,aAAa,CACX,gBAAgB,EAAE,UAAU,EAC5B,gBAAgB,EAAE,UAAU,EAAE,EAC9B,WAAW,EAAE,UAAU,GACtB,OAAO,CAAC,UAAU,CAAC,CAAC;IAEvB;;;;;;OAMG;IACH,WAAW,CACT,KAAK,EAAE,UAAU,EACjB,gBAAgB,EAAE,UAAU,EAAE,EAC9B,WAAW,EAAE,UAAU,GACtB,OAAO,CAAC,OAAO,CAAC,CAAC;IAEpB,2CAA2C;IAC3C,WAAW,CAAC,EAAE,GAAG,CAAC;CACnB"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview IMembershipProofService interface.
4
+ *
5
+ * Generates and verifies ring signatures proving quorum membership
6
+ * without revealing which specific member created the content.
7
+ *
8
+ * @see Requirements 18
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ //# sourceMappingURL=membershipProof.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"membershipProof.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/services/membershipProof.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG"}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * @fileoverview IOperatorPrompt interface with ProposalDisplay and OperatorVoteResult.
3
+ *
4
+ * Interface for physical operator interaction during quorum voting.
5
+ * Implementations live in brightchain-api-lib (CLI) or brightchain-react (web UI).
6
+ *
7
+ * @see Requirements 6
8
+ */
9
+ import { ShortHexGuid } from '@digitaldefiance/ecies-lib';
10
+ import { ProposalActionType } from '../../enumerations/proposalActionType';
11
+ /**
12
+ * Display format for presenting a proposal to the operator for voting.
13
+ */
14
+ export interface ProposalDisplay {
15
+ /** Unique proposal identifier */
16
+ proposalId: ShortHexGuid;
17
+ /** Human-readable proposal description */
18
+ description: string;
19
+ /** The type of action this proposal triggers */
20
+ actionType: ProposalActionType;
21
+ /** Machine-readable action payload */
22
+ actionPayload: Record<string, unknown>;
23
+ /** ID of the member who submitted the proposal */
24
+ proposerMemberId: ShortHexGuid;
25
+ /** Timestamp after which the proposal expires */
26
+ expiresAt: Date;
27
+ /** Optional CBL reference for attached documentation */
28
+ attachmentCblId?: string;
29
+ /** Pre-fetched CBL content for operator review */
30
+ attachmentContent?: Uint8Array;
31
+ }
32
+ /**
33
+ * Result of an operator's vote on a proposal.
34
+ */
35
+ export interface OperatorVoteResult {
36
+ /** The operator's vote decision */
37
+ decision: 'approve' | 'reject';
38
+ /** Optional comment from the operator */
39
+ comment?: string;
40
+ /** Password for private key decryption, present only on approve */
41
+ password?: string;
42
+ }
43
+ /**
44
+ * Interface for physical operator interaction during quorum voting.
45
+ *
46
+ * No code path may release share material without going through this interface.
47
+ * Implementations must present the full proposal description and any attachment
48
+ * info, and require authentication on approve votes.
49
+ */
50
+ export interface IOperatorPrompt {
51
+ /**
52
+ * Present a proposal to the operator and collect their vote.
53
+ * Must display the full proposal description and any attachment info.
54
+ * Returns the vote decision and, if approved, the authenticated password.
55
+ * @param proposal - The proposal display information
56
+ * @returns The operator's vote result
57
+ */
58
+ promptForVote(proposal: ProposalDisplay): Promise<OperatorVoteResult>;
59
+ /**
60
+ * Check if the voting interface is locked for a given proposal.
61
+ * Voting is locked after 3 consecutive failed authentication attempts
62
+ * for a configurable cooldown period (default 300 seconds).
63
+ * @param proposalId - The proposal ID to check
64
+ * @returns True if voting is locked for this proposal
65
+ */
66
+ isLocked(proposalId: ShortHexGuid): boolean;
67
+ }
68
+ //# sourceMappingURL=operatorPrompt.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operatorPrompt.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/services/operatorPrompt.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAE3E;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,iCAAiC;IACjC,UAAU,EAAE,YAAY,CAAC;IACzB,0CAA0C;IAC1C,WAAW,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,UAAU,EAAE,kBAAkB,CAAC;IAC/B,sCAAsC;IACtC,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,kDAAkD;IAClD,gBAAgB,EAAE,YAAY,CAAC;IAC/B,iDAAiD;IACjD,SAAS,EAAE,IAAI,CAAC;IAChB,wDAAwD;IACxD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,kDAAkD;IAClD,iBAAiB,CAAC,EAAE,UAAU,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,mCAAmC;IACnC,QAAQ,EAAE,SAAS,GAAG,QAAQ,CAAC;IAC/B,yCAAyC;IACzC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;;OAMG;IACH,aAAa,CAAC,QAAQ,EAAE,eAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAEtE;;;;;;OAMG;IACH,QAAQ,CAAC,UAAU,EAAE,YAAY,GAAG,OAAO,CAAC;CAC7C"}
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ /**
3
+ * @fileoverview IOperatorPrompt interface with ProposalDisplay and OperatorVoteResult.
4
+ *
5
+ * Interface for physical operator interaction during quorum voting.
6
+ * Implementations live in brightchain-api-lib (CLI) or brightchain-react (web UI).
7
+ *
8
+ * @see Requirements 6
9
+ */
10
+ Object.defineProperty(exports, "__esModule", { value: true });
11
+ //# sourceMappingURL=operatorPrompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operatorPrompt.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/services/operatorPrompt.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG"}