@brightchain/brightchain-lib 0.14.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 (571) hide show
  1. package/brightchain-lib/BROWSER_COMPAT.md +54 -0
  2. package/package.json +15 -4
  3. package/src/lib/blocks/cblBase.d.ts +16 -1
  4. package/src/lib/blocks/cblBase.d.ts.map +1 -1
  5. package/src/lib/blocks/cblBase.js +33 -4
  6. package/src/lib/blocks/cblBase.js.map +1 -1
  7. package/src/lib/blocks/extendedCbl.d.ts.map +1 -1
  8. package/src/lib/blocks/extendedCbl.js +2 -1
  9. package/src/lib/blocks/extendedCbl.js.map +1 -1
  10. package/src/lib/blocks/handle.d.ts +5 -0
  11. package/src/lib/blocks/handle.d.ts.map +1 -1
  12. package/src/lib/blocks/handle.js.map +1 -1
  13. package/src/lib/blocks/handleTuple.d.ts +9 -1
  14. package/src/lib/blocks/handleTuple.d.ts.map +1 -1
  15. package/src/lib/blocks/handleTuple.js +23 -1
  16. package/src/lib/blocks/handleTuple.js.map +1 -1
  17. package/src/lib/blocks/index.d.ts +1 -0
  18. package/src/lib/blocks/index.d.ts.map +1 -1
  19. package/src/lib/blocks/index.js +1 -0
  20. package/src/lib/blocks/index.js.map +1 -1
  21. package/src/lib/blocks/memoryTuple.d.ts +9 -2
  22. package/src/lib/blocks/memoryTuple.d.ts.map +1 -1
  23. package/src/lib/blocks/memoryTuple.js +12 -3
  24. package/src/lib/blocks/memoryTuple.js.map +1 -1
  25. package/src/lib/blocks/vcbl.d.ts +27 -0
  26. package/src/lib/blocks/vcbl.d.ts.map +1 -0
  27. package/src/lib/blocks/vcbl.js +107 -0
  28. package/src/lib/blocks/vcbl.js.map +1 -0
  29. package/src/lib/constants.d.ts +5 -1
  30. package/src/lib/constants.d.ts.map +1 -1
  31. package/src/lib/constants.js +4 -0
  32. package/src/lib/constants.js.map +1 -1
  33. package/src/lib/crypto/index.d.ts +12 -0
  34. package/src/lib/crypto/index.d.ts.map +1 -0
  35. package/src/lib/crypto/index.js +23 -0
  36. package/src/lib/crypto/index.js.map +1 -0
  37. package/src/lib/crypto/platformCrypto.d.ts +132 -0
  38. package/src/lib/crypto/platformCrypto.d.ts.map +1 -0
  39. package/src/lib/crypto/platformCrypto.js +181 -0
  40. package/src/lib/crypto/platformCrypto.js.map +1 -0
  41. package/src/lib/enumeration-translations/blockType.d.ts.map +1 -1
  42. package/src/lib/enumeration-translations/blockType.js +16 -0
  43. package/src/lib/enumeration-translations/blockType.js.map +1 -1
  44. package/src/lib/enumerations/blockType.d.ts +12 -0
  45. package/src/lib/enumerations/blockType.d.ts.map +1 -1
  46. package/src/lib/enumerations/blockType.js +14 -0
  47. package/src/lib/enumerations/blockType.js.map +1 -1
  48. package/src/lib/enumerations/brightChainStrings.d.ts +4 -0
  49. package/src/lib/enumerations/brightChainStrings.d.ts.map +1 -1
  50. package/src/lib/enumerations/brightChainStrings.js +4 -0
  51. package/src/lib/enumerations/brightChainStrings.js.map +1 -1
  52. package/src/lib/enumerations/cblErrorType.d.ts +2 -1
  53. package/src/lib/enumerations/cblErrorType.d.ts.map +1 -1
  54. package/src/lib/enumerations/cblErrorType.js +1 -0
  55. package/src/lib/enumerations/cblErrorType.js.map +1 -1
  56. package/src/lib/enumerations/communication.d.ts +57 -0
  57. package/src/lib/enumerations/communication.d.ts.map +1 -0
  58. package/src/lib/enumerations/communication.js +89 -0
  59. package/src/lib/enumerations/communication.js.map +1 -0
  60. package/src/lib/enumerations/deviceType.d.ts +15 -0
  61. package/src/lib/enumerations/deviceType.d.ts.map +1 -0
  62. package/src/lib/enumerations/deviceType.js +19 -0
  63. package/src/lib/enumerations/deviceType.js.map +1 -0
  64. package/src/lib/enumerations/handleTupleErrorType.d.ts +2 -1
  65. package/src/lib/enumerations/handleTupleErrorType.d.ts.map +1 -1
  66. package/src/lib/enumerations/handleTupleErrorType.js +1 -0
  67. package/src/lib/enumerations/handleTupleErrorType.js.map +1 -1
  68. package/src/lib/enumerations/index.d.ts +6 -0
  69. package/src/lib/enumerations/index.d.ts.map +1 -1
  70. package/src/lib/enumerations/index.js +11 -0
  71. package/src/lib/enumerations/index.js.map +1 -1
  72. package/src/lib/enumerations/paperKeyPurpose.d.ts +15 -0
  73. package/src/lib/enumerations/paperKeyPurpose.d.ts.map +1 -0
  74. package/src/lib/enumerations/paperKeyPurpose.js +19 -0
  75. package/src/lib/enumerations/paperKeyPurpose.js.map +1 -0
  76. package/src/lib/enumerations/proofPlatform.d.ts +24 -0
  77. package/src/lib/enumerations/proofPlatform.d.ts.map +1 -0
  78. package/src/lib/enumerations/proofPlatform.js +28 -0
  79. package/src/lib/enumerations/proofPlatform.js.map +1 -0
  80. package/src/lib/enumerations/readConcern.d.ts +22 -0
  81. package/src/lib/enumerations/readConcern.d.ts.map +1 -0
  82. package/src/lib/enumerations/readConcern.js +26 -0
  83. package/src/lib/enumerations/readConcern.js.map +1 -0
  84. package/src/lib/enumerations/tupleErrorType.d.ts +2 -1
  85. package/src/lib/enumerations/tupleErrorType.d.ts.map +1 -1
  86. package/src/lib/enumerations/tupleErrorType.js +1 -0
  87. package/src/lib/enumerations/tupleErrorType.js.map +1 -1
  88. package/src/lib/enumerations/verificationStatus.d.ts +17 -0
  89. package/src/lib/enumerations/verificationStatus.d.ts.map +1 -0
  90. package/src/lib/enumerations/verificationStatus.js +21 -0
  91. package/src/lib/enumerations/verificationStatus.js.map +1 -0
  92. package/src/lib/errors/blockFetchError.d.ts +51 -0
  93. package/src/lib/errors/blockFetchError.d.ts.map +1 -0
  94. package/src/lib/errors/blockFetchError.js +63 -0
  95. package/src/lib/errors/blockFetchError.js.map +1 -0
  96. package/src/lib/errors/cblError.d.ts.map +1 -1
  97. package/src/lib/errors/cblError.js +1 -0
  98. package/src/lib/errors/cblError.js.map +1 -1
  99. package/src/lib/errors/handleTupleError.d.ts +10 -1
  100. package/src/lib/errors/handleTupleError.d.ts.map +1 -1
  101. package/src/lib/errors/handleTupleError.js +10 -1
  102. package/src/lib/errors/handleTupleError.js.map +1 -1
  103. package/src/lib/errors/index.d.ts +16 -0
  104. package/src/lib/errors/index.d.ts.map +1 -1
  105. package/src/lib/errors/index.js +22 -0
  106. package/src/lib/errors/index.js.map +1 -1
  107. package/src/lib/errors/poolDeletionError.d.ts +10 -0
  108. package/src/lib/errors/poolDeletionError.d.ts.map +1 -0
  109. package/src/lib/errors/poolDeletionError.js +16 -0
  110. package/src/lib/errors/poolDeletionError.js.map +1 -0
  111. package/src/lib/errors/poolDeletionTombstoneError.d.ts +12 -0
  112. package/src/lib/errors/poolDeletionTombstoneError.d.ts.map +1 -0
  113. package/src/lib/errors/poolDeletionTombstoneError.js +18 -0
  114. package/src/lib/errors/poolDeletionTombstoneError.js.map +1 -0
  115. package/src/lib/errors/tupleError.d.ts.map +1 -1
  116. package/src/lib/errors/tupleError.js +1 -0
  117. package/src/lib/errors/tupleError.js.map +1 -1
  118. package/src/lib/i18n/i18n-setup.d.ts +1 -1
  119. package/src/lib/i18n/strings/englishUs.d.ts.map +1 -1
  120. package/src/lib/i18n/strings/englishUs.js +4 -0
  121. package/src/lib/i18n/strings/englishUs.js.map +1 -1
  122. package/src/lib/i18n/strings/french.d.ts.map +1 -1
  123. package/src/lib/i18n/strings/french.js +4 -0
  124. package/src/lib/i18n/strings/french.js.map +1 -1
  125. package/src/lib/i18n/strings/german.d.ts.map +1 -1
  126. package/src/lib/i18n/strings/german.js +4 -0
  127. package/src/lib/i18n/strings/german.js.map +1 -1
  128. package/src/lib/i18n/strings/japanese.d.ts.map +1 -1
  129. package/src/lib/i18n/strings/japanese.js +4 -0
  130. package/src/lib/i18n/strings/japanese.js.map +1 -1
  131. package/src/lib/i18n/strings/mandarin.d.ts.map +1 -1
  132. package/src/lib/i18n/strings/mandarin.js +4 -0
  133. package/src/lib/i18n/strings/mandarin.js.map +1 -1
  134. package/src/lib/i18n/strings/spanish.d.ts.map +1 -1
  135. package/src/lib/i18n/strings/spanish.js +4 -0
  136. package/src/lib/i18n/strings/spanish.js.map +1 -1
  137. package/src/lib/i18n/strings/ukrainian.d.ts.map +1 -1
  138. package/src/lib/i18n/strings/ukrainian.js +4 -0
  139. package/src/lib/i18n/strings/ukrainian.js.map +1 -1
  140. package/src/lib/index.d.ts +4 -0
  141. package/src/lib/index.d.ts.map +1 -1
  142. package/src/lib/index.js +4 -0
  143. package/src/lib/index.js.map +1 -1
  144. package/src/lib/interfaces/auth/index.d.ts +4 -0
  145. package/src/lib/interfaces/auth/index.d.ts.map +1 -0
  146. package/src/lib/interfaces/auth/index.js +8 -0
  147. package/src/lib/interfaces/auth/index.js.map +1 -0
  148. package/src/lib/interfaces/auth/nodeAuthenticator.d.ts +19 -0
  149. package/src/lib/interfaces/auth/nodeAuthenticator.d.ts.map +1 -0
  150. package/src/lib/interfaces/auth/nodeAuthenticator.js +3 -0
  151. package/src/lib/interfaces/auth/nodeAuthenticator.js.map +1 -0
  152. package/src/lib/interfaces/auth/poolAcl.d.ts +65 -0
  153. package/src/lib/interfaces/auth/poolAcl.d.ts.map +1 -0
  154. package/src/lib/interfaces/auth/poolAcl.js +52 -0
  155. package/src/lib/interfaces/auth/poolAcl.js.map +1 -0
  156. package/src/lib/interfaces/availability/availabilityService.d.ts +5 -3
  157. package/src/lib/interfaces/availability/availabilityService.d.ts.map +1 -1
  158. package/src/lib/interfaces/availability/availabilityService.js.map +1 -1
  159. package/src/lib/interfaces/availability/blockRegistry.d.ts +52 -3
  160. package/src/lib/interfaces/availability/blockRegistry.d.ts.map +1 -1
  161. package/src/lib/interfaces/availability/blockRegistry.js +1 -1
  162. package/src/lib/interfaces/availability/discoveryProtocol.d.ts +81 -3
  163. package/src/lib/interfaces/availability/discoveryProtocol.d.ts.map +1 -1
  164. package/src/lib/interfaces/availability/discoveryProtocol.js.map +1 -1
  165. package/src/lib/interfaces/availability/gossipService.d.ts +110 -6
  166. package/src/lib/interfaces/availability/gossipService.d.ts.map +1 -1
  167. package/src/lib/interfaces/availability/gossipService.js +94 -1
  168. package/src/lib/interfaces/availability/gossipService.js.map +1 -1
  169. package/src/lib/interfaces/availability/index.d.ts +1 -0
  170. package/src/lib/interfaces/availability/index.d.ts.map +1 -1
  171. package/src/lib/interfaces/availability/index.js +1 -0
  172. package/src/lib/interfaces/availability/index.js.map +1 -1
  173. package/src/lib/interfaces/availability/locationRecord.d.ts +6 -0
  174. package/src/lib/interfaces/availability/locationRecord.d.ts.map +1 -1
  175. package/src/lib/interfaces/availability/locationRecord.js +12 -0
  176. package/src/lib/interfaces/availability/locationRecord.js.map +1 -1
  177. package/src/lib/interfaces/availability/poolDeletionTombstone.d.ts +40 -0
  178. package/src/lib/interfaces/availability/poolDeletionTombstone.d.ts.map +1 -0
  179. package/src/lib/interfaces/availability/poolDeletionTombstone.js +19 -0
  180. package/src/lib/interfaces/availability/poolDeletionTombstone.js.map +1 -0
  181. package/src/lib/interfaces/availability/reconciliationService.d.ts +52 -0
  182. package/src/lib/interfaces/availability/reconciliationService.d.ts.map +1 -1
  183. package/src/lib/interfaces/availability/reconciliationService.js.map +1 -1
  184. package/src/lib/interfaces/blockCapacity.d.ts +9 -0
  185. package/src/lib/interfaces/blockCapacity.d.ts.map +1 -1
  186. package/src/lib/interfaces/blockEncryption.d.ts +4 -2
  187. package/src/lib/interfaces/blockEncryption.d.ts.map +1 -1
  188. package/src/lib/interfaces/blockFetch/blockFetchTransport.d.ts +26 -0
  189. package/src/lib/interfaces/blockFetch/blockFetchTransport.d.ts.map +1 -0
  190. package/src/lib/interfaces/blockFetch/blockFetchTransport.js +12 -0
  191. package/src/lib/interfaces/blockFetch/blockFetchTransport.js.map +1 -0
  192. package/src/lib/interfaces/blockFetch/blockFetcher.d.ts +71 -0
  193. package/src/lib/interfaces/blockFetch/blockFetcher.d.ts.map +1 -0
  194. package/src/lib/interfaces/blockFetch/blockFetcher.js +22 -0
  195. package/src/lib/interfaces/blockFetch/blockFetcher.js.map +1 -0
  196. package/src/lib/interfaces/blockFetch/enrichedQueryResult.d.ts +43 -0
  197. package/src/lib/interfaces/blockFetch/enrichedQueryResult.d.ts.map +1 -0
  198. package/src/lib/interfaces/blockFetch/enrichedQueryResult.js +13 -0
  199. package/src/lib/interfaces/blockFetch/enrichedQueryResult.js.map +1 -0
  200. package/src/lib/interfaces/blockFetch/fetchQueue.d.ts +70 -0
  201. package/src/lib/interfaces/blockFetch/fetchQueue.d.ts.map +1 -0
  202. package/src/lib/interfaces/blockFetch/fetchQueue.js +18 -0
  203. package/src/lib/interfaces/blockFetch/fetchQueue.js.map +1 -0
  204. package/src/lib/interfaces/blockFetch/index.d.ts +10 -0
  205. package/src/lib/interfaces/blockFetch/index.d.ts.map +1 -0
  206. package/src/lib/interfaces/blockFetch/index.js +13 -0
  207. package/src/lib/interfaces/blockFetch/index.js.map +1 -0
  208. package/src/lib/interfaces/blocks/index.d.ts +1 -0
  209. package/src/lib/interfaces/blocks/index.d.ts.map +1 -1
  210. package/src/lib/interfaces/blocks/vcbl.d.ts +16 -0
  211. package/src/lib/interfaces/blocks/vcbl.d.ts.map +1 -0
  212. package/src/lib/interfaces/blocks/vcbl.js +3 -0
  213. package/src/lib/interfaces/blocks/vcbl.js.map +1 -0
  214. package/src/lib/interfaces/brightpass/auditLog.d.ts +25 -0
  215. package/src/lib/interfaces/brightpass/auditLog.d.ts.map +1 -0
  216. package/src/lib/interfaces/brightpass/auditLog.js +21 -0
  217. package/src/lib/interfaces/brightpass/auditLog.js.map +1 -0
  218. package/src/lib/interfaces/brightpass/emergencyAccess.d.ts +11 -0
  219. package/src/lib/interfaces/brightpass/emergencyAccess.d.ts.map +1 -0
  220. package/src/lib/interfaces/brightpass/emergencyAccess.js +3 -0
  221. package/src/lib/interfaces/brightpass/emergencyAccess.js.map +1 -0
  222. package/src/lib/interfaces/brightpass/entryPropertyRecord.d.ts +11 -0
  223. package/src/lib/interfaces/brightpass/entryPropertyRecord.d.ts.map +1 -0
  224. package/src/lib/interfaces/brightpass/entryPropertyRecord.js +3 -0
  225. package/src/lib/interfaces/brightpass/entryPropertyRecord.js.map +1 -0
  226. package/src/lib/interfaces/brightpass/importTypes.d.ts +10 -0
  227. package/src/lib/interfaces/brightpass/importTypes.d.ts.map +1 -0
  228. package/src/lib/interfaces/brightpass/importTypes.js +3 -0
  229. package/src/lib/interfaces/brightpass/importTypes.js.map +1 -0
  230. package/src/lib/interfaces/brightpass/index.d.ts +7 -0
  231. package/src/lib/interfaces/brightpass/index.d.ts.map +1 -0
  232. package/src/lib/interfaces/brightpass/index.js +10 -0
  233. package/src/lib/interfaces/brightpass/index.js.map +1 -0
  234. package/src/lib/interfaces/brightpass/vaultEntry.d.ts +48 -0
  235. package/src/lib/interfaces/brightpass/vaultEntry.d.ts.map +1 -0
  236. package/src/lib/interfaces/brightpass/vaultEntry.js +3 -0
  237. package/src/lib/interfaces/brightpass/vaultEntry.js.map +1 -0
  238. package/src/lib/interfaces/brightpass/vaultMetadata.d.ts +34 -0
  239. package/src/lib/interfaces/brightpass/vaultMetadata.d.ts.map +1 -0
  240. package/src/lib/interfaces/brightpass/vaultMetadata.js +3 -0
  241. package/src/lib/interfaces/brightpass/vaultMetadata.js.map +1 -0
  242. package/src/lib/interfaces/clusterKeys.d.ts +4 -2
  243. package/src/lib/interfaces/clusterKeys.d.ts.map +1 -1
  244. package/src/lib/interfaces/communication.d.ts +173 -0
  245. package/src/lib/interfaces/communication.d.ts.map +1 -0
  246. package/src/lib/interfaces/communication.js +17 -0
  247. package/src/lib/interfaces/communication.js.map +1 -0
  248. package/src/lib/interfaces/communicationEvents.d.ts +168 -0
  249. package/src/lib/interfaces/communicationEvents.d.ts.map +1 -0
  250. package/src/lib/interfaces/communicationEvents.js +12 -0
  251. package/src/lib/interfaces/communicationEvents.js.map +1 -0
  252. package/src/lib/interfaces/crypto/ethereumWallet.d.ts +72 -0
  253. package/src/lib/interfaces/crypto/ethereumWallet.d.ts.map +1 -0
  254. package/src/lib/interfaces/crypto/ethereumWallet.js +12 -0
  255. package/src/lib/interfaces/crypto/ethereumWallet.js.map +1 -0
  256. package/src/lib/interfaces/crypto/gitSignature.d.ts +95 -0
  257. package/src/lib/interfaces/crypto/gitSignature.d.ts.map +1 -0
  258. package/src/lib/interfaces/crypto/gitSignature.js +12 -0
  259. package/src/lib/interfaces/crypto/gitSignature.js.map +1 -0
  260. package/src/lib/interfaces/crypto/index.d.ts +3 -0
  261. package/src/lib/interfaces/crypto/index.d.ts.map +1 -0
  262. package/src/lib/interfaces/crypto/index.js +3 -0
  263. package/src/lib/interfaces/crypto/index.js.map +1 -0
  264. package/src/lib/interfaces/dataKeyComponents.d.ts +7 -2
  265. package/src/lib/interfaces/dataKeyComponents.d.ts.map +1 -1
  266. package/src/lib/interfaces/encryptedBlockCreator.d.ts +4 -2
  267. package/src/lib/interfaces/encryptedBlockCreator.d.ts.map +1 -1
  268. package/src/lib/interfaces/events/communicationEventEmitter.d.ts +65 -0
  269. package/src/lib/interfaces/events/communicationEventEmitter.d.ts.map +1 -0
  270. package/src/lib/interfaces/events/communicationEventEmitter.js +60 -0
  271. package/src/lib/interfaces/events/communicationEventEmitter.js.map +1 -0
  272. package/src/lib/interfaces/events/index.d.ts +2 -0
  273. package/src/lib/interfaces/events/index.d.ts.map +1 -0
  274. package/src/lib/interfaces/events/index.js +5 -0
  275. package/src/lib/interfaces/events/index.js.map +1 -0
  276. package/src/lib/interfaces/failableResult.d.ts +15 -0
  277. package/src/lib/interfaces/failableResult.d.ts.map +1 -0
  278. package/src/lib/interfaces/failableResult.js +3 -0
  279. package/src/lib/interfaces/failableResult.js.map +1 -0
  280. package/src/lib/interfaces/identity/device.d.ts +59 -0
  281. package/src/lib/interfaces/identity/device.d.ts.map +1 -0
  282. package/src/lib/interfaces/identity/device.js +17 -0
  283. package/src/lib/interfaces/identity/device.js.map +1 -0
  284. package/src/lib/interfaces/identity/deviceKeyStorage.d.ts +71 -0
  285. package/src/lib/interfaces/identity/deviceKeyStorage.d.ts.map +1 -0
  286. package/src/lib/interfaces/identity/deviceKeyStorage.js +16 -0
  287. package/src/lib/interfaces/identity/deviceKeyStorage.js.map +1 -0
  288. package/src/lib/interfaces/identity/identityProof.d.ts +90 -0
  289. package/src/lib/interfaces/identity/identityProof.d.ts.map +1 -0
  290. package/src/lib/interfaces/identity/identityProof.js +18 -0
  291. package/src/lib/interfaces/identity/identityProof.js.map +1 -0
  292. package/src/lib/interfaces/identity/index.d.ts +7 -0
  293. package/src/lib/interfaces/identity/index.d.ts.map +1 -0
  294. package/src/lib/interfaces/identity/index.js +3 -0
  295. package/src/lib/interfaces/identity/index.js.map +1 -0
  296. package/src/lib/interfaces/identity/paperKey.d.ts +97 -0
  297. package/src/lib/interfaces/identity/paperKey.d.ts.map +1 -0
  298. package/src/lib/interfaces/identity/paperKey.js +17 -0
  299. package/src/lib/interfaces/identity/paperKey.js.map +1 -0
  300. package/src/lib/interfaces/identity/publicProfile.d.ts +74 -0
  301. package/src/lib/interfaces/identity/publicProfile.d.ts.map +1 -0
  302. package/src/lib/interfaces/identity/publicProfile.js +18 -0
  303. package/src/lib/interfaces/identity/publicProfile.js.map +1 -0
  304. package/src/lib/interfaces/identity/splitPaperKey.d.ts +73 -0
  305. package/src/lib/interfaces/identity/splitPaperKey.d.ts.map +1 -0
  306. package/src/lib/interfaces/identity/splitPaperKey.js +20 -0
  307. package/src/lib/interfaces/identity/splitPaperKey.js.map +1 -0
  308. package/src/lib/interfaces/index.d.ts +11 -2
  309. package/src/lib/interfaces/index.d.ts.map +1 -1
  310. package/src/lib/interfaces/index.js +12 -0
  311. package/src/lib/interfaces/index.js.map +1 -1
  312. package/src/lib/interfaces/network/node.d.ts +4 -2
  313. package/src/lib/interfaces/network/node.d.ts.map +1 -1
  314. package/src/lib/interfaces/network/nodeAdvertisement.d.ts +4 -2
  315. package/src/lib/interfaces/network/nodeAdvertisement.d.ts.map +1 -1
  316. package/src/lib/interfaces/privateVotingDerivation.d.ts +7 -2
  317. package/src/lib/interfaces/privateVotingDerivation.d.ts.map +1 -1
  318. package/src/lib/interfaces/requests/communicationRequests.d.ts +154 -0
  319. package/src/lib/interfaces/requests/communicationRequests.d.ts.map +1 -0
  320. package/src/lib/interfaces/requests/communicationRequests.js +10 -0
  321. package/src/lib/interfaces/requests/communicationRequests.js.map +1 -0
  322. package/src/lib/interfaces/requests/index.d.ts +2 -0
  323. package/src/lib/interfaces/requests/index.d.ts.map +1 -0
  324. package/src/lib/interfaces/requests/index.js +3 -0
  325. package/src/lib/interfaces/requests/index.js.map +1 -0
  326. package/src/lib/interfaces/responses/blockDataResponse.d.ts +11 -0
  327. package/src/lib/interfaces/responses/blockDataResponse.d.ts.map +1 -0
  328. package/src/lib/interfaces/responses/blockDataResponse.js +3 -0
  329. package/src/lib/interfaces/responses/blockDataResponse.js.map +1 -0
  330. package/src/lib/interfaces/responses/communicationResponses.d.ts +82 -0
  331. package/src/lib/interfaces/responses/communicationResponses.d.ts.map +1 -0
  332. package/src/lib/interfaces/responses/communicationResponses.js +17 -0
  333. package/src/lib/interfaces/responses/communicationResponses.js.map +1 -0
  334. package/src/lib/interfaces/responses/cryptoResponses.d.ts +30 -0
  335. package/src/lib/interfaces/responses/cryptoResponses.d.ts.map +1 -0
  336. package/src/lib/interfaces/responses/cryptoResponses.js +12 -0
  337. package/src/lib/interfaces/responses/cryptoResponses.js.map +1 -0
  338. package/src/lib/interfaces/responses/deviceResponses.d.ts +26 -0
  339. package/src/lib/interfaces/responses/deviceResponses.d.ts.map +1 -0
  340. package/src/lib/interfaces/responses/deviceResponses.js +15 -0
  341. package/src/lib/interfaces/responses/deviceResponses.js.map +1 -0
  342. package/src/lib/interfaces/responses/directoryResponses.d.ts +26 -0
  343. package/src/lib/interfaces/responses/directoryResponses.d.ts.map +1 -0
  344. package/src/lib/interfaces/responses/directoryResponses.js +12 -0
  345. package/src/lib/interfaces/responses/directoryResponses.js.map +1 -0
  346. package/src/lib/interfaces/responses/emailResponses.d.ts +40 -0
  347. package/src/lib/interfaces/responses/emailResponses.d.ts.map +1 -0
  348. package/src/lib/interfaces/responses/emailResponses.js +18 -0
  349. package/src/lib/interfaces/responses/emailResponses.js.map +1 -0
  350. package/src/lib/interfaces/responses/explodingMessageResponses.d.ts +42 -0
  351. package/src/lib/interfaces/responses/explodingMessageResponses.d.ts.map +1 -0
  352. package/src/lib/interfaces/responses/explodingMessageResponses.js +11 -0
  353. package/src/lib/interfaces/responses/explodingMessageResponses.js.map +1 -0
  354. package/src/lib/interfaces/responses/identityProofResponses.d.ts +33 -0
  355. package/src/lib/interfaces/responses/identityProofResponses.d.ts.map +1 -0
  356. package/src/lib/interfaces/responses/identityProofResponses.js +12 -0
  357. package/src/lib/interfaces/responses/identityProofResponses.js.map +1 -0
  358. package/src/lib/interfaces/responses/index.d.ts +3 -1
  359. package/src/lib/interfaces/responses/index.d.ts.map +1 -1
  360. package/src/lib/interfaces/sealResults.d.ts +7 -2
  361. package/src/lib/interfaces/sealResults.d.ts.map +1 -1
  362. package/src/lib/interfaces/services/fecService.d.ts +7 -5
  363. package/src/lib/interfaces/services/fecService.d.ts.map +1 -1
  364. package/src/lib/interfaces/services/fecService.js +2 -0
  365. package/src/lib/interfaces/services/fecService.js.map +1 -1
  366. package/src/lib/interfaces/singleEncryptedBlockDetails.d.ts +7 -2
  367. package/src/lib/interfaces/singleEncryptedBlockDetails.d.ts.map +1 -1
  368. package/src/lib/interfaces/storage/blockMetadata.d.ts +8 -1
  369. package/src/lib/interfaces/storage/blockMetadata.d.ts.map +1 -1
  370. package/src/lib/interfaces/storage/blockMetadata.js +3 -1
  371. package/src/lib/interfaces/storage/blockMetadata.js.map +1 -1
  372. package/src/lib/interfaces/storage/cblIndex.d.ts +141 -0
  373. package/src/lib/interfaces/storage/cblIndex.d.ts.map +1 -0
  374. package/src/lib/interfaces/storage/cblIndex.js +28 -0
  375. package/src/lib/interfaces/storage/cblIndex.js.map +1 -0
  376. package/src/lib/interfaces/storage/clientSession.d.ts +22 -0
  377. package/src/lib/interfaces/storage/clientSession.d.ts.map +1 -0
  378. package/src/lib/interfaces/storage/clientSession.js +3 -0
  379. package/src/lib/interfaces/storage/clientSession.js.map +1 -0
  380. package/src/lib/interfaces/storage/collection.d.ts +80 -0
  381. package/src/lib/interfaces/storage/collection.d.ts.map +1 -0
  382. package/src/lib/interfaces/storage/collection.js +3 -0
  383. package/src/lib/interfaces/storage/collection.js.map +1 -0
  384. package/src/lib/interfaces/storage/database.d.ts +30 -0
  385. package/src/lib/interfaces/storage/database.d.ts.map +1 -0
  386. package/src/lib/interfaces/storage/database.js +3 -0
  387. package/src/lib/interfaces/storage/database.js.map +1 -0
  388. package/src/lib/interfaces/storage/databaseLifecycleHooks.d.ts +43 -0
  389. package/src/lib/interfaces/storage/databaseLifecycleHooks.d.ts.map +1 -0
  390. package/src/lib/interfaces/storage/databaseLifecycleHooks.js +3 -0
  391. package/src/lib/interfaces/storage/databaseLifecycleHooks.js.map +1 -0
  392. package/src/lib/interfaces/storage/documentTypes.d.ts +413 -0
  393. package/src/lib/interfaces/storage/documentTypes.d.ts.map +1 -0
  394. package/src/lib/interfaces/storage/documentTypes.js +8 -0
  395. package/src/lib/interfaces/storage/documentTypes.js.map +1 -0
  396. package/src/lib/interfaces/storage/encryptedPool.d.ts +64 -0
  397. package/src/lib/interfaces/storage/encryptedPool.d.ts.map +1 -0
  398. package/src/lib/interfaces/storage/encryptedPool.js +26 -0
  399. package/src/lib/interfaces/storage/encryptedPool.js.map +1 -0
  400. package/src/lib/interfaces/storage/headRegistry.d.ts +128 -0
  401. package/src/lib/interfaces/storage/headRegistry.d.ts.map +1 -0
  402. package/src/lib/interfaces/storage/headRegistry.js +3 -0
  403. package/src/lib/interfaces/storage/headRegistry.js.map +1 -0
  404. package/src/lib/interfaces/storage/index.d.ts +14 -0
  405. package/src/lib/interfaces/storage/index.d.ts.map +1 -1
  406. package/src/lib/interfaces/storage/index.js +14 -1
  407. package/src/lib/interfaces/storage/index.js.map +1 -1
  408. package/src/lib/interfaces/storage/pooledBlockStore.d.ts +163 -0
  409. package/src/lib/interfaces/storage/pooledBlockStore.d.ts.map +1 -0
  410. package/src/lib/interfaces/storage/pooledBlockStore.js +77 -0
  411. package/src/lib/interfaces/storage/pooledBlockStore.js.map +1 -0
  412. package/src/lib/interfaces/storage/readConcernBlockStore.d.ts +47 -0
  413. package/src/lib/interfaces/storage/readConcernBlockStore.d.ts.map +1 -0
  414. package/src/lib/interfaces/storage/readConcernBlockStore.js +29 -0
  415. package/src/lib/interfaces/storage/readConcernBlockStore.js.map +1 -0
  416. package/src/lib/interfaces/symmetricEncryptionResults.d.ts +7 -5
  417. package/src/lib/interfaces/symmetricEncryptionResults.d.ts.map +1 -1
  418. package/src/lib/services/blockCapacity.service.d.ts.map +1 -1
  419. package/src/lib/services/blockCapacity.service.js +15 -0
  420. package/src/lib/services/blockCapacity.service.js.map +1 -1
  421. package/src/lib/services/brightpass/auditLogger.d.ts +41 -0
  422. package/src/lib/services/brightpass/auditLogger.d.ts.map +1 -0
  423. package/src/lib/services/brightpass/auditLogger.js +47 -0
  424. package/src/lib/services/brightpass/auditLogger.js.map +1 -0
  425. package/src/lib/services/brightpass/breachDetector.d.ts +68 -0
  426. package/src/lib/services/brightpass/breachDetector.d.ts.map +1 -0
  427. package/src/lib/services/brightpass/breachDetector.js +102 -0
  428. package/src/lib/services/brightpass/breachDetector.js.map +1 -0
  429. package/src/lib/services/brightpass/importParser.d.ts +105 -0
  430. package/src/lib/services/brightpass/importParser.d.ts.map +1 -0
  431. package/src/lib/services/brightpass/importParser.js +380 -0
  432. package/src/lib/services/brightpass/importParser.js.map +1 -0
  433. package/src/lib/services/brightpass/index.d.ts +16 -0
  434. package/src/lib/services/brightpass/index.d.ts.map +1 -0
  435. package/src/lib/services/brightpass/index.js +19 -0
  436. package/src/lib/services/brightpass/index.js.map +1 -0
  437. package/src/lib/services/brightpass/passwordGenerator.d.ts +111 -0
  438. package/src/lib/services/brightpass/passwordGenerator.d.ts.map +1 -0
  439. package/src/lib/services/brightpass/passwordGenerator.js +162 -0
  440. package/src/lib/services/brightpass/passwordGenerator.js.map +1 -0
  441. package/src/lib/services/brightpass/totpEngine.d.ts +191 -0
  442. package/src/lib/services/brightpass/totpEngine.d.ts.map +1 -0
  443. package/src/lib/services/brightpass/totpEngine.js +198 -0
  444. package/src/lib/services/brightpass/totpEngine.js.map +1 -0
  445. package/src/lib/services/brightpass/vaultKeyDerivation.d.ts +26 -0
  446. package/src/lib/services/brightpass/vaultKeyDerivation.d.ts.map +1 -0
  447. package/src/lib/services/brightpass/vaultKeyDerivation.js +42 -0
  448. package/src/lib/services/brightpass/vaultKeyDerivation.js.map +1 -0
  449. package/src/lib/services/brightpass/vaultSerializer.d.ts +14 -0
  450. package/src/lib/services/brightpass/vaultSerializer.d.ts.map +1 -0
  451. package/src/lib/services/brightpass/vaultSerializer.js +77 -0
  452. package/src/lib/services/brightpass/vaultSerializer.js.map +1 -0
  453. package/src/lib/services/cblService.d.ts +4 -2
  454. package/src/lib/services/cblService.d.ts.map +1 -1
  455. package/src/lib/services/cblService.js +8 -4
  456. package/src/lib/services/cblService.js.map +1 -1
  457. package/src/lib/services/communication/channelService.d.ts +208 -0
  458. package/src/lib/services/communication/channelService.d.ts.map +1 -0
  459. package/src/lib/services/communication/channelService.js +575 -0
  460. package/src/lib/services/communication/channelService.js.map +1 -0
  461. package/src/lib/services/communication/conversationService.d.ts +130 -0
  462. package/src/lib/services/communication/conversationService.d.ts.map +1 -0
  463. package/src/lib/services/communication/conversationService.js +279 -0
  464. package/src/lib/services/communication/conversationService.js.map +1 -0
  465. package/src/lib/services/communication/explodingMessageService.d.ts +168 -0
  466. package/src/lib/services/communication/explodingMessageService.d.ts.map +1 -0
  467. package/src/lib/services/communication/explodingMessageService.js +287 -0
  468. package/src/lib/services/communication/explodingMessageService.js.map +1 -0
  469. package/src/lib/services/communication/groupService.d.ts +165 -0
  470. package/src/lib/services/communication/groupService.d.ts.map +1 -0
  471. package/src/lib/services/communication/groupService.js +437 -0
  472. package/src/lib/services/communication/groupService.js.map +1 -0
  473. package/src/lib/services/communication/index.d.ts +16 -0
  474. package/src/lib/services/communication/index.d.ts.map +1 -0
  475. package/src/lib/services/communication/index.js +63 -0
  476. package/src/lib/services/communication/index.js.map +1 -0
  477. package/src/lib/services/communication/messageOperationsService.d.ts +81 -0
  478. package/src/lib/services/communication/messageOperationsService.d.ts.map +1 -0
  479. package/src/lib/services/communication/messageOperationsService.js +162 -0
  480. package/src/lib/services/communication/messageOperationsService.js.map +1 -0
  481. package/src/lib/services/communication/permissionService.d.ts +47 -0
  482. package/src/lib/services/communication/permissionService.d.ts.map +1 -0
  483. package/src/lib/services/communication/permissionService.js +82 -0
  484. package/src/lib/services/communication/permissionService.js.map +1 -0
  485. package/src/lib/services/communication/searchService.d.ts +30 -0
  486. package/src/lib/services/communication/searchService.d.ts.map +1 -0
  487. package/src/lib/services/communication/searchService.js +83 -0
  488. package/src/lib/services/communication/searchService.js.map +1 -0
  489. package/src/lib/services/crypto/ethereumWalletService.d.ts +159 -0
  490. package/src/lib/services/crypto/ethereumWalletService.d.ts.map +1 -0
  491. package/src/lib/services/crypto/ethereumWalletService.js +345 -0
  492. package/src/lib/services/crypto/ethereumWalletService.js.map +1 -0
  493. package/src/lib/services/crypto/gitSigningService.d.ts +145 -0
  494. package/src/lib/services/crypto/gitSigningService.d.ts.map +1 -0
  495. package/src/lib/services/crypto/gitSigningService.js +291 -0
  496. package/src/lib/services/crypto/gitSigningService.js.map +1 -0
  497. package/src/lib/services/crypto/index.d.ts +3 -0
  498. package/src/lib/services/crypto/index.d.ts.map +1 -0
  499. package/src/lib/services/crypto/index.js +6 -0
  500. package/src/lib/services/crypto/index.js.map +1 -0
  501. package/src/lib/services/identity/deviceProvisioningService.d.ts +146 -0
  502. package/src/lib/services/identity/deviceProvisioningService.d.ts.map +1 -0
  503. package/src/lib/services/identity/deviceProvisioningService.js +219 -0
  504. package/src/lib/services/identity/deviceProvisioningService.js.map +1 -0
  505. package/src/lib/services/identity/identityProofService.d.ts +139 -0
  506. package/src/lib/services/identity/identityProofService.d.ts.map +1 -0
  507. package/src/lib/services/identity/identityProofService.js +245 -0
  508. package/src/lib/services/identity/identityProofService.js.map +1 -0
  509. package/src/lib/services/identity/index.d.ts +14 -0
  510. package/src/lib/services/identity/index.d.ts.map +1 -0
  511. package/src/lib/services/identity/index.js +17 -0
  512. package/src/lib/services/identity/index.js.map +1 -0
  513. package/src/lib/services/identity/memberIdentityProofService.d.ts +179 -0
  514. package/src/lib/services/identity/memberIdentityProofService.d.ts.map +1 -0
  515. package/src/lib/services/identity/memberIdentityProofService.js +232 -0
  516. package/src/lib/services/identity/memberIdentityProofService.js.map +1 -0
  517. package/src/lib/services/identity/memberPaperKeyService.d.ts +223 -0
  518. package/src/lib/services/identity/memberPaperKeyService.d.ts.map +1 -0
  519. package/src/lib/services/identity/memberPaperKeyService.js +279 -0
  520. package/src/lib/services/identity/memberPaperKeyService.js.map +1 -0
  521. package/src/lib/services/identity/paperKeyService.d.ts +106 -0
  522. package/src/lib/services/identity/paperKeyService.d.ts.map +1 -0
  523. package/src/lib/services/identity/paperKeyService.js +161 -0
  524. package/src/lib/services/identity/paperKeyService.js.map +1 -0
  525. package/src/lib/services/identity/publicKeyDirectoryService.d.ts +210 -0
  526. package/src/lib/services/identity/publicKeyDirectoryService.d.ts.map +1 -0
  527. package/src/lib/services/identity/publicKeyDirectoryService.js +328 -0
  528. package/src/lib/services/identity/publicKeyDirectoryService.js.map +1 -0
  529. package/src/lib/services/identity/splitPaperKeyService.d.ts +92 -0
  530. package/src/lib/services/identity/splitPaperKeyService.d.ts.map +1 -0
  531. package/src/lib/services/identity/splitPaperKeyService.js +305 -0
  532. package/src/lib/services/identity/splitPaperKeyService.js.map +1 -0
  533. package/src/lib/services/index.d.ts +4 -0
  534. package/src/lib/services/index.d.ts.map +1 -1
  535. package/src/lib/services/index.js +7 -0
  536. package/src/lib/services/index.js.map +1 -1
  537. package/src/lib/services/messaging/emailMessageService.d.ts.map +1 -1
  538. package/src/lib/services/messaging/emailMessageService.js +26 -9
  539. package/src/lib/services/messaging/emailMessageService.js.map +1 -1
  540. package/src/lib/services/messaging/emailParser.d.ts +18 -0
  541. package/src/lib/services/messaging/emailParser.d.ts.map +1 -1
  542. package/src/lib/services/messaging/emailParser.js +18 -0
  543. package/src/lib/services/messaging/emailParser.js.map +1 -1
  544. package/src/lib/services/tuple.service.d.ts +27 -2
  545. package/src/lib/services/tuple.service.d.ts.map +1 -1
  546. package/src/lib/services/tuple.service.js +62 -20
  547. package/src/lib/services/tuple.service.js.map +1 -1
  548. package/src/lib/services/vcblService.d.ts +36 -0
  549. package/src/lib/services/vcblService.d.ts.map +1 -0
  550. package/src/lib/services/vcblService.js +326 -0
  551. package/src/lib/services/vcblService.js.map +1 -0
  552. package/src/lib/stores/index.d.ts +1 -0
  553. package/src/lib/stores/index.d.ts.map +1 -1
  554. package/src/lib/stores/index.js +1 -0
  555. package/src/lib/stores/index.js.map +1 -1
  556. package/src/lib/stores/pooledMemoryBlockStore.d.ts +134 -0
  557. package/src/lib/stores/pooledMemoryBlockStore.d.ts.map +1 -0
  558. package/src/lib/stores/pooledMemoryBlockStore.js +583 -0
  559. package/src/lib/stores/pooledMemoryBlockStore.js.map +1 -0
  560. package/src/lib/types/checksum.d.ts +11 -0
  561. package/src/lib/types/checksum.d.ts.map +1 -1
  562. package/src/lib/types/checksum.js +11 -0
  563. package/src/lib/types/checksum.js.map +1 -1
  564. package/src/lib/utils/index.d.ts +9 -0
  565. package/src/lib/utils/index.d.ts.map +1 -1
  566. package/src/lib/utils/index.js +12 -0
  567. package/src/lib/utils/index.js.map +1 -1
  568. package/src/lib/utils/pagination.d.ts +27 -0
  569. package/src/lib/utils/pagination.d.ts.map +1 -0
  570. package/src/lib/utils/pagination.js +38 -0
  571. package/src/lib/utils/pagination.js.map +1 -0
