@brightchain/brightchain-lib 0.1.5 → 0.1.7

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
@@ -1,20 +1,100 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BLOCK_HANDLE_SYMBOL = void 0;
3
4
  exports.createBlockHandle = createBlockHandle;
4
5
  exports.createBlockHandleFromStore = createBlockHandleFromStore;
6
+ exports.isBlockHandle = isBlockHandle;
5
7
  const blockDataType_1 = require("../enumerations/blockDataType");
6
8
  const blockType_1 = require("../enumerations/blockType");
9
+ const enhancedValidationError_1 = require("../errors/enhancedValidationError");
7
10
  const service_provider_1 = require("../services/service.provider");
11
+ const checksum_1 = require("../types/checksum");
8
12
  const rawData_1 = require("./rawData");
9
13
  /**
10
- * Create a browser-compatible block handle from a block
14
+ * Symbol used to identify BlockHandle instances at runtime.
15
+ * This enables the isBlockHandle type guard to work correctly.
16
+ */
17
+ exports.BLOCK_HANDLE_SYMBOL = Symbol.for('brightchain.BlockHandle');
18
+ /**
19
+ * Create a browser-compatible block handle from block data.
20
+ *
21
+ * This factory function creates a BlockHandle instance that wraps a block of type T.
22
+ * The handle provides lazy data loading, caching, and checksum calculation capabilities.
23
+ *
24
+ * @typeParam T - The block type to create a handle for. Must extend BaseBlock.
25
+ *
26
+ * @param blockConstructor - The constructor function for the block type T.
27
+ * Must accept (blockSize, data, dateCreated, checksum, blockType, blockDataType, canRead, canPersist, ...args)
28
+ * @param blockSize - The size category of the block (e.g., BlockSize.Small, BlockSize.Medium)
29
+ * @param data - The raw block data as a Uint8Array
30
+ * @param checksum - The checksum/identifier of the block
31
+ * @param canRead - Whether the block can be read (default: true)
32
+ * @param canPersist - Whether the block can be persisted (default: true)
33
+ * @param constructorArgs - Additional arguments to pass to the block constructor
34
+ *
35
+ * @returns A BlockHandle<T> instance wrapping the block
36
+ *
37
+ * @throws {EnhancedValidationError} If blockConstructor is not a valid constructor function
38
+ * @throws {EnhancedValidationError} If data is not a valid Uint8Array
39
+ * @throws {EnhancedValidationError} If checksum is not a valid Uint8Array
40
+ *
41
+ * @example
42
+ * ```typescript
43
+ * // Create a handle for a RawDataBlock
44
+ * const handle = createBlockHandle<RawDataBlock>(
45
+ * RawDataBlock,
46
+ * BlockSize.Small,
47
+ * new Uint8Array(1024),
48
+ * checksumService.calculateChecksum(data)
49
+ * );
50
+ *
51
+ * // Access the data
52
+ * console.log(handle.fullData.length);
53
+ *
54
+ * // Calculate checksum
55
+ * const checksum = handle.calculateChecksum();
56
+ *
57
+ * // Get underlying block
58
+ * const block = handle.block;
59
+ * ```
60
+ *
61
+ * @see {@link BlockHandle} - The type returned by this function
62
+ * @see {@link isBlockHandle} - Type guard for runtime type checking
63
+ * @see {@link createBlockHandleFromStore} - Create handle from a block store
64
+ *
65
+ * @see Requirements 3.1, 3.3, 3.4, 5.1
11
66
  */
