@brightchain/brightchain-lib 0.1.4 → 0.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (710) hide show
  1. package/brightchain-lib/DEPRECATIONS.md +454 -0
  2. package/brightchain-lib/DEPRECATIONS_REMOVED.md +160 -0
  3. package/brightchain-lib/MIGRATION.md +801 -0
  4. package/brightchain-lib/NAMING_AUDIT.md +233 -0
  5. package/brightchain-lib/NAMING_CONVENTIONS.md +346 -0
  6. package/{README.md → brightchain-lib/README.md} +168 -0
  7. package/package.json +5 -4
  8. package/src/browser.d.ts +3 -2
  9. package/src/browser.d.ts.map +1 -1
  10. package/src/browser.js +5 -2
  11. package/src/browser.js.map +1 -1
  12. package/src/index.d.ts +2 -10
  13. package/src/index.d.ts.map +1 -1
  14. package/src/index.js +8 -17
  15. package/src/index.js.map +1 -1
  16. package/src/lib/access/checksum.d.ts +5 -5
  17. package/src/lib/access/checksum.d.ts.map +1 -1
  18. package/src/lib/access/checksum.js.map +1 -1
  19. package/src/lib/blockPaddingTransform.d.ts.map +1 -1
  20. package/src/lib/blockPaddingTransform.js +2 -1
  21. package/src/lib/blockPaddingTransform.js.map +1 -1
  22. package/src/lib/blocks/base.d.ts +6 -5
  23. package/src/lib/blocks/base.d.ts.map +1 -1
  24. package/src/lib/blocks/base.js +1 -2
  25. package/src/lib/blocks/base.js.map +1 -1
  26. package/src/lib/blocks/cblBase.d.ts +4 -3
  27. package/src/lib/blocks/cblBase.d.ts.map +1 -1
  28. package/src/lib/blocks/cblBase.js.map +1 -1
  29. package/src/lib/blocks/encrypted.d.ts +4 -3
  30. package/src/lib/blocks/encrypted.d.ts.map +1 -1
  31. package/src/lib/blocks/encrypted.js +2 -2
  32. package/src/lib/blocks/encrypted.js.map +1 -1
  33. package/src/lib/blocks/encryptedBlockCreator.d.ts +4 -3
  34. package/src/lib/blocks/encryptedBlockCreator.d.ts.map +1 -1
  35. package/src/lib/blocks/encryptedBlockCreator.js.map +1 -1
  36. package/src/lib/blocks/encryptedBlockFactory.d.ts +4 -3
  37. package/src/lib/blocks/encryptedBlockFactory.d.ts.map +1 -1
  38. package/src/lib/blocks/encryptedBlockFactory.js +2 -7
  39. package/src/lib/blocks/encryptedBlockFactory.js.map +1 -1
  40. package/src/lib/blocks/ephemeral.d.ts +4 -3
  41. package/src/lib/blocks/ephemeral.d.ts.map +1 -1
  42. package/src/lib/blocks/ephemeral.js +3 -4
  43. package/src/lib/blocks/ephemeral.js.map +1 -1
  44. package/src/lib/blocks/extendedCbl.d.ts +4 -3
  45. package/src/lib/blocks/extendedCbl.d.ts.map +1 -1
  46. package/src/lib/blocks/extendedCbl.js.map +1 -1
  47. package/src/lib/blocks/handle.d.ts +208 -12
  48. package/src/lib/blocks/handle.d.ts.map +1 -1
  49. package/src/lib/blocks/handle.js +175 -3
  50. package/src/lib/blocks/handle.js.map +1 -1
  51. package/src/lib/blocks/handleTuple.d.ts +36 -7
  52. package/src/lib/blocks/handleTuple.d.ts.map +1 -1
  53. package/src/lib/blocks/handleTuple.js +32 -3
  54. package/src/lib/blocks/handleTuple.js.map +1 -1
  55. package/src/lib/blocks/memoryTuple.d.ts +34 -7
  56. package/src/lib/blocks/memoryTuple.d.ts.map +1 -1
  57. package/src/lib/blocks/memoryTuple.js +29 -3
  58. package/src/lib/blocks/memoryTuple.js.map +1 -1
  59. package/src/lib/blocks/parity.d.ts +2 -2
  60. package/src/lib/blocks/parity.d.ts.map +1 -1
  61. package/src/lib/blocks/parity.js.map +1 -1
  62. package/src/lib/blocks/random.d.ts +3 -3
  63. package/src/lib/blocks/random.d.ts.map +1 -1
  64. package/src/lib/blocks/random.js.map +1 -1
  65. package/src/lib/blocks/rawData.d.ts +2 -2
  66. package/src/lib/blocks/rawData.d.ts.map +1 -1
  67. package/src/lib/blocks/rawData.js +2 -7
  68. package/src/lib/blocks/rawData.js.map +1 -1
  69. package/src/lib/blocks/whitened.d.ts +3 -3
  70. package/src/lib/blocks/whitened.d.ts.map +1 -1
  71. package/src/lib/blocks/whitened.js.map +1 -1
  72. package/src/lib/brightChain.d.ts +2 -2
  73. package/src/lib/brightChain.d.ts.map +1 -1
  74. package/src/lib/brightChain.js +6 -3
  75. package/src/lib/brightChain.js.map +1 -1
  76. package/src/lib/browserBrightChain.d.ts +2 -2
  77. package/src/lib/browserBrightChain.d.ts.map +1 -1
  78. package/src/lib/browserBrightChain.js +6 -3
  79. package/src/lib/browserBrightChain.js.map +1 -1
  80. package/src/lib/browserConfig.d.ts.map +1 -1
  81. package/src/lib/browserConfig.js +0 -1
  82. package/src/lib/browserConfig.js.map +1 -1
  83. package/src/lib/browserKeyring.d.ts.map +1 -1
  84. package/src/lib/browserKeyring.js +6 -4
  85. package/src/lib/browserKeyring.js.map +1 -1
  86. package/src/lib/browserStream.d.ts +2 -2
  87. package/src/lib/browserStream.d.ts.map +1 -1
  88. package/src/lib/browserStream.js +7 -6
  89. package/src/lib/browserStream.js.map +1 -1
  90. package/src/lib/bufferUtils.d.ts.map +1 -1
  91. package/src/lib/bufferUtils.js +3 -2
  92. package/src/lib/bufferUtils.js.map +1 -1
  93. package/src/lib/cblStream.d.ts +5 -4
  94. package/src/lib/cblStream.d.ts.map +1 -1
  95. package/src/lib/cblStream.js +2 -2
  96. package/src/lib/cblStream.js.map +1 -1
  97. package/src/lib/constants.d.ts +55 -2
  98. package/src/lib/constants.d.ts.map +1 -1
  99. package/src/lib/constants.js.map +1 -1
  100. package/src/lib/documents/member/baseMemberDocument.d.ts +7 -6
  101. package/src/lib/documents/member/baseMemberDocument.d.ts.map +1 -1
  102. package/src/lib/documents/member/baseMemberDocument.js.map +1 -1
  103. package/src/lib/documents/member/memberDocument.d.ts +81 -5
  104. package/src/lib/documents/member/memberDocument.d.ts.map +1 -1
  105. package/src/lib/documents/member/memberDocument.js +92 -2
  106. package/src/lib/documents/member/memberDocument.js.map +1 -1
  107. package/src/lib/documents/member/memberHydration.d.ts.map +1 -1
  108. package/src/lib/documents/member/memberHydration.js +1 -1
  109. package/src/lib/documents/member/memberHydration.js.map +1 -1
  110. package/src/lib/documents/member/memberOperational.d.ts.map +1 -1
  111. package/src/lib/documents/member/memberOperational.js.map +1 -1
  112. package/src/lib/documents/memberDocument.d.ts +43 -3
  113. package/src/lib/documents/memberDocument.d.ts.map +1 -1
  114. package/src/lib/documents/memberDocument.js +43 -2
  115. package/src/lib/documents/memberDocument.js.map +1 -1
  116. package/src/lib/documents/quorumDocument.d.ts +4 -3
  117. package/src/lib/documents/quorumDocument.d.ts.map +1 -1
  118. package/src/lib/documents/quorumDocument.js +1 -2
  119. package/src/lib/documents/quorumDocument.js.map +1 -1
  120. package/src/lib/enumeration-translations/blockSize.d.ts.map +1 -1
  121. package/src/lib/enumeration-translations/blockSize.js +2 -2
  122. package/src/lib/enumeration-translations/blockSize.js.map +1 -1
  123. package/src/lib/enumeration-translations/blockType.d.ts.map +1 -1
  124. package/src/lib/enumeration-translations/blockType.js +3 -2
  125. package/src/lib/enumeration-translations/blockType.js.map +1 -1
  126. package/src/lib/enumeration-translations/memberType.d.ts.map +1 -1
  127. package/src/lib/enumeration-translations/memberType.js +3 -2
  128. package/src/lib/enumeration-translations/memberType.js.map +1 -1
  129. package/src/lib/enumeration-translations/quorumDataRecordAction.d.ts.map +1 -1
  130. package/src/lib/enumeration-translations/quorumDataRecordAction.js +2 -2
  131. package/src/lib/enumeration-translations/quorumDataRecordAction.js.map +1 -1
  132. package/src/lib/enumerations/availabilityState.d.ts +41 -0
  133. package/src/lib/enumerations/availabilityState.d.ts.map +1 -0
  134. package/src/lib/enumerations/availabilityState.js +51 -0
  135. package/src/lib/enumerations/availabilityState.js.map +1 -0
  136. package/src/lib/enumerations/durabilityLevel.d.ts +39 -0
  137. package/src/lib/enumerations/durabilityLevel.d.ts.map +1 -0
  138. package/src/lib/enumerations/durabilityLevel.js +55 -0
  139. package/src/lib/enumerations/durabilityLevel.js.map +1 -0
  140. package/src/lib/enumerations/index.d.ts +57 -54
  141. package/src/lib/enumerations/index.d.ts.map +1 -1
  142. package/src/lib/enumerations/index.js +61 -0
  143. package/src/lib/enumerations/index.js.map +1 -1
  144. package/src/lib/enumerations/messaging/index.d.ts +6 -0
  145. package/src/lib/enumerations/messaging/index.d.ts.map +1 -0
  146. package/src/lib/enumerations/messaging/index.js +9 -0
  147. package/src/lib/enumerations/messaging/index.js.map +1 -0
  148. package/src/lib/enumerations/messaging/messageDeliveryStatus.d.ts +18 -0
  149. package/src/lib/enumerations/messaging/messageDeliveryStatus.d.ts.map +1 -0
  150. package/src/lib/enumerations/messaging/messageDeliveryStatus.js +22 -0
  151. package/src/lib/enumerations/messaging/messageDeliveryStatus.js.map +1 -0
  152. package/src/lib/enumerations/messaging/messageEncryptionScheme.d.ts +16 -0
  153. package/src/lib/enumerations/messaging/messageEncryptionScheme.d.ts.map +1 -0
  154. package/src/lib/enumerations/messaging/messageEncryptionScheme.js +20 -0
  155. package/src/lib/enumerations/messaging/messageEncryptionScheme.js.map +1 -0
  156. package/src/lib/enumerations/messaging/messageErrorType.d.ts +31 -0
  157. package/src/lib/enumerations/messaging/messageErrorType.d.ts.map +1 -0
  158. package/src/lib/enumerations/messaging/messageErrorType.js +41 -0
  159. package/src/lib/enumerations/messaging/messageErrorType.js.map +1 -0
  160. package/src/lib/enumerations/messaging/messagePassingType.d.ts +20 -0
  161. package/src/lib/enumerations/messaging/messagePassingType.d.ts.map +1 -0
  162. package/src/lib/enumerations/messaging/messagePassingType.js +24 -0
  163. package/src/lib/enumerations/messaging/messagePassingType.js.map +1 -0
  164. package/src/lib/enumerations/messaging/messagePriority.d.ts +14 -0
  165. package/src/lib/enumerations/messaging/messagePriority.d.ts.map +1 -0
  166. package/src/lib/enumerations/messaging/messagePriority.js +18 -0
  167. package/src/lib/enumerations/messaging/messagePriority.js.map +1 -0
  168. package/src/lib/enumerations/messaging/routingStrategy.d.ts +12 -0
  169. package/src/lib/enumerations/messaging/routingStrategy.d.ts.map +1 -0
  170. package/src/lib/enumerations/messaging/routingStrategy.js +16 -0
  171. package/src/lib/enumerations/messaging/routingStrategy.js.map +1 -0
  172. package/src/lib/enumerations/quorumErrorType.d.ts +3 -1
  173. package/src/lib/enumerations/quorumErrorType.d.ts.map +1 -1
  174. package/src/lib/enumerations/quorumErrorType.js +2 -0
  175. package/src/lib/enumerations/quorumErrorType.js.map +1 -1
  176. package/src/lib/enumerations/replicationStatus.d.ts +42 -0
  177. package/src/lib/enumerations/replicationStatus.d.ts.map +1 -0
  178. package/src/lib/enumerations/replicationStatus.js +51 -0
  179. package/src/lib/enumerations/replicationStatus.js.map +1 -0
  180. package/src/lib/enumerations/storeErrorType.d.ts +3 -1
  181. package/src/lib/enumerations/storeErrorType.d.ts.map +1 -1
  182. package/src/lib/enumerations/storeErrorType.js +2 -0
  183. package/src/lib/enumerations/storeErrorType.js.map +1 -1
  184. package/src/lib/enumerations/stringNames.d.ts +4 -0
  185. package/src/lib/enumerations/stringNames.d.ts.map +1 -1
  186. package/src/lib/enumerations/stringNames.js +4 -0
  187. package/src/lib/enumerations/stringNames.js.map +1 -1
  188. package/src/lib/errors/block/blockAccess.d.ts +1 -2
  189. package/src/lib/errors/block/blockAccess.d.ts.map +1 -1
  190. package/src/lib/errors/block/blockAccess.js.map +1 -1
  191. package/src/lib/errors/block/blockCapacity.d.ts +1 -2
  192. package/src/lib/errors/block/blockCapacity.d.ts.map +1 -1
  193. package/src/lib/errors/block/blockCapacity.js.map +1 -1
  194. package/src/lib/errors/block/blockError.d.ts +1 -2
  195. package/src/lib/errors/block/blockError.d.ts.map +1 -1
  196. package/src/lib/errors/block/blockError.js.map +1 -1
  197. package/src/lib/errors/block/blockMetadata.d.ts +1 -2
  198. package/src/lib/errors/block/blockMetadata.d.ts.map +1 -1
  199. package/src/lib/errors/block/blockMetadata.js.map +1 -1
  200. package/src/lib/errors/block/blockValidation.d.ts +1 -2
  201. package/src/lib/errors/block/blockValidation.d.ts.map +1 -1
  202. package/src/lib/errors/block/blockValidation.js.map +1 -1
  203. package/src/lib/errors/block/cannotDecrypt.d.ts +1 -2
  204. package/src/lib/errors/block/cannotDecrypt.d.ts.map +1 -1
  205. package/src/lib/errors/block/cannotDecrypt.js.map +1 -1
  206. package/src/lib/errors/block/cannotEncrypt.d.ts +1 -2
  207. package/src/lib/errors/block/cannotEncrypt.d.ts.map +1 -1
  208. package/src/lib/errors/block/cannotEncrypt.js.map +1 -1
  209. package/src/lib/errors/blockServiceError.d.ts +1 -2
  210. package/src/lib/errors/blockServiceError.d.ts.map +1 -1
  211. package/src/lib/errors/blockServiceError.js.map +1 -1
  212. package/src/lib/errors/brightChainError.d.ts +77 -0
  213. package/src/lib/errors/brightChainError.d.ts.map +1 -0
  214. package/src/lib/errors/brightChainError.js +100 -0
  215. package/src/lib/errors/brightChainError.js.map +1 -0
  216. package/src/lib/errors/bufferError.d.ts +1 -2
  217. package/src/lib/errors/bufferError.d.ts.map +1 -1
  218. package/src/lib/errors/bufferError.js.map +1 -1
  219. package/src/lib/errors/cblError.d.ts +1 -2
  220. package/src/lib/errors/cblError.d.ts.map +1 -1
  221. package/src/lib/errors/cblError.js.map +1 -1
  222. package/src/lib/errors/checksumError.d.ts +122 -0
  223. package/src/lib/errors/checksumError.d.ts.map +1 -0
  224. package/src/lib/errors/checksumError.js +132 -0
  225. package/src/lib/errors/checksumError.js.map +1 -0
  226. package/src/lib/errors/checksumMismatch.d.ts +4 -5
  227. package/src/lib/errors/checksumMismatch.d.ts.map +1 -1
  228. package/src/lib/errors/checksumMismatch.js +2 -3
  229. package/src/lib/errors/checksumMismatch.js.map +1 -1
  230. package/src/lib/errors/document.d.ts +1 -2
  231. package/src/lib/errors/document.d.ts.map +1 -1
  232. package/src/lib/errors/document.js.map +1 -1
  233. package/src/lib/errors/eciesError.d.ts +1 -2
  234. package/src/lib/errors/eciesError.d.ts.map +1 -1
  235. package/src/lib/errors/eciesError.js.map +1 -1
  236. package/src/lib/errors/enhancedValidationError.d.ts +73 -0
  237. package/src/lib/errors/enhancedValidationError.d.ts.map +1 -0
  238. package/src/lib/errors/enhancedValidationError.js +82 -0
  239. package/src/lib/errors/enhancedValidationError.js.map +1 -0
  240. package/src/lib/errors/extendedCblError.d.ts +1 -2
  241. package/src/lib/errors/extendedCblError.d.ts.map +1 -1
  242. package/src/lib/errors/extendedCblError.js.map +1 -1
  243. package/src/lib/errors/factoryPatternViolationError.d.ts +91 -0
  244. package/src/lib/errors/factoryPatternViolationError.d.ts.map +1 -0
  245. package/src/lib/errors/factoryPatternViolationError.js +100 -0
  246. package/src/lib/errors/factoryPatternViolationError.js.map +1 -0
  247. package/src/lib/errors/failedToHydrate.d.ts +1 -2
  248. package/src/lib/errors/failedToHydrate.d.ts.map +1 -1
  249. package/src/lib/errors/failedToHydrate.js.map +1 -1
  250. package/src/lib/errors/failedToSerialize.d.ts +1 -2
  251. package/src/lib/errors/failedToSerialize.d.ts.map +1 -1
  252. package/src/lib/errors/failedToSerialize.js.map +1 -1
  253. package/src/lib/errors/fecError.d.ts +1 -2
  254. package/src/lib/errors/fecError.d.ts.map +1 -1
  255. package/src/lib/errors/fecError.js.map +1 -1
  256. package/src/lib/errors/handleTupleError.d.ts +2 -2
  257. package/src/lib/errors/handleTupleError.d.ts.map +1 -1
  258. package/src/lib/errors/handleTupleError.js.map +1 -1
  259. package/src/lib/errors/index.d.ts +200 -39
  260. package/src/lib/errors/index.d.ts.map +1 -1
  261. package/src/lib/errors/index.js +273 -0
  262. package/src/lib/errors/index.js.map +1 -1
  263. package/src/lib/errors/invalidBlockSize.d.ts +1 -2
  264. package/src/lib/errors/invalidBlockSize.d.ts.map +1 -1
  265. package/src/lib/errors/invalidBlockSize.js.map +1 -1
  266. package/src/lib/errors/invalidBlockSizeLength.d.ts +1 -2
  267. package/src/lib/errors/invalidBlockSizeLength.d.ts.map +1 -1
  268. package/src/lib/errors/invalidBlockSizeLength.js.map +1 -1
  269. package/src/lib/errors/invalidCredentials.d.ts +1 -2
  270. package/src/lib/errors/invalidCredentials.d.ts.map +1 -1
  271. package/src/lib/errors/invalidCredentials.js.map +1 -1
  272. package/src/lib/errors/invalidIDFormat.d.ts +1 -2
  273. package/src/lib/errors/invalidIDFormat.d.ts.map +1 -1
  274. package/src/lib/errors/invalidIDFormat.js.map +1 -1
  275. package/src/lib/errors/invalidSessionID.d.ts +1 -2
  276. package/src/lib/errors/invalidSessionID.d.ts.map +1 -1
  277. package/src/lib/errors/invalidSessionID.js.map +1 -1
  278. package/src/lib/errors/invalidTupleCount.d.ts +1 -2
  279. package/src/lib/errors/invalidTupleCount.d.ts.map +1 -1
  280. package/src/lib/errors/invalidTupleCount.js.map +1 -1
  281. package/src/lib/errors/isolatedKeyError.d.ts +1 -2
  282. package/src/lib/errors/isolatedKeyError.d.ts.map +1 -1
  283. package/src/lib/errors/isolatedKeyError.js.map +1 -1
  284. package/src/lib/errors/memberError.d.ts +1 -2
  285. package/src/lib/errors/memberError.d.ts.map +1 -1
  286. package/src/lib/errors/memberError.js +1 -1
  287. package/src/lib/errors/memberError.js.map +1 -1
  288. package/src/lib/errors/memoryTupleError.d.ts +2 -2
  289. package/src/lib/errors/memoryTupleError.d.ts.map +1 -1
  290. package/src/lib/errors/memoryTupleError.js.map +1 -1
  291. package/src/lib/errors/messaging/index.d.ts +2 -0
  292. package/src/lib/errors/messaging/index.d.ts.map +1 -0
  293. package/src/lib/{models → errors/messaging}/index.js +1 -1
  294. package/src/lib/errors/messaging/index.js.map +1 -0
  295. package/src/lib/errors/messaging/messageError.d.ts +26 -0
  296. package/src/lib/errors/messaging/messageError.d.ts.map +1 -0
  297. package/src/lib/errors/messaging/messageError.js +32 -0
  298. package/src/lib/errors/messaging/messageError.js.map +1 -0
  299. package/src/lib/errors/metadataMismatch.d.ts +1 -2
  300. package/src/lib/errors/metadataMismatch.d.ts.map +1 -1
  301. package/src/lib/errors/metadataMismatch.js.map +1 -1
  302. package/src/lib/errors/multiEncryptedError.d.ts +1 -2
  303. package/src/lib/errors/multiEncryptedError.d.ts.map +1 -1
  304. package/src/lib/errors/multiEncryptedError.js.map +1 -1
  305. package/src/lib/errors/quorumError.d.ts +1 -2
  306. package/src/lib/errors/quorumError.d.ts.map +1 -1
  307. package/src/lib/errors/quorumError.js +2 -0
  308. package/src/lib/errors/quorumError.js.map +1 -1
  309. package/src/lib/errors/sealingError.d.ts +1 -2
  310. package/src/lib/errors/sealingError.d.ts.map +1 -1
  311. package/src/lib/errors/sealingError.js.map +1 -1
  312. package/src/lib/errors/secureStorage.d.ts +1 -2
  313. package/src/lib/errors/secureStorage.d.ts.map +1 -1
  314. package/src/lib/errors/secureStorage.js +1 -1
  315. package/src/lib/errors/secureStorage.js.map +1 -1
  316. package/src/lib/errors/storeError.d.ts +1 -2
  317. package/src/lib/errors/storeError.d.ts.map +1 -1
  318. package/src/lib/errors/storeError.js +2 -0
  319. package/src/lib/errors/storeError.js.map +1 -1
  320. package/src/lib/errors/streamError.d.ts +1 -2
  321. package/src/lib/errors/streamError.d.ts.map +1 -1
  322. package/src/lib/errors/streamError.js.map +1 -1
  323. package/src/lib/errors/symmetricError.d.ts +1 -2
  324. package/src/lib/errors/symmetricError.d.ts.map +1 -1
  325. package/src/lib/errors/symmetricError.js.map +1 -1
  326. package/src/lib/errors/systemKeyringError.d.ts +2 -2
  327. package/src/lib/errors/systemKeyringError.d.ts.map +1 -1
  328. package/src/lib/errors/systemKeyringError.js.map +1 -1
  329. package/src/lib/errors/tupleError.d.ts +1 -2
  330. package/src/lib/errors/tupleError.d.ts.map +1 -1
  331. package/src/lib/errors/tupleError.js.map +1 -1
  332. package/src/lib/errors/typeGuards.d.ts +201 -0
  333. package/src/lib/errors/typeGuards.d.ts.map +1 -0
  334. package/src/lib/errors/typeGuards.js +219 -0
  335. package/src/lib/errors/typeGuards.js.map +1 -0
  336. package/src/lib/errors/typedError.d.ts +2 -3
  337. package/src/lib/errors/typedError.d.ts.map +1 -1
  338. package/src/lib/errors/typedError.js.map +1 -1
  339. package/src/lib/errors/userNotFound.d.ts +1 -2
  340. package/src/lib/errors/userNotFound.d.ts.map +1 -1
  341. package/src/lib/errors/userNotFound.js.map +1 -1
  342. package/src/lib/errors/whitenedError.d.ts +1 -2
  343. package/src/lib/errors/whitenedError.d.ts.map +1 -1
  344. package/src/lib/errors/whitenedError.js.map +1 -1
  345. package/src/lib/i18n/index.d.ts +28 -5
  346. package/src/lib/i18n/index.d.ts.map +1 -1
  347. package/src/lib/i18n/index.js +28 -7
  348. package/src/lib/i18n/index.js.map +1 -1
  349. package/src/lib/index.d.ts +131 -18
  350. package/src/lib/index.d.ts.map +1 -1
  351. package/src/lib/index.js +164 -19
  352. package/src/lib/index.js.map +1 -1
  353. package/src/lib/init.d.ts.map +1 -1
  354. package/src/lib/init.js +2 -1
  355. package/src/lib/init.js.map +1 -1
  356. package/src/lib/interfaces/active-context.d.ts +7 -4
  357. package/src/lib/interfaces/active-context.d.ts.map +1 -1
  358. package/src/lib/interfaces/availability/availabilityService.d.ts +319 -0
  359. package/src/lib/interfaces/availability/availabilityService.d.ts.map +1 -0
  360. package/src/lib/interfaces/availability/availabilityService.js +22 -0
  361. package/src/lib/interfaces/availability/availabilityService.js.map +1 -0
  362. package/src/lib/interfaces/availability/blockRegistry.d.ts +135 -0
  363. package/src/lib/interfaces/availability/blockRegistry.d.ts.map +1 -0
  364. package/src/lib/interfaces/availability/blockRegistry.js +11 -0
  365. package/src/lib/interfaces/availability/blockRegistry.js.map +1 -0
  366. package/src/lib/interfaces/availability/discoveryProtocol.d.ts +179 -0
  367. package/src/lib/interfaces/availability/discoveryProtocol.d.ts.map +1 -0
  368. package/src/lib/interfaces/availability/discoveryProtocol.js +23 -0
  369. package/src/lib/interfaces/availability/discoveryProtocol.js.map +1 -0
  370. package/src/lib/interfaces/availability/gossipService.d.ts +166 -0
  371. package/src/lib/interfaces/availability/gossipService.d.ts.map +1 -0
  372. package/src/lib/interfaces/availability/gossipService.js +22 -0
  373. package/src/lib/interfaces/availability/gossipService.js.map +1 -0
  374. package/src/lib/interfaces/availability/heartbeatMonitor.d.ts +179 -0
  375. package/src/lib/interfaces/availability/heartbeatMonitor.d.ts.map +1 -0
  376. package/src/lib/interfaces/availability/heartbeatMonitor.js +20 -0
  377. package/src/lib/interfaces/availability/heartbeatMonitor.js.map +1 -0
  378. package/src/lib/interfaces/availability/index.d.ts +8 -0
  379. package/src/lib/interfaces/availability/index.d.ts.map +1 -0
  380. package/src/lib/interfaces/availability/index.js +11 -0
  381. package/src/lib/interfaces/availability/index.js.map +1 -0
  382. package/src/lib/interfaces/availability/locationRecord.d.ts +110 -0
  383. package/src/lib/interfaces/availability/locationRecord.d.ts.map +1 -0
  384. package/src/lib/interfaces/availability/locationRecord.js +199 -0
  385. package/src/lib/interfaces/availability/locationRecord.js.map +1 -0
  386. package/src/lib/interfaces/availability/reconciliationService.d.ts +310 -0
  387. package/src/lib/interfaces/availability/reconciliationService.d.ts.map +1 -0
  388. package/src/lib/interfaces/availability/reconciliationService.js +23 -0
  389. package/src/lib/interfaces/availability/reconciliationService.js.map +1 -0
  390. package/src/lib/interfaces/backupCodeConsts.d.ts +26 -0
  391. package/src/lib/interfaces/backupCodeConsts.d.ts.map +1 -1
  392. package/src/lib/interfaces/basicObjectDto.d.ts +26 -0
  393. package/src/lib/interfaces/basicObjectDto.d.ts.map +1 -1
  394. package/src/lib/interfaces/blockCapacity.d.ts +71 -0
  395. package/src/lib/interfaces/blockCapacity.d.ts.map +1 -1
  396. package/src/lib/interfaces/blockEncryption.d.ts +3 -2
  397. package/src/lib/interfaces/blockEncryption.d.ts.map +1 -1
  398. package/src/lib/interfaces/blocks/base.d.ts +3 -2
  399. package/src/lib/interfaces/blocks/base.d.ts.map +1 -1
  400. package/src/lib/interfaces/blocks/cblBase.d.ts +3 -2
  401. package/src/lib/interfaces/blocks/cblBase.d.ts.map +1 -1
  402. package/src/lib/interfaces/blocks/headers/index.d.ts +1 -0
  403. package/src/lib/interfaces/blocks/headers/index.d.ts.map +1 -1
  404. package/src/lib/interfaces/blocks/headers/messageCblHeader.d.ts +13 -0
  405. package/src/lib/interfaces/blocks/headers/messageCblHeader.d.ts.map +1 -0
  406. package/src/lib/interfaces/blocks/headers/messageCblHeader.js +3 -0
  407. package/src/lib/interfaces/blocks/headers/messageCblHeader.js.map +1 -0
  408. package/src/lib/interfaces/cblIndexEntry.d.ts +32 -0
  409. package/src/lib/interfaces/cblIndexEntry.d.ts.map +1 -1
  410. package/src/lib/interfaces/clusterKeys.d.ts +18 -0
  411. package/src/lib/interfaces/clusterKeys.d.ts.map +1 -1
  412. package/src/lib/interfaces/constants.d.ts +244 -18
  413. package/src/lib/interfaces/constants.d.ts.map +1 -1
  414. package/src/lib/interfaces/dataAndSigningKeys.d.ts +18 -0
  415. package/src/lib/interfaces/dataAndSigningKeys.d.ts.map +1 -1
  416. package/src/lib/interfaces/encryptedBlockCreator.d.ts +3 -2
  417. package/src/lib/interfaces/encryptedBlockCreator.d.ts.map +1 -1
  418. package/src/lib/interfaces/energyTransaction.d.ts +3 -3
  419. package/src/lib/interfaces/energyTransaction.d.ts.map +1 -1
  420. package/src/lib/interfaces/handleableErrorOptions.d.ts +25 -0
  421. package/src/lib/interfaces/handleableErrorOptions.d.ts.map +1 -1
  422. package/src/lib/interfaces/index.d.ts +4 -1
  423. package/src/lib/interfaces/index.d.ts.map +1 -1
  424. package/src/lib/interfaces/index.js +3 -0
  425. package/src/lib/interfaces/index.js.map +1 -1
  426. package/src/lib/interfaces/keyringEntry.d.ts +31 -0
  427. package/src/lib/interfaces/keyringEntry.d.ts.map +1 -1
  428. package/src/lib/interfaces/languageContext.d.ts +15 -0
  429. package/src/lib/interfaces/languageContext.d.ts.map +1 -1
  430. package/src/lib/interfaces/member/memberData.d.ts +5 -4
  431. package/src/lib/interfaces/member/memberData.d.ts.map +1 -1
  432. package/src/lib/interfaces/messaging/index.d.ts +5 -0
  433. package/src/lib/interfaces/messaging/index.d.ts.map +1 -0
  434. package/src/lib/interfaces/messaging/index.js +8 -0
  435. package/src/lib/interfaces/messaging/index.js.map +1 -0
  436. package/src/lib/interfaces/messaging/messageMetadata.d.ts +41 -0
  437. package/src/lib/interfaces/messaging/messageMetadata.d.ts.map +1 -0
  438. package/src/lib/interfaces/messaging/messageMetadata.js +3 -0
  439. package/src/lib/interfaces/messaging/messageMetadata.js.map +1 -0
  440. package/src/lib/interfaces/messaging/messageMetadataStore.d.ts +83 -0
  441. package/src/lib/interfaces/messaging/messageMetadataStore.d.ts.map +1 -0
  442. package/src/lib/interfaces/messaging/messageMetadataStore.js +3 -0
  443. package/src/lib/interfaces/messaging/messageMetadataStore.js.map +1 -0
  444. package/src/lib/interfaces/messaging/messageRouter.d.ts +48 -0
  445. package/src/lib/interfaces/messaging/messageRouter.d.ts.map +1 -0
  446. package/src/lib/interfaces/messaging/messageRouter.js +3 -0
  447. package/src/lib/interfaces/messaging/messageRouter.js.map +1 -0
  448. package/src/lib/interfaces/messaging/messageSystemConfig.d.ts +16 -0
  449. package/src/lib/interfaces/messaging/messageSystemConfig.d.ts.map +1 -0
  450. package/src/lib/interfaces/messaging/messageSystemConfig.js +33 -0
  451. package/src/lib/interfaces/messaging/messageSystemConfig.js.map +1 -0
  452. package/src/lib/interfaces/network/index.d.ts +1 -0
  453. package/src/lib/interfaces/network/index.d.ts.map +1 -1
  454. package/src/lib/interfaces/network/networkTransport.d.ts +19 -0
  455. package/src/lib/interfaces/network/networkTransport.d.ts.map +1 -0
  456. package/src/lib/interfaces/network/networkTransport.js +3 -0
  457. package/src/lib/interfaces/network/networkTransport.js.map +1 -0
  458. package/src/lib/interfaces/network/node.d.ts +5 -4
  459. package/src/lib/interfaces/network/node.d.ts.map +1 -1
  460. package/src/lib/interfaces/network/node.js.map +1 -1
  461. package/src/lib/interfaces/readOnlyBasicObjectDto.d.ts +22 -0
  462. package/src/lib/interfaces/readOnlyBasicObjectDto.d.ts.map +1 -1
  463. package/src/lib/interfaces/requestUser.d.ts +33 -0
  464. package/src/lib/interfaces/requestUser.d.ts.map +1 -1
  465. package/src/lib/interfaces/role.d.ts +26 -0
  466. package/src/lib/interfaces/role.d.ts.map +1 -1
  467. package/src/lib/interfaces/services/fecService.d.ts +116 -0
  468. package/src/lib/interfaces/services/fecService.d.ts.map +1 -0
  469. package/src/lib/interfaces/services/fecService.js +14 -0
  470. package/src/lib/interfaces/services/fecService.js.map +1 -0
  471. package/src/lib/interfaces/services/index.d.ts +3 -0
  472. package/src/lib/interfaces/services/index.d.ts.map +1 -0
  473. package/src/lib/interfaces/services/index.js +3 -0
  474. package/src/lib/interfaces/services/index.js.map +1 -0
  475. package/src/lib/interfaces/services/quorumService.d.ts +133 -0
  476. package/src/lib/interfaces/services/quorumService.d.ts.map +1 -0
  477. package/src/lib/interfaces/services/quorumService.js +3 -0
  478. package/src/lib/interfaces/services/quorumService.js.map +1 -0
  479. package/src/lib/interfaces/storage/blockMetadata.d.ts +124 -0
  480. package/src/lib/interfaces/storage/blockMetadata.d.ts.map +1 -0
  481. package/src/lib/interfaces/storage/blockMetadata.js +31 -0
  482. package/src/lib/interfaces/storage/blockMetadata.js.map +1 -0
  483. package/src/lib/interfaces/storage/blockMetadataStore.d.ts +60 -0
  484. package/src/lib/interfaces/storage/blockMetadataStore.d.ts.map +1 -0
  485. package/src/lib/interfaces/storage/blockMetadataStore.js +3 -0
  486. package/src/lib/interfaces/storage/blockMetadataStore.js.map +1 -0
  487. package/src/lib/interfaces/storage/blockStore.d.ts +105 -10
  488. package/src/lib/interfaces/storage/blockStore.d.ts.map +1 -1
  489. package/src/lib/interfaces/storage/cblStore.d.ts +36 -0
  490. package/src/lib/interfaces/storage/cblStore.d.ts.map +1 -0
  491. package/src/lib/interfaces/storage/cblStore.js +3 -0
  492. package/src/lib/interfaces/storage/cblStore.js.map +1 -0
  493. package/src/lib/interfaces/storage/index.d.ts +4 -0
  494. package/src/lib/interfaces/storage/index.d.ts.map +1 -1
  495. package/src/lib/interfaces/storage/index.js +3 -0
  496. package/src/lib/interfaces/storage/index.js.map +1 -1
  497. package/src/lib/interfaces/storage/universalBlockStore.d.ts +5 -5
  498. package/src/lib/interfaces/storage/universalBlockStore.d.ts.map +1 -1
  499. package/src/lib/interfaces/symmetricEncryptionResults.d.ts +18 -0
  500. package/src/lib/interfaces/symmetricEncryptionResults.d.ts.map +1 -1
  501. package/src/lib/interfaces/tuple.d.ts +10 -1
  502. package/src/lib/interfaces/tuple.d.ts.map +1 -1
  503. package/src/lib/interfaces/tupleConfig.d.ts +18 -0
  504. package/src/lib/interfaces/tupleConfig.d.ts.map +1 -1
  505. package/src/lib/primeTupleGeneratorStream.d.ts +1 -1
  506. package/src/lib/primeTupleGeneratorStream.d.ts.map +1 -1
  507. package/src/lib/primeTupleGeneratorStream.js +2 -5
  508. package/src/lib/primeTupleGeneratorStream.js.map +1 -1
  509. package/src/lib/quorumDataRecord.d.ts +4 -3
  510. package/src/lib/quorumDataRecord.d.ts.map +1 -1
  511. package/src/lib/quorumDataRecord.js +5 -4
  512. package/src/lib/quorumDataRecord.js.map +1 -1
  513. package/src/lib/schemas/index.d.ts +1 -0
  514. package/src/lib/schemas/index.d.ts.map +1 -1
  515. package/src/lib/schemas/index.js +1 -0
  516. package/src/lib/schemas/index.js.map +1 -1
  517. package/src/lib/schemas/member/memberSchema.d.ts.map +1 -1
  518. package/src/lib/schemas/member/memberSchema.js.map +1 -1
  519. package/src/lib/schemas/messaging/index.d.ts +2 -0
  520. package/src/lib/schemas/messaging/index.d.ts.map +1 -0
  521. package/src/lib/schemas/messaging/index.js +5 -0
  522. package/src/lib/schemas/messaging/index.js.map +1 -0
  523. package/src/lib/schemas/messaging/messageMetadataSchema.d.ts +14 -0
  524. package/src/lib/schemas/messaging/messageMetadataSchema.d.ts.map +1 -0
  525. package/src/lib/schemas/messaging/messageMetadataSchema.js +90 -0
  526. package/src/lib/schemas/messaging/messageMetadataSchema.js.map +1 -0
  527. package/src/lib/schemas/network/networkDocumentSchema.d.ts.map +1 -1
  528. package/src/lib/schemas/network/networkDocumentSchema.js.map +1 -1
  529. package/src/lib/schemas/quorumDocument.d.ts.map +1 -1
  530. package/src/lib/schemas/quorumDocument.js +6 -6
  531. package/src/lib/schemas/quorumDocument.js.map +1 -1
  532. package/src/lib/services/blockCapacity.service.d.ts +36 -2
  533. package/src/lib/services/blockCapacity.service.d.ts.map +1 -1
  534. package/src/lib/services/blockCapacity.service.js +141 -77
  535. package/src/lib/services/blockCapacity.service.js.map +1 -1
  536. package/src/lib/services/blockService.d.ts +33 -0
  537. package/src/lib/services/blockService.d.ts.map +1 -1
  538. package/src/lib/services/blockService.js +127 -37
  539. package/src/lib/services/blockService.js.map +1 -1
  540. package/src/lib/services/cblService.d.ts +129 -18
  541. package/src/lib/services/cblService.d.ts.map +1 -1
  542. package/src/lib/services/cblService.js +295 -77
  543. package/src/lib/services/cblService.js.map +1 -1
  544. package/src/lib/services/checksum.service.d.ts +92 -23
  545. package/src/lib/services/checksum.service.d.ts.map +1 -1
  546. package/src/lib/services/checksum.service.js +89 -41
  547. package/src/lib/services/checksum.service.js.map +1 -1
  548. package/src/lib/services/fec.service.d.ts +43 -1
  549. package/src/lib/services/fec.service.d.ts.map +1 -1
  550. package/src/lib/services/fec.service.js +71 -2
  551. package/src/lib/services/fec.service.js.map +1 -1
  552. package/src/lib/services/index.d.ts +2 -0
  553. package/src/lib/services/index.d.ts.map +1 -1
  554. package/src/lib/services/index.js +2 -0
  555. package/src/lib/services/index.js.map +1 -1
  556. package/src/lib/services/member/memberCblService.d.ts.map +1 -1
  557. package/src/lib/services/member/memberCblService.js +14 -11
  558. package/src/lib/services/member/memberCblService.js.map +1 -1
  559. package/src/lib/services/memberStore.d.ts.map +1 -1
  560. package/src/lib/services/memberStore.js +5 -5
  561. package/src/lib/services/memberStore.js.map +1 -1
  562. package/src/lib/services/messaging/alertMonitor.d.ts +23 -0
  563. package/src/lib/services/messaging/alertMonitor.d.ts.map +1 -0
  564. package/src/lib/services/messaging/alertMonitor.js +39 -0
  565. package/src/lib/services/messaging/alertMonitor.js.map +1 -0
  566. package/src/lib/services/messaging/broadcastMessageRouter.d.ts +19 -0
  567. package/src/lib/services/messaging/broadcastMessageRouter.d.ts.map +1 -0
  568. package/src/lib/services/messaging/broadcastMessageRouter.js +33 -0
  569. package/src/lib/services/messaging/broadcastMessageRouter.js.map +1 -0
  570. package/src/lib/services/messaging/deliveryTimeoutService.d.ts +64 -0
  571. package/src/lib/services/messaging/deliveryTimeoutService.d.ts.map +1 -0
  572. package/src/lib/services/messaging/deliveryTimeoutService.js +125 -0
  573. package/src/lib/services/messaging/deliveryTimeoutService.js.map +1 -0
  574. package/src/lib/services/messaging/directMessageRouter.d.ts +25 -0
  575. package/src/lib/services/messaging/directMessageRouter.d.ts.map +1 -0
  576. package/src/lib/services/messaging/directMessageRouter.js +58 -0
  577. package/src/lib/services/messaging/directMessageRouter.js.map +1 -0
  578. package/src/lib/services/messaging/index.d.ts +9 -0
  579. package/src/lib/services/messaging/index.d.ts.map +1 -0
  580. package/src/lib/services/messaging/index.js +12 -0
  581. package/src/lib/services/messaging/index.js.map +1 -0
  582. package/src/lib/services/messaging/messageCBLService.d.ts +41 -0
  583. package/src/lib/services/messaging/messageCBLService.d.ts.map +1 -0
  584. package/src/lib/services/messaging/messageCBLService.js +187 -0
  585. package/src/lib/services/messaging/messageCBLService.js.map +1 -0
  586. package/src/lib/services/messaging/messageEncryptionService.d.ts +43 -0
  587. package/src/lib/services/messaging/messageEncryptionService.d.ts.map +1 -0
  588. package/src/lib/services/messaging/messageEncryptionService.js +89 -0
  589. package/src/lib/services/messaging/messageEncryptionService.js.map +1 -0
  590. package/src/lib/services/messaging/messageForwardingService.d.ts +40 -0
  591. package/src/lib/services/messaging/messageForwardingService.d.ts.map +1 -0
  592. package/src/lib/services/messaging/messageForwardingService.js +74 -0
  593. package/src/lib/services/messaging/messageForwardingService.js.map +1 -0
  594. package/src/lib/services/messaging/messageLogger.d.ts +26 -0
  595. package/src/lib/services/messaging/messageLogger.d.ts.map +1 -0
  596. package/src/lib/services/messaging/messageLogger.js +42 -0
  597. package/src/lib/services/messaging/messageLogger.js.map +1 -0
  598. package/src/lib/services/messaging/messageMetrics.d.ts +35 -0
  599. package/src/lib/services/messaging/messageMetrics.d.ts.map +1 -0
  600. package/src/lib/services/messaging/messageMetrics.js +68 -0
  601. package/src/lib/services/messaging/messageMetrics.js.map +1 -0
  602. package/src/lib/services/messaging/messageRouter.d.ts +24 -0
  603. package/src/lib/services/messaging/messageRouter.d.ts.map +1 -0
  604. package/src/lib/services/messaging/messageRouter.js +102 -0
  605. package/src/lib/services/messaging/messageRouter.js.map +1 -0
  606. package/src/lib/services/messaging/recipientKeyManager.d.ts +40 -0
  607. package/src/lib/services/messaging/recipientKeyManager.d.ts.map +1 -0
  608. package/src/lib/services/messaging/recipientKeyManager.js +83 -0
  609. package/src/lib/services/messaging/recipientKeyManager.js.map +1 -0
  610. package/src/lib/services/messaging/webSocketTransport.d.ts +34 -0
  611. package/src/lib/services/messaging/webSocketTransport.d.ts.map +1 -0
  612. package/src/lib/services/messaging/webSocketTransport.js +116 -0
  613. package/src/lib/services/messaging/webSocketTransport.js.map +1 -0
  614. package/src/lib/services/quorumService.d.ts +38 -0
  615. package/src/lib/services/quorumService.d.ts.map +1 -0
  616. package/src/lib/services/quorumService.js +176 -0
  617. package/src/lib/services/quorumService.js.map +1 -0
  618. package/src/lib/services/sealing.service.d.ts +11 -5
  619. package/src/lib/services/sealing.service.d.ts.map +1 -1
  620. package/src/lib/services/sealing.service.js +51 -5
  621. package/src/lib/services/sealing.service.js.map +1 -1
  622. package/src/lib/services/tuple.service.d.ts +40 -3
  623. package/src/lib/services/tuple.service.d.ts.map +1 -1
  624. package/src/lib/services/tuple.service.js +69 -33
  625. package/src/lib/services/tuple.service.js.map +1 -1
  626. package/src/lib/simpleBrightChain.d.ts.map +1 -1
  627. package/src/lib/simpleBrightChain.js +2 -1
  628. package/src/lib/simpleBrightChain.js.map +1 -1
  629. package/src/lib/stores/blockStoreAdapter.d.ts +21 -9
  630. package/src/lib/stores/blockStoreAdapter.d.ts.map +1 -1
  631. package/src/lib/stores/blockStoreAdapter.js +44 -7
  632. package/src/lib/stores/blockStoreAdapter.js.map +1 -1
  633. package/src/lib/stores/cblStore.d.ts +7 -6
  634. package/src/lib/stores/cblStore.d.ts.map +1 -1
  635. package/src/lib/stores/cblStore.js +3 -4
  636. package/src/lib/stores/cblStore.js.map +1 -1
  637. package/src/lib/stores/index.d.ts +3 -1
  638. package/src/lib/stores/index.d.ts.map +1 -1
  639. package/src/lib/stores/index.js +3 -1
  640. package/src/lib/stores/index.js.map +1 -1
  641. package/src/lib/stores/memoryBlockMetadataStore.d.ts +82 -0
  642. package/src/lib/stores/memoryBlockMetadataStore.d.ts.map +1 -0
  643. package/src/lib/stores/memoryBlockMetadataStore.js +165 -0
  644. package/src/lib/stores/memoryBlockMetadataStore.js.map +1 -0
  645. package/src/lib/stores/memoryBlockStore.d.ts +141 -15
  646. package/src/lib/stores/memoryBlockStore.d.ts.map +1 -1
  647. package/src/lib/stores/memoryBlockStore.js +439 -23
  648. package/src/lib/stores/memoryBlockStore.js.map +1 -1
  649. package/src/lib/stores/memoryCblStore.d.ts +25 -0
  650. package/src/lib/stores/memoryCblStore.d.ts.map +1 -0
  651. package/src/lib/stores/memoryCblStore.js +105 -0
  652. package/src/lib/stores/memoryCblStore.js.map +1 -0
  653. package/src/lib/stores/messaging/index.d.ts +2 -0
  654. package/src/lib/stores/messaging/index.d.ts.map +1 -0
  655. package/src/lib/stores/messaging/index.js +5 -0
  656. package/src/lib/stores/messaging/index.js.map +1 -0
  657. package/src/lib/stores/messaging/memoryMessageMetadataStore.d.ts +24 -0
  658. package/src/lib/stores/messaging/memoryMessageMetadataStore.d.ts.map +1 -0
  659. package/src/lib/stores/messaging/memoryMessageMetadataStore.js +123 -0
  660. package/src/lib/stores/messaging/memoryMessageMetadataStore.js.map +1 -0
  661. package/src/lib/strings/englishUs.d.ts.map +1 -1
  662. package/src/lib/strings/englishUs.js +4 -0
  663. package/src/lib/strings/englishUs.js.map +1 -1
  664. package/src/lib/systemKeyring.d.ts.map +1 -1
  665. package/src/lib/systemKeyring.js.map +1 -1
  666. package/src/lib/test/testMembers.js +3 -3
  667. package/src/lib/test/testMembers.js.map +1 -1
  668. package/src/lib/test/testUtils.d.ts +18 -0
  669. package/src/lib/test/testUtils.d.ts.map +1 -1
  670. package/src/lib/test/testUtils.js +23 -0
  671. package/src/lib/test/testUtils.js.map +1 -1
  672. package/src/lib/types/checksum.d.ts +215 -0
  673. package/src/lib/types/checksum.d.ts.map +1 -0
  674. package/src/lib/types/checksum.js +266 -0
  675. package/src/lib/types/checksum.js.map +1 -0
  676. package/src/lib/types/enumTranslation.d.ts +54 -0
  677. package/src/lib/types/enumTranslation.d.ts.map +1 -0
  678. package/src/lib/types/enumTranslation.js +34 -0
  679. package/src/lib/types/enumTranslation.js.map +1 -0
  680. package/src/lib/types/index.d.ts +46 -0
  681. package/src/lib/types/index.d.ts.map +1 -0
  682. package/src/lib/types/index.js +49 -0
  683. package/src/lib/types/index.js.map +1 -0
  684. package/src/lib/utils/checksumUtils.d.ts +105 -0
  685. package/src/lib/utils/checksumUtils.d.ts.map +1 -0
  686. package/src/lib/utils/checksumUtils.js +123 -0
  687. package/src/lib/utils/checksumUtils.js.map +1 -0
  688. package/src/lib/utils/index.d.ts +47 -0
  689. package/src/lib/utils/index.d.ts.map +1 -0
  690. package/src/lib/utils/index.js +56 -0
  691. package/src/lib/utils/index.js.map +1 -0
  692. package/src/lib/utils/validator.d.ts +216 -0
  693. package/src/lib/utils/validator.d.ts.map +1 -0
  694. package/src/lib/utils/validator.js +256 -0
  695. package/src/lib/utils/validator.js.map +1 -0
  696. package/src/lib/enumerations/stringLanguages.d.ts +0 -29
  697. package/src/lib/enumerations/stringLanguages.d.ts.map +0 -1
  698. package/src/lib/enumerations/stringLanguages.js +0 -24
  699. package/src/lib/enumerations/stringLanguages.js.map +0 -1
  700. package/src/lib/models/index.d.ts +0 -2
  701. package/src/lib/models/index.d.ts.map +0 -1
  702. package/src/lib/models/index.js.map +0 -1
  703. package/src/lib/models/user.d.ts +0 -2
  704. package/src/lib/models/user.d.ts.map +0 -1
  705. package/src/lib/models/user.js +0 -25
  706. package/src/lib/models/user.js.map +0 -1
  707. package/src/lib/types.d.ts +0 -11
  708. package/src/lib/types.d.ts.map +0 -1
  709. package/src/lib/types.js +0 -11
  710. package/src/lib/types.js.map +0 -1