@@ -4,8 +4,9 @@
4
4
  * Defines the interface for maintaining a fast local index of blocks,
5
5
  * supporting O(1) lookups, Bloom filter export, and manifest generation.
6
6
  *
7
- * @see Requirements 3.1, 3.6, 3.7
7
+ * @see Requirements 3.1, 3.5, 3.6, 3.7, 4.5
8
8
  */
9
+ import { PoolId } from '../storage/pooledBlockStore';
9
10
  /**
10
11
  * Bloom filter for efficient block existence queries.
11
12
  * A space-efficient probabilistic data structure used to test
@@ -65,6 +66,35 @@ export interface BlockManifest {
65
66
  */
66
67
  checksum: string;
67
68
  }
69
+ /**
70
+ * Pool-scoped Bloom filter container.
71
+ * Contains per-pool Bloom filters using keys in "poolId:blockId" format,
72
+ * plus a global filter for backward compatibility.
73
+ *
74
+ * @see Requirements 4.5
75
+ */
76
+ export interface PoolScopedBloomFilter {
77
+ /** Per-pool Bloom filters using keys in format "poolId:blockId" */
78
+ filters: Map<PoolId, BloomFilter>;
79
+ /** Global filter for backward compatibility */
80
+ globalFilter: BloomFilter;
81
+ }
82
+ /**
83
+ * Pool-scoped manifest for synchronization.
84
+ * Groups block IDs by their pool, enabling per-pool reconciliation.
85
+ *
86
+ * @see Requirements 3.1, 3.5
87
+ */
88
+ export interface PoolScopedManifest {
89
+ /** Unique identifier of the node that generated this manifest */
90
+ nodeId: string;
91
+ /** Block IDs grouped by pool */
92
+ pools: Map<PoolId, string[]>;
93
+ /** Timestamp when the manifest was generated */
94
+ generatedAt: Date;
95
+ /** Checksum of the manifest for integrity verification */
96
+ checksum: string;
97
+ }
68
98
  /**
69
99
  * Block Registry Interface
70
100
  *
@@ -86,14 +116,16 @@ export interface IBlockRegistry {
86
116
  * Add a block to the local registry
87
117
  *
88
118
  * @param blockId - The block ID to add
119
+ * @param poolId - Optional pool the block belongs to
89
120
  */
