@brightchain/brightchain-lib 0.13.0 → 0.15.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 (705) hide show
  1. package/brightchain-lib/BROWSER_COMPAT.md +54 -0
  2. package/package.json +15 -4
  3. package/src/browser.d.ts +1 -1
  4. package/src/browser.d.ts.map +1 -1
  5. package/src/browser.js +3 -3
  6. package/src/browser.js.map +1 -1
  7. package/src/lib/blocks/cblBase.d.ts +16 -1
  8. package/src/lib/blocks/cblBase.d.ts.map +1 -1
  9. package/src/lib/blocks/cblBase.js +33 -4
  10. package/src/lib/blocks/cblBase.js.map +1 -1
  11. package/src/lib/blocks/encryptedBlockFactory.d.ts +6 -1
  12. package/src/lib/blocks/encryptedBlockFactory.d.ts.map +1 -1
  13. package/src/lib/blocks/encryptedBlockFactory.js +14 -5
  14. package/src/lib/blocks/encryptedBlockFactory.js.map +1 -1
  15. package/src/lib/blocks/extendedCbl.d.ts.map +1 -1
  16. package/src/lib/blocks/extendedCbl.js +2 -1
  17. package/src/lib/blocks/extendedCbl.js.map +1 -1
  18. package/src/lib/blocks/handle.d.ts +5 -0
  19. package/src/lib/blocks/handle.d.ts.map +1 -1
  20. package/src/lib/blocks/handle.js.map +1 -1
  21. package/src/lib/blocks/handleTuple.d.ts +9 -1
  22. package/src/lib/blocks/handleTuple.d.ts.map +1 -1
  23. package/src/lib/blocks/handleTuple.js +23 -1
  24. package/src/lib/blocks/handleTuple.js.map +1 -1
  25. package/src/lib/blocks/index.d.ts +1 -0
  26. package/src/lib/blocks/index.d.ts.map +1 -1
  27. package/src/lib/blocks/index.js +1 -0
  28. package/src/lib/blocks/index.js.map +1 -1
  29. package/src/lib/blocks/memoryTuple.d.ts +9 -2
  30. package/src/lib/blocks/memoryTuple.d.ts.map +1 -1
  31. package/src/lib/blocks/memoryTuple.js +12 -3
  32. package/src/lib/blocks/memoryTuple.js.map +1 -1
  33. package/src/lib/blocks/vcbl.d.ts +27 -0
  34. package/src/lib/blocks/vcbl.d.ts.map +1 -0
  35. package/src/lib/blocks/vcbl.js +107 -0
  36. package/src/lib/blocks/vcbl.js.map +1 -0
  37. package/src/lib/constants.d.ts +5 -1
  38. package/src/lib/constants.d.ts.map +1 -1
  39. package/src/lib/constants.js +4 -0
  40. package/src/lib/constants.js.map +1 -1
  41. package/src/lib/crypto/index.d.ts +12 -0
  42. package/src/lib/crypto/index.d.ts.map +1 -0
  43. package/src/lib/crypto/index.js +23 -0
  44. package/src/lib/crypto/index.js.map +1 -0
  45. package/src/lib/crypto/platformCrypto.d.ts +132 -0
  46. package/src/lib/crypto/platformCrypto.d.ts.map +1 -0
  47. package/src/lib/crypto/platformCrypto.js +181 -0
  48. package/src/lib/crypto/platformCrypto.js.map +1 -0
  49. package/src/lib/enumeration-translations/blockType.d.ts.map +1 -1
  50. package/src/lib/enumeration-translations/blockType.js +16 -0
  51. package/src/lib/enumeration-translations/blockType.js.map +1 -1
  52. package/src/lib/enumerations/blockType.d.ts +12 -0
  53. package/src/lib/enumerations/blockType.d.ts.map +1 -1
  54. package/src/lib/enumerations/blockType.js +14 -0
  55. package/src/lib/enumerations/blockType.js.map +1 -1
  56. package/src/lib/enumerations/brightChainStrings.d.ts +5 -1
  57. package/src/lib/enumerations/brightChainStrings.d.ts.map +1 -1
  58. package/src/lib/enumerations/brightChainStrings.js +5 -1
  59. package/src/lib/enumerations/brightChainStrings.js.map +1 -1
  60. package/src/lib/enumerations/cblErrorType.d.ts +2 -1
  61. package/src/lib/enumerations/cblErrorType.d.ts.map +1 -1
  62. package/src/lib/enumerations/cblErrorType.js +1 -0
  63. package/src/lib/enumerations/cblErrorType.js.map +1 -1
  64. package/src/lib/enumerations/communication.d.ts +57 -0
  65. package/src/lib/enumerations/communication.d.ts.map +1 -0
  66. package/src/lib/enumerations/communication.js +89 -0
  67. package/src/lib/enumerations/communication.js.map +1 -0
  68. package/src/lib/enumerations/deviceType.d.ts +15 -0
  69. package/src/lib/enumerations/deviceType.d.ts.map +1 -0
  70. package/src/lib/enumerations/deviceType.js +19 -0
  71. package/src/lib/enumerations/deviceType.js.map +1 -0
  72. package/src/lib/enumerations/handleTupleErrorType.d.ts +2 -1
  73. package/src/lib/enumerations/handleTupleErrorType.d.ts.map +1 -1
  74. package/src/lib/enumerations/handleTupleErrorType.js +1 -0
  75. package/src/lib/enumerations/handleTupleErrorType.js.map +1 -1
  76. package/src/lib/enumerations/index.d.ts +6 -0
  77. package/src/lib/enumerations/index.d.ts.map +1 -1
  78. package/src/lib/enumerations/index.js +11 -0
  79. package/src/lib/enumerations/index.js.map +1 -1
  80. package/src/lib/enumerations/messaging/deliveryStatus.d.ts +50 -0
  81. package/src/lib/enumerations/messaging/deliveryStatus.d.ts.map +1 -0
  82. package/src/lib/enumerations/messaging/deliveryStatus.js +68 -0
  83. package/src/lib/enumerations/messaging/deliveryStatus.js.map +1 -0
  84. package/src/lib/enumerations/messaging/emailErrorType.d.ts +36 -0
  85. package/src/lib/enumerations/messaging/emailErrorType.d.ts.map +1 -0
  86. package/src/lib/enumerations/messaging/emailErrorType.js +46 -0
  87. package/src/lib/enumerations/messaging/emailErrorType.js.map +1 -0
  88. package/src/lib/enumerations/messaging/index.d.ts +2 -1
  89. package/src/lib/enumerations/messaging/index.d.ts.map +1 -1
  90. package/src/lib/enumerations/messaging/index.js +2 -1
  91. package/src/lib/enumerations/messaging/index.js.map +1 -1
  92. package/src/lib/enumerations/messaging/messageEncryptionScheme.d.ts +4 -2
  93. package/src/lib/enumerations/messaging/messageEncryptionScheme.d.ts.map +1 -1
  94. package/src/lib/enumerations/messaging/messageEncryptionScheme.js +3 -1
  95. package/src/lib/enumerations/messaging/messageEncryptionScheme.js.map +1 -1
  96. package/src/lib/enumerations/paperKeyPurpose.d.ts +15 -0
  97. package/src/lib/enumerations/paperKeyPurpose.d.ts.map +1 -0
  98. package/src/lib/enumerations/paperKeyPurpose.js +19 -0
  99. package/src/lib/enumerations/paperKeyPurpose.js.map +1 -0
  100. package/src/lib/enumerations/proofPlatform.d.ts +24 -0
  101. package/src/lib/enumerations/proofPlatform.d.ts.map +1 -0
  102. package/src/lib/enumerations/proofPlatform.js +28 -0
  103. package/src/lib/enumerations/proofPlatform.js.map +1 -0
  104. package/src/lib/enumerations/readConcern.d.ts +22 -0
  105. package/src/lib/enumerations/readConcern.d.ts.map +1 -0
  106. package/src/lib/enumerations/readConcern.js +26 -0
  107. package/src/lib/enumerations/readConcern.js.map +1 -0
  108. package/src/lib/enumerations/tupleErrorType.d.ts +2 -1
  109. package/src/lib/enumerations/tupleErrorType.d.ts.map +1 -1
  110. package/src/lib/enumerations/tupleErrorType.js +1 -0
  111. package/src/lib/enumerations/tupleErrorType.js.map +1 -1
  112. package/src/lib/enumerations/verificationStatus.d.ts +17 -0
  113. package/src/lib/enumerations/verificationStatus.d.ts.map +1 -0
  114. package/src/lib/enumerations/verificationStatus.js +21 -0
  115. package/src/lib/enumerations/verificationStatus.js.map +1 -0
  116. package/src/lib/errors/blockFetchError.d.ts +51 -0
  117. package/src/lib/errors/blockFetchError.d.ts.map +1 -0
  118. package/src/lib/errors/blockFetchError.js +63 -0
  119. package/src/lib/errors/blockFetchError.js.map +1 -0
  120. package/src/lib/errors/cblError.d.ts.map +1 -1
  121. package/src/lib/errors/cblError.js +1 -0
  122. package/src/lib/errors/cblError.js.map +1 -1
  123. package/src/lib/errors/handleTupleError.d.ts +10 -1
  124. package/src/lib/errors/handleTupleError.d.ts.map +1 -1
  125. package/src/lib/errors/handleTupleError.js +10 -1
  126. package/src/lib/errors/handleTupleError.js.map +1 -1
  127. package/src/lib/errors/index.d.ts +16 -0
  128. package/src/lib/errors/index.d.ts.map +1 -1
  129. package/src/lib/errors/index.js +22 -0
  130. package/src/lib/errors/index.js.map +1 -1
  131. package/src/lib/errors/messaging/emailError.d.ts +55 -0
  132. package/src/lib/errors/messaging/emailError.d.ts.map +1 -0
  133. package/src/lib/errors/messaging/emailError.js +64 -0
  134. package/src/lib/errors/messaging/emailError.js.map +1 -0
  135. package/src/lib/errors/messaging/index.d.ts +1 -0
  136. package/src/lib/errors/messaging/index.d.ts.map +1 -1
  137. package/src/lib/errors/messaging/index.js +1 -0
  138. package/src/lib/errors/messaging/index.js.map +1 -1
  139. package/src/lib/errors/poolDeletionError.d.ts +10 -0
  140. package/src/lib/errors/poolDeletionError.d.ts.map +1 -0
  141. package/src/lib/errors/poolDeletionError.js +16 -0
  142. package/src/lib/errors/poolDeletionError.js.map +1 -0
  143. package/src/lib/errors/poolDeletionTombstoneError.d.ts +12 -0
  144. package/src/lib/errors/poolDeletionTombstoneError.d.ts.map +1 -0
  145. package/src/lib/errors/poolDeletionTombstoneError.js +18 -0
  146. package/src/lib/errors/poolDeletionTombstoneError.js.map +1 -0
  147. package/src/lib/errors/tupleError.d.ts.map +1 -1
  148. package/src/lib/errors/tupleError.js +1 -0
  149. package/src/lib/errors/tupleError.js.map +1 -1
  150. package/src/lib/i18n/i18n-setup.d.ts +7 -2
  151. package/src/lib/i18n/i18n-setup.d.ts.map +1 -1
  152. package/src/lib/i18n/i18n-setup.js +84 -24
  153. package/src/lib/i18n/i18n-setup.js.map +1 -1
  154. package/src/lib/i18n/strings/englishUs.d.ts.map +1 -1
  155. package/src/lib/i18n/strings/englishUs.js +4 -0
  156. package/src/lib/i18n/strings/englishUs.js.map +1 -1
  157. package/src/lib/i18n/strings/french.d.ts.map +1 -1
  158. package/src/lib/i18n/strings/french.js +4 -0
  159. package/src/lib/i18n/strings/french.js.map +1 -1
  160. package/src/lib/i18n/strings/german.d.ts.map +1 -1
  161. package/src/lib/i18n/strings/german.js +4 -0
  162. package/src/lib/i18n/strings/german.js.map +1 -1
  163. package/src/lib/i18n/strings/japanese.d.ts.map +1 -1
  164. package/src/lib/i18n/strings/japanese.js +4 -0
  165. package/src/lib/i18n/strings/japanese.js.map +1 -1
  166. package/src/lib/i18n/strings/mandarin.d.ts.map +1 -1
  167. package/src/lib/i18n/strings/mandarin.js +4 -0
  168. package/src/lib/i18n/strings/mandarin.js.map +1 -1
  169. package/src/lib/i18n/strings/spanish.d.ts.map +1 -1
  170. package/src/lib/i18n/strings/spanish.js +4 -0
  171. package/src/lib/i18n/strings/spanish.js.map +1 -1
  172. package/src/lib/i18n/strings/ukrainian.d.ts.map +1 -1
  173. package/src/lib/i18n/strings/ukrainian.js +4 -0
  174. package/src/lib/i18n/strings/ukrainian.js.map +1 -1
  175. package/src/lib/index.d.ts +4 -0
  176. package/src/lib/index.d.ts.map +1 -1
  177. package/src/lib/index.js +4 -0
  178. package/src/lib/index.js.map +1 -1
  179. package/src/lib/interfaces/auth/index.d.ts +4 -0
  180. package/src/lib/interfaces/auth/index.d.ts.map +1 -0
  181. package/src/lib/interfaces/auth/index.js +8 -0
  182. package/src/lib/interfaces/auth/index.js.map +1 -0
  183. package/src/lib/interfaces/auth/nodeAuthenticator.d.ts +19 -0
  184. package/src/lib/interfaces/auth/nodeAuthenticator.d.ts.map +1 -0
  185. package/src/lib/interfaces/auth/nodeAuthenticator.js +3 -0
  186. package/src/lib/interfaces/auth/nodeAuthenticator.js.map +1 -0
  187. package/src/lib/interfaces/auth/poolAcl.d.ts +65 -0
  188. package/src/lib/interfaces/auth/poolAcl.d.ts.map +1 -0
  189. package/src/lib/interfaces/auth/poolAcl.js +52 -0
  190. package/src/lib/interfaces/auth/poolAcl.js.map +1 -0
  191. package/src/lib/interfaces/availability/availabilityService.d.ts +5 -3
  192. package/src/lib/interfaces/availability/availabilityService.d.ts.map +1 -1
  193. package/src/lib/interfaces/availability/availabilityService.js.map +1 -1
  194. package/src/lib/interfaces/availability/blockRegistry.d.ts +52 -3
  195. package/src/lib/interfaces/availability/blockRegistry.d.ts.map +1 -1
  196. package/src/lib/interfaces/availability/blockRegistry.js +1 -1
  197. package/src/lib/interfaces/availability/discoveryProtocol.d.ts +81 -3
  198. package/src/lib/interfaces/availability/discoveryProtocol.d.ts.map +1 -1
  199. package/src/lib/interfaces/availability/discoveryProtocol.js.map +1 -1
  200. package/src/lib/interfaces/availability/gossipService.d.ts +279 -8
  201. package/src/lib/interfaces/availability/gossipService.d.ts.map +1 -1
  202. package/src/lib/interfaces/availability/gossipService.js +232 -0
  203. package/src/lib/interfaces/availability/gossipService.js.map +1 -1
  204. package/src/lib/interfaces/availability/index.d.ts +1 -0
  205. package/src/lib/interfaces/availability/index.d.ts.map +1 -1
  206. package/src/lib/interfaces/availability/index.js +1 -0
  207. package/src/lib/interfaces/availability/index.js.map +1 -1
  208. package/src/lib/interfaces/availability/locationRecord.d.ts +6 -0
  209. package/src/lib/interfaces/availability/locationRecord.d.ts.map +1 -1
  210. package/src/lib/interfaces/availability/locationRecord.js +12 -0
  211. package/src/lib/interfaces/availability/locationRecord.js.map +1 -1
  212. package/src/lib/interfaces/availability/poolDeletionTombstone.d.ts +40 -0
  213. package/src/lib/interfaces/availability/poolDeletionTombstone.d.ts.map +1 -0
  214. package/src/lib/interfaces/availability/poolDeletionTombstone.js +19 -0
  215. package/src/lib/interfaces/availability/poolDeletionTombstone.js.map +1 -0
  216. package/src/lib/interfaces/availability/reconciliationService.d.ts +52 -0
  217. package/src/lib/interfaces/availability/reconciliationService.d.ts.map +1 -1
  218. package/src/lib/interfaces/availability/reconciliationService.js.map +1 -1
  219. package/src/lib/interfaces/blockCapacity.d.ts +9 -0
  220. package/src/lib/interfaces/blockCapacity.d.ts.map +1 -1
  221. package/src/lib/interfaces/blockEncryption.d.ts +4 -2
  222. package/src/lib/interfaces/blockEncryption.d.ts.map +1 -1
  223. package/src/lib/interfaces/blockFetch/blockFetchTransport.d.ts +26 -0
  224. package/src/lib/interfaces/blockFetch/blockFetchTransport.d.ts.map +1 -0
  225. package/src/lib/interfaces/blockFetch/blockFetchTransport.js +12 -0
  226. package/src/lib/interfaces/blockFetch/blockFetchTransport.js.map +1 -0
  227. package/src/lib/interfaces/blockFetch/blockFetcher.d.ts +71 -0
  228. package/src/lib/interfaces/blockFetch/blockFetcher.d.ts.map +1 -0
  229. package/src/lib/interfaces/blockFetch/blockFetcher.js +22 -0
  230. package/src/lib/interfaces/blockFetch/blockFetcher.js.map +1 -0
  231. package/src/lib/interfaces/blockFetch/enrichedQueryResult.d.ts +43 -0
  232. package/src/lib/interfaces/blockFetch/enrichedQueryResult.d.ts.map +1 -0
  233. package/src/lib/interfaces/blockFetch/enrichedQueryResult.js +13 -0
  234. package/src/lib/interfaces/blockFetch/enrichedQueryResult.js.map +1 -0
  235. package/src/lib/interfaces/blockFetch/fetchQueue.d.ts +70 -0
  236. package/src/lib/interfaces/blockFetch/fetchQueue.d.ts.map +1 -0
  237. package/src/lib/interfaces/blockFetch/fetchQueue.js +18 -0
  238. package/src/lib/interfaces/blockFetch/fetchQueue.js.map +1 -0
  239. package/src/lib/interfaces/blockFetch/index.d.ts +10 -0
  240. package/src/lib/interfaces/blockFetch/index.d.ts.map +1 -0
  241. package/src/lib/interfaces/blockFetch/index.js +13 -0
  242. package/src/lib/interfaces/blockFetch/index.js.map +1 -0
  243. package/src/lib/interfaces/blocks/index.d.ts +1 -0
  244. package/src/lib/interfaces/blocks/index.d.ts.map +1 -1
  245. package/src/lib/interfaces/blocks/vcbl.d.ts +16 -0
  246. package/src/lib/interfaces/blocks/vcbl.d.ts.map +1 -0
  247. package/src/lib/interfaces/{messaging/messageRouter.js → blocks/vcbl.js} +1 -1
  248. package/src/lib/interfaces/blocks/vcbl.js.map +1 -0
  249. package/src/lib/interfaces/brightpass/auditLog.d.ts +25 -0
  250. package/src/lib/interfaces/brightpass/auditLog.d.ts.map +1 -0
  251. package/src/lib/interfaces/brightpass/auditLog.js +21 -0
  252. package/src/lib/interfaces/brightpass/auditLog.js.map +1 -0
  253. package/src/lib/interfaces/brightpass/emergencyAccess.d.ts +11 -0
  254. package/src/lib/interfaces/brightpass/emergencyAccess.d.ts.map +1 -0
  255. package/src/lib/interfaces/{network/networkTransport.js → brightpass/emergencyAccess.js} +1 -1
  256. package/src/lib/interfaces/brightpass/emergencyAccess.js.map +1 -0
  257. package/src/lib/interfaces/brightpass/entryPropertyRecord.d.ts +11 -0
  258. package/src/lib/interfaces/brightpass/entryPropertyRecord.d.ts.map +1 -0
  259. package/src/lib/interfaces/brightpass/entryPropertyRecord.js +3 -0
  260. package/src/lib/interfaces/brightpass/entryPropertyRecord.js.map +1 -0
  261. package/src/lib/interfaces/brightpass/importTypes.d.ts +10 -0
  262. package/src/lib/interfaces/brightpass/importTypes.d.ts.map +1 -0
  263. package/src/lib/interfaces/brightpass/importTypes.js +3 -0
  264. package/src/lib/interfaces/brightpass/importTypes.js.map +1 -0
  265. package/src/lib/interfaces/brightpass/index.d.ts +7 -0
  266. package/src/lib/interfaces/brightpass/index.d.ts.map +1 -0
  267. package/src/lib/interfaces/brightpass/index.js +10 -0
  268. package/src/lib/interfaces/brightpass/index.js.map +1 -0
  269. package/src/lib/interfaces/brightpass/vaultEntry.d.ts +48 -0
  270. package/src/lib/interfaces/brightpass/vaultEntry.d.ts.map +1 -0
  271. package/src/lib/interfaces/brightpass/vaultEntry.js +3 -0
  272. package/src/lib/interfaces/brightpass/vaultEntry.js.map +1 -0
  273. package/src/lib/interfaces/brightpass/vaultMetadata.d.ts +34 -0
  274. package/src/lib/interfaces/brightpass/vaultMetadata.d.ts.map +1 -0
  275. package/src/lib/interfaces/brightpass/vaultMetadata.js +3 -0
  276. package/src/lib/interfaces/brightpass/vaultMetadata.js.map +1 -0
  277. package/src/lib/interfaces/clusterKeys.d.ts +4 -2
  278. package/src/lib/interfaces/clusterKeys.d.ts.map +1 -1
  279. package/src/lib/interfaces/communication.d.ts +173 -0
  280. package/src/lib/interfaces/communication.d.ts.map +1 -0
  281. package/src/lib/interfaces/communication.js +17 -0
  282. package/src/lib/interfaces/communication.js.map +1 -0
  283. package/src/lib/interfaces/communicationEvents.d.ts +168 -0
  284. package/src/lib/interfaces/communicationEvents.d.ts.map +1 -0
  285. package/src/lib/interfaces/communicationEvents.js +12 -0
  286. package/src/lib/interfaces/communicationEvents.js.map +1 -0
  287. package/src/lib/interfaces/crypto/ethereumWallet.d.ts +72 -0
  288. package/src/lib/interfaces/crypto/ethereumWallet.d.ts.map +1 -0
  289. package/src/lib/interfaces/crypto/ethereumWallet.js +12 -0
  290. package/src/lib/interfaces/crypto/ethereumWallet.js.map +1 -0
  291. package/src/lib/interfaces/crypto/gitSignature.d.ts +95 -0
  292. package/src/lib/interfaces/crypto/gitSignature.d.ts.map +1 -0
  293. package/src/lib/interfaces/crypto/gitSignature.js +12 -0
  294. package/src/lib/interfaces/crypto/gitSignature.js.map +1 -0
  295. package/src/lib/interfaces/crypto/index.d.ts +3 -0
  296. package/src/lib/interfaces/crypto/index.d.ts.map +1 -0
  297. package/src/lib/interfaces/crypto/index.js +3 -0
  298. package/src/lib/interfaces/crypto/index.js.map +1 -0
  299. package/src/lib/interfaces/dataKeyComponents.d.ts +7 -2
  300. package/src/lib/interfaces/dataKeyComponents.d.ts.map +1 -1
  301. package/src/lib/interfaces/encryptedBlockCreator.d.ts +4 -2
  302. package/src/lib/interfaces/encryptedBlockCreator.d.ts.map +1 -1
  303. package/src/lib/interfaces/events/communicationEventEmitter.d.ts +65 -0
  304. package/src/lib/interfaces/events/communicationEventEmitter.d.ts.map +1 -0
  305. package/src/lib/interfaces/events/communicationEventEmitter.js +60 -0
  306. package/src/lib/interfaces/events/communicationEventEmitter.js.map +1 -0
  307. package/src/lib/interfaces/events/index.d.ts +2 -0
  308. package/src/lib/interfaces/events/index.d.ts.map +1 -0
  309. package/src/lib/interfaces/events/index.js +5 -0
  310. package/src/lib/interfaces/events/index.js.map +1 -0
  311. package/src/lib/interfaces/failableResult.d.ts +15 -0
  312. package/src/lib/interfaces/failableResult.d.ts.map +1 -0
  313. package/src/lib/interfaces/failableResult.js +3 -0
  314. package/src/lib/interfaces/failableResult.js.map +1 -0
  315. package/src/lib/interfaces/identity/device.d.ts +59 -0
  316. package/src/lib/interfaces/identity/device.d.ts.map +1 -0
  317. package/src/lib/interfaces/identity/device.js +17 -0
  318. package/src/lib/interfaces/identity/device.js.map +1 -0
  319. package/src/lib/interfaces/identity/deviceKeyStorage.d.ts +71 -0
  320. package/src/lib/interfaces/identity/deviceKeyStorage.d.ts.map +1 -0
  321. package/src/lib/interfaces/identity/deviceKeyStorage.js +16 -0
  322. package/src/lib/interfaces/identity/deviceKeyStorage.js.map +1 -0
  323. package/src/lib/interfaces/identity/identityProof.d.ts +90 -0
  324. package/src/lib/interfaces/identity/identityProof.d.ts.map +1 -0
  325. package/src/lib/interfaces/identity/identityProof.js +18 -0
  326. package/src/lib/interfaces/identity/identityProof.js.map +1 -0
  327. package/src/lib/interfaces/identity/index.d.ts +7 -0
  328. package/src/lib/interfaces/identity/index.d.ts.map +1 -0
  329. package/src/lib/interfaces/identity/index.js +3 -0
  330. package/src/lib/interfaces/identity/index.js.map +1 -0
  331. package/src/lib/interfaces/identity/paperKey.d.ts +97 -0
  332. package/src/lib/interfaces/identity/paperKey.d.ts.map +1 -0
  333. package/src/lib/interfaces/identity/paperKey.js +17 -0
  334. package/src/lib/interfaces/identity/paperKey.js.map +1 -0
  335. package/src/lib/interfaces/identity/publicProfile.d.ts +74 -0
  336. package/src/lib/interfaces/identity/publicProfile.d.ts.map +1 -0
  337. package/src/lib/interfaces/identity/publicProfile.js +18 -0
  338. package/src/lib/interfaces/identity/publicProfile.js.map +1 -0
  339. package/src/lib/interfaces/identity/splitPaperKey.d.ts +73 -0
  340. package/src/lib/interfaces/identity/splitPaperKey.d.ts.map +1 -0
  341. package/src/lib/interfaces/identity/splitPaperKey.js +20 -0
  342. package/src/lib/interfaces/identity/splitPaperKey.js.map +1 -0
  343. package/src/lib/interfaces/index.d.ts +11 -2
  344. package/src/lib/interfaces/index.d.ts.map +1 -1
  345. package/src/lib/interfaces/index.js +12 -0
  346. package/src/lib/interfaces/index.js.map +1 -1
  347. package/src/lib/interfaces/messaging/attachmentMetadata.d.ts +47 -0
  348. package/src/lib/interfaces/messaging/attachmentMetadata.d.ts.map +1 -0
  349. package/src/lib/interfaces/messaging/attachmentMetadata.js +3 -0
  350. package/src/lib/interfaces/messaging/attachmentMetadata.js.map +1 -0
  351. package/src/lib/interfaces/messaging/emailAddress.d.ts +210 -0
  352. package/src/lib/interfaces/messaging/emailAddress.d.ts.map +1 -0
  353. package/src/lib/interfaces/messaging/emailAddress.js +213 -0
  354. package/src/lib/interfaces/messaging/emailAddress.js.map +1 -0
  355. package/src/lib/interfaces/messaging/emailDelivery.d.ts +80 -0
  356. package/src/lib/interfaces/messaging/emailDelivery.d.ts.map +1 -0
  357. package/src/lib/interfaces/messaging/emailDelivery.js +50 -0
  358. package/src/lib/interfaces/messaging/emailDelivery.js.map +1 -0
  359. package/src/lib/interfaces/messaging/emailMetadata.d.ts +269 -0
  360. package/src/lib/interfaces/messaging/emailMetadata.d.ts.map +1 -0
  361. package/src/lib/interfaces/messaging/emailMetadata.js +16 -0
  362. package/src/lib/interfaces/messaging/emailMetadata.js.map +1 -0
  363. package/src/lib/interfaces/messaging/index.d.ts +5 -1
  364. package/src/lib/interfaces/messaging/index.d.ts.map +1 -1
  365. package/src/lib/interfaces/messaging/index.js +5 -1
  366. package/src/lib/interfaces/messaging/index.js.map +1 -1
  367. package/src/lib/interfaces/messaging/messageMetadata.d.ts +2 -2
  368. package/src/lib/interfaces/messaging/messageMetadata.d.ts.map +1 -1
  369. package/src/lib/interfaces/messaging/messageMetadataStore.d.ts +2 -2
  370. package/src/lib/interfaces/messaging/messageMetadataStore.d.ts.map +1 -1
  371. package/src/lib/interfaces/messaging/mimePart.d.ts +214 -0
  372. package/src/lib/interfaces/messaging/mimePart.d.ts.map +1 -0
  373. package/src/lib/interfaces/messaging/mimePart.js +71 -0
  374. package/src/lib/interfaces/messaging/mimePart.js.map +1 -0
  375. package/src/lib/interfaces/network/index.d.ts +0 -1
  376. package/src/lib/interfaces/network/index.d.ts.map +1 -1
  377. package/src/lib/interfaces/network/node.d.ts +4 -2
  378. package/src/lib/interfaces/network/node.d.ts.map +1 -1
  379. package/src/lib/interfaces/network/nodeAdvertisement.d.ts +4 -2
  380. package/src/lib/interfaces/network/nodeAdvertisement.d.ts.map +1 -1
  381. package/src/lib/interfaces/privateVotingDerivation.d.ts +7 -2
  382. package/src/lib/interfaces/privateVotingDerivation.d.ts.map +1 -1
  383. package/src/lib/interfaces/requests/communicationRequests.d.ts +154 -0
  384. package/src/lib/interfaces/requests/communicationRequests.d.ts.map +1 -0
  385. package/src/lib/interfaces/requests/communicationRequests.js +10 -0
  386. package/src/lib/interfaces/requests/communicationRequests.js.map +1 -0
  387. package/src/lib/interfaces/requests/index.d.ts +2 -0
  388. package/src/lib/interfaces/requests/index.d.ts.map +1 -0
  389. package/src/lib/interfaces/requests/index.js +3 -0
  390. package/src/lib/interfaces/requests/index.js.map +1 -0
  391. package/src/lib/interfaces/responses/blockDataResponse.d.ts +11 -0
  392. package/src/lib/interfaces/responses/blockDataResponse.d.ts.map +1 -0
  393. package/src/lib/interfaces/responses/blockDataResponse.js +3 -0
  394. package/src/lib/interfaces/responses/blockDataResponse.js.map +1 -0
  395. package/src/lib/interfaces/responses/communicationResponses.d.ts +82 -0
  396. package/src/lib/interfaces/responses/communicationResponses.d.ts.map +1 -0
  397. package/src/lib/interfaces/responses/communicationResponses.js +17 -0
  398. package/src/lib/interfaces/responses/communicationResponses.js.map +1 -0
  399. package/src/lib/interfaces/responses/cryptoResponses.d.ts +30 -0
  400. package/src/lib/interfaces/responses/cryptoResponses.d.ts.map +1 -0
  401. package/src/lib/interfaces/responses/cryptoResponses.js +12 -0
  402. package/src/lib/interfaces/responses/cryptoResponses.js.map +1 -0
  403. package/src/lib/interfaces/responses/deviceResponses.d.ts +26 -0
  404. package/src/lib/interfaces/responses/deviceResponses.d.ts.map +1 -0
  405. package/src/lib/interfaces/responses/deviceResponses.js +15 -0
  406. package/src/lib/interfaces/responses/deviceResponses.js.map +1 -0
  407. package/src/lib/interfaces/responses/directoryResponses.d.ts +26 -0
  408. package/src/lib/interfaces/responses/directoryResponses.d.ts.map +1 -0
  409. package/src/lib/interfaces/responses/directoryResponses.js +12 -0
  410. package/src/lib/interfaces/responses/directoryResponses.js.map +1 -0
  411. package/src/lib/interfaces/responses/emailResponses.d.ts +40 -0
  412. package/src/lib/interfaces/responses/emailResponses.d.ts.map +1 -0
  413. package/src/lib/interfaces/responses/emailResponses.js +18 -0
  414. package/src/lib/interfaces/responses/emailResponses.js.map +1 -0
  415. package/src/lib/interfaces/responses/explodingMessageResponses.d.ts +42 -0
  416. package/src/lib/interfaces/responses/explodingMessageResponses.d.ts.map +1 -0
  417. package/src/lib/interfaces/responses/explodingMessageResponses.js +11 -0
  418. package/src/lib/interfaces/responses/explodingMessageResponses.js.map +1 -0
  419. package/src/lib/interfaces/responses/identityProofResponses.d.ts +33 -0
  420. package/src/lib/interfaces/responses/identityProofResponses.d.ts.map +1 -0
  421. package/src/lib/interfaces/responses/identityProofResponses.js +12 -0
  422. package/src/lib/interfaces/responses/identityProofResponses.js.map +1 -0
  423. package/src/lib/interfaces/responses/index.d.ts +3 -1
  424. package/src/lib/interfaces/responses/index.d.ts.map +1 -1
  425. package/src/lib/interfaces/sealResults.d.ts +7 -2
  426. package/src/lib/interfaces/sealResults.d.ts.map +1 -1
  427. package/src/lib/interfaces/services/fecService.d.ts +7 -5
  428. package/src/lib/interfaces/services/fecService.d.ts.map +1 -1
  429. package/src/lib/interfaces/services/fecService.js +2 -0
  430. package/src/lib/interfaces/services/fecService.js.map +1 -1
  431. package/src/lib/interfaces/singleEncryptedBlockDetails.d.ts +7 -2
  432. package/src/lib/interfaces/singleEncryptedBlockDetails.d.ts.map +1 -1
  433. package/src/lib/interfaces/storage/blockMetadata.d.ts +8 -1
  434. package/src/lib/interfaces/storage/blockMetadata.d.ts.map +1 -1
  435. package/src/lib/interfaces/storage/blockMetadata.js +3 -1
  436. package/src/lib/interfaces/storage/blockMetadata.js.map +1 -1
  437. package/src/lib/interfaces/storage/cblIndex.d.ts +141 -0
  438. package/src/lib/interfaces/storage/cblIndex.d.ts.map +1 -0
  439. package/src/lib/interfaces/storage/cblIndex.js +28 -0
  440. package/src/lib/interfaces/storage/cblIndex.js.map +1 -0
  441. package/src/lib/interfaces/storage/clientSession.d.ts +22 -0
  442. package/src/lib/interfaces/storage/clientSession.d.ts.map +1 -0
  443. package/src/lib/interfaces/storage/clientSession.js +3 -0
  444. package/src/lib/interfaces/storage/clientSession.js.map +1 -0
  445. package/src/lib/interfaces/storage/collection.d.ts +80 -0
  446. package/src/lib/interfaces/storage/collection.d.ts.map +1 -0
  447. package/src/lib/interfaces/storage/collection.js +3 -0
  448. package/src/lib/interfaces/storage/collection.js.map +1 -0
  449. package/src/lib/interfaces/storage/database.d.ts +30 -0
  450. package/src/lib/interfaces/storage/database.d.ts.map +1 -0
  451. package/src/lib/interfaces/storage/database.js +3 -0
  452. package/src/lib/interfaces/storage/database.js.map +1 -0
  453. package/src/lib/interfaces/storage/databaseLifecycleHooks.d.ts +43 -0
  454. package/src/lib/interfaces/storage/databaseLifecycleHooks.d.ts.map +1 -0
  455. package/src/lib/interfaces/storage/databaseLifecycleHooks.js +3 -0
  456. package/src/lib/interfaces/storage/databaseLifecycleHooks.js.map +1 -0
  457. package/src/lib/interfaces/storage/documentTypes.d.ts +413 -0
  458. package/src/lib/interfaces/storage/documentTypes.d.ts.map +1 -0
  459. package/src/lib/interfaces/storage/documentTypes.js +8 -0
  460. package/src/lib/interfaces/storage/documentTypes.js.map +1 -0
  461. package/src/lib/interfaces/storage/encryptedPool.d.ts +64 -0
  462. package/src/lib/interfaces/storage/encryptedPool.d.ts.map +1 -0
  463. package/src/lib/interfaces/storage/encryptedPool.js +26 -0
  464. package/src/lib/interfaces/storage/encryptedPool.js.map +1 -0
  465. package/src/lib/interfaces/storage/headRegistry.d.ts +128 -0
  466. package/src/lib/interfaces/storage/headRegistry.d.ts.map +1 -0
  467. package/src/lib/interfaces/storage/headRegistry.js +3 -0
  468. package/src/lib/interfaces/storage/headRegistry.js.map +1 -0
  469. package/src/lib/interfaces/storage/index.d.ts +14 -0
  470. package/src/lib/interfaces/storage/index.d.ts.map +1 -1
  471. package/src/lib/interfaces/storage/index.js +14 -1
  472. package/src/lib/interfaces/storage/index.js.map +1 -1
  473. package/src/lib/interfaces/storage/pooledBlockStore.d.ts +163 -0
  474. package/src/lib/interfaces/storage/pooledBlockStore.d.ts.map +1 -0
  475. package/src/lib/interfaces/storage/pooledBlockStore.js +77 -0
  476. package/src/lib/interfaces/storage/pooledBlockStore.js.map +1 -0
  477. package/src/lib/interfaces/storage/readConcernBlockStore.d.ts +47 -0
  478. package/src/lib/interfaces/storage/readConcernBlockStore.d.ts.map +1 -0
  479. package/src/lib/interfaces/storage/readConcernBlockStore.js +29 -0
  480. package/src/lib/interfaces/storage/readConcernBlockStore.js.map +1 -0
  481. package/src/lib/interfaces/symmetricEncryptionResults.d.ts +7 -5
  482. package/src/lib/interfaces/symmetricEncryptionResults.d.ts.map +1 -1
  483. package/src/lib/schemas/messaging/messageMetadataSchema.d.ts.map +1 -1
  484. package/src/lib/schemas/messaging/messageMetadataSchema.js.map +1 -1
  485. package/src/lib/services/blockCapacity.service.d.ts.map +1 -1
  486. package/src/lib/services/blockCapacity.service.js +15 -0
  487. package/src/lib/services/blockCapacity.service.js.map +1 -1
  488. package/src/lib/services/brightpass/auditLogger.d.ts +41 -0
  489. package/src/lib/services/brightpass/auditLogger.d.ts.map +1 -0
  490. package/src/lib/services/brightpass/auditLogger.js +47 -0
  491. package/src/lib/services/brightpass/auditLogger.js.map +1 -0
  492. package/src/lib/services/brightpass/breachDetector.d.ts +68 -0
  493. package/src/lib/services/brightpass/breachDetector.d.ts.map +1 -0
  494. package/src/lib/services/brightpass/breachDetector.js +102 -0
  495. package/src/lib/services/brightpass/breachDetector.js.map +1 -0
  496. package/src/lib/services/brightpass/importParser.d.ts +105 -0
  497. package/src/lib/services/brightpass/importParser.d.ts.map +1 -0
  498. package/src/lib/services/brightpass/importParser.js +380 -0
  499. package/src/lib/services/brightpass/importParser.js.map +1 -0
  500. package/src/lib/services/brightpass/index.d.ts +16 -0
  501. package/src/lib/services/brightpass/index.d.ts.map +1 -0
  502. package/src/lib/services/brightpass/index.js +19 -0
  503. package/src/lib/services/brightpass/index.js.map +1 -0
  504. package/src/lib/services/brightpass/passwordGenerator.d.ts +111 -0
  505. package/src/lib/services/brightpass/passwordGenerator.d.ts.map +1 -0
  506. package/src/lib/services/brightpass/passwordGenerator.js +162 -0
  507. package/src/lib/services/brightpass/passwordGenerator.js.map +1 -0
  508. package/src/lib/services/brightpass/totpEngine.d.ts +191 -0
  509. package/src/lib/services/brightpass/totpEngine.d.ts.map +1 -0
  510. package/src/lib/services/brightpass/totpEngine.js +198 -0
  511. package/src/lib/services/brightpass/totpEngine.js.map +1 -0
  512. package/src/lib/services/brightpass/vaultKeyDerivation.d.ts +26 -0
  513. package/src/lib/services/brightpass/vaultKeyDerivation.d.ts.map +1 -0
  514. package/src/lib/services/brightpass/vaultKeyDerivation.js +42 -0
  515. package/src/lib/services/brightpass/vaultKeyDerivation.js.map +1 -0
  516. package/src/lib/services/brightpass/vaultSerializer.d.ts +14 -0
  517. package/src/lib/services/brightpass/vaultSerializer.d.ts.map +1 -0
  518. package/src/lib/services/brightpass/vaultSerializer.js +77 -0
  519. package/src/lib/services/brightpass/vaultSerializer.js.map +1 -0
  520. package/src/lib/services/cblService.d.ts +4 -2
  521. package/src/lib/services/cblService.d.ts.map +1 -1
  522. package/src/lib/services/cblService.js +8 -4
  523. package/src/lib/services/cblService.js.map +1 -1
  524. package/src/lib/services/communication/channelService.d.ts +208 -0
  525. package/src/lib/services/communication/channelService.d.ts.map +1 -0
  526. package/src/lib/services/communication/channelService.js +575 -0
  527. package/src/lib/services/communication/channelService.js.map +1 -0
  528. package/src/lib/services/communication/conversationService.d.ts +130 -0
  529. package/src/lib/services/communication/conversationService.d.ts.map +1 -0
  530. package/src/lib/services/communication/conversationService.js +279 -0
  531. package/src/lib/services/communication/conversationService.js.map +1 -0
  532. package/src/lib/services/communication/explodingMessageService.d.ts +168 -0
  533. package/src/lib/services/communication/explodingMessageService.d.ts.map +1 -0
  534. package/src/lib/services/communication/explodingMessageService.js +287 -0
  535. package/src/lib/services/communication/explodingMessageService.js.map +1 -0
  536. package/src/lib/services/communication/groupService.d.ts +165 -0
  537. package/src/lib/services/communication/groupService.d.ts.map +1 -0
  538. package/src/lib/services/communication/groupService.js +437 -0
  539. package/src/lib/services/communication/groupService.js.map +1 -0
  540. package/src/lib/services/communication/index.d.ts +16 -0
  541. package/src/lib/services/communication/index.d.ts.map +1 -0
  542. package/src/lib/services/communication/index.js +63 -0
  543. package/src/lib/services/communication/index.js.map +1 -0
  544. package/src/lib/services/communication/messageOperationsService.d.ts +81 -0
  545. package/src/lib/services/communication/messageOperationsService.d.ts.map +1 -0
  546. package/src/lib/services/communication/messageOperationsService.js +162 -0
  547. package/src/lib/services/communication/messageOperationsService.js.map +1 -0
  548. package/src/lib/services/communication/permissionService.d.ts +47 -0
  549. package/src/lib/services/communication/permissionService.d.ts.map +1 -0
  550. package/src/lib/services/communication/permissionService.js +82 -0
  551. package/src/lib/services/communication/permissionService.js.map +1 -0
  552. package/src/lib/services/communication/searchService.d.ts +30 -0
  553. package/src/lib/services/communication/searchService.d.ts.map +1 -0
  554. package/src/lib/services/communication/searchService.js +83 -0
  555. package/src/lib/services/communication/searchService.js.map +1 -0
  556. package/src/lib/services/crypto/ethereumWalletService.d.ts +159 -0
  557. package/src/lib/services/crypto/ethereumWalletService.d.ts.map +1 -0
  558. package/src/lib/services/crypto/ethereumWalletService.js +345 -0
  559. package/src/lib/services/crypto/ethereumWalletService.js.map +1 -0
  560. package/src/lib/services/crypto/gitSigningService.d.ts +145 -0
  561. package/src/lib/services/crypto/gitSigningService.d.ts.map +1 -0
  562. package/src/lib/services/crypto/gitSigningService.js +291 -0
  563. package/src/lib/services/crypto/gitSigningService.js.map +1 -0
  564. package/src/lib/services/crypto/index.d.ts +3 -0
  565. package/src/lib/services/crypto/index.d.ts.map +1 -0
  566. package/src/lib/services/crypto/index.js +6 -0
  567. package/src/lib/services/crypto/index.js.map +1 -0
  568. package/src/lib/services/identity/deviceProvisioningService.d.ts +146 -0
  569. package/src/lib/services/identity/deviceProvisioningService.d.ts.map +1 -0
  570. package/src/lib/services/identity/deviceProvisioningService.js +219 -0
  571. package/src/lib/services/identity/deviceProvisioningService.js.map +1 -0
  572. package/src/lib/services/identity/identityProofService.d.ts +139 -0
  573. package/src/lib/services/identity/identityProofService.d.ts.map +1 -0
  574. package/src/lib/services/identity/identityProofService.js +245 -0
  575. package/src/lib/services/identity/identityProofService.js.map +1 -0
  576. package/src/lib/services/identity/index.d.ts +14 -0
  577. package/src/lib/services/identity/index.d.ts.map +1 -0
  578. package/src/lib/services/identity/index.js +17 -0
  579. package/src/lib/services/identity/index.js.map +1 -0
  580. package/src/lib/services/identity/memberIdentityProofService.d.ts +179 -0
  581. package/src/lib/services/identity/memberIdentityProofService.d.ts.map +1 -0
  582. package/src/lib/services/identity/memberIdentityProofService.js +232 -0
  583. package/src/lib/services/identity/memberIdentityProofService.js.map +1 -0
  584. package/src/lib/services/identity/memberPaperKeyService.d.ts +223 -0
  585. package/src/lib/services/identity/memberPaperKeyService.d.ts.map +1 -0
  586. package/src/lib/services/identity/memberPaperKeyService.js +279 -0
  587. package/src/lib/services/identity/memberPaperKeyService.js.map +1 -0
  588. package/src/lib/services/identity/paperKeyService.d.ts +106 -0
  589. package/src/lib/services/identity/paperKeyService.d.ts.map +1 -0
  590. package/src/lib/services/identity/paperKeyService.js +161 -0
  591. package/src/lib/services/identity/paperKeyService.js.map +1 -0
  592. package/src/lib/services/identity/publicKeyDirectoryService.d.ts +210 -0
  593. package/src/lib/services/identity/publicKeyDirectoryService.d.ts.map +1 -0
  594. package/src/lib/services/identity/publicKeyDirectoryService.js +328 -0
  595. package/src/lib/services/identity/publicKeyDirectoryService.js.map +1 -0
  596. package/src/lib/services/identity/splitPaperKeyService.d.ts +92 -0
  597. package/src/lib/services/identity/splitPaperKeyService.d.ts.map +1 -0
  598. package/src/lib/services/identity/splitPaperKeyService.js +305 -0
  599. package/src/lib/services/identity/splitPaperKeyService.js.map +1 -0
  600. package/src/lib/services/index.d.ts +4 -0
  601. package/src/lib/services/index.d.ts.map +1 -1
  602. package/src/lib/services/index.js +7 -0
  603. package/src/lib/services/index.js.map +1 -1
  604. package/src/lib/services/messaging/deliveryTimeoutService.js +2 -2
  605. package/src/lib/services/messaging/deliveryTimeoutService.js.map +1 -1
  606. package/src/lib/services/messaging/emailEncryptionService.d.ts +250 -0
  607. package/src/lib/services/messaging/emailEncryptionService.d.ts.map +1 -0
  608. package/src/lib/services/messaging/emailEncryptionService.js +420 -0
  609. package/src/lib/services/messaging/emailEncryptionService.js.map +1 -0
  610. package/src/lib/services/messaging/emailMessageService.d.ts +669 -0
  611. package/src/lib/services/messaging/emailMessageService.d.ts.map +1 -0
  612. package/src/lib/services/messaging/emailMessageService.js +1030 -0
  613. package/src/lib/services/messaging/emailMessageService.js.map +1 -0
  614. package/src/lib/services/messaging/emailParser.d.ts +476 -0
  615. package/src/lib/services/messaging/emailParser.d.ts.map +1 -0
  616. package/src/lib/services/messaging/emailParser.js +1316 -0
  617. package/src/lib/services/messaging/emailParser.js.map +1 -0
  618. package/src/lib/services/messaging/emailSerializer.d.ts +403 -0
  619. package/src/lib/services/messaging/emailSerializer.d.ts.map +1 -0
  620. package/src/lib/services/messaging/emailSerializer.js +852 -0
  621. package/src/lib/services/messaging/emailSerializer.js.map +1 -0
  622. package/src/lib/services/messaging/emailValidator.d.ts +448 -0
  623. package/src/lib/services/messaging/emailValidator.d.ts.map +1 -0
  624. package/src/lib/services/messaging/emailValidator.js +810 -0
  625. package/src/lib/services/messaging/emailValidator.js.map +1 -0
  626. package/src/lib/services/messaging/gossipRetryService.d.ts +204 -0
  627. package/src/lib/services/messaging/gossipRetryService.d.ts.map +1 -0
  628. package/src/lib/services/messaging/gossipRetryService.js +319 -0
  629. package/src/lib/services/messaging/gossipRetryService.js.map +1 -0
  630. package/src/lib/services/messaging/inMemoryEmailMetadataStore.d.ts +60 -0
  631. package/src/lib/services/messaging/inMemoryEmailMetadataStore.d.ts.map +1 -0
  632. package/src/lib/services/messaging/inMemoryEmailMetadataStore.js +281 -0
  633. package/src/lib/services/messaging/inMemoryEmailMetadataStore.js.map +1 -0
  634. package/src/lib/services/messaging/index.d.ts +11 -5
  635. package/src/lib/services/messaging/index.d.ts.map +1 -1
  636. package/src/lib/services/messaging/index.js +19 -5
  637. package/src/lib/services/messaging/index.js.map +1 -1
  638. package/src/lib/services/messaging/messageCBLService.js +2 -2
  639. package/src/lib/services/messaging/messageCBLService.js.map +1 -1
  640. package/src/lib/services/tuple.service.d.ts +27 -2
  641. package/src/lib/services/tuple.service.d.ts.map +1 -1
  642. package/src/lib/services/tuple.service.js +62 -20
  643. package/src/lib/services/tuple.service.js.map +1 -1
  644. package/src/lib/services/vcblService.d.ts +36 -0
  645. package/src/lib/services/vcblService.d.ts.map +1 -0
  646. package/src/lib/services/vcblService.js +326 -0
  647. package/src/lib/services/vcblService.js.map +1 -0
  648. package/src/lib/stores/index.d.ts +1 -0
  649. package/src/lib/stores/index.d.ts.map +1 -1
  650. package/src/lib/stores/index.js +1 -0
  651. package/src/lib/stores/index.js.map +1 -1
  652. package/src/lib/stores/messaging/memoryMessageMetadataStore.d.ts +2 -2
  653. package/src/lib/stores/messaging/memoryMessageMetadataStore.d.ts.map +1 -1
  654. package/src/lib/stores/messaging/memoryMessageMetadataStore.js +2 -2
  655. package/src/lib/stores/messaging/memoryMessageMetadataStore.js.map +1 -1
  656. package/src/lib/stores/pooledMemoryBlockStore.d.ts +134 -0
  657. package/src/lib/stores/pooledMemoryBlockStore.d.ts.map +1 -0
  658. package/src/lib/stores/pooledMemoryBlockStore.js +583 -0
  659. package/src/lib/stores/pooledMemoryBlockStore.js.map +1 -0
  660. package/src/lib/types/checksum.d.ts +11 -0
  661. package/src/lib/types/checksum.d.ts.map +1 -1
  662. package/src/lib/types/checksum.js +11 -0
  663. package/src/lib/types/checksum.js.map +1 -1
  664. package/src/lib/utils/index.d.ts +9 -0
  665. package/src/lib/utils/index.d.ts.map +1 -1
  666. package/src/lib/utils/index.js +12 -0
  667. package/src/lib/utils/index.js.map +1 -1
  668. package/src/lib/utils/pagination.d.ts +27 -0
  669. package/src/lib/utils/pagination.d.ts.map +1 -0
  670. package/src/lib/utils/pagination.js +38 -0
  671. package/src/lib/utils/pagination.js.map +1 -0
  672. package/src/lib/enumerations/messaging/messageDeliveryStatus.d.ts +0 -18
  673. package/src/lib/enumerations/messaging/messageDeliveryStatus.d.ts.map +0 -1
  674. package/src/lib/enumerations/messaging/messageDeliveryStatus.js +0 -22
  675. package/src/lib/enumerations/messaging/messageDeliveryStatus.js.map +0 -1
  676. package/src/lib/enumerations/messaging/routingStrategy.d.ts +0 -12
  677. package/src/lib/enumerations/messaging/routingStrategy.d.ts.map +0 -1
  678. package/src/lib/enumerations/messaging/routingStrategy.js +0 -16
  679. package/src/lib/enumerations/messaging/routingStrategy.js.map +0 -1
  680. package/src/lib/interfaces/messaging/messageRouter.d.ts +0 -48
  681. package/src/lib/interfaces/messaging/messageRouter.d.ts.map +0 -1
  682. package/src/lib/interfaces/messaging/messageRouter.js.map +0 -1
  683. package/src/lib/interfaces/network/networkTransport.d.ts +0 -19
  684. package/src/lib/interfaces/network/networkTransport.d.ts.map +0 -1
  685. package/src/lib/interfaces/network/networkTransport.js.map +0 -1
  686. package/src/lib/services/messaging/broadcastMessageRouter.d.ts +0 -18
  687. package/src/lib/services/messaging/broadcastMessageRouter.d.ts.map +0 -1
  688. package/src/lib/services/messaging/broadcastMessageRouter.js +0 -32
  689. package/src/lib/services/messaging/broadcastMessageRouter.js.map +0 -1
  690. package/src/lib/services/messaging/directMessageRouter.d.ts +0 -25
  691. package/src/lib/services/messaging/directMessageRouter.d.ts.map +0 -1
  692. package/src/lib/services/messaging/directMessageRouter.js +0 -58
  693. package/src/lib/services/messaging/directMessageRouter.js.map +0 -1
  694. package/src/lib/services/messaging/messageForwardingService.d.ts +0 -40
  695. package/src/lib/services/messaging/messageForwardingService.d.ts.map +0 -1
  696. package/src/lib/services/messaging/messageForwardingService.js +0 -74
  697. package/src/lib/services/messaging/messageForwardingService.js.map +0 -1
  698. package/src/lib/services/messaging/messageRouter.d.ts +0 -24
  699. package/src/lib/services/messaging/messageRouter.d.ts.map +0 -1
  700. package/src/lib/services/messaging/messageRouter.js +0 -111
  701. package/src/lib/services/messaging/messageRouter.js.map +0 -1
  702. package/src/lib/services/messaging/webSocketTransport.d.ts +0 -34
  703. package/src/lib/services/messaging/webSocketTransport.d.ts.map +0 -1
  704. package/src/lib/services/messaging/webSocketTransport.js +0 -115
  705. package/src/lib/services/messaging/webSocketTransport.js.map +0 -1