@@ -0,0 +1,801 @@
1
+ # BrightChain Migration Guide
2
+
3
+ This guide documents the breaking changes introduced when deprecated APIs were removed from BrightChain.
4
+
5
+ ## Table of Contents
6
+
7
+ - [Overview](#overview)
8
+ - [Breaking Changes](#breaking-changes)
9
+ - [1. Unified Checksum Type System](#1-unified-checksum-type-system)
10
+ - [2. Checksum Utility Functions Removed](#2-checksum-utility-functions-removed)
11
+ - [3. ChecksumService Methods Updated](#3-checksumservice-methods-updated)
12
+ - [4. Deprecated Type Aliases Removed](#4-deprecated-type-aliases-removed)
13
+ - [5. Deprecated i18n Functions Removed](#5-deprecated-i18n-functions-removed)
14
+ - [6. StringLanguages Removed](#6-stringlanguages-removed)
15
+ - [7. IConstants Interface Removed](#7-iconstants-interface-removed)
16
+ - [8. CBLService Static Property Removed](#8-cblservice-static-property-removed)
17
+ - [Getting Help](#getting-help)
18
+
19
+ ## Overview
20
+
21
+ All deprecated APIs have been removed from BrightChain. This guide helps you update your code to use the current APIs.
22
+
23
+ **Key Changes:**
24
+ - Unified checksum type system with the `Checksum` class only
25
+ - Removed all deprecated utility functions
26
+ - Simplified ChecksumService API
27
+ - Removed deprecated i18n compatibility functions
28
+ - Removed deprecated type aliases
29
+
30
+ ## Breaking Changes
31
+
32
+ ### 1. Unified Checksum Type System
33
+
34
+ **What Changed:**
35
+ The `ChecksumBuffer` and `ChecksumUint8Array` type aliases have been completely removed. Only the `Checksum` class is supported.
36
+
37
+ #### Before
38
+
39
+ ```typescript
40
+ import { ChecksumBuffer, ChecksumUint8Array } from 'brightchain-lib';
41
+
42
+ const checksumBuffer: ChecksumBuffer = Buffer.from(data);
43
+ const checksumArray: ChecksumUint8Array = new Uint8Array(checksumBuffer);
44
+ ```
45
+
46
+ #### After
47
+
48
+ ```typescript
49
+ import { Checksum } from 'brightchain-lib';
50
+
51
+ const checksum = Checksum.fromBuffer(Buffer.from(data));
52
+ // or
53
+ const checksum = Checksum.fromUint8Array(new Uint8Array(data));
54
+ ```
55
+
56
+ ### 2. Checksum Utility Functions Removed
57
+
58
+ **What Changed:**
59
+ All checksum utility functions from `brightchain-lib/utils/checksumUtils` have been removed.
60
+
61
+ #### Before
62
+
63
+ ```typescript
64
+ import {
65
+ checksumToBuffer,
66
+ checksumToUint8Array,
67
+ checksumToHex,
68
+ checksumFromHex,
69
+ checksumFromBuffer,
70
+ checksumFromUint8Array
71
+ } from 'brightchain-lib';
72
+
73
+ const buffer = checksumToBuffer(checksum);
74
+ const hex = checksumToHex(checksum);
75
+ const newChecksum = checksumFromHex(hexString);
76
+ ```
77
+
78
+ #### After
79
+
80
+ ```typescript
81
+ import { Checksum } from 'brightchain-lib';
82
+
83
+ // Use Checksum class methods directly
84
+ const buffer = checksum.toBuffer();
85
+ const hex = checksum.toHex();
86
+ const newChecksum = Checksum.fromHex(hexString);
87
+ ```
88
+
89
+ ### 3. ChecksumService Methods Updated
90
+
91
+ **What Changed:**
92
+ All ChecksumService methods now return `Checksum` class instances. The `*AsClass` method variants have been removed.
93
+
94
+ #### Before
95
+
96
+ ```typescript
97
+ // Old deprecated methods
98
+ const checksum = checksumService.calculateChecksum(data);
99
+ const checksum = checksumService.calculateChecksumForBuffers(buffers);
100
+ const checksum = checksumService.calculateChecksumForString(str);
101
+ const checksum = checksumService.calculateChecksumForFile(file);
102
+ const checksum = checksumService.calculateChecksumForStream(stream);
103
+
104
+ // Or the *AsClass variants
105
+ const checksum = checksumService.calculateChecksumAsClass(data);
106
+ ```
107
+
108
+ #### After
109
+
110
+ ```typescript
111
+ // All methods now return Checksum class
112
+ const checksum = checksumService.calculateChecksum(data);
113
+ const checksum = checksumService.calculateChecksumForBuffers(buffers);
114
+ const checksum = checksumService.calculateChecksumForString(str);
115
+ const checksum = checksumService.calculateChecksumForFile(file);
116
+ const checksum = checksumService.calculateChecksumForStream(stream);
117
+ ```
118
+
119
+ ### 4. Deprecated Type Aliases Removed
120
+
121
+ **What Changed:**
122
+ The `types.ts` file containing deprecated type aliases has been removed.
123
+
124
+ #### Before
125
+
126
+ ```typescript
127
+ import { EnumLanguageTranslation, createTranslations } from 'brightchain-lib';
128
+ ```
129
+
130
+ #### After
131
+
132
+ These types are no longer available. If you need similar functionality, implement it in your own codebase.
133
+
134
+ ### 5. Deprecated i18n Functions Removed
135
+
136
+ **What Changed:**
137
+ The `registerTranslation` function has been removed from the i18n module.
138
+
139
+ #### Before
140
+
141
+ ```typescript
142
+ import { registerTranslation } from 'brightchain-lib';
143
+
144
+ registerTranslation(MyEnum, translations);
145
+ ```
146
+
147
+ #### After
148
+
149
+ This function is no longer available. Use the `@digitaldefiance/i18n-lib` package directly for advanced i18n features.
150
+
151
+ ### 6. StringLanguages Removed
152
+
153
+ **What Changed:**
154
+ The `StringLanguages` enum has been removed.
155
+
156
+ #### Before
157
+
158
+ ```typescript
159
+ import { StringLanguages } from 'brightchain-lib';
160
+
161
+ const language = StringLanguages.EnglishUS;
162
+ ```
163
+
164
+ #### After
165
+
166
+ ```typescript
167
+ import { LanguageCodes } from '@digitaldefiance/i18n-lib';
168
+
169
+ const language = LanguageCodes.EN_US;
170
+ ```
171
+
172
+ ### 7. IConstants Interface Removed
173
+
174
+ **What Changed:**
175
+ The generic `IConstants` interface has been removed.
176
+
177
+ #### Before
178
+
179
+ ```typescript
180
+ import { IConstants } from 'brightchain-lib';
181
+
182
+ const constants: IConstants = { ... };
183
+ ```
184
+
185
+ #### After
186
+
187
+ Use specific constant interfaces instead:
188
+
189
+ ```typescript
190
+ import { ICBLConsts, IFECConsts, ITupleConsts } from 'brightchain-lib';
191
+
192
+ const cblConstants: ICBLConsts = { ... };
193
+ const fecConstants: IFECConsts = { ... };
194
+ ```
195
+
196
+ ### 8. CBLService Static Property Removed
197
+
198
+ **What Changed:**
199
+ The static `CreatorLength` property has been removed from CBLService.
200
+
201
+ #### Before
202
+
203
+ ```typescript
204
+ const length = CBLService.CreatorLength;
205
+ ```
206
+
207
+ #### After
208
+
209
+ ```typescript
210
+ const cblService = new CBLService();
211
+ const length = cblService.creatorLength;
212
+ ```
213
+
214
+ ## Getting Help
215
+
216
+ If you encounter issues during migration:
217
+
218
+ 1. **Check the documentation:**
219
+ - [API Documentation](./docs/API.md)
220
+ - [Type System Guide](./docs/TYPE_SYSTEM.md)
221
+
222
+ 2. **Search existing issues:**
223
+ - [GitHub Issues](https://github.com/Digital-Defiance/BrightChain/issues)
224
+
225
+ 3. **Ask for help:**
226
+ - [GitHub Discussions](https://github.com/Digital-Defiance/BrightChain/discussions)
227
+
228
+ ---
229
+
230
+ **Last Updated:** January 2025
231
+ **Applies to:** BrightChain v2.0+
232
+
233
+ ## Table of Contents
234
+
235
+ - [Overview](#overview)
236
+ - [Migration Timeline](#migration-timeline)
237
+ - [Breaking Changes](#breaking-changes)
238
+ - [1. Unified Checksum Type System](#1-unified-checksum-type-system)
239
+ - [2. Factory Pattern Enforcement](#2-factory-pattern-enforcement)
240
+ - [3. Generic Type Requirements](#3-generic-type-requirements)
241
+ - [4. Property Name Changes](#4-property-name-changes)
242
+ - [5. Error Handling Updates](#5-error-handling-updates)
243
+ - [Deprecated APIs](#deprecated-apis)
244
+ - [Automated Migration Tools](#automated-migration-tools)
245
+ - [Getting Help](#getting-help)
246
+
247
+ ## Overview
248
+
249
+ Version 2.0 of BrightChain introduces several design improvements to enhance type safety, consistency, and maintainability. While we've maintained backward compatibility where possible, some changes require code updates.
250
+
251
+ **Key Improvements:**
252
+ - Unified checksum type system with the `Checksum` class
253
+ - Enforced factory patterns for object creation
254
+ - Complete generic type implementation for `BlockHandle`
255
+ - Consistent property naming across interfaces
256
+ - Enhanced error handling with rich context
257
+
258
+ ## Migration Timeline
259
+
260
+ | Version | Status | Timeline | Notes |
261
+ |---------|--------|----------|-------|
262
+ | 1.x | Current | - | Legacy APIs fully supported |
263
+ | 2.0 | Beta | Q1 2024 | New APIs available, deprecation warnings added |
264
+ | 2.1 | Stable | Q2 2024 | Recommended for new projects |
265
+ | 3.0 | Future | Q4 2024 | Legacy APIs removed |
266
+
267
+ **Recommendation:** Migrate to new APIs during the 2.x release cycle to avoid breaking changes in 3.0.
268
+
269
+ ## Breaking Changes
270
+
271
+ ### 1. Unified Checksum Type System
272
+
273
+ **What Changed:**
274
+ The separate `ChecksumBuffer` and `ChecksumUint8Array` types have been replaced with a unified `Checksum` class.
275
+
276
+ **Why:**
277
+ - Eliminates manual type conversions
278
+ - Provides consistent API across all checksum operations
279
+ - Adds helpful methods like `equals()`, `toHex()`, `toString()`
280
+
281
+ #### Before (v1.x)
282
+
283
+ ```typescript
284
+ import { ChecksumBuffer, ChecksumUint8Array } from 'brightchain-lib';
285
+
286
+ // Manual conversions required
287
+ const checksumBuffer: ChecksumBuffer = Buffer.from(data);
288
+ const checksumArray: ChecksumUint8Array = new Uint8Array(checksumBuffer);
289
+
290
+ // Manual comparison
291
+ function compareChecksums(a: ChecksumBuffer, b: ChecksumBuffer): boolean {
292
+ if (a.length !== b.length) return false;
293
+ for (let i = 0; i < a.length; i++) {
294
+ if (a[i] !== b[i]) return false;
295
+ }
296
+ return true;
297
+ }
298
+
299
+ // Manual hex conversion
300
+ const hex = checksumBuffer.toString('hex');
301
+ ```
302
+
303
+ #### After (v2.0)
304
+
305
+ ```typescript
306
+ import { Checksum } from 'brightchain-lib';
307
+
308
+ // Create from any compatible type
309
+ const checksum = Checksum.fromBuffer(buffer);
310
+ // or
311
+ const checksum = Checksum.fromUint8Array(array);
312
+ // or
313
+ const checksum = Checksum.fromHex('abc123...');
314
+
315
+ // Built-in comparison
316
+ const isEqual = checksum1.equals(checksum2);
317
+
318
+ // Built-in hex conversion
319
+ const hex = checksum.toHex();
320
+ // or
321
+ const hex = checksum.toString();
322
+
323
+ // Convert to other formats when needed
324
+ const buffer = checksum.toBuffer();
325
+ const array = checksum.toUint8Array();
326
+ ```
327
+
328
+ #### Migration Steps
329
+
330
+ 1. **Replace type imports:**
331
+ ```typescript
332
+ // Old
333
+ import { ChecksumBuffer, ChecksumUint8Array } from 'brightchain-lib';
334
+
335
+ // New
336
+ import { Checksum } from 'brightchain-lib';
337
+ ```
338
+
339
+ 2. **Update variable declarations:**
340
+ ```typescript
341
+ // Old
342
+ let checksum: ChecksumBuffer;
343
+
344
+ // New
345
+ let checksum: Checksum;
346
+ ```
347
+
348
+ 3. **Use factory methods for creation:**
349
+ ```typescript
350
+ // Old
351
+ const checksum = Buffer.from(data);
352
+
353
+ // New
354
+ const checksum = Checksum.fromBuffer(Buffer.from(data));
355
+ ```
356
+
357
+ 4. **Replace manual comparisons:**
358
+ ```typescript
359
+ // Old
360
+ if (checksum1.equals(checksum2)) { ... }
361
+
362
+ // New
363
+ if (checksum1.equals(checksum2)) { ... } // Same API!
364
+ ```
365
+
366
+ 5. **Update service method calls:**
367
+ ```typescript
368
+ // Old
369
+ const checksum = checksumService.calculateChecksum(data);
370
+
371
+ // New (preferred)
372
+ const checksum = checksumService.calculateChecksumAsClass(data);
373
+
374
+ // Old method still works but is deprecated
375
+ const checksum = checksumService.calculateChecksum(data);
376
+ ```
377
+
378
+ ### 2. Factory Pattern Enforcement
379
+
380
+ **What Changed:**
381
+ Classes using factory patterns now enforce their use at runtime, preventing direct constructor calls.
382
+
383
+ **Why:**
384
+ - Ensures proper validation during object creation
385
+ - Prevents invalid object states
386
+ - Makes factory pattern usage explicit and consistent
387
+
388
+ #### Before (v1.x)
389
+
390
+ ```typescript
391
+ // Direct constructor calls were possible (but discouraged)
392
+ const member = new MemberDocument(publicMember, privateMember, ...);
393
+ ```
394
+
395
+ #### After (v2.0)
396
+
397
+ ```typescript
398
+ // Must use factory method
399
+ const member = MemberDocument.create(publicMember, privateMember, ...);
400
+
401
+ // Direct constructor call throws FactoryPatternViolationError
402
+ try {
403
+ const member = new MemberDocument(...); // ❌ Throws error
404
+ } catch (error) {
405
+ if (error instanceof FactoryPatternViolationError) {
406
+ console.error('Use MemberDocument.create() instead');
407
+ }
408
+ }
409
+ ```
410
+
411
+ #### Migration Steps
412
+
413
+ 1. **Find direct constructor calls:**
414
+ ```bash
415
+ # Search for direct instantiation
416
+ grep -r "new MemberDocument" src/
417
+ grep -r "new.*Block(" src/
418
+ ```
419
+
420
+ 2. **Replace with factory methods:**
421
+ ```typescript
422
+ // Old
423
+ const doc = new MemberDocument(public, private, data);
424
+
425
+ // New
426
+ const doc = MemberDocument.create(public, private, data);
427
+ ```
428
+
429
+ 3. **Update error handling:**
430
+ ```typescript
431
+ import { FactoryPatternViolationError } from 'brightchain-lib';
432
+
433
+ try {
434
+ // ... code ...
435
+ } catch (error) {
436
+ if (error instanceof FactoryPatternViolationError) {
437
+ // Handle factory pattern violation
438
+ }
439
+ }
440
+ ```
441
+
442
+ ### 3. Generic Type Requirements
443
+
444
+ **What Changed:**
445
+ `BlockHandle<T>` now requires a type parameter - it cannot be used without one.
446
+
447
+ **Why:**
448
+ - Provides full type safety when working with block handles
449
+ - Enables better IDE autocomplete and type checking
450
+ - Catches type mismatches at compile time
451
+
452
+ #### Before (v1.x)
453
+
454
+ ```typescript
455
+ // Type parameter was optional
456
+ let handle: BlockHandle; // ⚠️ No type safety
457
+ handle = someBlockHandle;
458
+ ```
459
+
460
+ #### After (v2.0)
461
+
462
+ ```typescript
463
+ // Type parameter is required
464
+ let handle: BlockHandle<BaseBlock>; // ✅ Type safe
465
+ handle = someBlockHandle;
466
+
467
+ // Specific block types
468
+ let rawDataHandle: BlockHandle<RawDataBlock>;
469
+ let cblHandle: BlockHandle<ConstituentBlockListBlock>;
470
+ ```
471
+
472
+ #### Migration Steps
473
+
474
+ 1. **Add type parameters to all BlockHandle declarations:**
475
+ ```typescript
476
+ // Old
477
+ function processHandle(handle: BlockHandle) { ... }
478
+
479
+ // New
480
+ function processHandle(handle: BlockHandle<BaseBlock>) { ... }
481
+ ```
482
+
483
+ 2. **Update interface definitions:**
484
+ ```typescript
485
+ // Old
486
+ interface MyInterface {
487
+ handle: BlockHandle;
488
+ }
489
+
490
+ // New
491
+ interface MyInterface {
492
+ handle: BlockHandle<BaseBlock>;
493
+ }
494
+ ```
495
+
496
+ 3. **Fix TypeScript compilation errors:**
497
+ ```bash
498
+ # Run TypeScript compiler to find all missing type parameters
499
+ npx tsc --noEmit
500
+ ```
501
+
502
+ ### 4. Property Name Changes
503
+
504
+ **What Changed:**
505
+ Several properties have been renamed for consistency across the codebase.
506
+
507
+ **Why:**
508
+ - Establishes consistent terminology
509
+ - Reduces confusion between similar concepts
510
+ - Aligns with industry standards
511
+
512
+ #### Changes
513
+
514
+ | Old Name | New Name | Affected Interfaces |
515
+ |----------|----------|---------------------|
516
+ | `typeSpecificHeader` | `typeSpecificOverhead` | `IOverheadBreakdown` |
517
+ | `payload` | `data` | Block interfaces |
518
+
519
+ #### Before (v1.x)
520
+
521
+ ```typescript
522
+ // Using old property names
523
+ const overhead = breakdown.typeSpecificHeader;
524
+ const content = block.payload;
525
+ ```
526
+
527
+ #### After (v2.0)
528
+
529
+ ```typescript
530
+ // Using new property names
531
+ const overhead = breakdown.typeSpecificOverhead;
532
+ const content = block.data;
533
+
534
+ // Old names still work via deprecated getters (with warnings)
535
+ const overhead = breakdown.typeSpecificHeader; // ⚠️ Deprecated
536
+ ```
537
+
538
+ #### Migration Steps
539
+
540
+ 1. **Update property access:**
541
+ ```typescript
542
+ // Old
543
+ const header = breakdown.typeSpecificHeader;
544
+ const payload = block.payload;
545
+
546
+ // New
547
+ const overhead = breakdown.typeSpecificOverhead;
548
+ const data = block.data;
549
+ ```
550
+
551
+ 2. **Search and replace:**
552
+ ```bash
553
+ # Find all usages
554
+ grep -r "typeSpecificHeader" src/
555
+ grep -r "\.payload" src/
556
+ ```
557
+
558
+ 3. **Update tests:**
559
+ ```typescript
560
+ // Old
561
+ expect(result.typeSpecificHeader).toBe(128);
562
+
563
+ // New
564
+ expect(result.typeSpecificOverhead).toBe(128);
565
+ ```
566
+
567
+ ### 5. Error Handling Updates
568
+
569
+ **What Changed:**
570
+ All errors now extend from `BrightChainError` base class with consistent structure.
571
+
572
+ **Why:**
573
+ - Provides consistent error handling across the library
574
+ - Includes rich context for debugging
575
+ - Enables type-safe error handling with type guards
576
+
577
+ #### Before (v1.x)
578
+
579
+ ```typescript
580
+ // Inconsistent error types
581
+ try {
582
+ // ... code ...
583
+ } catch (error) {
584
+ if (error.message.includes('validation')) {
585
+ // Handle validation error
586
+ }
587
+ }
588
+ ```
589
+
590
+ #### After (v2.0)
591
+
592
+ ```typescript
593
+ import {
594
+ BrightChainError,
595
+ ValidationError,
596
+ ChecksumError,
597
+ isValidationError,
598
+ isChecksumError
599
+ } from 'brightchain-lib';
600
+
601
+ try {
602
+ // ... code ...
603
+ } catch (error) {
604
+ if (isValidationError(error)) {
605
+ console.error(`Validation failed for ${error.field}: ${error.message}`);
606
+ console.error('Context:', error.context);
607
+ } else if (isChecksumError(error)) {
608
+ console.error(`Checksum error: ${error.checksumErrorType}`);
609
+ } else if (error instanceof BrightChainError) {
610
+ console.error(`BrightChain error: ${error.type}`);
611
+ console.error('Context:', error.context);
612
+ if (error.cause) {
613
+ console.error('Caused by:', error.cause);
614
+ }
615
+ }
616
+ }
617
+ ```
618
+
619
+ #### Migration Steps
620
+
621
+ 1. **Import error types and type guards:**
622
+ ```typescript
623
+ import {
624
+ BrightChainError,
625
+ ValidationError,
626
+ ChecksumError,
627
+ isValidationError,
628
+ isChecksumError,
629
+ isBrightChainError
630
+ } from 'brightchain-lib';
631
+ ```
632
+
633
+ 2. **Update error handling:**
634
+ ```typescript
635
+ // Old
636
+ catch (error) {
637
+ console.error(error.message);
638
+ }
639
+
640
+ // New
641
+ catch (error) {
642
+ if (isBrightChainError(error)) {
643
+ console.error(`${error.type}: ${error.message}`);
644
+ console.error('Context:', error.context);
645
+ } else {
646
+ console.error(error);
647
+ }
648
+ }
649
+ ```
650
+
651
+ 3. **Use type guards for specific errors:**
652
+ ```typescript
653
+ if (isValidationError(error)) {
654
+ // TypeScript knows error is ValidationError here
655
+ console.error(`Field ${error.field} failed validation`);
656
+ }
657
+ ```
658
+
659
+ ## Deprecated APIs
660
+
661
+ The following APIs are deprecated and will be removed in version 3.0:
662
+
663
+ ### Checksum Types
664
+
665
+ ```typescript
666
+ // ❌ Deprecated - will be removed in v3.0
667
+ import { ChecksumBuffer, ChecksumUint8Array } from 'brightchain-lib';
668
+
669
+ // ✅ Use instead
670
+ import { Checksum } from 'brightchain-lib';
671
+ ```
672
+
673
+ ### Checksum Service Methods
674
+
675
+ ```typescript
676
+ // ❌ Deprecated - will be removed in v3.0
677
+ checksumService.calculateChecksum(data);
678
+ checksumService.calculateChecksumForBuffers(buffers);
679
+ checksumService.calculateChecksumForString(str);
680
+ checksumService.calculateChecksumForFile(file);
681
+ checksumService.calculateChecksumForStream(stream);
682
+
683
+ // ✅ Use instead
684
+ checksumService.calculateChecksumAsClass(data);
685
+ checksumService.calculateChecksumForBuffersAsClass(buffers);
686
+ checksumService.calculateChecksumForStringAsClass(str);
687
+ checksumService.calculateChecksumForFileAsClass(file);
688
+ checksumService.calculateChecksumForStreamAsClass(stream);
689
+ ```
690
+
691
+ ### Property Names
692
+
693
+ ```typescript
694
+ // ❌ Deprecated - will be removed in v3.0
695
+ breakdown.typeSpecificHeader
696
+ block.payload
697
+
698
+ // ✅ Use instead
699
+ breakdown.typeSpecificOverhead
700
+ block.data
701
+ ```
702
+
703
+ ## Automated Migration Tools
704
+
705
+ We provide scripts to help automate common migration tasks:
706
+
707
+ ### Checksum Migration Script
708
+
709
+ ```bash
710
+ # Run the checksum migration script
711
+ npm run migrate:checksums
712
+
713
+ # Or manually with Node
714
+ node scripts/migrate-checksums.js src/
715
+ ```
716
+
717
+ This script will:
718
+ - Replace `ChecksumBuffer` and `ChecksumUint8Array` imports with `Checksum`
719
+ - Update variable type declarations
720
+ - Convert factory method calls to use new `*AsClass` methods
721
+
722
+ ### Property Name Migration Script
723
+
724
+ ```bash
725
+ # Run the property name migration script
726
+ npm run migrate:properties
727
+
728
+ # Or manually
729
+ node scripts/migrate-properties.js src/
730
+ ```
731
+
732
+ This script will:
733
+ - Replace `typeSpecificHeader` with `typeSpecificOverhead`
734
+ - Replace `.payload` with `.data`
735
+ - Update test assertions
736
+
737
+ ### Validation Script
738
+
739
+ ```bash
740
+ # Validate your migration
741
+ npm run validate:migration
742
+ ```
743
+
744
+ This script will:
745
+ - Check for remaining deprecated API usage
746
+ - Report TypeScript compilation errors
747
+ - Suggest fixes for common issues
748
+
749
+ ## Getting Help
750
+
751
+ If you encounter issues during migration:
752
+
753
+ 1. **Check the documentation:**
754
+ - [API Documentation](./docs/API.md)
755
+ - [Type System Guide](./docs/TYPE_SYSTEM.md)
756
+ - [Error Handling Guide](./docs/ERROR_HANDLING.md)
757
+
758
+ 2. **Search existing issues:**
759
+ - [GitHub Issues](https://github.com/Digital-Defiance/BrightChain/issues)
760
+
761
+ 3. **Ask for help:**
762
+ - [GitHub Discussions](https://github.com/Digital-Defiance/BrightChain/discussions)
763
+ - [Discord Community](https://discord.gg/brightchain)
764
+
765
+ 4. **Report bugs:**
766
+ - [File a bug report](https://github.com/Digital-Defiance/BrightChain/issues/new?template=bug_report.md)
767
+
768
+ ## Migration Checklist
769
+
770
+ Use this checklist to track your migration progress:
771
+
772
+ - [ ] Update all checksum type imports to use `Checksum` class
773
+ - [ ] Replace direct constructor calls with factory methods
774
+ - [ ] Add type parameters to all `BlockHandle` declarations
775
+ - [ ] Update property names (`typeSpecificHeader` → `typeSpecificOverhead`, `payload` → `data`)
776
+ - [ ] Update error handling to use new error types and type guards
777
+ - [ ] Run automated migration scripts
778
+ - [ ] Fix all TypeScript compilation errors
779
+ - [ ] Update tests to use new APIs
780
+ - [ ] Run full test suite
781
+ - [ ] Remove all deprecation warnings
782
+ - [ ] Update documentation and examples
783
+
784
+ ## Version-Specific Notes
785
+
786
+ ### Migrating from 1.0 to 2.0
787
+
788
+ - All deprecated APIs still work but emit console warnings
789
+ - No breaking changes if you don't use TypeScript strict mode
790
+ - Recommended to migrate incrementally, one module at a time
791
+
792
+ ### Migrating from 2.0 to 3.0 (Future)
793
+
794
+ - All deprecated APIs will be removed
795
+ - Must complete migration to new APIs before upgrading
796
+ - Breaking changes will be clearly documented in release notes
797
+
798
+ ---
799
+
800
+ **Last Updated:** January 2024
801
+ **Applies to:** BrightChain v2.0+