90
- addLocal(blockId: string): void;
121
+ addLocal(blockId: string, poolId?: PoolId): void;
91
122
  /**
92
123
  * Remove a block from the local registry
93
124
  *
94
125
  * @param blockId - The block ID to remove
126
+ * @param poolId - Optional pool the block belonged to
95
127
  */
96
- removeLocal(blockId: string): void;
128
+ removeLocal(blockId: string, poolId?: PoolId): void;
97
129
  /**
98
130
  * Get count of local blocks
99
131
  *
@@ -131,5 +163,22 @@ export interface IBlockRegistry {
131
163
  * @see Requirements 3.5
132
164
  */
133
165
  rebuild(): Promise<void>;
166
+ /**
167
+ * Export a pool-scoped Bloom filter.
168
+ * Each pool gets its own filter with keys in "poolId:blockId" format.
169
+ * Also includes a global filter for backward compatibility.
170
+ *
171
+ * @returns A pool-scoped Bloom filter container
172
+ * @see Requirements 4.5
173
+ */
174
+ exportPoolScopedBloomFilter(): PoolScopedBloomFilter;
175
+ /**
176
+ * Export a pool-scoped manifest grouping block IDs by pool.
177
+ * Used for pool-aware reconciliation with peers.
178
+ *
179
+ * @returns A manifest with block IDs grouped by pool
180
+ * @see Requirements 3.1, 3.5
181
+ */
182
+ exportPoolScopedManifest(): PoolScopedManifest;
134
183
  }