@@ -0,0 +1,162 @@
1
+ "use strict";
2
+ /**
3
+ * MessageOperationsService — shared message operation logic for Groups and Channels.
4
+ *
5
+ * Encapsulates edit, delete, pin/unpin, and reaction operations with
6
+ * permission checks. Both GroupService and ChannelService delegate to
7
+ * this service to avoid duplicating message operation logic.
8
+ *
9
+ * Requirements: 9.1, 9.2, 9.3, 9.4, 9.6
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.MessageOperationsService = exports.MessageReactionNotFoundError = exports.MessagePermissionError = exports.MessageAuthorError = exports.MessageNotFoundError = void 0;
13
+ const uuid_1 = require("uuid");
14
+ const communication_1 = require("../../enumerations/communication");
15
+ // ─── Error classes ──────────────────────────────────────────────────────────
16
+ class MessageNotFoundError extends Error {
17
+ constructor(messageId) {
18
+ super(`Message ${messageId} not found`);
19
+ this.name = 'MessageNotFoundError';
20
+ }
21
+ }
22
+ exports.MessageNotFoundError = MessageNotFoundError;
23
+ class MessageAuthorError extends Error {
24
+ constructor() {
25
+ super('You can only edit messages you authored');
26
+ this.name = 'MessageAuthorError';
27
+ }
28
+ }
29
+ exports.MessageAuthorError = MessageAuthorError;
30
+ class MessagePermissionError extends Error {
31
+ constructor(permission) {
32
+ super(`Missing permission: ${permission}`);
33
+ this.name = 'MessagePermissionError';
34
+ this.missingPermission = permission;
35
+ }
36
+ }
37
+ exports.MessagePermissionError = MessagePermissionError;
38
+ class MessageReactionNotFoundError extends Error {
39
+ constructor(reactionId) {
40
+ super(`Reaction ${reactionId} not found`);
41
+ this.name = 'MessageReactionNotFoundError';
42
+ }
43
+ }
44
+ exports.MessageReactionNotFoundError = MessageReactionNotFoundError;
45
+ /**
46
+ * Shared message operations for edit, delete, pin, and reaction logic.
47
+ * Callers are responsible for membership/existence checks on the context
48
+ * (group or channel) before invoking these methods.
49
+ */
50
+ class MessageOperationsService {
51
+ constructor(permissionService) {
52
+ this.permissionService = permissionService;
53
+ }
54
+ /**
55
+ * Edit a message authored by the requesting member.
56
+ * Preserves previous content in editHistory.
57
+ *
58
+ * Requirement 9.1: update content, preserve edit history, set editedAt.
59
+ */
60
+ editMessage(messages, messageId, memberId, newContent, messageNotFoundFactory, authorErrorFactory) {
61
+ const message = messages.find((m) => m.id === messageId);
62
+ if (!message)
63
+ throw messageNotFoundFactory(messageId);
64
+ if (message.senderId !== memberId) {
65
+ throw authorErrorFactory();
66
+ }
67
+ message.editHistory.push({
68
+ content: message.encryptedContent,
69
+ editedAt: new Date(),
70
+ });
71
+ message.encryptedContent = newContent;
72
+ message.editedAt = new Date();
73
+ return message;
74
+ }
75
+ /**
76
+ * Delete a message. Authors can delete their own; moderators/admins
77
+ * need DELETE_ANY_MESSAGE permission.
78
+ *
79
+ * Requirements 9.2, 9.3: mark as deleted, set deletedBy.
80
+ */
81
+ deleteMessage(messages, contextId, messageId, memberId, messageNotFoundFactory, permissionErrorFactory) {
82
+ const message = messages.find((m) => m.id === messageId);
83
+ if (!message)
84
+ throw messageNotFoundFactory(messageId);
85
+ const isAuthor = message.senderId === memberId;
86
+ if (!isAuthor) {
87
+ if (!this.permissionService.hasPermission(memberId, contextId, communication_1.Permission.DELETE_ANY_MESSAGE)) {
88
+ throw permissionErrorFactory(communication_1.Permission.DELETE_ANY_MESSAGE);
89
+ }
90
+ }
91
+ message.deleted = true;
92
+ message.deletedBy = memberId;
93
+ }
94
+ /**
95
+ * Pin a message. Requires PIN_MESSAGES permission.
96
+ * Adds the message ID to the context's pinnedMessageIds list.
97
+ *
98
+ * Requirement 9.3: add to pinned messages list.
99
+ */
100
+ pinMessage(messages, contextId, messageId, memberId, context, messageNotFoundFactory, permissionErrorFactory) {
101
+ if (!this.permissionService.hasPermission(memberId, contextId, communication_1.Permission.PIN_MESSAGES)) {
102
+ throw permissionErrorFactory(communication_1.Permission.PIN_MESSAGES);
103
+ }
104
+ const message = messages.find((m) => m.id === messageId);
105
+ if (!message)
106
+ throw messageNotFoundFactory(messageId);
107
+ message.pinned = true;
108
+ if (!context.pinnedMessageIds.includes(messageId)) {
109
+ context.pinnedMessageIds.push(messageId);
110
+ }
111
+ }
112
+ /**
113
+ * Unpin a message. Requires PIN_MESSAGES permission.
114
+ * Removes the message ID from the context's pinnedMessageIds list.
115
+ *
116
+ * Requirement 9.3: remove from pinned messages list.
117
+ */
118
+ unpinMessage(messages, contextId, messageId, memberId, context, messageNotFoundFactory, permissionErrorFactory) {
119
+ if (!this.permissionService.hasPermission(memberId, contextId, communication_1.Permission.PIN_MESSAGES)) {
120
+ throw permissionErrorFactory(communication_1.Permission.PIN_MESSAGES);
121
+ }
122
+ const message = messages.find((m) => m.id === messageId);
123
+ if (!message)
124
+ throw messageNotFoundFactory(messageId);
125
+ message.pinned = false;
126
+ context.pinnedMessageIds = context.pinnedMessageIds.filter((id) => id !== messageId);
127
+ }
128
+ /**
129
+ * Add a reaction to a message.
130
+ *
131
+ * Requirement 9.4: add reaction with emoji and member tracking.
132
+ */
133
+ addReaction(messages, messageId, memberId, emoji, messageNotFoundFactory) {
134
+ const message = messages.find((m) => m.id === messageId);
135
+ if (!message)
136
+ throw messageNotFoundFactory(messageId);
137
+ const reactionId = (0, uuid_1.v4)();
138
+ message.reactions.push({
139
+ id: reactionId,
140
+ emoji,
141
+ memberId,
142
+ createdAt: new Date(),
143
+ });
144
+ return reactionId;
145
+ }
146
+ /**
147
+ * Remove a reaction from a message.
148
+ *
149
+ * Requirement 9.4: remove reaction from message.
150
+ */
151
+ removeReaction(messages, messageId, reactionId, messageNotFoundFactory, reactionNotFoundFactory) {
152
+ const message = messages.find((m) => m.id === messageId);
153
+ if (!message)
154
+ throw messageNotFoundFactory(messageId);
155
+ const reactionIndex = message.reactions.findIndex((r) => r.id === reactionId);
156
+ if (reactionIndex === -1)
157
+ throw reactionNotFoundFactory(reactionId);
158
+ message.reactions.splice(reactionIndex, 1);
159
+ }
160
+ }
161
+ exports.MessageOperationsService = MessageOperationsService;
162
+ //# sourceMappingURL=messageOperationsService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messageOperationsService.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/services/communication/messageOperationsService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * PermissionService — centralized permission checking for Groups and Channels.
3
+ *
4
+ * Tracks member roles and mute status per context (group or channel ID).
5
+ * Uses the DEFAULT_ROLE_PERMISSIONS map from brightchain-lib to resolve
6
+ * whether a given role grants a specific permission.
7
+ *
8
+ * Requirements: 7.1, 7.2, 7.3, 7.4
9
+ */
10
+ import { DefaultRole, Permission } from '../../enumerations/communication';
11
+ export declare class PermissionService {
12
+ /** memberId:contextId → DefaultRole */
13
+ private readonly roles;
14
+ /** memberId:contextId → mute expiry timestamp (ms since epoch) */
15
+ private readonly mutes;
16
+ /**
17
+ * Check whether a member has a specific permission in a context.
18
+ * Returns false if the member has no role in the context or is missing the permission.
19
+ *
20
+ * Requirement 7.1: check member permissions against role-based permission sets.
21
+ */
22
+ hasPermission(memberId: string, contextId: string, permission: Permission): boolean;
23
+ /**
24
+ * Assign (or update) a role for a member in a context.
25
+ *
26
+ * Requirement 7.2: assign and retrieve member roles per context.
27
+ */
28
+ assignRole(memberId: string, contextId: string, role: DefaultRole): void;
29
+ /**
30
+ * Get the role assigned to a member in a context, or null if none.
31
+ */
32
+ getMemberRole(memberId: string, contextId: string): DefaultRole | null;
33
+ /**
34
+ * Check whether a member is currently muted in a context.
35
+ * A mute is active when the stored expiry timestamp is in the future.
36
+ *
37
+ * Requirement 7.3, 7.4: track mute status with expiration, auto-clear on check.
38
+ */
39
+ isMuted(memberId: string, contextId: string): boolean;
40
+ /**
41
+ * Mute a member in a context for the given duration (milliseconds).
42
+ *
43
+ * Requirement 7.3: track member mute status with expiration.
44
+ */
45
+ muteMember(memberId: string, contextId: string, durationMs: number): void;
46
+ }
47
+ //# sourceMappingURL=permissionService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permissionService.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/services/communication/permissionService.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAEL,WAAW,EACX,UAAU,EACX,MAAM,kCAAkC,CAAC;AAS1C,qBAAa,iBAAiB;IAC5B,uCAAuC;IACvC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAkC;IAExD,kEAAkE;IAClE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAA6B;IAEnD;;;;;OAKG;IACH,aAAa,CACX,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,UAAU,GACrB,OAAO;IAQV;;;;OAIG;IACH,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI;IAIxE;;OAEG;IACH,aAAa,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI;IAItE;;;;;OAKG;IACH,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;IAarD;;;;OAIG;IACH,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,IAAI;CAG1E"}
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ /**
3
+ * PermissionService — centralized permission checking for Groups and Channels.
4
+ *
5
+ * Tracks member roles and mute status per context (group or channel ID).
6
+ * Uses the DEFAULT_ROLE_PERMISSIONS map from brightchain-lib to resolve
7
+ * whether a given role grants a specific permission.
8
+ *
9
+ * Requirements: 7.1, 7.2, 7.3, 7.4
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.PermissionService = void 0;
13
+ const communication_1 = require("../../enumerations/communication");
14
+ /**
15
+ * Composite key for role and mute lookups: "memberId:contextId"
16
+ */
17
+ function key(memberId, contextId) {
18
+ return `${memberId}:${contextId}`;
19
+ }
20
+ class PermissionService {
21
+ constructor() {
22
+ /** memberId:contextId → DefaultRole */
23
+ this.roles = new Map();
24
+ /** memberId:contextId → mute expiry timestamp (ms since epoch) */
25
+ this.mutes = new Map();
26
+ }
27
+ /**
28
+ * Check whether a member has a specific permission in a context.
29
+ * Returns false if the member has no role in the context or is missing the permission.
30
+ *
31
+ * Requirement 7.1: check member permissions against role-based permission sets.
32
+ */
33
+ hasPermission(memberId, contextId, permission) {
34
+ const role = this.getMemberRole(memberId, contextId);
35
+ if (role === null) {
36
+ return false;
37
+ }
38
+ return communication_1.DEFAULT_ROLE_PERMISSIONS[role].includes(permission);
39
+ }
40
+ /**
41
+ * Assign (or update) a role for a member in a context.
42
+ *
43
+ * Requirement 7.2: assign and retrieve member roles per context.
44
+ */
45
+ assignRole(memberId, contextId, role) {
46
+ this.roles.set(key(memberId, contextId), role);
47
+ }
48
+ /**
49
+ * Get the role assigned to a member in a context, or null if none.
50
+ */
51
+ getMemberRole(memberId, contextId) {
52
+ return this.roles.get(key(memberId, contextId)) ?? null;
53
+ }
54
+ /**
55
+ * Check whether a member is currently muted in a context.
56
+ * A mute is active when the stored expiry timestamp is in the future.
57
+ *
58
+ * Requirement 7.3, 7.4: track mute status with expiration, auto-clear on check.
59
+ */
60
+ isMuted(memberId, contextId) {
61
+ const expiry = this.mutes.get(key(memberId, contextId));
62
+ if (expiry === undefined) {
63
+ return false;
64
+ }
65
+ if (Date.now() >= expiry) {
66
+ // Mute has expired — clean up
67
+ this.mutes.delete(key(memberId, contextId));
68
+ return false;
69
+ }
70
+ return true;
71
+ }
72
+ /**
73
+ * Mute a member in a context for the given duration (milliseconds).
74
+ *
75
+ * Requirement 7.3: track member mute status with expiration.
76
+ */
77
+ muteMember(memberId, contextId, durationMs) {
78
+ this.mutes.set(key(memberId, contextId), Date.now() + durationMs);
79
+ }
80
+ }
81
+ exports.PermissionService = PermissionService;
82
+ //# sourceMappingURL=permissionService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"permissionService.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/services/communication/permissionService.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAEH,oEAI0C;AAE1C;;GAEG;AACH,SAAS,GAAG,CAAC,QAAgB,EAAE,SAAiB;IAC9C,OAAO,GAAG,QAAQ,IAAI,SAAS,EAAE,CAAC;AACpC,CAAC;AAED,MAAa,iBAAiB;IAA9B;QACE,uCAAuC;QACtB,UAAK,GAAG,IAAI,GAAG,EAAuB,CAAC;QAExD,kEAAkE;QACjD,UAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;IA+DrD,CAAC;IA7DC;;;;;OAKG;IACH,aAAa,CACX,QAAgB,EAChB,SAAiB,EACjB,UAAsB;QAEtB,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;QACrD,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YAClB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,wCAAwB,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC;IAC7D,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAC,QAAgB,EAAE,SAAiB,EAAE,IAAiB;QAC/D,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,CAAC;IACjD,CAAC;IAED;;OAEG;IACH,aAAa,CAAC,QAAgB,EAAE,SAAiB;QAC/C,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,IAAI,IAAI,CAAC;IAC1D,CAAC;IAED;;;;;OAKG;IACH,OAAO,CAAC,QAAgB,EAAE,SAAiB;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;QACxD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,OAAO,KAAK,CAAC;QACf,CAAC;QACD,IAAI,IAAI,CAAC,GAAG,EAAE,IAAI,MAAM,EAAE,CAAC;YACzB,8BAA8B;YAC9B,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;YAC5C,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,UAAU,CAAC,QAAgB,EAAE,SAAiB,EAAE,UAAkB;QAChE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,CAAC,CAAC;IACpE,CAAC;CACF;AApED,8CAoEC"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * SearchService — cross-context keyword search across conversations, groups, and channels.
3
+ *
4
+ * Aggregates search results from all contexts a member has access to,
5
+ * returning paginated results with context metadata (sender, timestamp,
6
+ * context name/type).
7
+ *
8
+ * Requirements: 10.4
9
+ */
10
+ import { IPaginatedResult, ISearchResultItem } from '../../interfaces/communication';
11
+ import { ChannelService } from './channelService';
12
+ import { ConversationService } from './conversationService';
13
+ import { GroupService } from './groupService';
14
+ export declare class SearchService {
15
+ private readonly conversationService;
16
+ private readonly groupService;
17
+ private readonly channelService;
18
+ constructor(conversationService: ConversationService, groupService: GroupService, channelService: ChannelService);
19
+ /**
20
+ * Search messages by keyword across all contexts the member has access to.
21
+ *
22
+ * Results are sorted by `createdAt` descending (newest first) and include
23
+ * sender, timestamp, and context name for each match.
24
+ */
25
+ searchAll(memberId: string, query: string, cursor?: string, limit?: number): IPaginatedResult<ISearchResultItem>;
26
+ private searchConversations;
27
+ private searchGroups;
28
+ private searchChannels;
29
+ }
30
+ //# sourceMappingURL=searchService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"searchService.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/services/communication/searchService.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EACL,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,gCAAgC,CAAC;AAExC,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAS9C,qBAAa,aAAa;IAEtB,OAAO,CAAC,QAAQ,CAAC,mBAAmB;IACpC,OAAO,CAAC,QAAQ,CAAC,YAAY;IAC7B,OAAO,CAAC,QAAQ,CAAC,cAAc;gBAFd,mBAAmB,EAAE,mBAAmB,EACxC,YAAY,EAAE,YAAY,EAC1B,cAAc,EAAE,cAAc;IAGjD;;;;;OAKG;IACH,SAAS,CACP,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,EACb,MAAM,CAAC,EAAE,MAAM,EACf,KAAK,SAAK,GACT,gBAAgB,CAAC,iBAAiB,CAAC;IAgBtC,OAAO,CAAC,mBAAmB;IA4B3B,OAAO,CAAC,YAAY;IAuBpB,OAAO,CAAC,cAAc;CAsBvB"}
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ /**
3
+ * SearchService — cross-context keyword search across conversations, groups, and channels.
4
+ *
5
+ * Aggregates search results from all contexts a member has access to,
6
+ * returning paginated results with context metadata (sender, timestamp,
7
+ * context name/type).
8
+ *
9
+ * Requirements: 10.4
10
+ */
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.SearchService = void 0;
13
+ const pagination_1 = require("../../utils/pagination");
14
+ class SearchService {
15
+ constructor(conversationService, groupService, channelService) {
16
+ this.conversationService = conversationService;
17
+ this.groupService = groupService;
18
+ this.channelService = channelService;
19
+ }
20
+ /**
21
+ * Search messages by keyword across all contexts the member has access to.
22
+ *
23
+ * Results are sorted by `createdAt` descending (newest first) and include
24
+ * sender, timestamp, and context name for each match.
25
+ */
26
+ searchAll(memberId, query, cursor, limit = 50) {
27
+ const lowerQuery = query.toLowerCase();
28
+ const results = [];
29
+ this.searchConversations(memberId, lowerQuery, results);
30
+ this.searchGroups(memberId, lowerQuery, results);
31
+ this.searchChannels(memberId, lowerQuery, results);
32
+ // Sort by createdAt descending (newest first)
33
+ results.sort((a, b) => b.message.createdAt.getTime() - a.message.createdAt.getTime());
34
+ return (0, pagination_1.paginateItems)(results, cursor, limit);
35
+ }
36
+ searchConversations(memberId, lowerQuery, results) {
37
+ const conversations = this.conversationService.listAllConversationsForMember(memberId);
38
+ for (const conv of conversations) {
39
+ const msgs = this.conversationService.getAllMessages(conv.id);
40
+ const otherParticipant = conv.participants[0] === memberId
41
+ ? conv.participants[1]
42
+ : conv.participants[0];
43
+ const contextName = `DM with ${otherParticipant}`;
44
+ for (const msg of msgs) {
45
+ if (!msg.deleted &&
46
+ typeof msg.encryptedContent === 'string' &&
47
+ msg.encryptedContent.toLowerCase().includes(lowerQuery)) {
48
+ results.push({ id: msg.id, message: msg, contextName });
49
+ }
50
+ }
51
+ }
52
+ }
53
+ searchGroups(memberId, lowerQuery, results) {
54
+ const groups = this.groupService.listGroupsForMember(memberId);
55
+ for (const group of groups) {
56
+ const msgs = this.groupService.getAllMessages(group.id);
57
+ const contextName = `Group: ${group.name}`;
58
+ for (const msg of msgs) {
59
+ if (!msg.deleted &&
60
+ typeof msg.encryptedContent === 'string' &&
61
+ msg.encryptedContent.toLowerCase().includes(lowerQuery)) {
62
+ results.push({ id: msg.id, message: msg, contextName });
63
+ }
64
+ }
65
+ }
66
+ }
67
+ searchChannels(memberId, lowerQuery, results) {
68
+ const channels = this.channelService.listChannelsForMember(memberId);
69
+ for (const channel of channels) {
70
+ const msgs = this.channelService.getAllMessages(channel.id);
71
+ const contextName = `Channel: #${channel.name}`;
72
+ for (const msg of msgs) {
73
+ if (!msg.deleted &&
74
+ typeof msg.encryptedContent === 'string' &&
75
+ msg.encryptedContent.toLowerCase().includes(lowerQuery)) {
76
+ results.push({ id: msg.id, message: msg, contextName });
77
+ }
78
+ }
79
+ }
80
+ }
81
+ }
82
+ exports.SearchService = SearchService;
83
+ //# sourceMappingURL=searchService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"searchService.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/services/communication/searchService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,159 @@
1
+ /**
2
+ * Ethereum Wallet Service for the BrightChain identity system.
3
+ *
4
+ * Derives Ethereum addresses from BrightChain member identities using
5
+ * BIP44 hierarchical deterministic derivation. Provides message signing
6
+ * and signature verification for dApp authentication and transaction
7
+ * signing.
8
+ *
9
+ * Derivation path: m/44'/60'/0'/0/0 (BIP44 standard for Ethereum)
10
+ * - purpose = 44 (BIP44)
11
+ * - coin_type = 60 (Ethereum)
12
+ * - account = 0 (default account)
13
+ * - change = 0 (external chain — wallet addresses)
14
+ * - index = 0 (first address)
15
+ *
16
+ * Requirements: 6.1, 6.2, 6.3, 6.7, 6.8
17
+ */
18
+ import { ECIESService, PlatformID } from '@digitaldefiance/ecies-lib';
19
+ /**
20
+ * Error thrown when Ethereum address derivation fails.
21
+ */
22
+ export declare class EthereumDerivationError extends Error {
23
+ constructor(message: string);
24
+ }
25
+ /**
26
+ * Error thrown when message signing fails.
27
+ */
28
+ export declare class EthereumSigningError extends Error {
29
+ constructor(message: string);
30
+ }
31
+ /**
32
+ * Result of Ethereum address derivation.
33
+ */
34
+ export interface IEthereumAddressResult {
35
+ /** EIP-55 checksummed Ethereum address */
36
+ address: string;
37
+ /** Uncompressed SECP256k1 public key (65 bytes, hex-encoded) */
38
+ publicKeyHex: string;
39
+ /** BIP44 derivation path used */
40
+ derivationPath: string;
41
+ }
42
+ /**
43
+ * Result of an Ethereum message signature.
44
+ */
45
+ export interface IEthereumSignatureResult {
46
+ /** The original message that was signed */
47
+ message: string;
48
+ /** The ECDSA signature (hex-encoded, 65 bytes: r + s + v) */
49
+ signature: string;
50
+ /** Recovery parameter (0 or 1) */
51
+ recoveryParam: number;
52
+ }
53
+ /**
54
+ * Service for deriving Ethereum wallets from BrightChain member identities
55
+ * and performing Ethereum-compatible message signing.
56
+ *
57
+ * All methods are static — the service is stateless and safe to call
58
+ * from any context (browser or Node.js).
59
+ *
60
+ * @example
61
+ * ```typescript
62
+ * const eciesService = ServiceProvider.getInstance().eciesService;
63
+ *
64
+ * // Derive Ethereum address from paper key
65
+ * const result = EthereumWalletService.deriveAddress(paperKey);
66
+ * console.log(result.address); // 0x1234...abcd (EIP-55 checksummed)
67
+ *
68
+ * // Sign a message
69
+ * const sig = EthereumWalletService.signMessage(paperKey, 'Hello World');
70
+ *
71
+ * // Verify the signature
72
+ * const valid = EthereumWalletService.verifySignature(
73
+ * 'Hello World',
74
+ * sig.signature,
75
+ * result.address,
76
+ * );
77
+ * ```
78
+ */
79
+ export declare class EthereumWalletService {
80
+ /**
81
+ * Derive an Ethereum address from a BIP39 mnemonic paper key.
82
+ *
83
+ * Uses BIP44 path m/44'/60'/0'/0/0 to derive the first Ethereum
84
+ * address. The address is returned in EIP-55 checksummed format.
85
+ *
86
+ * **Validates: Requirements 6.1, 6.4**
87
+ *
88
+ * @param paperKey - The 24-word BIP39 mnemonic
89
+ * @returns The derived Ethereum address, public key, and derivation path
90
+ * @throws {EthereumDerivationError} If derivation fails
91
+ */
92
+ static deriveAddress(paperKey: string): IEthereumAddressResult;
93
+ /**
94
+ * Derive an Ethereum address from a paper key after validating it.
95
+ *
96
+ * Convenience method that validates the paper key before derivation.
97
+ *
98
+ * @param paperKey - The 24-word BIP39 mnemonic
99
+ * @param eciesService - The ECIES service for paper key validation
100
+ * @returns The derived Ethereum address result
101
+ * @throws {EthereumDerivationError} If the paper key is invalid or derivation fails
102
+ */
103
+ static deriveAddressFromValidatedKey<TID extends PlatformID = Uint8Array>(paperKey: string, eciesService: ECIESService<TID>): IEthereumAddressResult;
104
+ /**
105
+ * Sign a message using the Ethereum personal_sign format (EIP-191).
106
+ *
107
+ * Prepends the standard Ethereum message prefix before signing,
108
+ * making the signature compatible with MetaMask's personal_sign
109
+ * and web3.eth.personal.sign.
110
+ *
111
+ * **Validates: Requirements 6.2, 6.3**
112
+ *
113
+ * @param paperKey - The 24-word BIP39 mnemonic (private key source)
114
+ * @param message - The message to sign
115
+ * @returns The signature result with hex-encoded signature and recovery param
116
+ * @throws {EthereumSigningError} If signing fails
117
+ */
118
+ static signMessage(paperKey: string, message: string): IEthereumSignatureResult;
119
+ /**
120
+ * Verify an Ethereum personal_sign signature.
121
+ *
122
+ * Recovers the signer's address from the signature and compares it
123
+ * to the expected address.
124
+ *
125
+ * **Validates: Requirements 6.7, 6.8**
126
+ *
127
+ * @param message - The original message that was signed
128
+ * @param signature - The hex-encoded 65-byte signature (0x-prefixed)
129
+ * @param address - The expected signer's Ethereum address (EIP-55)
130
+ * @returns `true` if the signature was produced by the address owner
131
+ */
132
+ static verifySignature(message: string, signature: string, address: string): boolean;
133
+ /**
134
+ * Recover the signer's Ethereum address from a signed message.
135
+ *
136
+ * @param message - The original message
137
+ * @param signature - The hex-encoded 65-byte signature (0x-prefixed)
138
+ * @returns The recovered EIP-55 checksummed Ethereum address
139
+ * @throws {EthereumSigningError} If recovery fails
140
+ */
141
+ static recoverAddress(message: string, signature: string): string;
142
+ /**
143
+ * Hash a message using the EIP-191 personal message format.
144
+ *
145
+ * Format: keccak256("\x19Ethereum Signed Message:\n" + len(message) + message)
146
+ *
147
+ * @param message - The message to hash
148
+ * @returns The 32-byte keccak256 hash
149
+ */
150
+ static hashMessage(message: string): Uint8Array;
151
+ /**
152
+ * Validate an EIP-55 checksummed Ethereum address.
153
+ *
154
+ * @param address - The address to validate
155
+ * @returns `true` if the address is valid and properly checksummed
156
+ */
157
+ static isValidAddress(address: string): boolean;
158
+ }
159
+ //# sourceMappingURL=ethereumWalletService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ethereumWalletService.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/services/crypto/ethereumWalletService.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAuBtE;;GAEG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;gBACpC,OAAO,EAAE,MAAM;CAI5B;AAED;;GAEG;AACH,qBAAa,oBAAqB,SAAQ,KAAK;gBACjC,OAAO,EAAE,MAAM;CAI5B;AAID;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACrC,0CAA0C;IAC1C,OAAO,EAAE,MAAM,CAAC;IAEhB,gEAAgE;IAChE,YAAY,EAAE,MAAM,CAAC;IAErB,iCAAiC;IACjC,cAAc,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,2CAA2C;IAC3C,OAAO,EAAE,MAAM,CAAC;IAEhB,6DAA6D;IAC7D,SAAS,EAAE,MAAM,CAAC;IAElB,kCAAkC;IAClC,aAAa,EAAE,MAAM,CAAC;CACvB;AAkGD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,qBAAqB;IAChC;;;;;;;;;;;OAWG;IACH,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,sBAAsB;IAmC9D;;;;;;;;;OASG;IACH,MAAM,CAAC,6BAA6B,CAAC,GAAG,SAAS,UAAU,GAAG,UAAU,EACtE,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,YAAY,CAAC,GAAG,CAAC,GAC9B,sBAAsB;IAOzB;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,WAAW,CAChB,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,GACd,wBAAwB;IAoC3B;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,eAAe,CACpB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,OAAO;IAYV;;;;;;;OAOG;IACH,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM;IAgCjE;;;;;;;OAOG;IACH,MAAM,CAAC,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,UAAU;IAW/C;;;;;OAKG;IACH,MAAM,CAAC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;CAGhD"}