12
67
  function createBlockHandle(
13
68
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
14
69
  blockConstructor, blockSize, data, checksum, canRead = true, canPersist = true,
15
70
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
16
71
  ...constructorArgs) {
72
+ // Runtime validation
73
+ if (typeof blockConstructor !== 'function') {
74
+ throw new enhancedValidationError_1.EnhancedValidationError('blockConstructor', 'blockConstructor must be a valid constructor function', { context: 'createBlockHandle' });
75
+ }
76
+ if (blockSize === undefined || blockSize === null) {
77
+ throw new enhancedValidationError_1.EnhancedValidationError('blockSize', 'blockSize is required', {
78
+ context: 'createBlockHandle',
79
+ });
80
+ }
81
+ if (!(data instanceof Uint8Array)) {
82
+ throw new enhancedValidationError_1.EnhancedValidationError('data', 'data must be a Uint8Array', {
83
+ context: 'createBlockHandle',
84
+ receivedType: typeof data,
85
+ });
86
+ }
87
+ if (!(checksum instanceof checksum_1.Checksum)) {
88
+ throw new enhancedValidationError_1.EnhancedValidationError('checksum', 'checksum must be a Checksum', { context: 'createBlockHandle', receivedType: typeof checksum });
89
+ }
17
90
  const instance = new blockConstructor(blockSize, data, new Date(), checksum, blockType_1.BlockType.Handle, blockDataType_1.BlockDataType.RawData, canRead, canPersist, ...constructorArgs);
91
+ // Add the symbol property to identify this as a BlockHandle
92
+ Object.defineProperty(instance, exports.BLOCK_HANDLE_SYMBOL, {
93
+ value: true,
94
+ writable: false,
95
+ enumerable: false,
96
+ configurable: false,
97
+ });
18
98
  instance._cachedData = data;
19
99
  Object.defineProperty(instance, 'fullData', {
20
100
  get: function () {
@@ -53,10 +133,102 @@ blockConstructor, blockSize, data, checksum, canRead = true, canPersist = true,
53
133
  return instance;
54
134
  }
55
135
  /**
56
- * Create a browser-compatible block handle from a block store
136
+ * Create a browser-compatible block handle from a block store.
137
+ *
138
+ * This factory function retrieves block data from a store and creates a BlockHandle instance.
139
+ * Useful when you have a checksum and need to load the block data asynchronously.
140
+ *
141
+ * @typeParam T - The block type to create a handle for. Must extend BaseBlock.
142
+ *
143
+ * @param blockConstructor - The constructor function for the block type T
144
+ * @param blockStore - The block store to retrieve data from. Must have a getData method.
145
+ * @param blockSize - The size category of the block
146
+ * @param checksum - The checksum/identifier of the block to retrieve
147
+ * @param canRead - Whether the block can be read (default: true)
148
+ * @param canPersist - Whether the block can be persisted (default: true)
149
+ * @param constructorArgs - Additional arguments to pass to the block constructor
150
+ *
151
+ * @returns A Promise resolving to a BlockHandle<T> instance
152
+ *
153
+ * @throws {EnhancedValidationError} If any validation fails (see createBlockHandle)
154
+ * @throws {Error} If the block cannot be retrieved from the store
155
+ *
156
+ * @example
157
+ * ```typescript
158
+ * // Create a handle from a block store
159
+ * const handle = await createBlockHandleFromStore<RawDataBlock>(
160
+ * RawDataBlock,
161
+ * myBlockStore,
162
+ * BlockSize.Small,
163
+ * blockChecksum
164
+ * );
165
+ *
166
+ * // Now you can use the handle
167
+ * console.log(handle.fullData.length);
168
+ * ```
169
+ *
170
+ * @see {@link createBlockHandle} - Create handle directly from data
171
+ * @see {@link BlockHandle} - The type returned by this function
172
+ *
173
+ * @see Requirements 3.1, 3.3, 3.4
57
174
  */
58
- async function createBlockHandleFromStore(blockConstructor, blockStore, blockSize, checksum, canRead = true, canPersist = true, ...constructorArgs) {
175
+ async function createBlockHandleFromStore(
176
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
177
+ blockConstructor, blockStore, blockSize, checksum, canRead = true, canPersist = true,
178
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
179
+ ...constructorArgs) {
59
180
  const block = await blockStore.getData(checksum);
60
181
  return createBlockHandle(blockConstructor, blockSize, block.data, checksum, canRead, canPersist, ...constructorArgs);
61
182
  }
183
+ /**
184
+ * Type guard to check if a value is a BlockHandle instance.
185
+ *
186
+ * This function performs runtime validation to determine if a value is a BlockHandle.
187
+ * It checks for the presence of the BLOCK_HANDLE_SYMBOL property and validates
188
+ * that the value has the expected BlockHandle interface.
189
+ *
190
+ * @param value - The value to check
191
+ * @returns true if the value is a BlockHandle instance, false otherwise
192
+ *
193
+ * @remarks
194
+ * - This type guard enables TypeScript type narrowing in conditional blocks
195
+ * - It checks for the symbol property added by createBlockHandle
196
+ * - It also validates the presence of key BlockHandle methods and properties
197
+ *
198
+ * @example
199
+ * ```typescript
200
+ * function processBlock(block: BaseBlock | BlockHandle<BaseBlock>): void {
201
+ * if (isBlockHandle(block)) {
202
+ * // TypeScript knows block is BlockHandle<BaseBlock> here
203
+ * console.log(block.fullData.length);
204
+ * block.clearCache();
205
+ * } else {
206
+ * // TypeScript knows block is BaseBlock here
207
+ * console.log(block.blockSize);
208
+ * }
209
+ * }
210
+ * ```
211
+ *
212
+ * @see {@link BlockHandle} - The type this guard checks for
213
+ * @see {@link BLOCK_HANDLE_SYMBOL} - The symbol used for identification
214
+ *
215
+ * @see Requirements 14.2, 14.5, 14.6
216
+ */
217
+ function isBlockHandle(value) {
218
+ if (value === null || value === undefined) {
219
+ return false;
220
+ }
221
+ // Check for the symbol property
222
+ if (typeof value === 'object' &&
223
+ exports.BLOCK_HANDLE_SYMBOL in value &&
224
+ value[exports.BLOCK_HANDLE_SYMBOL] === true) {
225
+ // Additional validation: check for expected properties and methods
226
+ const candidate = value;
227
+ return (typeof candidate['fullData'] !== 'undefined' &&
228
+ typeof candidate['calculateChecksum'] === 'function' &&
229
+ typeof candidate['clearCache'] === 'function' &&
230
+ typeof candidate['block'] !== 'undefined');
231
+ }
232
+ return false;
233
+ }
62
234
  //# sourceMappingURL=handle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"handle.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/blocks/handle.ts"],"names":[],"mappings":";;AAwBA,8CA6EC;AAKD,gEAmBC;AA5HD,iEAA8D;AAE9D,yDAAsD;AACtD,mEAA+D;AAE/D,uCAAyC;AAezC;;GAEG;AACH,SAAgB,iBAAiB;AAC/B,8DAA8D;AAC9D,gBAA2C,EAC3C,SAAoB,EACpB,IAAgB,EAChB,QAA4B,EAC5B,OAAO,GAAG,IAAI,EACd,UAAU,GAAG,IAAI;AACjB,8DAA8D;AAC9D,GAAG,eAAsB;IAEzB,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CACnC,SAAS,EACT,IAAI,EACJ,IAAI,IAAI,EAAE,EACV,QAAQ,EACR,qBAAS,CAAC,MAAM,EAChB,6BAAa,CAAC,OAAO,EACrB,OAAO,EACP,UAAU,EACV,GAAG,eAAe,CACD,CAAC;IAEpB,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;IAE5B,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,UAAU,EAAE;QAC1C,GAAG,EAAE;YACH,OAAO,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,CAAC;QACvC,CAAC;QACD,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,IAAI;KACnB,CAAC,CAAC;IAEH,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,WAAW,EAAE;QAC3C,GAAG,EAAE;YACH,OAAO,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;QACD,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,IAAI;KACnB,CAAC,CAAC;IAEH,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,kBAAkB,EAAE;QAClD,GAAG,EAAE;YACH,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC9B,CAAC;QACD,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,IAAI;KACnB,CAAC,CAAC;IAEH,QAAQ,CAAC,iBAAiB,GAAG;QAC3B,OAAO,kCAAe,CAAC,WAAW,EAAE,CAAC,eAAe,CAAC,iBAAiB,CACpE,IAAI,CAAC,QAAQ,CACd,CAAC;IACJ,CAAC,CAAC;IAEF,QAAQ,CAAC,UAAU,GAAG;QACpB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC,CAAC;IAEF,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE;QACvC,GAAG,EAAE;YACH,OAAO,IAAI,sBAAY,CACrB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,UAAU,CAChB,CAAC;QACJ,CAAC;QACD,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,IAAI;KACnB,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;GAEG;AACI,KAAK,UAAU,0BAA0B,CAC9C,gBAA2C,EAC3C,UAAuE,EACvE,SAAoB,EACpB,QAA4B,EAC5B,OAAO,GAAG,IAAI,EACd,UAAU,GAAG,IAAI,EACjB,GAAG,eAAsB;IAEzB,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACjD,OAAO,iBAAiB,CACtB,gBAAgB,EAChB,SAAS,EACT,KAAK,CAAC,IAAI,EACV,QAAQ,EACR,OAAO,EACP,UAAU,EACV,GAAG,eAAe,CACnB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"handle.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/blocks/handle.ts"],"names":[],"mappings":";;;AA6JA,8CAmHC;AA0CD,gEAqBC;AAoCD,sCAwBC;AA3YD,iEAA8D;AAE9D,yDAAsD;AACtD,+EAA4E;AAC5E,mEAA+D;AAC/D,gDAA6C;AAE7C,uCAAyC;AAEzC;;;GAGG;AACU,QAAA,mBAAmB,GAAG,MAAM,CAAC,GAAG,CAAC,yBAAyB,CAAC,CAAC;AA+FzE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgDG;AACH,SAAgB,iBAAiB;AAC/B,8DAA8D;AAC9D,gBAA2C,EAC3C,SAAoB,EACpB,IAAgB,EAChB,QAAkB,EAClB,OAAO,GAAG,IAAI,EACd,UAAU,GAAG,IAAI;AACjB,8DAA8D;AAC9D,GAAG,eAAsB;IAEzB,qBAAqB;IACrB,IAAI,OAAO,gBAAgB,KAAK,UAAU,EAAE,CAAC;QAC3C,MAAM,IAAI,iDAAuB,CAC/B,kBAAkB,EAClB,uDAAuD,EACvD,EAAE,OAAO,EAAE,mBAAmB,EAAE,CACjC,CAAC;IACJ,CAAC;IAED,IAAI,SAAS,KAAK,SAAS,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;QAClD,MAAM,IAAI,iDAAuB,CAAC,WAAW,EAAE,uBAAuB,EAAE;YACtE,OAAO,EAAE,mBAAmB;SAC7B,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,CAAC,IAAI,YAAY,UAAU,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,iDAAuB,CAAC,MAAM,EAAE,2BAA2B,EAAE;YACrE,OAAO,EAAE,mBAAmB;YAC5B,YAAY,EAAE,OAAO,IAAI;SAC1B,CAAC,CAAC;IACL,CAAC;IAED,IAAI,CAAC,CAAC,QAAQ,YAAY,mBAAQ,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,iDAAuB,CAC/B,UAAU,EACV,6BAA6B,EAC7B,EAAE,OAAO,EAAE,mBAAmB,EAAE,YAAY,EAAE,OAAO,QAAQ,EAAE,CAChE,CAAC;IACJ,CAAC;IAED,MAAM,QAAQ,GAAG,IAAI,gBAAgB,CACnC,SAAS,EACT,IAAI,EACJ,IAAI,IAAI,EAAE,EACV,QAAQ,EACR,qBAAS,CAAC,MAAM,EAChB,6BAAa,CAAC,OAAO,EACrB,OAAO,EACP,UAAU,EACV,GAAG,eAAe,CACD,CAAC;IAEpB,4DAA4D;IAC5D,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,2BAAmB,EAAE;QACnD,KAAK,EAAE,IAAI;QACX,QAAQ,EAAE,KAAK;QACf,UAAU,EAAE,KAAK;QACjB,YAAY,EAAE,KAAK;KACpB,CAAC,CAAC;IAEH,QAAQ,CAAC,WAAW,GAAG,IAAI,CAAC;IAE5B,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,UAAU,EAAE;QAC1C,GAAG,EAAE;YACH,OAAO,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,CAAC;QACvC,CAAC;QACD,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,IAAI;KACnB,CAAC,CAAC;IAEH,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,WAAW,EAAE;QAC3C,GAAG,EAAE;YACH,OAAO,IAAI,CAAC,QAAQ,CAAC;QACvB,CAAC;QACD,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,IAAI;KACnB,CAAC,CAAC;IAEH,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,kBAAkB,EAAE;QAClD,GAAG,EAAE;YACH,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC9B,CAAC;QACD,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,IAAI;KACnB,CAAC,CAAC;IAEH,QAAQ,CAAC,iBAAiB,GAAG;QAC3B,OAAO,kCAAe,CAAC,WAAW,EAAE,CAAC,eAAe,CAAC,iBAAiB,CACpE,IAAI,CAAC,QAAQ,CACd,CAAC;IACJ,CAAC,CAAC;IAEF,QAAQ,CAAC,UAAU,GAAG;QACpB,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;IAC1B,CAAC,CAAC;IAEF,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,OAAO,EAAE;QACvC,GAAG,EAAE;YACH,OAAO,IAAI,sBAAY,CACrB,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,SAAS,EACd,IAAI,CAAC,aAAa,EAClB,IAAI,CAAC,OAAO,EACZ,IAAI,CAAC,UAAU,CAChB,CAAC;QACJ,CAAC;QACD,UAAU,EAAE,IAAI;QAChB,YAAY,EAAE,IAAI;KACnB,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACI,KAAK,UAAU,0BAA0B;AAC9C,8DAA8D;AAC9D,gBAA2C,EAC3C,UAA6D,EAC7D,SAAoB,EACpB,QAAkB,EAClB,OAAO,GAAG,IAAI,EACd,UAAU,GAAG,IAAI;AACjB,8DAA8D;AAC9D,GAAG,eAAsB;IAEzB,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACjD,OAAO,iBAAiB,CACtB,gBAAgB,EAChB,SAAS,EACT,KAAK,CAAC,IAAI,EACV,QAAQ,EACR,OAAO,EACP,UAAU,EACV,GAAG,eAAe,CACnB,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,SAAgB,aAAa,CAC3B,KAAc;IAEd,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;QAC1C,OAAO,KAAK,CAAC;IACf,CAAC;IAED,gCAAgC;IAChC,IACE,OAAO,KAAK,KAAK,QAAQ;QACzB,2BAAmB,IAAI,KAAK;QAC3B,KAAiC,CAAC,2BAAmB,CAAC,KAAK,IAAI,EAChE,CAAC;QACD,mEAAmE;QACnE,MAAM,SAAS,GAAG,KAAgC,CAAC;QACnD,OAAO,CACL,OAAO,SAAS,CAAC,UAAU,CAAC,KAAK,WAAW;YAC5C,OAAO,SAAS,CAAC,mBAAmB,CAAC,KAAK,UAAU;YACpD,OAAO,SAAS,CAAC,YAAY,CAAC,KAAK,UAAU;YAC7C,OAAO,SAAS,CAAC,OAAO,CAAC,KAAK,WAAW,CAC1C,CAAC;IACJ,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1,5 +1,5 @@
1
- import { ChecksumUint8Array } from '@digitaldefiance/ecies-lib';
2
1
  import { IBaseBlockMetadata } from '../interfaces/blocks/metadata/blockMetadata';
2
+ import { Checksum } from '../types/checksum';
3
3
  import { BaseBlock } from './base';
4
4
  import { BlockHandle } from './handle';
5
5
  import { RawDataBlock } from './rawData';
@@ -8,19 +8,48 @@ import { RawDataBlock } from './rawData';
8
8
  */
9
9
  interface IBlockStore {
10
10
  setData(block: RawDataBlock): Promise<void>;
11
- get<T extends BaseBlock>(checksum: ChecksumUint8Array): BlockHandle<T>;
11
+ get<T extends BaseBlock>(checksum: Checksum): BlockHandle<T>;
12
12
  }
13
13
  /**
14
14
  * A tuple of block handles that can be XORed together.
15
15
  * Used for whitening and reconstruction operations.
16
+ *
17
+ * @typeParam T - The block type for handles in this tuple. Defaults to BaseBlock.
18
+ *
19
+ * @remarks
20
+ * - All handles in a tuple must have the same block size
21
+ * - The tuple size is fixed at TUPLE.SIZE (typically 3)
22
+ * - XOR operations produce a new RawDataBlock
23
+ *
24
+ * @example
25
+ * ```typescript
26
+ * // Create a tuple of RawDataBlock handles
27
+ * const tuple = new BlockHandleTuple<RawDataBlock>(handles);
28
+ *
29
+ * // XOR all blocks and store the result
30
+ * const result = await tuple.xor(blockStore, metadata);
31
+ *
32
+ * // Verify all blocks in the tuple
33
+ * const isValid = await tuple.verify();
34
+ * ```
35
+ *
36
+ * @see {@link BlockHandle} - The handle type used in tuples
37
+ * @see Requirements 3.1, 3.2
16
38
  */
17
- export declare class BlockHandleTuple {
39
+ export declare class BlockHandleTuple<T extends BaseBlock = BaseBlock> {
18
40
  private readonly _handles;
19
- constructor(handles: BlockHandle<any>[]);
41
+ /**
42
+ * Create a new BlockHandleTuple.
43
+ *
44
+ * @param handles - Array of block handles. Must have exactly TUPLE.SIZE elements.
45
+ * @throws {HandleTupleError} If the number of handles is not TUPLE.SIZE
46
+ * @throws {HandleTupleError} If handles have different block sizes
47
+ */
48
+ constructor(handles: BlockHandle<T>[]);
20
49
  /**
21
50
  * The handles in this tuple
22
51
  */
23
- get handles(): BlockHandle<any>[];
52
+ get handles(): BlockHandle<T>[];
24
53
  /**
25
54
  * The block IDs as a concatenated buffer
26
55
  */
@@ -28,14 +57,14 @@ export declare class BlockHandleTuple {
28
57
  /**
29
58
  * The block IDs in this tuple
30
59
  */
31
- get blockIds(): ChecksumUint8Array[];
60
+ get blockIds(): Checksum[];
32
61
  /**
33
62
  * XOR all blocks in the tuple and store the result
34
63
  * @param blockStore - The store to write the result to
35
64
  * @param destBlockMetadata - Metadata for the resulting block
36
65
  * @returns A handle to the resulting block
37
66
  */
38
- xor(blockStore: IBlockStore, destBlockMetadata: IBaseBlockMetadata): Promise<BlockHandle<any>>;
67
+ xor(blockStore: IBlockStore, destBlockMetadata: IBaseBlockMetadata): Promise<BlockHandle<RawDataBlock>>;
39
68
  /**
40
69
  * Verify all blocks in the tuple
41
70
  */
@@ -1 +1 @@
1
- {"version":3,"file":"handleTuple.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/blocks/handleTuple.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAOhE,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AAEjF,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC;;GAEG;AACH,UAAU,WAAW;IACnB,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,GAAG,CAAC,CAAC,SAAS,SAAS,EAAE,QAAQ,EAAE,kBAAkB,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;CACxE;AAED;;;GAGG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAqB;gBAElC,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE;IAcvC;;OAEG;IACH,IAAW,OAAO,IAAI,WAAW,CAAC,GAAG,CAAC,EAAE,CAEvC;IAED;;OAEG;IACH,IAAW,cAAc,IAAI,UAAU,CAStC;IAED;;OAEG;IACH,IAAW,QAAQ,IAAI,kBAAkB,EAAE,CAE1C;IAED;;;;;OAKG;IACU,GAAG,CACd,UAAU,EAAE,WAAW,EACvB,iBAAiB,EAAE,kBAAkB,GACpC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;IAwE5B;;OAEG;IACU,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;CAQxC"}
1
+ {"version":3,"file":"handleTuple.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/blocks/handleTuple.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AAEjF,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC;;GAEG;AACH,UAAU,WAAW;IACnB,OAAO,CAAC,KAAK,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,GAAG,CAAC,CAAC,SAAS,SAAS,EAAE,QAAQ,EAAE,QAAQ,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;CAC9D;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,qBAAa,gBAAgB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS;IAC3D,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmB;IAE5C;;;;;;OAMG;gBACS,OAAO,EAAE,WAAW,CAAC,CAAC,CAAC,EAAE;IAcrC;;OAEG;IACH,IAAW,OAAO,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE,CAErC;IAED;;OAEG;IACH,IAAW,cAAc,IAAI,UAAU,CAYtC;IAED;;OAEG;IACH,IAAW,QAAQ,IAAI,QAAQ,EAAE,CAEhC;IAED;;;;;OAKG;IACU,GAAG,CACd,UAAU,EAAE,WAAW,EACvB,iBAAiB,EAAE,kBAAkB,GACpC,OAAO,CAAC,WAAW,CAAC,YAAY,CAAC,CAAC;IA0ErC;;OAEG;IACU,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC;CAQxC"}
@@ -4,7 +4,6 @@ exports.BlockHandleTuple = void 0;
4
4
  const constants_1 = require("../constants");
5
5
  const blockDataType_1 = require("../enumerations/blockDataType");
6
6
  const blockType_1 = require("../enumerations/blockType");
7
- /* eslint-disable @typescript-eslint/no-explicit-any */
8
7
  const handleTupleErrorType_1 = require("../enumerations/handleTupleErrorType");
9
8
  const handleTupleError_1 = require("../errors/handleTupleError");
10
9
  const service_provider_1 = require("../services/service.provider");
@@ -12,8 +11,37 @@ const rawData_1 = require("./rawData");
12
11
  /**
13
12
  * A tuple of block handles that can be XORed together.
14
13
  * Used for whitening and reconstruction operations.
14
+ *
15
+ * @typeParam T - The block type for handles in this tuple. Defaults to BaseBlock.
16
+ *
17
+ * @remarks
18
+ * - All handles in a tuple must have the same block size
19
+ * - The tuple size is fixed at TUPLE.SIZE (typically 3)
20
+ * - XOR operations produce a new RawDataBlock
21
+ *
22
+ * @example
23
+ * ```typescript
24
+ * // Create a tuple of RawDataBlock handles
25
+ * const tuple = new BlockHandleTuple<RawDataBlock>(handles);
26
+ *
27
+ * // XOR all blocks and store the result
28
+ * const result = await tuple.xor(blockStore, metadata);
29
+ *
30
+ * // Verify all blocks in the tuple
31
+ * const isValid = await tuple.verify();
32
+ * ```
33
+ *
34
+ * @see {@link BlockHandle} - The handle type used in tuples
35
+ * @see Requirements 3.1, 3.2
15
36
  */
16
37
  class BlockHandleTuple {
38
+ /**
39
+ * Create a new BlockHandleTuple.
40
+ *
41
+ * @param handles - Array of block handles. Must have exactly TUPLE.SIZE elements.
42
+ * @throws {HandleTupleError} If the number of handles is not TUPLE.SIZE
43
+ * @throws {HandleTupleError} If handles have different block sizes
44
+ */
17
45
  constructor(handles) {
18
46
  if (handles.length !== constants_1.TUPLE.SIZE) {
19
47
  throw new handleTupleError_1.HandleTupleError(handleTupleErrorType_1.HandleTupleErrorType.InvalidTupleSize);
@@ -35,10 +63,11 @@ class BlockHandleTuple {
35
63
  * The block IDs as a concatenated buffer
36
64
  */
37
65
  get blockIdsBuffer() {
38
- const totalLength = this.blockIds.reduce((sum, id) => sum + id.length, 0);
66
+ const blockIdArrays = this.blockIds.map((checksum) => checksum.toUint8Array());
67
+ const totalLength = blockIdArrays.reduce((sum, id) => sum + id.length, 0);
39
68
  const result = new Uint8Array(totalLength);
40
69
  let offset = 0;
41
- for (const id of this.blockIds) {
70
+ for (const id of blockIdArrays) {
42
71
  result.set(id, offset);
43
72
  offset += id.length;
44
73
  }
@@ -1 +1 @@
1
- {"version":3,"file":"handleTuple.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/blocks/handleTuple.ts"],"names":[],"mappings":";;;AACA,4CAAqC;AACrC,iEAA0D;AAC1D,yDAAkD;AAClD,uDAAuD;AACvD,+EAA4E;AAC5E,iEAA8D;AAE9D,mEAA+D;AAG/D,uCAAyC;AAUzC;;;GAGG;AACH,MAAa,gBAAgB;IAG3B,YAAY,OAA2B;QACrC,IAAI,OAAO,CAAC,MAAM,KAAK,iBAAK,CAAC,IAAI,EAAE,CAAC;YAClC,MAAM,IAAI,mCAAgB,CAAC,2CAAoB,CAAC,gBAAgB,CAAC,CAAC;QACpE,CAAC;QAED,uCAAuC;QACvC,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACvC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,SAAS,CAAC,EAAE,CAAC;YACrD,MAAM,IAAI,mCAAgB,CAAC,2CAAoB,CAAC,iBAAiB,CAAC,CAAC;QACrE,CAAC;QAED,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,IAAW,OAAO;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,IAAW,cAAc;QACvB,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC1E,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,WAAW,CAAC,CAAC;QAC3C,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,KAAK,MAAM,EAAE,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC/B,MAAM,CAAC,GAAG,CAAC,EAAE,EAAE,MAAM,CAAC,CAAC;YACvB,MAAM,IAAI,EAAE,CAAC,MAAM,CAAC;QACtB,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAED;;OAEG;IACH,IAAW,QAAQ;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACzD,CAAC;IAED;;;;;OAKG;IACI,KAAK,CAAC,GAAG,CACd,UAAuB,EACvB,iBAAqC;QAErC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;YACzB,MAAM,IAAI,mCAAgB,CAAC,2CAAoB,CAAC,aAAa,CAAC,CAAC;QACjE,CAAC;QAED,sBAAsB;QACtB,MAAM,SAAS,GAAG,MAAM,OAAO,CAAC,GAAG,CACjC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YAChC,IAAI,CAAC;gBACH,OAAO,MAAM,CAAC,IAAI,CAAC;YACrB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,IAAI,KAAK,CACb,wBAAwB,MAAM,CAAC,UAAU,KACvC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAC3C,EAAE,CACH,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CACH,CAAC;QAEF,0BAA0B;QAC1B,IAAI,MAAM,GAAG,IAAI,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;QAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,SAAS,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,MAAM,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;YAC7B,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC;gBACrC,MAAM,IAAI,mCAAgB,CAAC,2CAAoB,CAAC,mBAAmB,CAAC,CAAC;YACvE,CAAC;YAED,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBACvC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;YACpC,CAAC;YACD,MAAM,GAAG,KAAK,CAAC;QACjB,CAAC;QAED,oCAAoC;QACpC,MAAM,QAAQ,GACZ,kCAAe,CAAC,WAAW,EAAE,CAAC,eAAe,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QAE1E,kEAAkE;QAClE,MAAM,KAAK,GAAG,IAAI,sBAAY,CAC5B,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,EACzB,MAAM,EACN,iBAAiB,CAAC,WAAW;YAC3B,CAAC,CAAC,IAAI,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC;YACzC,CAAC,CAAC,IAAI,IAAI,EAAE,EACd,QAAQ,EACR,mBAAS,CAAC,OAAO,EACjB,uBAAa,CAAC,OAAO,EACrB,IAAI,EACJ,IAAI,CACL,CAAC;QAEF,mBAAmB;QACnB,IAAI,CAAC;YACH,MAAM,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;YAChC,OAAO,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,oEAAoE;YACpE,IAAI,KAAK,YAAY,KAAK;gBACtB,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC;oBACxC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,oCAAoC,CAAC,CAAC,EAAE,CAAC;gBACnE,OAAO,UAAU,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAClC,CAAC;YACD,MAAM,IAAI,KAAK,CACb,+BACE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAC3C,EAAE,CACH,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,MAAM;QACjB,IAAI,CAAC;YACH,MAAM,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;YACxE,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;CACF;AAzID,4CAyIC"}
1
+ {"version":3,"file":"handleTuple.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/blocks/handleTuple.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { BlockSize } from '../enumerations/blockSize';
2
- import { ChecksumUint8Array } from '@digitaldefiance/ecies-lib';
3
2
  import { IBaseBlock } from '../interfaces/blocks/base';
3
+ import { Checksum } from '../types/checksum';
4
+ import { BaseBlock } from './base';
4
5
  import { type BlockHandle } from './handle';
5
6
  import { RawDataBlock } from './rawData';
6
7
  /**
@@ -12,16 +13,38 @@ import { RawDataBlock } from './rawData';
12
13
  * This class supports both:
13
14
  * 1. In-memory blocks (IBaseBlock derivatives) for immediate operations
14
15
  * 2. Disk-based blocks (BlockHandle) for persistent storage
16
+ *
17
+ * @typeParam T - The block type for blocks in this tuple. Defaults to BaseBlock.
18
+ *
19
+ * @example
20
+ * ```typescript
21
+ * // Create a tuple from RawDataBlocks
22
+ * const tuple = InMemoryBlockTuple.fromBlocks<RawDataBlock>(blocks);
23
+ *
24
+ * // XOR all blocks together
25
+ * const result = await tuple.xor();
26
+ * ```
27
+ *
28
+ * @see {@link BlockHandle} - Handle type for disk-based blocks
29
+ * @see {@link BlockHandleTuple} - Tuple specifically for BlockHandle instances
30
+ * @see Requirements 3.1, 3.2
15
31
  */
16
- export declare class InMemoryBlockTuple {
32
+ export declare class InMemoryBlockTuple<T extends BaseBlock = BaseBlock> {
17
33
  static readonly TupleSize: number;
18
34
  private readonly _blocks;
19
35
  private readonly _blockSize;
20
- constructor(blocks: (IBaseBlock | BlockHandle<any>)[]);
36
+ /**
37
+ * Create a new InMemoryBlockTuple.
38
+ *
39
+ * @param blocks - Array of blocks or block handles. Must have exactly TUPLE.SIZE elements.
40
+ * @throws {MemoryTupleError} If the number of blocks is not TUPLE.SIZE
41
+ * @throws {MemoryTupleError} If blocks have different block sizes
42
+ */
43
+ constructor(blocks: (IBaseBlock | BlockHandle<T>)[]);
21
44
  /**
22
45
  * Get the block IDs in this tuple
23
46
  */
24
- get blockIds(): ChecksumUint8Array[];
47
+ get blockIds(): Checksum[];
25
48
  /**
26
49
  * Get the block IDs as a concatenated buffer
27
50
  */
@@ -29,7 +52,7 @@ export declare class InMemoryBlockTuple {
29
52
  /**
30
53
  * Get the blocks in this tuple
31
54
  */
32
- get blocks(): (IBaseBlock | BlockHandle<any>)[];
55
+ get blocks(): (IBaseBlock | BlockHandle<T>)[];
33
56
  /**
34
57
  * Get the block size for this tuple
35
58
  */
@@ -55,11 +78,15 @@ export declare class InMemoryBlockTuple {
55
78
  * Create a tuple from block IDs
56
79
  * This creates disk-based blocks using BlockHandle
57
80
  */
58
- static fromIds(blockIDs: ChecksumUint8Array[], blockSize: BlockSize, getBlockPath: (id: ChecksumUint8Array) => string): Promise<InMemoryBlockTuple>;
81
+ static fromIds(blockIDs: Checksum[], blockSize: BlockSize, getBlockPath: (id: Checksum) => string): Promise<InMemoryBlockTuple<BaseBlock>>;
59
82
  /**
60
83
  * Create a tuple from blocks
61
84
  * This creates in-memory blocks
85
+ *
86
+ * @typeParam U - The block type for blocks in the tuple
87
+ * @param blocks - Array of blocks or block handles
88
+ * @returns A new InMemoryBlockTuple instance
62
89
  */
63
- static fromBlocks(blocks: (IBaseBlock | BlockHandle<any>)[]): InMemoryBlockTuple;
90
+ static fromBlocks<U extends BaseBlock = BaseBlock>(blocks: (IBaseBlock | BlockHandle<U>)[]): InMemoryBlockTuple<U>;
64
91
  }
65
92
  //# sourceMappingURL=memoryTuple.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"memoryTuple.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/blocks/memoryTuple.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAGtD,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAGhE,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC;;;;;;;;;GASG;AACH,qBAAa,kBAAkB;IAC7B,gBAAuB,SAAS,SAAc;IAE9C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAoC;IAC5D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;gBAE3B,MAAM,EAAE,CAAC,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE;IAiBrD;;OAEG;IACH,IAAW,QAAQ,IAAI,kBAAkB,EAAE,CAE1C;IAED;;OAEG;IACH,IAAW,cAAc,IAAI,UAAU,CAStC;IAED;;OAEG;IACH,IAAW,MAAM,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,CAErD;IAED;;OAEG;IACH,IAAW,SAAS,IAAI,SAAS,CAEhC;IAED;;;;OAIG;mBACkB,kBAAkB;IAevC;;;;OAIG;mBACkB,YAAY;IAOjC;;;OAGG;IACU,GAAG,IAAI,OAAO,CAAC,YAAY,CAAC;IA6CzC;;;OAGG;WACiB,OAAO,CACzB,QAAQ,EAAE,kBAAkB,EAAE,EAC9B,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,CAAC,EAAE,EAAE,kBAAkB,KAAK,MAAM,GAC/C,OAAO,CAAC,kBAAkB,CAAC;IAwB9B;;;OAGG;WACW,UAAU,CACtB,MAAM,EAAE,CAAC,UAAU,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,GACxC,kBAAkB;CAUtB"}
1
+ {"version":3,"file":"memoryTuple.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/blocks/memoryTuple.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAItD,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,KAAK,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,qBAAa,kBAAkB,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS;IAC7D,gBAAuB,SAAS,SAAc;IAE9C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;IAC1D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAY;IAEvC;;;;;;OAMG;gBACS,MAAM,EAAE,CAAC,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE;IAiBnD;;OAEG;IACH,IAAW,QAAQ,IAAI,QAAQ,EAAE,CAEhC;IAED;;OAEG;IACH,IAAW,cAAc,IAAI,UAAU,CAYtC;IAED;;OAEG;IACH,IAAW,MAAM,IAAI,CAAC,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,CAEnD;IAED;;OAEG;IACH,IAAW,SAAS,IAAI,SAAS,CAEhC;IAED;;;;OAIG;mBACkB,kBAAkB;IAiBvC;;;;OAIG;mBACkB,YAAY;IASjC;;;OAGG;IACU,GAAG,IAAI,OAAO,CAAC,YAAY,CAAC;IA+CzC;;;OAGG;WACiB,OAAO,CACzB,QAAQ,EAAE,QAAQ,EAAE,EACpB,SAAS,EAAE,SAAS,EACpB,YAAY,EAAE,CAAC,EAAE,EAAE,QAAQ,KAAK,MAAM,GACrC,OAAO,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;IAwBzC;;;;;;;OAOG;WACW,UAAU,CAAC,CAAC,SAAS,SAAS,GAAG,SAAS,EACtD,MAAM,EAAE,CAAC,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC,EAAE,GACtC,kBAAkB,CAAC,CAAC,CAAC;CAUzB"}
@@ -16,8 +16,30 @@ const rawData_1 = require("./rawData");
16
16
  * This class supports both:
17
17
  * 1. In-memory blocks (IBaseBlock derivatives) for immediate operations
18
18
  * 2. Disk-based blocks (BlockHandle) for persistent storage
19
+ *
20
+ * @typeParam T - The block type for blocks in this tuple. Defaults to BaseBlock.
21
+ *
22
+ * @example
23
+ * ```typescript
24
+ * // Create a tuple from RawDataBlocks
25
+ * const tuple = InMemoryBlockTuple.fromBlocks<RawDataBlock>(blocks);
26
+ *
27
+ * // XOR all blocks together
28
+ * const result = await tuple.xor();
29
+ * ```
30
+ *
31
+ * @see {@link BlockHandle} - Handle type for disk-based blocks
32
+ * @see {@link BlockHandleTuple} - Tuple specifically for BlockHandle instances
33
+ * @see Requirements 3.1, 3.2
19
34
  */
20
35
  class InMemoryBlockTuple {
36
+ /**
37
+ * Create a new InMemoryBlockTuple.
38
+ *
39
+ * @param blocks - Array of blocks or block handles. Must have exactly TUPLE.SIZE elements.
40
+ * @throws {MemoryTupleError} If the number of blocks is not TUPLE.SIZE
41
+ * @throws {MemoryTupleError} If blocks have different block sizes
42
+ */
21
43
  constructor(blocks) {
22
44
  if (blocks.length !== constants_1.TUPLE.SIZE) {
23
45
  throw new memoryTupleError_1.MemoryTupleError(memoryTupleErrorType_1.MemoryTupleErrorType.InvalidTupleSize, constants_1.TUPLE.SIZE);
@@ -39,12 +61,12 @@ class InMemoryBlockTuple {
39
61
  * Get the block IDs as a concatenated buffer
40
62
  */
41
63
  get blockIdsBuffer() {
42
- const totalLength = this.blockIds.reduce((sum, id) => sum + id.length, 0);
64
+ const totalLength = this.blockIds.reduce((sum, id) => sum + id.toUint8Array().length, 0);
43
65
  const result = new Uint8Array(totalLength);
44
66
  let offset = 0;
45
67
  for (const id of this.blockIds) {
46
- result.set(id, offset);
47
- offset += id.length;
68
+ result.set(id.toUint8Array(), offset);
69
+ offset += id.toUint8Array().length;
48
70
  }
49
71
  return result;
50
72
  }
@@ -143,6 +165,10 @@ class InMemoryBlockTuple {
143
165
  /**
144
166
  * Create a tuple from blocks
145
167
  * This creates in-memory blocks
168
+ *
169
+ * @typeParam U - The block type for blocks in the tuple
170
+ * @param blocks - Array of blocks or block handles
171
+ * @returns A new InMemoryBlockTuple instance
146
172
  */
147
173
  static fromBlocks(blocks) {
148
174
  if (blocks.length !== constants_1.TUPLE.SIZE) {
@@ -1 +1 @@
1
- {"version":3,"file":"memoryTuple.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/blocks/memoryTuple.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"memoryTuple.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/blocks/memoryTuple.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { ChecksumUint8Array } from '@digitaldefiance/ecies-lib';
2
1
  import { BlockSize } from '../enumerations/blockSize';
2
+ import { Checksum } from '../types/checksum';
3
3
  import { RawDataBlock } from './rawData';
4
4
  /**
5
5
  * ParityBlock represents a block containing forward error correction (FEC) data.
@@ -7,6 +7,6 @@ import { RawDataBlock } from './rawData';
7
7
  * The parity data is generated using FecService through ServiceProvider
8
8
  */
9
9
  export declare class ParityBlock extends RawDataBlock {
10
- constructor(blockSize: BlockSize, data: Uint8Array, dateCreated?: Date, checksum?: ChecksumUint8Array, canRead?: boolean, canPersist?: boolean);
10
+ constructor(blockSize: BlockSize, data: Uint8Array, dateCreated?: Date, checksum?: Checksum, canRead?: boolean, canPersist?: boolean);
11
11
  }
12
12
  //# sourceMappingURL=parity.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parity.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/blocks/parity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAEhE,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC;;;;GAIG;AACH,qBAAa,WAAY,SAAQ,YAAY;gBAEzC,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,UAAU,EAChB,WAAW,CAAC,EAAE,IAAI,EAClB,QAAQ,CAAC,EAAE,kBAAkB,EAC7B,OAAO,UAAO,EACd,UAAU,UAAO;CAiBpB"}
1
+ {"version":3,"file":"parity.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/blocks/parity.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC;;;;GAIG;AACH,qBAAa,WAAY,SAAQ,YAAY;gBAEzC,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,UAAU,EAChB,WAAW,CAAC,EAAE,IAAI,EAClB,QAAQ,CAAC,EAAE,QAAQ,EACnB,OAAO,UAAO,EACd,UAAU,UAAO;CAiBpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"parity.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/blocks/parity.ts"],"names":[],"mappings":";;;AACA,iEAA8D;AAE9D,yDAAsD;AACtD,uCAAyC;AAEzC;;;;GAIG;AACH,MAAa,WAAY,SAAQ,sBAAY;IAC3C,YACE,SAAoB,EACpB,IAAgB,EAChB,WAAkB,EAClB,QAA6B,EAC7B,OAAO,GAAG,IAAI,EACd,UAAU,GAAG,IAAI;QAEjB,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,KAAK,CACH,SAAS,EACT,IAAI,EACJ,WAAW,EACX,QAAQ,EACR,qBAAS,CAAC,OAAO,EACjB,6BAAa,CAAC,OAAO,EACrB,OAAO,EACP,UAAU,CACX,CAAC;IACJ,CAAC;CACF;AAxBD,kCAwBC"}
1
+ {"version":3,"file":"parity.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/blocks/parity.ts"],"names":[],"mappings":";;;AAAA,iEAA8D;AAE9D,yDAAsD;AAEtD,uCAAyC;AAEzC;;;;GAIG;AACH,MAAa,WAAY,SAAQ,sBAAY;IAC3C,YACE,SAAoB,EACpB,IAAgB,EAChB,WAAkB,EAClB,QAAmB,EACnB,OAAO,GAAG,IAAI,EACd,UAAU,GAAG,IAAI;QAEjB,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvD,CAAC;QAED,KAAK,CACH,SAAS,EACT,IAAI,EACJ,WAAW,EACX,QAAQ,EACR,qBAAS,CAAC,OAAO,EACjB,6BAAa,CAAC,OAAO,EACrB,OAAO,EACP,UAAU,CACX,CAAC;IACJ,CAAC;CACF;AAxBD,kCAwBC"}
@@ -1,7 +1,7 @@
1
- import { ChecksumUint8Array } from '@digitaldefiance/ecies-lib';
2
1
  import { BlockDataType } from '../enumerations/blockDataType';
3
2
  import { BlockSize } from '../enumerations/blockSize';
4
3
  import { BlockType } from '../enumerations/blockType';
4
+ import { Checksum } from '../types/checksum';
5
5
  import { BaseBlock } from './base';
6
6
  import { RawDataBlock } from './rawData';
7
7
  /**
@@ -10,7 +10,7 @@ import { RawDataBlock } from './rawData';
10
10
  * where data blocks are XORed with random blocks to make them meaningless on their own.
11
11
  */
12
12
  export declare class RandomBlock extends RawDataBlock {
13
- constructor(blockSize: BlockSize, data: Uint8Array, dateCreated?: Date, checksum?: ChecksumUint8Array);
13
+ constructor(blockSize: BlockSize, data: Uint8Array, dateCreated?: Date, checksum?: Checksum);
14
14
  /**
15
15
  * Create a new random block
16
16
  */
@@ -18,7 +18,7 @@ export declare class RandomBlock extends RawDataBlock {
18
18
  /**
19
19
  * Reconstitute a random block from existing data
20
20
  */
21
- static reconstitute(blockSize: BlockSize, data: Uint8Array, dateCreated?: Date, checksum?: ChecksumUint8Array): RandomBlock;
21
+ static reconstitute(blockSize: BlockSize, data: Uint8Array, dateCreated?: Date, checksum?: Checksum): RandomBlock;
22
22
  /**
23
23
  * The type of the block
24
24
  */
@@ -1 +1 @@
1
- {"version":3,"file":"random.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/blocks/random.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAGhE,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC;;;;GAIG;AACH,qBAAa,WAAY,SAAQ,YAAY;gBAEzC,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,UAAU,EAChB,WAAW,CAAC,EAAE,IAAI,EAClB,QAAQ,CAAC,EAAE,kBAAkB;IAkB/B;;OAEG;WACW,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,IAAI,GAAG,WAAW;IAKxE;;OAEG;WACW,YAAY,CACxB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,UAAU,EAChB,WAAW,CAAC,EAAE,IAAI,EAClB,QAAQ,CAAC,EAAE,kBAAkB,GAC5B,WAAW;IAId;;OAEG;IACH,IAAoB,SAAS,IAAI,SAAS,CAEzC;IAED;;OAEG;IACH,IAAoB,aAAa,IAAI,aAAa,CAEjD;IAED;;OAEG;IACH,IAAoB,UAAU,IAAI,OAAO,CAExC;IAED;;OAEG;IACH,IAAoB,UAAU,IAAI,OAAO,CAExC;IAED;;OAEG;IACH,IAAoB,eAAe,IAAI,UAAU,CAGhD;IAED;;;;OAIG;mBACkB,kBAAkB;IAevC;;;;OAIG;mBACkB,YAAY;IAOjC;;OAEG;IACU,GAAG,CAAC,CAAC,SAAS,SAAS,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;CAgC5D"}
1
+ {"version":3,"file":"random.d.ts","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/blocks/random.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACnC,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC;;;;GAIG;AACH,qBAAa,WAAY,SAAQ,YAAY;gBAEzC,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,UAAU,EAChB,WAAW,CAAC,EAAE,IAAI,EAClB,QAAQ,CAAC,EAAE,QAAQ;IAkBrB;;OAEG;WACW,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,WAAW,CAAC,EAAE,IAAI,GAAG,WAAW;IAKxE;;OAEG;WACW,YAAY,CACxB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,UAAU,EAChB,WAAW,CAAC,EAAE,IAAI,EAClB,QAAQ,CAAC,EAAE,QAAQ,GAClB,WAAW;IAId;;OAEG;IACH,IAAoB,SAAS,IAAI,SAAS,CAEzC;IAED;;OAEG;IACH,IAAoB,aAAa,IAAI,aAAa,CAEjD;IAED;;OAEG;IACH,IAAoB,UAAU,IAAI,OAAO,CAExC;IAED;;OAEG;IACH,IAAoB,UAAU,IAAI,OAAO,CAExC;IAED;;OAEG;IACH,IAAoB,eAAe,IAAI,UAAU,CAGhD;IAED;;;;OAIG;mBACkB,kBAAkB;IAiBvC;;;;OAIG;mBACkB,YAAY;IASjC;;OAEG;IACU,GAAG,CAAC,CAAC,SAAS,SAAS,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC;CAgC5D"}
@@ -1 +1 @@
1
- {"version":3,"file":"random.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/blocks/random.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"random.js","sourceRoot":"","sources":["../../../../../brightchain-lib/src/lib/blocks/random.ts"],"names":[],"mappings":"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"}