135
184
  //# sourceMappingURL=blockRegistry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"blockRegistry.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/availability/blockRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;;;;;OAOG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;CACxC;AAED;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;IAEnB;;OAEG;IACH,WAAW,EAAE,IAAI,CAAC;IAElB;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IAEnC;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAEhC;;;;OAIG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAEnC;;;;OAIG;IACH,aAAa,IAAI,MAAM,CAAC;IAExB;;;;OAIG;IACH,gBAAgB,IAAI,MAAM,EAAE,CAAC;IAE7B;;;;;;;OAOG;IACH,iBAAiB,IAAI,WAAW,CAAC;IAEjC;;;;;;OAMG;IACH,cAAc,IAAI,aAAa,CAAC;IAEhC;;;;;;OAMG;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1B"}
1
+ {"version":3,"file":"blockRegistry.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/availability/blockRegistry.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAErD;;;;;;GAMG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;;;;;OAOG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;CACxC;AAED;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,EAAE,MAAM,EAAE,CAAC;IAEnB;;OAEG;IACH,WAAW,EAAE,IAAI,CAAC;IAElB;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,qBAAqB;IACpC,mEAAmE;IACnE,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAClC,+CAA+C;IAC/C,YAAY,EAAE,WAAW,CAAC;CAC3B;AAED;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,iEAAiE;IACjE,MAAM,EAAE,MAAM,CAAC;IACf,gCAAgC;IAChC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAC7B,gDAAgD;IAChD,WAAW,EAAE,IAAI,CAAC;IAClB,0DAA0D;IAC1D,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,cAAc;IAC7B;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC;IAEnC;;;;;OAKG;IACH,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjD;;;;;OAKG;IACH,WAAW,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEpD;;;;OAIG;IACH,aAAa,IAAI,MAAM,CAAC;IAExB;;;;OAIG;IACH,gBAAgB,IAAI,MAAM,EAAE,CAAC;IAE7B;;;;;;;OAOG;IACH,iBAAiB,IAAI,WAAW,CAAC;IAEjC;;;;;;OAMG;IACH,cAAc,IAAI,aAAa,CAAC;IAEhC;;;;;;OAMG;IACH,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzB;;;;;;;OAOG;IACH,2BAA2B,IAAI,qBAAqB,CAAC;IAErD;;;;;;OAMG;IACH,wBAAwB,IAAI,kBAAkB,CAAC;CAChD"}
@@ -5,7 +5,7 @@
5
5
  * Defines the interface for maintaining a fast local index of blocks,
