@brightchain/brightchain-lib 0.1.5 → 0.1.6

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 (710) hide show
  1. package/brightchain-lib/DEPRECATIONS.md +454 -0
  2. package/brightchain-lib/DEPRECATIONS_REMOVED.md +160 -0
  3. package/brightchain-lib/MIGRATION.md +801 -0
  4. package/brightchain-lib/NAMING_AUDIT.md +233 -0
  5. package/brightchain-lib/NAMING_CONVENTIONS.md +346 -0
  6. package/{README.md → brightchain-lib/README.md} +168 -0
  7. package/package.json +5 -4
  8. package/src/browser.d.ts +3 -2
  9. package/src/browser.d.ts.map +1 -1
  10. package/src/browser.js +5 -2
  11. package/src/browser.js.map +1 -1
  12. package/src/index.d.ts +2 -10
  13. package/src/index.d.ts.map +1 -1
  14. package/src/index.js +8 -17
  15. package/src/index.js.map +1 -1
  16. package/src/lib/access/checksum.d.ts +5 -5
  17. package/src/lib/access/checksum.d.ts.map +1 -1
  18. package/src/lib/access/checksum.js.map +1 -1
  19. package/src/lib/blockPaddingTransform.d.ts.map +1 -1
  20. package/src/lib/blockPaddingTransform.js +2 -1
  21. package/src/lib/blockPaddingTransform.js.map +1 -1
  22. package/src/lib/blocks/base.d.ts +6 -5
  23. package/src/lib/blocks/base.d.ts.map +1 -1
  24. package/src/lib/blocks/base.js +1 -2
  25. package/src/lib/blocks/base.js.map +1 -1
  26. package/src/lib/blocks/cblBase.d.ts +4 -3
  27. package/src/lib/blocks/cblBase.d.ts.map +1 -1
  28. package/src/lib/blocks/cblBase.js.map +1 -1
  29. package/src/lib/blocks/encrypted.d.ts +4 -3
  30. package/src/lib/blocks/encrypted.d.ts.map +1 -1
  31. package/src/lib/blocks/encrypted.js +2 -2
  32. package/src/lib/blocks/encrypted.js.map +1 -1
  33. package/src/lib/blocks/encryptedBlockCreator.d.ts +4 -3
  34. package/src/lib/blocks/encryptedBlockCreator.d.ts.map +1 -1
  35. package/src/lib/blocks/encryptedBlockCreator.js.map +1 -1
  36. package/src/lib/blocks/encryptedBlockFactory.d.ts +4 -3
  37. package/src/lib/blocks/encryptedBlockFactory.d.ts.map +1 -1
  38. package/src/lib/blocks/encryptedBlockFactory.js +2 -7
  39. package/src/lib/blocks/encryptedBlockFactory.js.map +1 -1
  40. package/src/lib/blocks/ephemeral.d.ts +4 -3
  41. package/src/lib/blocks/ephemeral.d.ts.map +1 -1
  42. package/src/lib/blocks/ephemeral.js +3 -4
  43. package/src/lib/blocks/ephemeral.js.map +1 -1
  44. package/src/lib/blocks/extendedCbl.d.ts +4 -3
  45. package/src/lib/blocks/extendedCbl.d.ts.map +1 -1
  46. package/src/lib/blocks/extendedCbl.js.map +1 -1
  47. package/src/lib/blocks/handle.d.ts +208 -12
  48. package/src/lib/blocks/handle.d.ts.map +1 -1
  49. package/src/lib/blocks/handle.js +175 -3
  50. package/src/lib/blocks/handle.js.map +1 -1
  51. package/src/lib/blocks/handleTuple.d.ts +36 -7
  52. package/src/lib/blocks/handleTuple.d.ts.map +1 -1
  53. package/src/lib/blocks/handleTuple.js +32 -3
  54. package/src/lib/blocks/handleTuple.js.map +1 -1
  55. package/src/lib/blocks/memoryTuple.d.ts +34 -7
  56. package/src/lib/blocks/memoryTuple.d.ts.map +1 -1
  57. package/src/lib/blocks/memoryTuple.js +29 -3
  58. package/src/lib/blocks/memoryTuple.js.map +1 -1
  59. package/src/lib/blocks/parity.d.ts +2 -2
  60. package/src/lib/blocks/parity.d.ts.map +1 -1
  61. package/src/lib/blocks/parity.js.map +1 -1
  62. package/src/lib/blocks/random.d.ts +3 -3
  63. package/src/lib/blocks/random.d.ts.map +1 -1
  64. package/src/lib/blocks/random.js.map +1 -1
  65. package/src/lib/blocks/rawData.d.ts +2 -2
  66. package/src/lib/blocks/rawData.d.ts.map +1 -1
  67. package/src/lib/blocks/rawData.js +2 -7
  68. package/src/lib/blocks/rawData.js.map +1 -1
  69. package/src/lib/blocks/whitened.d.ts +3 -3
  70. package/src/lib/blocks/whitened.d.ts.map +1 -1
  71. package/src/lib/blocks/whitened.js.map +1 -1
  72. package/src/lib/brightChain.d.ts +2 -2
  73. package/src/lib/brightChain.d.ts.map +1 -1
  74. package/src/lib/brightChain.js +6 -3
  75. package/src/lib/brightChain.js.map +1 -1
  76. package/src/lib/browserBrightChain.d.ts +2 -2
  77. package/src/lib/browserBrightChain.d.ts.map +1 -1
  78. package/src/lib/browserBrightChain.js +6 -3
  79. package/src/lib/browserBrightChain.js.map +1 -1
  80. package/src/lib/browserConfig.d.ts.map +1 -1
  81. package/src/lib/browserConfig.js +0 -1
  82. package/src/lib/browserConfig.js.map +1 -1
  83. package/src/lib/browserKeyring.d.ts.map +1 -1
  84. package/src/lib/browserKeyring.js +6 -4
  85. package/src/lib/browserKeyring.js.map +1 -1
  86. package/src/lib/browserStream.d.ts +2 -2
  87. package/src/lib/browserStream.d.ts.map +1 -1
  88. package/src/lib/browserStream.js +7 -6
  89. package/src/lib/browserStream.js.map +1 -1
  90. package/src/lib/bufferUtils.d.ts.map +1 -1
  91. package/src/lib/bufferUtils.js +3 -2
  92. package/src/lib/bufferUtils.js.map +1 -1
  93. package/src/lib/cblStream.d.ts +5 -4
  94. package/src/lib/cblStream.d.ts.map +1 -1
  95. package/src/lib/cblStream.js +2 -2
  96. package/src/lib/cblStream.js.map +1 -1
  97. package/src/lib/constants.d.ts +55 -2
  98. package/src/lib/constants.d.ts.map +1 -1
  99. package/src/lib/constants.js.map +1 -1
  100. package/src/lib/documents/member/baseMemberDocument.d.ts +7 -6
  101. package/src/lib/documents/member/baseMemberDocument.d.ts.map +1 -1
  102. package/src/lib/documents/member/baseMemberDocument.js.map +1 -1
  103. package/src/lib/documents/member/memberDocument.d.ts +81 -5
  104. package/src/lib/documents/member/memberDocument.d.ts.map +1 -1
  105. package/src/lib/documents/member/memberDocument.js +92 -2
  106. package/src/lib/documents/member/memberDocument.js.map +1 -1
  107. package/src/lib/documents/member/memberHydration.d.ts.map +1 -1
  108. package/src/lib/documents/member/memberHydration.js +1 -1
  109. package/src/lib/documents/member/memberHydration.js.map +1 -1
  110. package/src/lib/documents/member/memberOperational.d.ts.map +1 -1
  111. package/src/lib/documents/member/memberOperational.js.map +1 -1
  112. package/src/lib/documents/memberDocument.d.ts +43 -3
  113. package/src/lib/documents/memberDocument.d.ts.map +1 -1
  114. package/src/lib/documents/memberDocument.js +43 -2
  115. package/src/lib/documents/memberDocument.js.map +1 -1
  116. package/src/lib/documents/quorumDocument.d.ts +4 -3
  117. package/src/lib/documents/quorumDocument.d.ts.map +1 -1
  118. package/src/lib/documents/quorumDocument.js +1 -2
  119. package/src/lib/documents/quorumDocument.js.map +1 -1
  120. package/src/lib/enumeration-translations/blockSize.d.ts.map +1 -1
  121. package/src/lib/enumeration-translations/blockSize.js +2 -2
  122. package/src/lib/enumeration-translations/blockSize.js.map +1 -1
  123. package/src/lib/enumeration-translations/blockType.d.ts.map +1 -1
  124. package/src/lib/enumeration-translations/blockType.js +3 -2
  125. package/src/lib/enumeration-translations/blockType.js.map +1 -1
  126. package/src/lib/enumeration-translations/memberType.d.ts.map +1 -1
  127. package/src/lib/enumeration-translations/memberType.js +3 -2
  128. package/src/lib/enumeration-translations/memberType.js.map +1 -1
  129. package/src/lib/enumeration-translations/quorumDataRecordAction.d.ts.map +1 -1
  130. package/src/lib/enumeration-translations/quorumDataRecordAction.js +2 -2
  131. package/src/lib/enumeration-translations/quorumDataRecordAction.js.map +1 -1
  132. package/src/lib/enumerations/availabilityState.d.ts +41 -0
  133. package/src/lib/enumerations/availabilityState.d.ts.map +1 -0
  134. package/src/lib/enumerations/availabilityState.js +51 -0
  135. package/src/lib/enumerations/availabilityState.js.map +1 -0
  136. package/src/lib/enumerations/durabilityLevel.d.ts +39 -0
  137. package/src/lib/enumerations/durabilityLevel.d.ts.map +1 -0
  138. package/src/lib/enumerations/durabilityLevel.js +55 -0
  139. package/src/lib/enumerations/durabilityLevel.js.map +1 -0
  140. package/src/lib/enumerations/index.d.ts +57 -54
  141. package/src/lib/enumerations/index.d.ts.map +1 -1
  142. package/src/lib/enumerations/index.js +61 -0
  143. package/src/lib/enumerations/index.js.map +1 -1
  144. package/src/lib/enumerations/messaging/index.d.ts +6 -0
  145. package/src/lib/enumerations/messaging/index.d.ts.map +1 -0
  146. package/src/lib/enumerations/messaging/index.js +9 -0
  147. package/src/lib/enumerations/messaging/index.js.map +1 -0
  148. package/src/lib/enumerations/messaging/messageDeliveryStatus.d.ts +18 -0
  149. package/src/lib/enumerations/messaging/messageDeliveryStatus.d.ts.map +1 -0
  150. package/src/lib/enumerations/messaging/messageDeliveryStatus.js +22 -0
  151. package/src/lib/enumerations/messaging/messageDeliveryStatus.js.map +1 -0
  152. package/src/lib/enumerations/messaging/messageEncryptionScheme.d.ts +16 -0
  153. package/src/lib/enumerations/messaging/messageEncryptionScheme.d.ts.map +1 -0
  154. package/src/lib/enumerations/messaging/messageEncryptionScheme.js +20 -0
  155. package/src/lib/enumerations/messaging/messageEncryptionScheme.js.map +1 -0
  156. package/src/lib/enumerations/messaging/messageErrorType.d.ts +31 -0
  157. package/src/lib/enumerations/messaging/messageErrorType.d.ts.map +1 -0
  158. package/src/lib/enumerations/messaging/messageErrorType.js +41 -0
  159. package/src/lib/enumerations/messaging/messageErrorType.js.map +1 -0
  160. package/src/lib/enumerations/messaging/messagePassingType.d.ts +20 -0
  161. package/src/lib/enumerations/messaging/messagePassingType.d.ts.map +1 -0
  162. package/src/lib/enumerations/messaging/messagePassingType.js +24 -0
  163. package/src/lib/enumerations/messaging/messagePassingType.js.map +1 -0
  164. package/src/lib/enumerations/messaging/messagePriority.d.ts +14 -0
  165. package/src/lib/enumerations/messaging/messagePriority.d.ts.map +1 -0
  166. package/src/lib/enumerations/messaging/messagePriority.js +18 -0
  167. package/src/lib/enumerations/messaging/messagePriority.js.map +1 -0
  168. package/src/lib/enumerations/messaging/routingStrategy.d.ts +12 -0
  169. package/src/lib/enumerations/messaging/routingStrategy.d.ts.map +1 -0
  170. package/src/lib/enumerations/messaging/routingStrategy.js +16 -0
  171. package/src/lib/enumerations/messaging/routingStrategy.js.map +1 -0
  172. package/src/lib/enumerations/quorumErrorType.d.ts +3 -1
  173. package/src/lib/enumerations/quorumErrorType.d.ts.map +1 -1
  174. package/src/lib/enumerations/quorumErrorType.js +2 -0
  175. package/src/lib/enumerations/quorumErrorType.js.map +1 -1
  176. package/src/lib/enumerations/replicationStatus.d.ts +42 -0
  177. package/src/lib/enumerations/replicationStatus.d.ts.map +1 -0
  178. package/src/lib/enumerations/replicationStatus.js +51 -0
  179. package/src/lib/enumerations/replicationStatus.js.map +1 -0
  180. package/src/lib/enumerations/storeErrorType.d.ts +3 -1
  181. package/src/lib/enumerations/storeErrorType.d.ts.map +1 -1
  182. package/src/lib/enumerations/storeErrorType.js +2 -0
  183. package/src/lib/enumerations/storeErrorType.js.map +1 -1
  184. package/src/lib/enumerations/stringNames.d.ts +4 -0
  185. package/src/lib/enumerations/stringNames.d.ts.map +1 -1
  186. package/src/lib/enumerations/stringNames.js +4 -0
  187. package/src/lib/enumerations/stringNames.js.map +1 -1
  188. package/src/lib/errors/block/blockAccess.d.ts +1 -2
  189. package/src/lib/errors/block/blockAccess.d.ts.map +1 -1
  190. package/src/lib/errors/block/blockAccess.js.map +1 -1
  191. package/src/lib/errors/block/blockCapacity.d.ts +1 -2
  192. package/src/lib/errors/block/blockCapacity.d.ts.map +1 -1
  193. package/src/lib/errors/block/blockCapacity.js.map +1 -1
  194. package/src/lib/errors/block/blockError.d.ts +1 -2
  195. package/src/lib/errors/block/blockError.d.ts.map +1 -1
  196. package/src/lib/errors/block/blockError.js.map +1 -1
  197. package/src/lib/errors/block/blockMetadata.d.ts +1 -2
  198. package/src/lib/errors/block/blockMetadata.d.ts.map +1 -1
  199. package/src/lib/errors/block/blockMetadata.js.map +1 -1
  200. package/src/lib/errors/block/blockValidation.d.ts +1 -2
  201. package/src/lib/errors/block/blockValidation.d.ts.map +1 -1
  202. package/src/lib/errors/block/blockValidation.js.map +1 -1
  203. package/src/lib/errors/block/cannotDecrypt.d.ts +1 -2
  204. package/src/lib/errors/block/cannotDecrypt.d.ts.map +1 -1
  205. package/src/lib/errors/block/cannotDecrypt.js.map +1 -1
  206. package/src/lib/errors/block/cannotEncrypt.d.ts +1 -2
  207. package/src/lib/errors/block/cannotEncrypt.d.ts.map +1 -1
  208. package/src/lib/errors/block/cannotEncrypt.js.map +1 -1
  209. package/src/lib/errors/blockServiceError.d.ts +1 -2
  210. package/src/lib/errors/blockServiceError.d.ts.map +1 -1
  211. package/src/lib/errors/blockServiceError.js.map +1 -1
  212. package/src/lib/errors/brightChainError.d.ts +77 -0
  213. package/src/lib/errors/brightChainError.d.ts.map +1 -0
  214. package/src/lib/errors/brightChainError.js +100 -0
  215. package/src/lib/errors/brightChainError.js.map +1 -0
  216. package/src/lib/errors/bufferError.d.ts +1 -2
  217. package/src/lib/errors/bufferError.d.ts.map +1 -1
  218. package/src/lib/errors/bufferError.js.map +1 -1
  219. package/src/lib/errors/cblError.d.ts +1 -2
  220. package/src/lib/errors/cblError.d.ts.map +1 -1
  221. package/src/lib/errors/cblError.js.map +1 -1
  222. package/src/lib/errors/checksumError.d.ts +122 -0
  223. package/src/lib/errors/checksumError.d.ts.map +1 -0
  224. package/src/lib/errors/checksumError.js +132 -0
  225. package/src/lib/errors/checksumError.js.map +1 -0
  226. package/src/lib/errors/checksumMismatch.d.ts +4 -5
  227. package/src/lib/errors/checksumMismatch.d.ts.map +1 -1
  228. package/src/lib/errors/checksumMismatch.js +2 -3
  229. package/src/lib/errors/checksumMismatch.js.map +1 -1
  230. package/src/lib/errors/document.d.ts +1 -2
  231. package/src/lib/errors/document.d.ts.map +1 -1
  232. package/src/lib/errors/document.js.map +1 -1
  233. package/src/lib/errors/eciesError.d.ts +1 -2
  234. package/src/lib/errors/eciesError.d.ts.map +1 -1
  235. package/src/lib/errors/eciesError.js.map +1 -1
  236. package/src/lib/errors/enhancedValidationError.d.ts +73 -0
  237. package/src/lib/errors/enhancedValidationError.d.ts.map +1 -0
  238. package/src/lib/errors/enhancedValidationError.js +82 -0
  239. package/src/lib/errors/enhancedValidationError.js.map +1 -0
  240. package/src/lib/errors/extendedCblError.d.ts +1 -2
  241. package/src/lib/errors/extendedCblError.d.ts.map +1 -1
  242. package/src/lib/errors/extendedCblError.js.map +1 -1
  243. package/src/lib/errors/factoryPatternViolationError.d.ts +91 -0
  244. package/src/lib/errors/factoryPatternViolationError.d.ts.map +1 -0
  245. package/src/lib/errors/factoryPatternViolationError.js +100 -0
  246. package/src/lib/errors/factoryPatternViolationError.js.map +1 -0
  247. package/src/lib/errors/failedToHydrate.d.ts +1 -2
  248. package/src/lib/errors/failedToHydrate.d.ts.map +1 -1
  249. package/src/lib/errors/failedToHydrate.js.map +1 -1
  250. package/src/lib/errors/failedToSerialize.d.ts +1 -2
  251. package/src/lib/errors/failedToSerialize.d.ts.map +1 -1
  252. package/src/lib/errors/failedToSerialize.js.map +1 -1
  253. package/src/lib/errors/fecError.d.ts +1 -2
  254. package/src/lib/errors/fecError.d.ts.map +1 -1
  255. package/src/lib/errors/fecError.js.map +1 -1
  256. package/src/lib/errors/handleTupleError.d.ts +2 -2
  257. package/src/lib/errors/handleTupleError.d.ts.map +1 -1
  258. package/src/lib/errors/handleTupleError.js.map +1 -1
  259. package/src/lib/errors/index.d.ts +200 -39
  260. package/src/lib/errors/index.d.ts.map +1 -1
  261. package/src/lib/errors/index.js +273 -0
  262. package/src/lib/errors/index.js.map +1 -1
  263. package/src/lib/errors/invalidBlockSize.d.ts +1 -2
  264. package/src/lib/errors/invalidBlockSize.d.ts.map +1 -1
  265. package/src/lib/errors/invalidBlockSize.js.map +1 -1
  266. package/src/lib/errors/invalidBlockSizeLength.d.ts +1 -2
  267. package/src/lib/errors/invalidBlockSizeLength.d.ts.map +1 -1
  268. package/src/lib/errors/invalidBlockSizeLength.js.map +1 -1
  269. package/src/lib/errors/invalidCredentials.d.ts +1 -2
  270. package/src/lib/errors/invalidCredentials.d.ts.map +1 -1
  271. package/src/lib/errors/invalidCredentials.js.map +1 -1
  272. package/src/lib/errors/invalidIDFormat.d.ts +1 -2
  273. package/src/lib/errors/invalidIDFormat.d.ts.map +1 -1
  274. package/src/lib/errors/invalidIDFormat.js.map +1 -1
  275. package/src/lib/errors/invalidSessionID.d.ts +1 -2
  276. package/src/lib/errors/invalidSessionID.d.ts.map +1 -1
  277. package/src/lib/errors/invalidSessionID.js.map +1 -1
  278. package/src/lib/errors/invalidTupleCount.d.ts +1 -2
  279. package/src/lib/errors/invalidTupleCount.d.ts.map +1 -1
  280. package/src/lib/errors/invalidTupleCount.js.map +1 -1
  281. package/src/lib/errors/isolatedKeyError.d.ts +1 -2
  282. package/src/lib/errors/isolatedKeyError.d.ts.map +1 -1
  283. package/src/lib/errors/isolatedKeyError.js.map +1 -1
  284. package/src/lib/errors/memberError.d.ts +1 -2
  285. package/src/lib/errors/memberError.d.ts.map +1 -1
  286. package/src/lib/errors/memberError.js +1 -1
  287. package/src/lib/errors/memberError.js.map +1 -1
  288. package/src/lib/errors/memoryTupleError.d.ts +2 -2
  289. package/src/lib/errors/memoryTupleError.d.ts.map +1 -1
  290. package/src/lib/errors/memoryTupleError.js.map +1 -1
  291. package/src/lib/errors/messaging/index.d.ts +2 -0
  292. package/src/lib/errors/messaging/index.d.ts.map +1 -0
  293. package/src/lib/{models → errors/messaging}/index.js +1 -1
  294. package/src/lib/errors/messaging/index.js.map +1 -0
  295. package/src/lib/errors/messaging/messageError.d.ts +26 -0
  296. package/src/lib/errors/messaging/messageError.d.ts.map +1 -0
  297. package/src/lib/errors/messaging/messageError.js +32 -0
  298. package/src/lib/errors/messaging/messageError.js.map +1 -0
  299. package/src/lib/errors/metadataMismatch.d.ts +1 -2
  300. package/src/lib/errors/metadataMismatch.d.ts.map +1 -1
  301. package/src/lib/errors/metadataMismatch.js.map +1 -1
  302. package/src/lib/errors/multiEncryptedError.d.ts +1 -2
  303. package/src/lib/errors/multiEncryptedError.d.ts.map +1 -1
  304. package/src/lib/errors/multiEncryptedError.js.map +1 -1
  305. package/src/lib/errors/quorumError.d.ts +1 -2
  306. package/src/lib/errors/quorumError.d.ts.map +1 -1
  307. package/src/lib/errors/quorumError.js +2 -0
  308. package/src/lib/errors/quorumError.js.map +1 -1
  309. package/src/lib/errors/sealingError.d.ts +1 -2
  310. package/src/lib/errors/sealingError.d.ts.map +1 -1
  311. package/src/lib/errors/sealingError.js.map +1 -1
  312. package/src/lib/errors/secureStorage.d.ts +1 -2
  313. package/src/lib/errors/secureStorage.d.ts.map +1 -1
  314. package/src/lib/errors/secureStorage.js +1 -1
  315. package/src/lib/errors/secureStorage.js.map +1 -1
  316. package/src/lib/errors/storeError.d.ts +1 -2
  317. package/src/lib/errors/storeError.d.ts.map +1 -1
  318. package/src/lib/errors/storeError.js +2 -0
  319. package/src/lib/errors/storeError.js.map +1 -1
  320. package/src/lib/errors/streamError.d.ts +1 -2
  321. package/src/lib/errors/streamError.d.ts.map +1 -1
  322. package/src/lib/errors/streamError.js.map +1 -1
  323. package/src/lib/errors/symmetricError.d.ts +1 -2
  324. package/src/lib/errors/symmetricError.d.ts.map +1 -1
  325. package/src/lib/errors/symmetricError.js.map +1 -1
  326. package/src/lib/errors/systemKeyringError.d.ts +2 -2
  327. package/src/lib/errors/systemKeyringError.d.ts.map +1 -1
  328. package/src/lib/errors/systemKeyringError.js.map +1 -1
  329. package/src/lib/errors/tupleError.d.ts +1 -2
  330. package/src/lib/errors/tupleError.d.ts.map +1 -1
  331. package/src/lib/errors/tupleError.js.map +1 -1
  332. package/src/lib/errors/typeGuards.d.ts +201 -0
  333. package/src/lib/errors/typeGuards.d.ts.map +1 -0
  334. package/src/lib/errors/typeGuards.js +219 -0
  335. package/src/lib/errors/typeGuards.js.map +1 -0
  336. package/src/lib/errors/typedError.d.ts +2 -3
  337. package/src/lib/errors/typedError.d.ts.map +1 -1
  338. package/src/lib/errors/typedError.js.map +1 -1
  339. package/src/lib/errors/userNotFound.d.ts +1 -2
  340. package/src/lib/errors/userNotFound.d.ts.map +1 -1
  341. package/src/lib/errors/userNotFound.js.map +1 -1
  342. package/src/lib/errors/whitenedError.d.ts +1 -2
  343. package/src/lib/errors/whitenedError.d.ts.map +1 -1
  344. package/src/lib/errors/whitenedError.js.map +1 -1
  345. package/src/lib/i18n/index.d.ts +28 -5
  346. package/src/lib/i18n/index.d.ts.map +1 -1
  347. package/src/lib/i18n/index.js +28 -7
  348. package/src/lib/i18n/index.js.map +1 -1
  349. package/src/lib/index.d.ts +131 -18
  350. package/src/lib/index.d.ts.map +1 -1
  351. package/src/lib/index.js +164 -19
  352. package/src/lib/index.js.map +1 -1
  353. package/src/lib/init.d.ts.map +1 -1
  354. package/src/lib/init.js +2 -1
  355. package/src/lib/init.js.map +1 -1
  356. package/src/lib/interfaces/active-context.d.ts +7 -4
  357. package/src/lib/interfaces/active-context.d.ts.map +1 -1
  358. package/src/lib/interfaces/availability/availabilityService.d.ts +319 -0
  359. package/src/lib/interfaces/availability/availabilityService.d.ts.map +1 -0
  360. package/src/lib/interfaces/availability/availabilityService.js +22 -0
  361. package/src/lib/interfaces/availability/availabilityService.js.map +1 -0
  362. package/src/lib/interfaces/availability/blockRegistry.d.ts +135 -0
  363. package/src/lib/interfaces/availability/blockRegistry.d.ts.map +1 -0
  364. package/src/lib/interfaces/availability/blockRegistry.js +11 -0
  365. package/src/lib/interfaces/availability/blockRegistry.js.map +1 -0
  366. package/src/lib/interfaces/availability/discoveryProtocol.d.ts +179 -0
  367. package/src/lib/interfaces/availability/discoveryProtocol.d.ts.map +1 -0
  368. package/src/lib/interfaces/availability/discoveryProtocol.js +23 -0
  369. package/src/lib/interfaces/availability/discoveryProtocol.js.map +1 -0
  370. package/src/lib/interfaces/availability/gossipService.d.ts +166 -0
  371. package/src/lib/interfaces/availability/gossipService.d.ts.map +1 -0
  372. package/src/lib/interfaces/availability/gossipService.js +22 -0
  373. package/src/lib/interfaces/availability/gossipService.js.map +1 -0
  374. package/src/lib/interfaces/availability/heartbeatMonitor.d.ts +179 -0
  375. package/src/lib/interfaces/availability/heartbeatMonitor.d.ts.map +1 -0
  376. package/src/lib/interfaces/availability/heartbeatMonitor.js +20 -0
  377. package/src/lib/interfaces/availability/heartbeatMonitor.js.map +1 -0
  378. package/src/lib/interfaces/availability/index.d.ts +8 -0
  379. package/src/lib/interfaces/availability/index.d.ts.map +1 -0
  380. package/src/lib/interfaces/availability/index.js +11 -0
  381. package/src/lib/interfaces/availability/index.js.map +1 -0
  382. package/src/lib/interfaces/availability/locationRecord.d.ts +110 -0
  383. package/src/lib/interfaces/availability/locationRecord.d.ts.map +1 -0
  384. package/src/lib/interfaces/availability/locationRecord.js +199 -0
  385. package/src/lib/interfaces/availability/locationRecord.js.map +1 -0
  386. package/src/lib/interfaces/availability/reconciliationService.d.ts +310 -0
  387. package/src/lib/interfaces/availability/reconciliationService.d.ts.map +1 -0
  388. package/src/lib/interfaces/availability/reconciliationService.js +23 -0
  389. package/src/lib/interfaces/availability/reconciliationService.js.map +1 -0
  390. package/src/lib/interfaces/backupCodeConsts.d.ts +26 -0
  391. package/src/lib/interfaces/backupCodeConsts.d.ts.map +1 -1
  392. package/src/lib/interfaces/basicObjectDto.d.ts +26 -0
  393. package/src/lib/interfaces/basicObjectDto.d.ts.map +1 -1
  394. package/src/lib/interfaces/blockCapacity.d.ts +71 -0
  395. package/src/lib/interfaces/blockCapacity.d.ts.map +1 -1
  396. package/src/lib/interfaces/blockEncryption.d.ts +3 -2
  397. package/src/lib/interfaces/blockEncryption.d.ts.map +1 -1
  398. package/src/lib/interfaces/blocks/base.d.ts +3 -2
  399. package/src/lib/interfaces/blocks/base.d.ts.map +1 -1
  400. package/src/lib/interfaces/blocks/cblBase.d.ts +3 -2
  401. package/src/lib/interfaces/blocks/cblBase.d.ts.map +1 -1
  402. package/src/lib/interfaces/blocks/headers/index.d.ts +1 -0
  403. package/src/lib/interfaces/blocks/headers/index.d.ts.map +1 -1
  404. package/src/lib/interfaces/blocks/headers/messageCblHeader.d.ts +13 -0
  405. package/src/lib/interfaces/blocks/headers/messageCblHeader.d.ts.map +1 -0
  406. package/src/lib/interfaces/blocks/headers/messageCblHeader.js +3 -0
  407. package/src/lib/interfaces/blocks/headers/messageCblHeader.js.map +1 -0
  408. package/src/lib/interfaces/cblIndexEntry.d.ts +32 -0
  409. package/src/lib/interfaces/cblIndexEntry.d.ts.map +1 -1
  410. package/src/lib/interfaces/clusterKeys.d.ts +18 -0
  411. package/src/lib/interfaces/clusterKeys.d.ts.map +1 -1
  412. package/src/lib/interfaces/constants.d.ts +244 -18
  413. package/src/lib/interfaces/constants.d.ts.map +1 -1
  414. package/src/lib/interfaces/dataAndSigningKeys.d.ts +18 -0
  415. package/src/lib/interfaces/dataAndSigningKeys.d.ts.map +1 -1
  416. package/src/lib/interfaces/encryptedBlockCreator.d.ts +3 -2
  417. package/src/lib/interfaces/encryptedBlockCreator.d.ts.map +1 -1
  418. package/src/lib/interfaces/energyTransaction.d.ts +3 -3
  419. package/src/lib/interfaces/energyTransaction.d.ts.map +1 -1
  420. package/src/lib/interfaces/handleableErrorOptions.d.ts +25 -0
  421. package/src/lib/interfaces/handleableErrorOptions.d.ts.map +1 -1
  422. package/src/lib/interfaces/index.d.ts +4 -1
  423. package/src/lib/interfaces/index.d.ts.map +1 -1
  424. package/src/lib/interfaces/index.js +3 -0
  425. package/src/lib/interfaces/index.js.map +1 -1
  426. package/src/lib/interfaces/keyringEntry.d.ts +31 -0
  427. package/src/lib/interfaces/keyringEntry.d.ts.map +1 -1
  428. package/src/lib/interfaces/languageContext.d.ts +15 -0
  429. package/src/lib/interfaces/languageContext.d.ts.map +1 -1
  430. package/src/lib/interfaces/member/memberData.d.ts +5 -4
  431. package/src/lib/interfaces/member/memberData.d.ts.map +1 -1
  432. package/src/lib/interfaces/messaging/index.d.ts +5 -0
  433. package/src/lib/interfaces/messaging/index.d.ts.map +1 -0
  434. package/src/lib/interfaces/messaging/index.js +8 -0
  435. package/src/lib/interfaces/messaging/index.js.map +1 -0
  436. package/src/lib/interfaces/messaging/messageMetadata.d.ts +41 -0
  437. package/src/lib/interfaces/messaging/messageMetadata.d.ts.map +1 -0
  438. package/src/lib/interfaces/messaging/messageMetadata.js +3 -0
  439. package/src/lib/interfaces/messaging/messageMetadata.js.map +1 -0
  440. package/src/lib/interfaces/messaging/messageMetadataStore.d.ts +83 -0
  441. package/src/lib/interfaces/messaging/messageMetadataStore.d.ts.map +1 -0
  442. package/src/lib/interfaces/messaging/messageMetadataStore.js +3 -0
  443. package/src/lib/interfaces/messaging/messageMetadataStore.js.map +1 -0
  444. package/src/lib/interfaces/messaging/messageRouter.d.ts +48 -0
  445. package/src/lib/interfaces/messaging/messageRouter.d.ts.map +1 -0
  446. package/src/lib/interfaces/messaging/messageRouter.js +3 -0
  447. package/src/lib/interfaces/messaging/messageRouter.js.map +1 -0
  448. package/src/lib/interfaces/messaging/messageSystemConfig.d.ts +16 -0
  449. package/src/lib/interfaces/messaging/messageSystemConfig.d.ts.map +1 -0
  450. package/src/lib/interfaces/messaging/messageSystemConfig.js +33 -0
  451. package/src/lib/interfaces/messaging/messageSystemConfig.js.map +1 -0
  452. package/src/lib/interfaces/network/index.d.ts +1 -0
  453. package/src/lib/interfaces/network/index.d.ts.map +1 -1
  454. package/src/lib/interfaces/network/networkTransport.d.ts +19 -0
  455. package/src/lib/interfaces/network/networkTransport.d.ts.map +1 -0
  456. package/src/lib/interfaces/network/networkTransport.js +3 -0
  457. package/src/lib/interfaces/network/networkTransport.js.map +1 -0
  458. package/src/lib/interfaces/network/node.d.ts +5 -4
  459. package/src/lib/interfaces/network/node.d.ts.map +1 -1
  460. package/src/lib/interfaces/network/node.js.map +1 -1
  461. package/src/lib/interfaces/readOnlyBasicObjectDto.d.ts +22 -0
  462. package/src/lib/interfaces/readOnlyBasicObjectDto.d.ts.map +1 -1
  463. package/src/lib/interfaces/requestUser.d.ts +33 -0
  464. package/src/lib/interfaces/requestUser.d.ts.map +1 -1
  465. package/src/lib/interfaces/role.d.ts +26 -0
  466. package/src/lib/interfaces/role.d.ts.map +1 -1
  467. package/src/lib/interfaces/services/fecService.d.ts +116 -0
  468. package/src/lib/interfaces/services/fecService.d.ts.map +1 -0
  469. package/src/lib/interfaces/services/fecService.js +14 -0
  470. package/src/lib/interfaces/services/fecService.js.map +1 -0
  471. package/src/lib/interfaces/services/index.d.ts +3 -0
  472. package/src/lib/interfaces/services/index.d.ts.map +1 -0
  473. package/src/lib/interfaces/services/index.js +3 -0
  474. package/src/lib/interfaces/services/index.js.map +1 -0
  475. package/src/lib/interfaces/services/quorumService.d.ts +133 -0
  476. package/src/lib/interfaces/services/quorumService.d.ts.map +1 -0
  477. package/src/lib/interfaces/services/quorumService.js +3 -0
  478. package/src/lib/interfaces/services/quorumService.js.map +1 -0
  479. package/src/lib/interfaces/storage/blockMetadata.d.ts +124 -0
  480. package/src/lib/interfaces/storage/blockMetadata.d.ts.map +1 -0
  481. package/src/lib/interfaces/storage/blockMetadata.js +31 -0
  482. package/src/lib/interfaces/storage/blockMetadata.js.map +1 -0
  483. package/src/lib/interfaces/storage/blockMetadataStore.d.ts +60 -0
  484. package/src/lib/interfaces/storage/blockMetadataStore.d.ts.map +1 -0
  485. package/src/lib/interfaces/storage/blockMetadataStore.js +3 -0
  486. package/src/lib/interfaces/storage/blockMetadataStore.js.map +1 -0
  487. package/src/lib/interfaces/storage/blockStore.d.ts +105 -10
  488. package/src/lib/interfaces/storage/blockStore.d.ts.map +1 -1
  489. package/src/lib/interfaces/storage/cblStore.d.ts +36 -0
  490. package/src/lib/interfaces/storage/cblStore.d.ts.map +1 -0
  491. package/src/lib/interfaces/storage/cblStore.js +3 -0
  492. package/src/lib/interfaces/storage/cblStore.js.map +1 -0
  493. package/src/lib/interfaces/storage/index.d.ts +4 -0
  494. package/src/lib/interfaces/storage/index.d.ts.map +1 -1
  495. package/src/lib/interfaces/storage/index.js +3 -0
  496. package/src/lib/interfaces/storage/index.js.map +1 -1
  497. package/src/lib/interfaces/storage/universalBlockStore.d.ts +5 -5
  498. package/src/lib/interfaces/storage/universalBlockStore.d.ts.map +1 -1
  499. package/src/lib/interfaces/symmetricEncryptionResults.d.ts +18 -0
  500. package/src/lib/interfaces/symmetricEncryptionResults.d.ts.map +1 -1
  501. package/src/lib/interfaces/tuple.d.ts +10 -1
  502. package/src/lib/interfaces/tuple.d.ts.map +1 -1
  503. package/src/lib/interfaces/tupleConfig.d.ts +18 -0
  504. package/src/lib/interfaces/tupleConfig.d.ts.map +1 -1
  505. package/src/lib/primeTupleGeneratorStream.d.ts +1 -1
  506. package/src/lib/primeTupleGeneratorStream.d.ts.map +1 -1
  507. package/src/lib/primeTupleGeneratorStream.js +2 -5
  508. package/src/lib/primeTupleGeneratorStream.js.map +1 -1
  509. package/src/lib/quorumDataRecord.d.ts +4 -3
  510. package/src/lib/quorumDataRecord.d.ts.map +1 -1
  511. package/src/lib/quorumDataRecord.js +5 -4
  512. package/src/lib/quorumDataRecord.js.map +1 -1
  513. package/src/lib/schemas/index.d.ts +1 -0
  514. package/src/lib/schemas/index.d.ts.map +1 -1
  515. package/src/lib/schemas/index.js +1 -0
  516. package/src/lib/schemas/index.js.map +1 -1
  517. package/src/lib/schemas/member/memberSchema.d.ts.map +1 -1
  518. package/src/lib/schemas/member/memberSchema.js.map +1 -1
  519. package/src/lib/schemas/messaging/index.d.ts +2 -0
  520. package/src/lib/schemas/messaging/index.d.ts.map +1 -0
  521. package/src/lib/schemas/messaging/index.js +5 -0
  522. package/src/lib/schemas/messaging/index.js.map +1 -0
  523. package/src/lib/schemas/messaging/messageMetadataSchema.d.ts +14 -0
  524. package/src/lib/schemas/messaging/messageMetadataSchema.d.ts.map +1 -0
  525. package/src/lib/schemas/messaging/messageMetadataSchema.js +90 -0
  526. package/src/lib/schemas/messaging/messageMetadataSchema.js.map +1 -0
  527. package/src/lib/schemas/network/networkDocumentSchema.d.ts.map +1 -1
  528. package/src/lib/schemas/network/networkDocumentSchema.js.map +1 -1
  529. package/src/lib/schemas/quorumDocument.d.ts.map +1 -1
  530. package/src/lib/schemas/quorumDocument.js +6 -6
  531. package/src/lib/schemas/quorumDocument.js.map +1 -1
  532. package/src/lib/services/blockCapacity.service.d.ts +36 -2
  533. package/src/lib/services/blockCapacity.service.d.ts.map +1 -1
  534. package/src/lib/services/blockCapacity.service.js +141 -77
  535. package/src/lib/services/blockCapacity.service.js.map +1 -1
  536. package/src/lib/services/blockService.d.ts +33 -0
  537. package/src/lib/services/blockService.d.ts.map +1 -1
  538. package/src/lib/services/blockService.js +127 -37
  539. package/src/lib/services/blockService.js.map +1 -1
  540. package/src/lib/services/cblService.d.ts +129 -18
  541. package/src/lib/services/cblService.d.ts.map +1 -1
  542. package/src/lib/services/cblService.js +295 -77
  543. package/src/lib/services/cblService.js.map +1 -1
  544. package/src/lib/services/checksum.service.d.ts +92 -23
  545. package/src/lib/services/checksum.service.d.ts.map +1 -1
  546. package/src/lib/services/checksum.service.js +89 -41
  547. package/src/lib/services/checksum.service.js.map +1 -1
  548. package/src/lib/services/fec.service.d.ts +43 -1
  549. package/src/lib/services/fec.service.d.ts.map +1 -1
  550. package/src/lib/services/fec.service.js +71 -2
  551. package/src/lib/services/fec.service.js.map +1 -1
  552. package/src/lib/services/index.d.ts +2 -0
  553. package/src/lib/services/index.d.ts.map +1 -1
  554. package/src/lib/services/index.js +2 -0
  555. package/src/lib/services/index.js.map +1 -1
  556. package/src/lib/services/member/memberCblService.d.ts.map +1 -1
  557. package/src/lib/services/member/memberCblService.js +14 -11
  558. package/src/lib/services/member/memberCblService.js.map +1 -1
  559. package/src/lib/services/memberStore.d.ts.map +1 -1
  560. package/src/lib/services/memberStore.js +5 -5
  561. package/src/lib/services/memberStore.js.map +1 -1
  562. package/src/lib/services/messaging/alertMonitor.d.ts +23 -0
  563. package/src/lib/services/messaging/alertMonitor.d.ts.map +1 -0
  564. package/src/lib/services/messaging/alertMonitor.js +39 -0
  565. package/src/lib/services/messaging/alertMonitor.js.map +1 -0
  566. package/src/lib/services/messaging/broadcastMessageRouter.d.ts +19 -0
  567. package/src/lib/services/messaging/broadcastMessageRouter.d.ts.map +1 -0
  568. package/src/lib/services/messaging/broadcastMessageRouter.js +33 -0
  569. package/src/lib/services/messaging/broadcastMessageRouter.js.map +1 -0
  570. package/src/lib/services/messaging/deliveryTimeoutService.d.ts +64 -0
  571. package/src/lib/services/messaging/deliveryTimeoutService.d.ts.map +1 -0
  572. package/src/lib/services/messaging/deliveryTimeoutService.js +125 -0
  573. package/src/lib/services/messaging/deliveryTimeoutService.js.map +1 -0
  574. package/src/lib/services/messaging/directMessageRouter.d.ts +25 -0
  575. package/src/lib/services/messaging/directMessageRouter.d.ts.map +1 -0
  576. package/src/lib/services/messaging/directMessageRouter.js +58 -0
  577. package/src/lib/services/messaging/directMessageRouter.js.map +1 -0
  578. package/src/lib/services/messaging/index.d.ts +9 -0
  579. package/src/lib/services/messaging/index.d.ts.map +1 -0
  580. package/src/lib/services/messaging/index.js +12 -0
  581. package/src/lib/services/messaging/index.js.map +1 -0
  582. package/src/lib/services/messaging/messageCBLService.d.ts +41 -0
  583. package/src/lib/services/messaging/messageCBLService.d.ts.map +1 -0
  584. package/src/lib/services/messaging/messageCBLService.js +187 -0
  585. package/src/lib/services/messaging/messageCBLService.js.map +1 -0
  586. package/src/lib/services/messaging/messageEncryptionService.d.ts +43 -0
  587. package/src/lib/services/messaging/messageEncryptionService.d.ts.map +1 -0
  588. package/src/lib/services/messaging/messageEncryptionService.js +89 -0
  589. package/src/lib/services/messaging/messageEncryptionService.js.map +1 -0
  590. package/src/lib/services/messaging/messageForwardingService.d.ts +40 -0
  591. package/src/lib/services/messaging/messageForwardingService.d.ts.map +1 -0
  592. package/src/lib/services/messaging/messageForwardingService.js +74 -0
  593. package/src/lib/services/messaging/messageForwardingService.js.map +1 -0
  594. package/src/lib/services/messaging/messageLogger.d.ts +26 -0
  595. package/src/lib/services/messaging/messageLogger.d.ts.map +1 -0
  596. package/src/lib/services/messaging/messageLogger.js +42 -0
  597. package/src/lib/services/messaging/messageLogger.js.map +1 -0
  598. package/src/lib/services/messaging/messageMetrics.d.ts +35 -0
  599. package/src/lib/services/messaging/messageMetrics.d.ts.map +1 -0
  600. package/src/lib/services/messaging/messageMetrics.js +68 -0
  601. package/src/lib/services/messaging/messageMetrics.js.map +1 -0
  602. package/src/lib/services/messaging/messageRouter.d.ts +24 -0
  603. package/src/lib/services/messaging/messageRouter.d.ts.map +1 -0
  604. package/src/lib/services/messaging/messageRouter.js +102 -0
  605. package/src/lib/services/messaging/messageRouter.js.map +1 -0
  606. package/src/lib/services/messaging/recipientKeyManager.d.ts +40 -0
  607. package/src/lib/services/messaging/recipientKeyManager.d.ts.map +1 -0
  608. package/src/lib/services/messaging/recipientKeyManager.js +83 -0
  609. package/src/lib/services/messaging/recipientKeyManager.js.map +1 -0
  610. package/src/lib/services/messaging/webSocketTransport.d.ts +34 -0
  611. package/src/lib/services/messaging/webSocketTransport.d.ts.map +1 -0
  612. package/src/lib/services/messaging/webSocketTransport.js +116 -0
  613. package/src/lib/services/messaging/webSocketTransport.js.map +1 -0
  614. package/src/lib/services/quorumService.d.ts +38 -0
  615. package/src/lib/services/quorumService.d.ts.map +1 -0
  616. package/src/lib/services/quorumService.js +176 -0
  617. package/src/lib/services/quorumService.js.map +1 -0
  618. package/src/lib/services/sealing.service.d.ts +6 -0
  619. package/src/lib/services/sealing.service.d.ts.map +1 -1
  620. package/src/lib/services/sealing.service.js +53 -7
  621. package/src/lib/services/sealing.service.js.map +1 -1
  622. package/src/lib/services/tuple.service.d.ts +40 -3
  623. package/src/lib/services/tuple.service.d.ts.map +1 -1
  624. package/src/lib/services/tuple.service.js +69 -33
  625. package/src/lib/services/tuple.service.js.map +1 -1
  626. package/src/lib/simpleBrightChain.d.ts.map +1 -1
  627. package/src/lib/simpleBrightChain.js +2 -1
  628. package/src/lib/simpleBrightChain.js.map +1 -1
  629. package/src/lib/stores/blockStoreAdapter.d.ts +21 -9
  630. package/src/lib/stores/blockStoreAdapter.d.ts.map +1 -1
  631. package/src/lib/stores/blockStoreAdapter.js +44 -7
  632. package/src/lib/stores/blockStoreAdapter.js.map +1 -1
  633. package/src/lib/stores/cblStore.d.ts +7 -6
  634. package/src/lib/stores/cblStore.d.ts.map +1 -1
  635. package/src/lib/stores/cblStore.js +3 -4
  636. package/src/lib/stores/cblStore.js.map +1 -1
  637. package/src/lib/stores/index.d.ts +3 -1
  638. package/src/lib/stores/index.d.ts.map +1 -1
  639. package/src/lib/stores/index.js +3 -1
  640. package/src/lib/stores/index.js.map +1 -1
  641. package/src/lib/stores/memoryBlockMetadataStore.d.ts +82 -0
  642. package/src/lib/stores/memoryBlockMetadataStore.d.ts.map +1 -0
  643. package/src/lib/stores/memoryBlockMetadataStore.js +165 -0
  644. package/src/lib/stores/memoryBlockMetadataStore.js.map +1 -0
  645. package/src/lib/stores/memoryBlockStore.d.ts +141 -15
  646. package/src/lib/stores/memoryBlockStore.d.ts.map +1 -1
  647. package/src/lib/stores/memoryBlockStore.js +439 -23
  648. package/src/lib/stores/memoryBlockStore.js.map +1 -1
  649. package/src/lib/stores/memoryCblStore.d.ts +25 -0
  650. package/src/lib/stores/memoryCblStore.d.ts.map +1 -0
  651. package/src/lib/stores/memoryCblStore.js +105 -0
  652. package/src/lib/stores/memoryCblStore.js.map +1 -0
  653. package/src/lib/stores/messaging/index.d.ts +2 -0
  654. package/src/lib/stores/messaging/index.d.ts.map +1 -0
  655. package/src/lib/stores/messaging/index.js +5 -0
  656. package/src/lib/stores/messaging/index.js.map +1 -0
  657. package/src/lib/stores/messaging/memoryMessageMetadataStore.d.ts +24 -0
  658. package/src/lib/stores/messaging/memoryMessageMetadataStore.d.ts.map +1 -0
  659. package/src/lib/stores/messaging/memoryMessageMetadataStore.js +123 -0
  660. package/src/lib/stores/messaging/memoryMessageMetadataStore.js.map +1 -0
  661. package/src/lib/strings/englishUs.d.ts.map +1 -1
  662. package/src/lib/strings/englishUs.js +4 -0
  663. package/src/lib/strings/englishUs.js.map +1 -1
  664. package/src/lib/systemKeyring.d.ts.map +1 -1
  665. package/src/lib/systemKeyring.js.map +1 -1
  666. package/src/lib/test/testMembers.js +3 -3
  667. package/src/lib/test/testMembers.js.map +1 -1
  668. package/src/lib/test/testUtils.d.ts +18 -0
  669. package/src/lib/test/testUtils.d.ts.map +1 -1
  670. package/src/lib/test/testUtils.js +23 -0
  671. package/src/lib/test/testUtils.js.map +1 -1
  672. package/src/lib/types/checksum.d.ts +215 -0
  673. package/src/lib/types/checksum.d.ts.map +1 -0
  674. package/src/lib/types/checksum.js +266 -0
  675. package/src/lib/types/checksum.js.map +1 -0
  676. package/src/lib/types/enumTranslation.d.ts +54 -0
  677. package/src/lib/types/enumTranslation.d.ts.map +1 -0
  678. package/src/lib/types/enumTranslation.js +34 -0
  679. package/src/lib/types/enumTranslation.js.map +1 -0
  680. package/src/lib/types/index.d.ts +46 -0
  681. package/src/lib/types/index.d.ts.map +1 -0
  682. package/src/lib/types/index.js +49 -0
  683. package/src/lib/types/index.js.map +1 -0
  684. package/src/lib/utils/checksumUtils.d.ts +105 -0
  685. package/src/lib/utils/checksumUtils.d.ts.map +1 -0
  686. package/src/lib/utils/checksumUtils.js +123 -0
  687. package/src/lib/utils/checksumUtils.js.map +1 -0
  688. package/src/lib/utils/index.d.ts +47 -0
  689. package/src/lib/utils/index.d.ts.map +1 -0
  690. package/src/lib/utils/index.js +56 -0
  691. package/src/lib/utils/index.js.map +1 -0
  692. package/src/lib/utils/validator.d.ts +216 -0
  693. package/src/lib/utils/validator.d.ts.map +1 -0
  694. package/src/lib/utils/validator.js +256 -0
  695. package/src/lib/utils/validator.js.map +1 -0
  696. package/src/lib/enumerations/stringLanguages.d.ts +0 -29
  697. package/src/lib/enumerations/stringLanguages.d.ts.map +0 -1
  698. package/src/lib/enumerations/stringLanguages.js +0 -24
  699. package/src/lib/enumerations/stringLanguages.js.map +0 -1
  700. package/src/lib/models/index.d.ts +0 -2
  701. package/src/lib/models/index.d.ts.map +0 -1
  702. package/src/lib/models/index.js.map +0 -1
  703. package/src/lib/models/user.d.ts +0 -2
  704. package/src/lib/models/user.d.ts.map +0 -1
  705. package/src/lib/models/user.js +0 -25
  706. package/src/lib/models/user.js.map +0 -1
  707. package/src/lib/types.d.ts +0 -11
  708. package/src/lib/types.d.ts.map +0 -1
  709. package/src/lib/types.js +0 -11
  710. package/src/lib/types.js.map +0 -1
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RecipientKeyManager = void 0;
4
+ const messageError_1 = require("../../errors/messaging/messageError");
5
+ const messageErrorType_1 = require("../../enumerations/messaging/messageErrorType");
6
+ /**
7
+ * Manager for recipient public key operations.
8
+ *
9
+ * @remarks
10
+ * Fetches and validates recipient public keys for message encryption.
11
+ * Handles missing keys gracefully.
12
+ *
13
+ * @see Requirements 3.1
14
+ */
15
+ class RecipientKeyManager {
16
+ constructor(keyProvider) {
17
+ this.keyProvider = keyProvider;
18
+ }
19
+ /**
20
+ * Fetch public keys for multiple recipients.
21
+ * @param recipientIds - Array of recipient node IDs
22
+ * @returns Map of recipient ID to public key
23
+ * @throws MessageError if any required key is missing
24
+ */
25
+ async fetchPublicKeys(recipientIds) {
26
+ const keys = new Map();
27
+ const missingKeys = [];
28
+ for (const recipientId of recipientIds) {
29
+ const publicKey = await this.keyProvider.getPublicKey(recipientId);
30
+ if (publicKey) {
31
+ if (this.validatePublicKey(publicKey)) {
32
+ keys.set(recipientId, publicKey);
33
+ }
34
+ else {
35
+ missingKeys.push(recipientId);
36
+ }
37
+ }
38
+ else {
39
+ missingKeys.push(recipientId);
40
+ }
41
+ }
42
+ if (missingKeys.length > 0) {
43
+ throw new messageError_1.MessageError(messageErrorType_1.MessageErrorType.MISSING_PUBLIC_KEY, `Missing or invalid public keys for recipients: ${missingKeys.join(', ')}`);
44
+ }
45
+ return keys;
46
+ }
47
+ /**
48
+ * Validate public key format and length.
49
+ * @param publicKey - Public key to validate
50
+ * @returns True if valid secp256k1 public key
51
+ */
52
+ validatePublicKey(publicKey) {
53
+ // secp256k1 public keys are either:
54
+ // - 65 bytes (uncompressed, starts with 0x04)
55
+ // - 33 bytes (compressed, starts with 0x02 or 0x03)
56
+ if (publicKey.length === 65) {
57
+ return publicKey[0] === 0x04;
58
+ }
59
+ if (publicKey.length === 33) {
60
+ return publicKey[0] === 0x02 || publicKey[0] === 0x03;
61
+ }
62
+ return false;
63
+ }
64
+ /**
65
+ * Fetch public key for single recipient with graceful handling.
66
+ * @param recipientId - Recipient node ID
67
+ * @returns Public key or null if not found
68
+ */
69
+ async fetchPublicKeyOptional(recipientId) {
70
+ try {
71
+ const publicKey = await this.keyProvider.getPublicKey(recipientId);
72
+ if (publicKey && this.validatePublicKey(publicKey)) {
73
+ return publicKey;
74
+ }
75
+ return null;
76
+ }
77
+ catch {
78
+ return null;
79
+ }
80
+ }
81
+ }
82
+ exports.RecipientKeyManager = RecipientKeyManager;
83
+ //# sourceMappingURL=recipientKeyManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"recipientKeyManager.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/services/messaging/recipientKeyManager.ts"],"names":[],"mappings":";;;AAAA,sEAAmE;AACnE,oFAAiF;AAUjF;;;;;;;;GAQG;AACH,MAAa,mBAAmB;IAC9B,YAAoB,WAA+B;QAA/B,gBAAW,GAAX,WAAW,CAAoB;IAAG,CAAC;IAEvD;;;;;OAKG;IACH,KAAK,CAAC,eAAe,CAAC,YAAsB;QAC1C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAsB,CAAC;QAC3C,MAAM,WAAW,GAAa,EAAE,CAAC;QAEjC,KAAK,MAAM,WAAW,IAAI,YAAY,EAAE,CAAC;YACvC,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;YACnE,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;oBACtC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;gBACnC,CAAC;qBAAM,CAAC;oBACN,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;gBAChC,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,WAAW,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;YAChC,CAAC;QACH,CAAC;QAED,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,2BAAY,CACpB,mCAAgB,CAAC,kBAAkB,EACnC,kDAAkD,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC3E,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED;;;;OAIG;IACH,iBAAiB,CAAC,SAAqB;QACrC,oCAAoC;QACpC,8CAA8C;QAC9C,oDAAoD;QACpD,IAAI,SAAS,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;YAC5B,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;QAC/B,CAAC;QACD,IAAI,SAAS,CAAC,MAAM,KAAK,EAAE,EAAE,CAAC;YAC5B,OAAO,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC;QACxD,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,sBAAsB,CAAC,WAAmB;QAC9C,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;YACnE,IAAI,SAAS,IAAI,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;gBACnD,OAAO,SAAS,CAAC;YACnB,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;CACF;AAtED,kDAsEC"}
@@ -0,0 +1,34 @@
1
+ import { INetworkTransport } from '../../interfaces/network/networkTransport';
2
+ /**
3
+ * Browser-compatible WebSocket network transport for message transmission
4
+ * Uses native browser WebSocket API with ECIES authentication
5
+ */
6
+ export declare class WebSocketTransport implements INetworkTransport {
7
+ private connections;
8
+ private messageHandlers;
9
+ private keyring;
10
+ private eciesSignature;
11
+ constructor();
12
+ /**
13
+ * Connect to a node via WebSocket with authentication
14
+ * @param nodeId Node identifier
15
+ * @param url WebSocket URL (e.g., ws://localhost:8080)
16
+ * @param password Password to unlock system key
17
+ */
18
+ connect(nodeId: string, url: string, password?: string): Promise<void>;
19
+ /**
20
+ * Disconnect from a node
21
+ */
22
+ disconnect(nodeId: string): void;
23
+ /**
24
+ * Register message handler for a node
25
+ */
26
+ onMessage(nodeId: string, handler: (data: string) => void): void;
27
+ sendToNode(recipientId: string, messageId: string): Promise<boolean>;
28
+ /**
29
+ * Send acknowledgment for received message
30
+ */
31
+ sendAck(recipientId: string, messageId: string, status: string): Promise<boolean>;
32
+ isNodeReachable(nodeId: string): Promise<boolean>;
33
+ }
34
+ //# sourceMappingURL=webSocketTransport.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webSocketTransport.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/services/messaging/webSocketTransport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,2CAA2C,CAAC;AAI9E;;;GAGG;AACH,qBAAa,kBAAmB,YAAW,iBAAiB;IAC1D,OAAO,CAAC,WAAW,CAAgC;IACnD,OAAO,CAAC,eAAe,CAA6C;IACpE,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,cAAc,CAAiB;;IASvC;;;;;OAKG;IACG,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA6C5E;;OAEG;IACH,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAQhC;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAI1D,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAc1E;;OAEG;IACG,OAAO,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAcjF,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAIxD"}
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WebSocketTransport = void 0;
4
+ const systemKeyring_1 = require("../../systemKeyring");
5
+ const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
6
+ /**
7
+ * Browser-compatible WebSocket network transport for message transmission
8
+ * Uses native browser WebSocket API with ECIES authentication
9
+ */
10
+ class WebSocketTransport {
11
+ constructor() {
12
+ this.connections = new Map();
13
+ this.messageHandlers = new Map();
14
+ this.keyring = systemKeyring_1.SystemKeyring.getInstance();
15
+ const config = { enableCompression: false };
16
+ const cryptoCore = new ecies_lib_1.EciesCryptoCore(config);
17
+ this.eciesSignature = new ecies_lib_1.EciesSignature(cryptoCore);
18
+ }
19
+ /**
20
+ * Connect to a node via WebSocket with authentication
21
+ * @param nodeId Node identifier
22
+ * @param url WebSocket URL (e.g., ws://localhost:8080)
23
+ * @param password Password to unlock system key
24
+ */
25
+ async connect(nodeId, url, password) {
26
+ return new Promise(async (resolve, reject) => {
27
+ const ws = new WebSocket(url);
28
+ ws.onopen = async () => {
29
+ try {
30
+ if (password) {
31
+ const keyData = await this.keyring.retrieveKey('system', password);
32
+ const timestamp = Date.now().toString();
33
+ const message = new Uint8Array(Buffer.from(`${nodeId}:${timestamp}`));
34
+ const signature = this.eciesSignature.signMessage(keyData, message);
35
+ const sigHex = this.eciesSignature.signatureUint8ArrayToSignatureString(signature);
36
+ ws.send(JSON.stringify({
37
+ type: 'auth',
38
+ nodeId,
39
+ timestamp,
40
+ signature: sigHex
41
+ }));
42
+ }
43
+ this.connections.set(nodeId, ws);
44
+ resolve();
45
+ }
46
+ catch (error) {
47
+ ws.close();
48
+ reject(error);
49
+ }
50
+ };
51
+ ws.onerror = (error) => {
52
+ reject(error);
53
+ };
54
+ ws.onmessage = (event) => {
55
+ const handler = this.messageHandlers.get(nodeId);
56
+ if (handler) {
57
+ handler(event.data);
58
+ }
59
+ };
60
+ ws.onclose = () => {
61
+ this.connections.delete(nodeId);
62
+ };
63
+ });
64
+ }
65
+ /**
66
+ * Disconnect from a node
67
+ */
68
+ disconnect(nodeId) {
69
+ const ws = this.connections.get(nodeId);
70
+ if (ws) {
71
+ ws.close();
72
+ this.connections.delete(nodeId);
73
+ }
74
+ }
75
+ /**
76
+ * Register message handler for a node
77
+ */
78
+ onMessage(nodeId, handler) {
79
+ this.messageHandlers.set(nodeId, handler);
80
+ }
81
+ async sendToNode(recipientId, messageId) {
82
+ const ws = this.connections.get(recipientId);
83
+ if (!ws || ws.readyState !== WebSocket.OPEN) {
84
+ return false;
85
+ }
86
+ try {
87
+ ws.send(JSON.stringify({ type: 'message', messageId }));
88
+ return true;
89
+ }
90
+ catch {
91
+ return false;
92
+ }
93
+ }
94
+ /**
95
+ * Send acknowledgment for received message
96
+ */
97
+ async sendAck(recipientId, messageId, status) {
98
+ const ws = this.connections.get(recipientId);
99
+ if (!ws || ws.readyState !== WebSocket.OPEN) {
100
+ return false;
101
+ }
102
+ try {
103
+ ws.send(JSON.stringify({ type: 'ack', messageId, status }));
104
+ return true;
105
+ }
106
+ catch {
107
+ return false;
108
+ }
109
+ }
110
+ async isNodeReachable(nodeId) {
111
+ const ws = this.connections.get(nodeId);
112
+ return ws !== undefined && ws.readyState === WebSocket.OPEN;
113
+ }
114
+ }
115
+ exports.WebSocketTransport = WebSocketTransport;
116
+ //# sourceMappingURL=webSocketTransport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webSocketTransport.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/services/messaging/webSocketTransport.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import { ECIESService, Member, PlatformID, ShortHexGuid, TypedIdProviderWrapper } from '@digitaldefiance/ecies-lib';
2
+ import { CanUnlockResult, IQuorumMember, IQuorumService, QuorumDocumentInfo, QuorumMemberMetadata, SealedDocumentResult } from '../interfaces/services/quorumService';
3
+ import { QuorumDataRecord } from '../quorumDataRecord';
4
+ import { SimpleStore } from '../stores/simpleStore';
5
+ import { SealingService } from './sealing.service';
6
+ /**
7
+ * QuorumService provides member management and document sealing/unsealing
8
+ * functionality using Shamir's Secret Sharing for secure multi-party access control.
9
+ *
10
+ * This service wraps the existing BrightChainQuorum and SealingService to provide
11
+ * a clean API for quorum operations.
12
+ */
13
+ export declare class QuorumService<TID extends PlatformID = Uint8Array> implements IQuorumService<TID> {
14
+ protected readonly sealingService: SealingService<TID>;
15
+ protected readonly enhancedProvider: TypedIdProviderWrapper<TID>;
16
+ protected readonly eciesService: ECIESService<TID>;
17
+ protected readonly members: SimpleStore<ShortHexGuid, IQuorumMember<TID>>;
18
+ protected readonly membersByMember: SimpleStore<ShortHexGuid, Member<TID>>;
19
+ protected readonly documents: SimpleStore<ShortHexGuid, QuorumDataRecord<TID>>;
20
+ protected readonly memberIds: Set<ShortHexGuid>;
21
+ protected readonly documentIds: Set<ShortHexGuid>;
22
+ constructor(idProvider?: TypedIdProviderWrapper<TID>, eciesService?: ECIESService<TID>);
23
+ /**
24
+ * Convert a member ID to hex string format
25
+ */
26
+ protected memberIdToHex(memberId: TID): ShortHexGuid;
27
+ addMember(member: Member<TID>, metadata: QuorumMemberMetadata): Promise<IQuorumMember<TID>>;
28
+ removeMember(memberId: ShortHexGuid): Promise<void>;
29
+ getMember(memberId: ShortHexGuid): Promise<IQuorumMember<TID> | null>;
30
+ listMembers(): Promise<IQuorumMember<TID>[]>;
31
+ sealDocument<T>(agent: Member<TID>, document: T, memberIds: ShortHexGuid[], sharesRequired?: number): Promise<SealedDocumentResult<TID>>;
32
+ unsealDocument<T>(documentId: ShortHexGuid, membersWithPrivateKey: Member<TID>[]): Promise<T>;
33
+ getDocument(documentId: ShortHexGuid): Promise<QuorumDocumentInfo | null>;
34
+ listDocuments(memberId?: ShortHexGuid): Promise<QuorumDocumentInfo[]>;
35
+ deleteDocument(documentId: ShortHexGuid): Promise<void>;
36
+ canUnlock(documentId: ShortHexGuid, memberIds: ShortHexGuid[]): Promise<CanUnlockResult>;
37
+ }
38
+ //# sourceMappingURL=quorumService.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quorumService.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/quorumService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,176 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.QuorumService = void 0;
4
+ const ecies_lib_1 = require("@digitaldefiance/ecies-lib");
5
+ const quorumErrorType_1 = require("../enumerations/quorumErrorType");
6
+ const quorumError_1 = require("../errors/quorumError");
7
+ const simpleStore_1 = require("../stores/simpleStore");
8
+ const sealing_service_1 = require("./sealing.service");
9
+ const service_provider_1 = require("./service.provider");
10
+ /**
11
+ * QuorumService provides member management and document sealing/unsealing
12
+ * functionality using Shamir's Secret Sharing for secure multi-party access control.
13
+ *
14
+ * This service wraps the existing BrightChainQuorum and SealingService to provide
15
+ * a clean API for quorum operations.
16
+ */
17
+ class QuorumService {
18
+ constructor(idProvider, eciesService) {
19
+ // Track IDs for iteration (SimpleStore doesn't support iteration)
20
+ this.memberIds = new Set();
21
+ this.documentIds = new Set();
22
+ // Use ServiceProvider to get properly configured providers if not explicitly provided
23
+ // This ensures consistent configuration across the application
24
+ const serviceProvider = service_provider_1.ServiceProvider.getInstance();
25
+ this.enhancedProvider = idProvider ?? serviceProvider.idProvider;
26
+ this.eciesService = eciesService ?? serviceProvider.eciesService;
27
+ this.sealingService = new sealing_service_1.SealingService(this.eciesService, this.enhancedProvider);
28
+ this.members = new simpleStore_1.SimpleStore();
29
+ this.membersByMember = new simpleStore_1.SimpleStore();
30
+ this.documents = new simpleStore_1.SimpleStore();
31
+ }
32
+ /**
33
+ * Convert a member ID to hex string format
34
+ */
35
+ memberIdToHex(memberId) {
36
+ return (0, ecies_lib_1.uint8ArrayToHex)(this.enhancedProvider.toBytes(memberId));
37
+ }
38
+ // === Member Management ===
39
+ async addMember(member, metadata) {
40
+ // Use member.idBytes directly instead of converting through provider
41
+ // This ensures we get the correct bytes regardless of provider configuration
42
+ const hexId = (0, ecies_lib_1.uint8ArrayToHex)(member.idBytes);
43
+ const now = new Date();
44
+ const quorumMember = {
45
+ id: hexId,
46
+ publicKey: member.publicKey,
47
+ metadata,
48
+ isActive: true,
49
+ createdAt: now,
50
+ updatedAt: now,
51
+ };
52
+ this.members.set(hexId, quorumMember);
53
+ this.membersByMember.set(hexId, member);
54
+ this.memberIds.add(hexId);
55
+ return quorumMember;
56
+ }
57
+ async removeMember(memberId) {
58
+ if (!this.members.has(memberId)) {
59
+ throw new quorumError_1.QuorumError(quorumErrorType_1.QuorumErrorType.MemberNotFound);
60
+ }
61
+ // Get the member and mark as inactive rather than deleting
62
+ // This preserves their ability to participate in existing documents
63
+ const member = this.members.get(memberId);
64
+ member.isActive = false;
65
+ member.updatedAt = new Date();
66
+ this.members.set(memberId, member);
67
+ // Note: We don't remove from memberIds because the member still exists
68
+ }
69
+ async getMember(memberId) {
70
+ if (!this.members.has(memberId)) {
71
+ return null;
72
+ }
73
+ return this.members.get(memberId);
74
+ }
75
+ async listMembers() {
76
+ const result = [];
77
+ for (const memberId of this.memberIds) {
78
+ const member = await this.getMember(memberId);
79
+ if (member && member.isActive) {
80
+ result.push(member);
81
+ }
82
+ }
83
+ return result;
84
+ }
85
+ // === Document Sealing ===
86
+ async sealDocument(agent, document, memberIds, sharesRequired) {
87
+ // Validate member count
88
+ if (memberIds.length < 2) {
89
+ throw new quorumError_1.QuorumError(quorumErrorType_1.QuorumErrorType.NotEnoughMembers);
90
+ }
91
+ // Get Member objects for the specified IDs
92
+ const members = [];
93
+ for (const memberId of memberIds) {
94
+ if (!this.membersByMember.has(memberId)) {
95
+ throw new quorumError_1.QuorumError(quorumErrorType_1.QuorumErrorType.MemberNotFound);
96
+ }
97
+ members.push(this.membersByMember.get(memberId));
98
+ }
99
+ // Seal the document using the sealing service
100
+ const sealedDoc = await this.sealingService.quorumSeal(agent, document, members, sharesRequired);
101
+ // Store the sealed document
102
+ // Use the document's own enhancedProvider to convert the ID to bytes
103
+ const docHexId = (0, ecies_lib_1.uint8ArrayToHex)(sealedDoc.enhancedProvider.toBytes(sealedDoc.id));
104
+ this.documents.set(docHexId, sealedDoc);
105
+ this.documentIds.add(docHexId);
106
+ return {
107
+ documentId: docHexId,
108
+ encryptedData: sealedDoc.encryptedData,
109
+ memberIds,
110
+ sharesRequired: sealedDoc.sharesRequired,
111
+ createdAt: sealedDoc.dateCreated,
112
+ };
113
+ }
114
+ // === Document Unsealing ===
115
+ async unsealDocument(documentId, membersWithPrivateKey) {
116
+ if (!this.documents.has(documentId)) {
117
+ throw new quorumError_1.QuorumError(quorumErrorType_1.QuorumErrorType.DocumentNotFound);
118
+ }
119
+ const doc = this.documents.get(documentId);
120
+ // Unseal using the sealing service
121
+ return await this.sealingService.quorumUnseal(doc, membersWithPrivateKey);
122
+ }
123
+ // === Document Management ===
124
+ async getDocument(documentId) {
125
+ if (!this.documents.has(documentId)) {
126
+ return null;
127
+ }
128
+ const doc = this.documents.get(documentId);
129
+ const creatorHexId = (0, ecies_lib_1.uint8ArrayToHex)(this.enhancedProvider.toBytes(doc.creator.id));
130
+ return {
131
+ id: documentId,
132
+ memberIds: doc.memberIDs.map((id) => (0, ecies_lib_1.uint8ArrayToHex)(this.enhancedProvider.toBytes(id))),
133
+ sharesRequired: doc.sharesRequired,
134
+ createdAt: doc.dateCreated,
135
+ creatorId: creatorHexId,
136
+ };
137
+ }
138
+ async listDocuments(memberId) {
139
+ const result = [];
140
+ for (const docId of this.documentIds) {
141
+ const doc = await this.getDocument(docId);
142
+ if (doc) {
143
+ // Filter by member if specified
144
+ if (!memberId || doc.memberIds.includes(memberId)) {
145
+ result.push(doc);
146
+ }
147
+ }
148
+ }
149
+ return result;
150
+ }
151
+ async deleteDocument(documentId) {
152
+ if (!this.documents.has(documentId)) {
153
+ throw new quorumError_1.QuorumError(quorumErrorType_1.QuorumErrorType.DocumentNotFound);
154
+ }
155
+ // Remove from tracking - the document remains in SimpleStore but won't be listed
156
+ this.documentIds.delete(documentId);
157
+ }
158
+ async canUnlock(documentId, memberIds) {
159
+ if (!this.documents.has(documentId)) {
160
+ throw new quorumError_1.QuorumError(quorumErrorType_1.QuorumErrorType.DocumentNotFound);
161
+ }
162
+ const doc = this.documents.get(documentId);
163
+ const docMemberIds = doc.memberIDs.map((id) => (0, ecies_lib_1.uint8ArrayToHex)(this.enhancedProvider.toBytes(id)));
164
+ // Find which provided members are actually in the document
165
+ const validMemberIds = memberIds.filter((id) => docMemberIds.includes(id));
166
+ const missingMembers = docMemberIds.filter((id) => !memberIds.includes(id));
167
+ return {
168
+ canUnlock: validMemberIds.length >= doc.sharesRequired,
169
+ sharesProvided: validMemberIds.length,
170
+ sharesRequired: doc.sharesRequired,
171
+ missingMembers,
172
+ };
173
+ }
174
+ }
175
+ exports.QuorumService = QuorumService;
176
+ //# sourceMappingURL=quorumService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quorumService.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/quorumService.ts"],"names":[],"mappings":"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"}
@@ -21,6 +21,7 @@ export declare class SealingService<TID extends PlatformID = Uint8Array> {
21
21
  * @param amongstMembers The members to distribute shares to
22
22
  * @param sharesRequired Optional number of shares required to unseal (defaults to all members)
23
23
  * @returns QuorumDataRecord containing the sealed data and encrypted shares
24
+ * @throws {SealingError} If validation fails or sealing operation fails
24
25
  */
25
26
  quorumSeal<T>(agent: Member<TID>, data: T, amongstMembers: Member<TID>[], sharesRequired?: number): Promise<QuorumDataRecord<TID>>;
26
27
  /**
@@ -32,6 +33,7 @@ export declare class SealingService<TID extends PlatformID = Uint8Array> {
32
33
  * @param document The sealed document
33
34
  * @param membersWithPrivateKey Members with loaded private keys
34
35
  * @returns Decrypted shares
36
+ * @throws {SealingError} If validation fails or decryption fails
35
37
  */
36
38
  decryptShares(document: QuorumDataRecord<TID>, membersWithPrivateKey: Member<TID>[]): Promise<Shares>;
37
39
  /**
@@ -39,6 +41,7 @@ export declare class SealingService<TID extends PlatformID = Uint8Array> {
39
41
  * @param document The document to unseal
40
42
  * @param membersWithPrivateKey Members with loaded private keys
41
43
  * @returns The unsealed data
44
+ * @throws {SealingError} If validation fails or unsealing fails
42
45
  */
43
46
  quorumUnseal<T>(document: QuorumDataRecord<TID>, membersWithPrivateKey: Member<TID>[]): Promise<T>;
44
47
  /**
@@ -46,6 +49,7 @@ export declare class SealingService<TID extends PlatformID = Uint8Array> {
46
49
  * @param document The document to unseal
47
50
  * @param recoveredShares The shares to use for unsealing
48
51
  * @returns The unsealed data
52
+ * @throws {SealingError} If validation fails or unsealing fails
49
53
  */
50
54
  quorumUnsealWithShares<T>(document: QuorumDataRecord<TID>, recoveredShares: Shares): Promise<T>;
51
55
  /**
@@ -53,6 +57,7 @@ export declare class SealingService<TID extends PlatformID = Uint8Array> {
53
57
  * @param shares The shares to encrypt
54
58
  * @param members The members to encrypt shares for
55
59
  * @returns Map of encrypted shares by member ID
60
+ * @throws {SealingError} If validation fails or encryption fails
56
61
  */
57
62
  encryptSharesForMembers(shares: Shares, members: Member<TID>[]): Promise<Map<ShortHexGuid, Uint8Array>>;
58
63
  /**
@@ -60,6 +65,7 @@ export declare class SealingService<TID extends PlatformID = Uint8Array> {
60
65
  * @param encryptedSharesByMemberId Map of encrypted shares by member ID
61
66
  * @param members Members with loaded private keys
62
67
  * @returns Decrypted shares
68
+ * @throws {SealingError} If validation fails or decryption fails
63
69
  */
64
70
  decryptSharesForMembers(encryptedSharesByMemberId: Map<TID, Uint8Array>, members: Member<TID>[]): Promise<Shares>;
65
71
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sealing.service.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/sealing.service.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,YAAY,EAGZ,MAAM,EACN,UAAU,EACV,YAAY,EACZ,sBAAsB,EAEvB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAKvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAYvD,qBAAa,cAAc,CAAC,GAAG,SAAS,UAAU,GAAG,UAAU;IAC7D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAoB;IACjD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA8B;gBAE7D,YAAY,CAAC,EAAE,YAAY,CAAC,GAAG,CAAC,EAChC,gBAAgB,CAAC,EAAE,sBAAsB,CAAC,GAAG,CAAC;IAMhD;;;OAGG;IACI,aAAa,CAAC,SAAS,EAAE,MAAM;IAgBtC;;OAEG;WACW,wBAAwB,CAAC,GAAG,SAAS,UAAU,GAAG,UAAU,EACxE,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,EAC7B,cAAc,CAAC,EAAE,MAAM;IAiBzB;;;;;;;OAOG;IACU,UAAU,CAAC,CAAC,EACvB,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAClB,IAAI,EAAE,CAAC,EACP,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,EAC7B,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAyCjC;;OAEG;WACW,wBAAwB,CAAC,GAAG,SAAS,UAAU,GAAG,UAAU,EACxE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,GACrB,OAAO;IAWV;;;;;OAKG;IACU,aAAa,CACxB,QAAQ,EAAE,gBAAgB,CAAC,GAAG,CAAC,EAC/B,qBAAqB,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,GACnC,OAAO,CAAC,MAAM,CAAC;IAkClB;;;;;OAKG;IACU,YAAY,CAAC,CAAC,EACzB,QAAQ,EAAE,gBAAgB,CAAC,GAAG,CAAC,EAC/B,qBAAqB,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,GACnC,OAAO,CAAC,CAAC,CAAC;IAUb;;;;;OAKG;IACU,sBAAsB,CAAC,CAAC,EACnC,QAAQ,EAAE,gBAAgB,CAAC,GAAG,CAAC,EAC/B,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,CAAC,CAAC;IAiBb;;;;;OAKG;IACU,uBAAuB,CAClC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,GACrB,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IA8BzC;;;;;OAKG;IACU,uBAAuB,CAClC,yBAAyB,EAAE,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,EAC/C,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,GACrB,OAAO,CAAC,MAAM,CAAC;CA6BnB"}
1
+ {"version":3,"file":"sealing.service.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/services/sealing.service.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,YAAY,EAGZ,MAAM,EACN,UAAU,EACV,YAAY,EACZ,sBAAsB,EAEvB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAc,MAAM,EAAE,MAAM,0BAA0B,CAAC;AAKnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAgBvD,qBAAa,cAAc,CAAC,GAAG,SAAS,UAAU,GAAG,UAAU;IAC7D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAoB;IACjD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA8B;gBAE7D,YAAY,CAAC,EAAE,YAAY,CAAC,GAAG,CAAC,EAChC,gBAAgB,CAAC,EAAE,sBAAsB,CAAC,GAAG,CAAC;IAMhD;;;OAGG;IACI,aAAa,CAAC,SAAS,EAAE,MAAM;IAyBtC;;OAEG;WACW,wBAAwB,CAAC,GAAG,SAAS,UAAU,GAAG,UAAU,EACxE,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,EAC7B,cAAc,CAAC,EAAE,MAAM;IAiBzB;;;;;;;;OAQG;IACU,UAAU,CAAC,CAAC,EACvB,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAClB,IAAI,EAAE,CAAC,EACP,cAAc,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,EAC7B,cAAc,CAAC,EAAE,MAAM,GACtB,OAAO,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAoDjC;;OAEG;WACW,wBAAwB,CAAC,GAAG,SAAS,UAAU,GAAG,UAAU,EACxE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,GACrB,OAAO;IAWV;;;;;;OAMG;IACU,aAAa,CACxB,QAAQ,EAAE,gBAAgB,CAAC,GAAG,CAAC,EAC/B,qBAAqB,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,GACnC,OAAO,CAAC,MAAM,CAAC;IA0ClB;;;;;;OAMG;IACU,YAAY,CAAC,CAAC,EACzB,QAAQ,EAAE,gBAAgB,CAAC,GAAG,CAAC,EAC/B,qBAAqB,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,GACnC,OAAO,CAAC,CAAC,CAAC;IAkBb;;;;;;OAMG;IACU,sBAAsB,CAAC,CAAC,EACnC,QAAQ,EAAE,gBAAgB,CAAC,GAAG,CAAC,EAC/B,eAAe,EAAE,MAAM,GACtB,OAAO,CAAC,CAAC,CAAC;IA4Bb;;;;;;OAMG;IACU,uBAAuB,CAClC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,GACrB,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAkCzC;;;;;;OAMG;IACU,uBAAuB,CAClC,yBAAyB,EAAE,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,EAC/C,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,GACrB,OAAO,CAAC,MAAM,CAAC;CAqCnB"}