6
6
  * supporting O(1) lookups, Bloom filter export, and manifest generation.
7
7
  *
8
- * @see Requirements 3.1, 3.6, 3.7
8
+ * @see Requirements 3.1, 3.5, 3.6, 3.7, 4.5
9
9
  */
10
10
  Object.defineProperty(exports, "__esModule", { value: true });
11
11
  //# sourceMappingURL=blockRegistry.js.map
@@ -7,7 +7,9 @@
7
7
  *
8
8
  * @see Requirements 5.1, 5.2, 5.3, 5.4, 5.5, 5.6, 5.7, 5.8
9
9
  */
10
- import { BloomFilter } from './blockRegistry';
10
+ import type { ICBLIndexEntry } from '../storage/cblIndex';
11
+ import { PoolId } from '../storage/pooledBlockStore';
12
+ import { BloomFilter, PoolScopedBloomFilter } from './blockRegistry';
11
13
  import { ILocationRecord } from './locationRecord';
12
14
  /**
13
15
  * Result of a block discovery operation.
@@ -38,6 +40,13 @@ export interface DiscoveryResult {
38
40
  * Total duration of the discovery operation in milliseconds
39
41
  */
40
42
  duration: number;
43
+ /**
44
+ * Pool context used for this discovery, if any.
45
+ * Set when discoverBlock was called with a poolId parameter.
46
+ *
47
+ * @see Requirements 4.1
48
+ */
49
+ poolId?: PoolId;
41
50
  }
42
51
  /**
43
52
  * Result of querying a single peer for a block.
@@ -107,6 +116,49 @@ export interface DiscoveryConfig {
107
116
  * Default discovery configuration values.
108
117
  */
109
118
  export declare const DEFAULT_DISCOVERY_CONFIG: DiscoveryConfig;
119
+ /**
120
+ * Query for searching CBL metadata across pool peers.
121
+ * All fields are optional; only specified fields are used as filters.
122
+ *
123
+ * @see Requirements 8.5
124
+ */
125
+ export interface CBLMetadataSearchQuery {
126
+ /** Filter by file name (substring match) */
127
+ fileName?: string;
128
+ /** Filter by MIME type (exact match) */
129
+ mimeType?: string;
130
+ /** Filter by tags (entries must have all specified tags) */
131
+ tags?: string[];
132
+ /** Scope the search to a specific pool */
133
+ poolId?: PoolId;
134
+ }
135
+ /**
136
+ * A single matching entry from a CBL metadata search,
137
+ * annotated with the source node that reported it.
138
+ *
139
+ * @see Requirements 8.5
140
+ */
141
+ export interface CBLMetadataSearchHit {
142
+ /** The matching CBL index entry */
143
+ entry: ICBLIndexEntry;
144
+ /** Node ID of the peer that reported this entry */
145
+ sourceNodeId: string;
146
+ }
147
+ /**
148
+ * Result of a CBL metadata search across pool peers.
149
+ *
150
+ * @see Requirements 8.5
151
+ */
152
+ export interface CBLMetadataSearchResult {
153
+ /** The query that was executed */
154
+ query: CBLMetadataSearchQuery;
155
+ /** Matching entries with source node information */
156
+ hits: CBLMetadataSearchHit[];
157
+ /** Number of peers that were queried */
158
+ queriedPeers: number;
159
+ /** Total duration of the search in milliseconds */
160
+ duration: number;
161
+ }
110
162
  /**
111
163
  * Discovery Protocol Interface
112
164
  *
@@ -125,11 +177,15 @@ export interface IDiscoveryProtocol {
125
177
  * 3. Make direct queries to peers whose Bloom filters indicate possible match
126
178
  * 4. Cache and return results sorted by latency
127
179
  *
180
+ * When poolId is provided, uses pool-scoped Bloom filters and
181
+ * includes poolId in peer queries for pool-specific discovery.
182
+ *
128
183
  * @param blockId - The block ID to discover
184
+ * @param poolId - Optional pool to scope the discovery to
129
185
  * @returns Promise resolving to discovery result with locations
130
- * @see Requirements 5.1, 5.2, 5.3, 5.4, 5.5
186
+ * @see Requirements 4.1, 4.2, 4.3, 5.1, 5.2, 5.3, 5.4, 5.5
131
187
  */
132
- discoverBlock(blockId: string): Promise<DiscoveryResult>;
188
+ discoverBlock(blockId: string, poolId?: PoolId): Promise<DiscoveryResult>;
133
189
  /**
134
190
  * Query a specific peer for a block.
135
191
  * Makes a direct query without Bloom filter pre-check.
@@ -169,11 +225,33 @@ export interface IDiscoveryProtocol {
169
225
  * @see Requirements 4.2, 5.2
170
226
  */
171
227
  getPeerBloomFilter(peerId: string): Promise<BloomFilter>;
228
+ /**
229
+ * Get the pool-scoped Bloom filter from a peer.
230
+ * Used for pool-aware discovery to pre-check block existence
231
+ * within specific pools before making direct queries.
232
+ *
233
+ * @param peerId - The peer to get the pool-scoped Bloom filter from
234
+ * @returns Promise resolving to the peer's pool-scoped Bloom filter
235
+ * @see Requirements 4.2, 4.5
236
+ */
237
+ getPeerPoolScopedBloomFilter(peerId: string): Promise<PoolScopedBloomFilter>;
172
238
  /**
173
239
  * Get the current configuration.
174
240
  *
175
241
  * @returns The discovery configuration
176
242
  */
177
243
  getConfig(): DiscoveryConfig;
244
+ /**
245
+ * Search for CBL index entries by metadata across pool peers.
246
+ *
247
+ * Queries connected peers for CBL entries matching the given criteria
248
+ * (file name, MIME type, tags) within the specified pool. Results are
249
+ * deduplicated by magnet URL, keeping the first occurrence.
250
+ *
251
+ * @param query - Search criteria with optional fileName, mimeType, tags, poolId
252
+ * @returns Promise resolving to search results with matching entries and source nodes
253
+ * @see Requirements 8.5
254
+ */
255
+ searchCBLMetadata(query: CBLMetadataSearchQuery): Promise<CBLMetadataSearchResult>;
178
256
  }
179
257
  //# sourceMappingURL=discoveryProtocol.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"discoveryProtocol.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/availability/discoveryProtocol.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC;IAEf;;;;OAIG;IACH,SAAS,EAAE,eAAe,EAAE,CAAC;IAE7B;;OAEG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;OAEG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;;OAKG;IACH,cAAc,EAAE,MAAM,CAAC;IAEvB;;;;;OAKG;IACH,oBAAoB,EAAE,MAAM,CAAC;IAE7B;;;;;OAKG;IACH,UAAU,EAAE,MAAM,CAAC;IAEnB;;;;;OAKG;IACH,4BAA4B,EAAE,MAAM,CAAC;IAErC;;;;OAIG;IACH,oBAAoB,EAAE,MAAM,CAAC;CAC9B;AAED;;GAEG;AACH,eAAO,MAAM,wBAAwB,EAAE,eAMtC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;;;;;;;;;OAYG;IACH,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAEzD;;;;;;;;OAQG;IACH,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAErE;;;;;;;OAOG;IACH,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,EAAE,GAAG,IAAI,CAAC;IAE9D;;;;;OAKG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAElC;;OAEG;IACH,aAAa,IAAI,IAAI,CAAC;IAEtB;;;;;;;OAOG;IACH,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IAEzD;;;;OAIG;IACH,SAAS,IAAI,eAAe,CAAC;CAC9B"}
1
+ {"version":3,"file":"discoveryProtocol.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/availability/discoveryProtocol.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"discoveryProtocol.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/availability/discoveryProtocol.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AAiHH;;GAEG;AACU,QAAA,wBAAwB,GAAoB;IACvD,cAAc,EAAE,IAAI;IACpB,oBAAoB,EAAE,EAAE;IACxB,UAAU,EAAE,KAAK;IACjB,4BAA4B,EAAE,IAAI;IAClC,oBAAoB,EAAE,CAAC;CACxB,CAAC"}
1
+ {"version":3,"file":"discoveryProtocol.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/availability/discoveryProtocol.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AA2HH;;GAEG;AACU,QAAA,wBAAwB,GAAoB;IACvD,cAAc,EAAE,IAAI;IACpB,oBAAoB,EAAE,EAAE;IACxB,UAAU,EAAE,KAAK;IACjB,4BAA4B,EAAE,IAAI;IAClC,oBAAoB,EAAE,CAAC;CACxB,CAAC"}
@@ -8,6 +8,8 @@
8
8
  * @see Requirements 6.1, 6.2, 6.3, 6.4, 6.5, 6.6
9
9
  * @see Requirements 1.1, 1.2, 1.3, 1.5, 1.6, 10.1 (Unified Gossip Delivery)
10
10
  */
11
+ import type { ICBLIndexEntry } from '../storage/cblIndex';
12
+ import { PoolId } from '../storage/pooledBlockStore';
11
13
  /**
12
14
  * Metadata for message delivery via gossip protocol.
13
15
  * Attached to 'add' type BlockAnnouncements to indicate the announcement
@@ -45,6 +47,19 @@ export interface DeliveryAckMetadata {
45
47
  /** The node ID of the original message sender */
46
48
  originalSenderNode: string;
47
49
  }
50
+ /**
51
+ * Metadata for HeadRegistry head pointer update announcements.
52
+ * Attached to 'head_update' type BlockAnnouncements to propagate
53
+ * head pointer changes across nodes.
54
+ *
55
+ * @see Requirements 2.1
56
+ */
57
+ export interface HeadUpdateMetadata {
58
+ /** The database name containing the collection */
59
+ dbName: string;
60
+ /** The collection whose head pointer was updated */
61
+ collectionName: string;
62
+ }
48
63
  /**
49
64
  * Block announcement message sent via gossip protocol.
50
65
  * Contains information about a block being added, removed, or acknowledged.
@@ -58,10 +73,15 @@ export interface BlockAnnouncement {
58
73
  * - 'add' for new blocks (may include messageDelivery metadata)
59
74
  * - 'remove' for deleted blocks
60
75
  * - 'ack' for delivery acknowledgments (must include deliveryAck metadata)
76
+ * - 'pool_deleted' for pool deletion propagation (requires poolId)
77
+ * - 'cbl_index_update' for new/updated CBL index entries (requires cblIndexEntry and poolId)
78
+ * - 'cbl_index_delete' for soft-deleted CBL index entries (requires cblIndexEntry and poolId)
79
+ * - 'head_update' for HeadRegistry head pointer updates (requires headUpdate metadata)
80
+ * - 'acl_update' for approved ACL updates (requires poolId and aclBlockId)
61
81
  *
62
- * @see Requirements 1.1
82
+ * @see Requirements 1.1, 2.1, 8.1, 8.6, 13.4
63
83
  */
64
- type: 'add' | 'remove' | 'ack';
84
+ type: 'add' | 'remove' | 'ack' | 'pool_deleted' | 'cbl_index_update' | 'cbl_index_delete' | 'head_update' | 'acl_update';
65
85
  /**
66
86
  * The block ID being announced (hex string)
67
87
  */
@@ -93,6 +113,38 @@ export interface BlockAnnouncement {
93
113
  * @see Requirements 1.3, 1.6
94
114
  */
95
115
  deliveryAck?: DeliveryAckMetadata;
116
+ /**
117
+ * Optional pool ID for pool-scoped announcements.
118
+ * Required for 'pool_deleted', 'cbl_index_update', and 'cbl_index_delete' types.
119
+ * Optional for 'add' and 'remove' types.
120
+ *
121
+ * @see Requirements 1.5, 1.6, 2.1, 8.1, 8.6
122
+ */
123
+ poolId?: PoolId;
124
+ /**
125
+ * Optional CBL index entry data for CBL index synchronization.
126
+ * Required for 'cbl_index_update' and 'cbl_index_delete' types.
127
+ * Contains the entry being announced (update) or the entry being soft-deleted (delete).
128
+ *
129
+ * @see Requirements 8.1, 8.6
130
+ */
131
+ cblIndexEntry?: ICBLIndexEntry;
132
+ /**
133
+ * Optional HeadRegistry update metadata for head pointer synchronization.
134
+ * Required for 'head_update' type announcements.
135
+ * The blockId field carries the new head block ID.
136
+ *
137
+ * @see Requirements 2.1
138
+ */
139
+ headUpdate?: HeadUpdateMetadata;
140
+ /**
141
+ * Optional ACL block ID for ACL update propagation.
142
+ * Required for 'acl_update' type announcements.
143
+ * Contains the block ID of the approved ACL document in the block store.
144
+ *
145
+ * @see Requirements 13.4
146
+ */
147
+ aclBlockId?: string;
96
148
  }
97
149
  /**
98
150
  * Configuration for priority-based gossip propagation.
@@ -178,19 +230,71 @@ export interface IGossipService {
178
230
  * The announcement will be batched and sent to a random subset of peers.
179
231
  *
180
232
  * @param blockId - The block ID to announce
233
+ * @param poolId - Optional pool the block belongs to
181
234
  * @returns Promise that resolves when the announcement is queued
182
- * @see Requirements 6.1
235
+ * @see Requirements 6.1, 1.1, 6.3
183
236
  */
184
- announceBlock(blockId: string): Promise<void>;
237
+ announceBlock(blockId: string, poolId?: PoolId): Promise<void>;
185
238
  /**
186
239
  * Announce block removal to the network.
187
240
  * The announcement will be batched and sent to a random subset of peers.
188
241
  *
189
242
  * @param blockId - The block ID being removed
243
+ * @param poolId - Optional pool the block belonged to
244
+ * @returns Promise that resolves when the announcement is queued
245
+ * @see Requirements 6.5, 2.2
246
+ */
247
+ announceRemoval(blockId: string, poolId?: PoolId): Promise<void>;
248
+ /**
249
+ * Announce that a pool has been deleted.
250
+ * Creates a pool_deleted announcement propagated as a tombstone.
251
+ *
252
+ * @param poolId - The pool that was deleted
253
+ * @returns Promise that resolves when the announcement is queued
254
+ * @see Requirements 2.2, 6.3
255
+ */
256
+ announcePoolDeletion(poolId: PoolId): Promise<void>;
257
+ /**
258
+ * Announce a new or updated CBL index entry to peers in the same pool.
259
+ * Creates a cbl_index_update announcement scoped to the entry's pool.
260
+ *
261
+ * @param entry - The CBL index entry being announced
262
+ * @returns Promise that resolves when the announcement is queued
263
+ * @see Requirements 8.1
264
+ */
265
+ announceCBLIndexUpdate(entry: ICBLIndexEntry): Promise<void>;
266
+ /**
267
+ * Announce a soft-deleted CBL index entry to peers in the same pool.
268
+ * Creates a cbl_index_delete announcement so peers also mark the entry as deleted.
269
+ *
270
+ * @param entry - The CBL index entry that was soft-deleted (with deletedAt set)
271
+ * @returns Promise that resolves when the announcement is queued
272
+ * @see Requirements 8.6
273
+ */
274
+ announceCBLIndexDelete(entry: ICBLIndexEntry): Promise<void>;
275
+ /**
276
+ * Announce a HeadRegistry head pointer update to peer nodes.
277
+ * Creates a head_update announcement with the database name, collection name,
278
+ * and new head block ID.
279
+ *
280
+ * @param dbName - The database name containing the collection
281
+ * @param collectionName - The collection whose head pointer was updated
282
+ * @param blockId - The new head block ID
283
+ * @returns Promise that resolves when the announcement is queued
284
+ * @see Requirements 2.1
285
+ */
286
+ announceHeadUpdate(dbName: string, collectionName: string, blockId: string): Promise<void>;
287
+ /**
288
+ * Announce an approved ACL update to peers in the same pool.
289
+ * Creates an acl_update announcement with the pool ID and the block ID
290
+ * of the signed ACL document stored in the block store.
291
+ *
292
+ * @param poolId - The pool whose ACL was updated
293
+ * @param aclBlockId - The block ID of the approved ACL document
190
294
  * @returns Promise that resolves when the announcement is queued
191
- * @see Requirements 6.5
295
+ * @see Requirements 13.4
192
296
  */
193
- announceRemoval(blockId: string): Promise<void>;
297
+ announceACLUpdate(poolId: string, aclBlockId: string): Promise<void>;
194
298
  /**
195
299
  * Handle an incoming block announcement from a peer.
196
300
  * Updates local location metadata and optionally forwards the announcement.
@@ -1 +1 @@
1
- {"version":3,"file":"gossipService.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/availability/gossipService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gossipService.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/availability/gossipService.ts"],"names":[],"mappings":"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"}
@@ -13,6 +13,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
13
13
  exports.DEFAULT_GOSSIP_CONFIG = void 0;
14
14
  exports.validateBlockAnnouncement = validateBlockAnnouncement;
15
15
  exports.validateGossipConfig = validateGossipConfig;
16
+ const pooledBlockStore_1 = require("../storage/pooledBlockStore");
16
17
  /**
17
18
  * Default gossip configuration values.
18
19
  *
@@ -31,7 +32,16 @@ exports.DEFAULT_GOSSIP_CONFIG = {
31
32
  /**
32
33
  * Valid announcement types.
33
34
  */
34
- const VALID_ANNOUNCEMENT_TYPES = ['add', 'remove', 'ack'];
35
+ const VALID_ANNOUNCEMENT_TYPES = [
36
+ 'add',
37
+ 'remove',
38
+ 'ack',
39
+ 'pool_deleted',
40
+ 'cbl_index_update',
41
+ 'cbl_index_delete',
42
+ 'head_update',
43
+ 'acl_update',
44
+ ];
35
45
  /**
36
46
  * Valid delivery ack statuses.
37
47
  */
@@ -59,6 +69,89 @@ function validateBlockAnnouncement(announcement) {
59
69
  if (!VALID_ANNOUNCEMENT_TYPES.includes(announcement.type)) {
60
70
  return false;
61
71
  }
72
+ // pool_deleted requires valid poolId, must not have messageDelivery or deliveryAck
73
+ if (announcement.type === 'pool_deleted') {
74
+ if (!announcement.poolId || !(0, pooledBlockStore_1.isValidPoolId)(announcement.poolId)) {
75
+ return false;
76
+ }
77
+ if (announcement.messageDelivery || announcement.deliveryAck) {
78
+ return false;
79
+ }
80
+ return true;
81
+ }
82
+ // cbl_index_update and cbl_index_delete require valid poolId and cblIndexEntry,
83
+ // must not have messageDelivery or deliveryAck (Req 8.1, 8.6)
84
+ if (announcement.type === 'cbl_index_update' ||
85
+ announcement.type === 'cbl_index_delete') {
86
+ if (!announcement.poolId || !(0, pooledBlockStore_1.isValidPoolId)(announcement.poolId)) {
87
+ return false;
88
+ }
89
+ if (!announcement.cblIndexEntry) {
90
+ return false;
91
+ }
92
+ if (!announcement.cblIndexEntry.magnetUrl ||
93
+ typeof announcement.cblIndexEntry.magnetUrl !== 'string') {
94
+ return false;
95
+ }
96
+ if (!announcement.cblIndexEntry.blockId1 ||
97
+ typeof announcement.cblIndexEntry.blockId1 !== 'string') {
98
+ return false;
99
+ }
100
+ if (!announcement.cblIndexEntry.blockId2 ||
101
+ typeof announcement.cblIndexEntry.blockId2 !== 'string') {
102
+ return false;
103
+ }
104
+ if (announcement.messageDelivery || announcement.deliveryAck) {
105
+ return false;
106
+ }
107
+ return true;
108
+ }
109
+ // head_update requires non-empty blockId and headUpdate with non-empty dbName and collectionName,
110
+ // must not have messageDelivery, deliveryAck, or cblIndexEntry (Req 2.1)
111
+ if (announcement.type === 'head_update') {
112
+ if (!announcement.blockId || typeof announcement.blockId !== 'string') {
113
+ return false;
114
+ }
115
+ if (!announcement.headUpdate) {
116
+ return false;
117
+ }
118
+ if (!announcement.headUpdate.dbName ||
119
+ typeof announcement.headUpdate.dbName !== 'string') {
120
+ return false;
121
+ }
122
+ if (!announcement.headUpdate.collectionName ||
123
+ typeof announcement.headUpdate.collectionName !== 'string') {
124
+ return false;
125
+ }
126
+ if (announcement.messageDelivery ||
127
+ announcement.deliveryAck ||
128
+ announcement.cblIndexEntry) {
129
+ return false;
130
+ }
131
+ return true;
132
+ }
133
+ // acl_update requires valid poolId and non-empty aclBlockId,
134
+ // must not have messageDelivery, deliveryAck, or cblIndexEntry (Req 13.4)
135
+ if (announcement.type === 'acl_update') {
136
+ if (!announcement.poolId || !(0, pooledBlockStore_1.isValidPoolId)(announcement.poolId)) {
137
+ return false;
138
+ }
139
+ if (!announcement.aclBlockId ||
140
+ typeof announcement.aclBlockId !== 'string') {
141
+ return false;
142
+ }
143
+ if (announcement.messageDelivery ||
144
+ announcement.deliveryAck ||
145
+ announcement.cblIndexEntry) {
146
+ return false;
147
+ }
148
+ return true;
149
+ }
150
+ // Validate poolId format if present on any other type
151
+ if (announcement.poolId !== undefined &&
152
+ !(0, pooledBlockStore_1.isValidPoolId)(announcement.poolId)) {
153
+ return false;
154
+ }
62
155
  // Req 1.5: messageDelivery only allowed on 'add' type
63
156
  if (announcement.messageDelivery && announcement.type !== 'add') {
64
157
  return false;
@@ -1 +1 @@
1
- {"version":3,"file":"gossipService.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/availability/gossipService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gossipService.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/availability/gossipService.ts"],"names":[],"mappings":"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"}
@@ -4,5 +4,6 @@ export * from './discoveryProtocol';
4
4
  export * from './gossipService';
5
5
  export * from './heartbeatMonitor';
6
6
  export * from './locationRecord';
7
+ export * from './poolDeletionTombstone';
7
8
  export * from './reconciliationService';
8
9
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/availability/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/availability/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,iBAAiB,CAAC;AAChC,cAAc,oBAAoB,CAAC;AACnC,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC;AACxC,cAAc,yBAAyB,CAAC"}
@@ -7,5 +7,6 @@ tslib_1.__exportStar(require("./discoveryProtocol"), exports);
7
7
  tslib_1.__exportStar(require("./gossipService"), exports);
8
8
  tslib_1.__exportStar(require("./heartbeatMonitor"), exports);
9
9
  tslib_1.__exportStar(require("./locationRecord"), exports);
10
+ tslib_1.__exportStar(require("./poolDeletionTombstone"), exports);
10
11
  tslib_1.__exportStar(require("./reconciliationService"), exports);
11
12
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/availability/index.ts"],"names":[],"mappings":";;;AAAA,gEAAsC;AACtC,0DAAgC;AAChC,8DAAoC;AACpC,0DAAgC;AAChC,6DAAmC;AACnC,2DAAiC;AACjC,kEAAwC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/availability/index.ts"],"names":[],"mappings":";;;AAAA,gEAAsC;AACtC,0DAAgC;AAChC,8DAAoC;AACpC,0DAAgC;AAChC,6DAAmC;AACnC,2DAAiC;AACjC,kEAAwC;AACxC,kEAAwC"}
@@ -1,5 +1,6 @@
1
1
  import { AvailabilityState } from '../../enumerations/availabilityState';
2
2
  import { IBlockMetadata } from '../storage/blockMetadata';
3
+ import { PoolId } from '../storage/pooledBlockStore';
3
4
  /**
4
5
  * Location record for a block, tracking which node holds a copy
5
6
  * and metadata about that copy.
@@ -23,6 +24,10 @@ export interface ILocationRecord {
23
24
  * Optional latency measurement to this node in milliseconds
24
25
  */
25
26
  latencyMs?: number;
27
+ /**
28
+ * Pool the block is stored in on this node
29
+ */
30
+ poolId?: PoolId;
26
31
  }
27
32
  /**
28
33
  * Extended block metadata with availability and location information.
@@ -60,6 +65,7 @@ export interface SerializedLocationRecord {
60
65
  lastSeen: string;
61
66
  isAuthoritative: boolean;
62
67
  latencyMs?: number;
68
+ poolId?: string;
63
69
  }
64
70
  /**
65
71
  * Serializable representation of IBlockMetadataWithLocation
@@ -1 +1 @@
1
- {"version":3,"file":"locationRecord.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/availability/locationRecord.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAKzE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAE1D;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,EAAE,IAAI,CAAC;IAEf;;OAEG;IACH,eAAe,EAAE,OAAO,CAAC;IAEzB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;GAKG;AACH,MAAM,WAAW,0BAA2B,SAAQ,cAAc;IAChE;;OAEG;IACH,iBAAiB,EAAE,iBAAiB,CAAC;IAErC;;OAEG;IACH,eAAe,EAAE,eAAe,EAAE,CAAC;IAEnC;;OAEG;IACH,iBAAiB,EAAE,IAAI,CAAC;CACzB;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAC3C,WAAW,EAAE,MAAM,GAClB,IAAI,CACL,0BAA0B,EAC1B,mBAAmB,GAAG,iBAAiB,GAAG,mBAAmB,CAC9D,CAYA;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,mCAAmC;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,uBAAuB,EAAE,MAAM,CAAC;IAChC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,eAAe,EAAE,wBAAwB,EAAE,CAAC;IAC5C,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,eAAe,GACtB,wBAAwB,CAO1B;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,wBAAwB,GACnC,eAAe,CA2CjB;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,0BAA0B,GACnC,mCAAmC,CAkBrC;AAED;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAC/C,UAAU,EAAE,mCAAmC,GAC9C,0BAA0B,CA+I5B"}
1
+ {"version":3,"file":"locationRecord.d.ts","sourceRoot":"","sources":["../../../../../../brightchain-lib/src/lib/interfaces/availability/locationRecord.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAKzE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,MAAM,EAAiB,MAAM,6BAA6B,CAAC;AAEpE;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;IAEf;;OAEG;IACH,QAAQ,EAAE,IAAI,CAAC;IAEf;;OAEG;IACH,eAAe,EAAE,OAAO,CAAC;IAEzB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;GAKG;AACH,MAAM,WAAW,0BAA2B,SAAQ,cAAc;IAChE;;OAEG;IACH,iBAAiB,EAAE,iBAAiB,CAAC;IAErC;;OAEG;IACH,eAAe,EAAE,eAAe,EAAE,CAAC;IAEnC;;OAEG;IACH,iBAAiB,EAAE,IAAI,CAAC;CACzB;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAC3C,WAAW,EAAE,MAAM,GAClB,IAAI,CACL,0BAA0B,EAC1B,mBAAmB,GAAG,iBAAiB,GAAG,mBAAmB,CAC9D,CAYA;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,OAAO,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,mCAAmC;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,uBAAuB,EAAE,MAAM,CAAC;IAChC,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,eAAe,EAAE,wBAAwB,EAAE,CAAC;IAC5C,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,eAAe,GACtB,wBAAwB,CAQ1B;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,wBAAwB,GACnC,eAAe,CA0DjB;AAED;;;;GAIG;AACH,wBAAgB,+BAA+B,CAC7C,QAAQ,EAAE,0BAA0B,GACnC,mCAAmC,CAkBrC;AAED;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAC/C,UAAU,EAAE,mCAAmC,GAC9C,0BAA0B,CA+I5B"}