@decaf-ts/for-fabric 0.8.0 → 0.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (623) hide show
  1. package/lib/cjs/bin/cli.cjs +3 -2
  2. package/lib/cjs/bin/cli.cjs.map +1 -0
  3. package/lib/cjs/cli-module.cjs +26 -25
  4. package/lib/cjs/cli-module.cjs.map +1 -0
  5. package/lib/cjs/cli-utils.cjs +5 -5
  6. package/lib/cjs/cli-utils.cjs.map +1 -0
  7. package/lib/cjs/client/FabricClientAdapter.cjs +46 -40
  8. package/lib/cjs/client/FabricClientAdapter.cjs.map +1 -0
  9. package/lib/cjs/client/FabricClientDispatch.cjs +8 -7
  10. package/lib/cjs/client/FabricClientDispatch.cjs.map +1 -0
  11. package/lib/cjs/client/FabricClientPaginator.cjs +1 -0
  12. package/lib/cjs/client/FabricClientPaginator.cjs.map +1 -0
  13. package/lib/cjs/client/FabricClientRepository.cjs +4 -3
  14. package/lib/cjs/client/FabricClientRepository.cjs.map +1 -0
  15. package/lib/cjs/client/FabricClientStatement.cjs +1 -0
  16. package/lib/cjs/client/FabricClientStatement.cjs.map +1 -0
  17. package/lib/cjs/client/collections/generation.cjs +3 -2
  18. package/lib/cjs/client/collections/generation.cjs.map +1 -0
  19. package/lib/cjs/client/collections/index.cjs +1 -0
  20. package/lib/cjs/client/collections/index.cjs.map +1 -0
  21. package/lib/cjs/client/constants.cjs +1 -0
  22. package/lib/cjs/client/constants.cjs.map +1 -0
  23. package/lib/cjs/client/crypto.cjs +12 -13
  24. package/lib/cjs/client/crypto.cjs.map +1 -0
  25. package/lib/cjs/client/erc20/FabricERC20ClientRepository.cjs +7 -6
  26. package/lib/cjs/client/erc20/FabricERC20ClientRepository.cjs.map +1 -0
  27. package/lib/cjs/client/erc20/index.cjs +1 -0
  28. package/lib/cjs/client/erc20/index.cjs.map +1 -0
  29. package/lib/cjs/client/fabric-fs.cjs +1 -0
  30. package/lib/cjs/client/fabric-fs.cjs.map +1 -0
  31. package/lib/cjs/client/fabric-hsm.cjs +3 -2
  32. package/lib/cjs/client/fabric-hsm.cjs.map +1 -0
  33. package/lib/cjs/client/ids/id-extraction.cjs +1 -0
  34. package/lib/cjs/client/ids/id-extraction.cjs.map +1 -0
  35. package/lib/cjs/client/ids/index.cjs +1 -0
  36. package/lib/cjs/client/ids/index.cjs.map +1 -0
  37. package/lib/cjs/client/index.cjs +10 -9
  38. package/lib/cjs/client/index.cjs.map +1 -0
  39. package/lib/cjs/client/indexes/generation.cjs +1 -0
  40. package/lib/cjs/client/indexes/generation.cjs.map +1 -0
  41. package/lib/cjs/client/indexes/index.cjs +1 -0
  42. package/lib/cjs/client/indexes/index.cjs.map +1 -0
  43. package/lib/cjs/client/logging.cjs +1 -0
  44. package/lib/cjs/client/logging.cjs.map +1 -0
  45. package/lib/cjs/client/services/FabricEnrollmentService.cjs +17 -32
  46. package/lib/cjs/client/services/FabricEnrollmentService.cjs.map +1 -0
  47. package/lib/cjs/client/services/FabricIdentityService.cjs +15 -14
  48. package/lib/cjs/client/services/FabricIdentityService.cjs.map +1 -0
  49. package/lib/cjs/client/services/RegistrationRequestBuilder.cjs +11 -5
  50. package/lib/cjs/client/services/RegistrationRequestBuilder.cjs.map +1 -0
  51. package/lib/cjs/client/services/constants.cjs +2 -9
  52. package/lib/cjs/client/services/constants.cjs.map +1 -0
  53. package/lib/cjs/client/services/index.cjs +1 -0
  54. package/lib/cjs/client/services/index.cjs.map +1 -0
  55. package/lib/cjs/client/types.cjs +1 -0
  56. package/lib/cjs/client/types.cjs.map +1 -0
  57. package/lib/cjs/client/utils.cjs +1 -0
  58. package/lib/cjs/client/utils.cjs.map +1 -0
  59. package/lib/cjs/contract/Address.cjs +14 -8
  60. package/lib/cjs/contract/Address.cjs.map +1 -0
  61. package/lib/cjs/contract/AddressContract.cjs +15 -9
  62. package/lib/cjs/contract/AddressContract.cjs.map +1 -0
  63. package/lib/cjs/contract/AuditContract.cjs +15 -9
  64. package/lib/cjs/contract/AuditContract.cjs.map +1 -0
  65. package/lib/cjs/contract/BatchContract.cjs +15 -9
  66. package/lib/cjs/contract/BatchContract.cjs.map +1 -0
  67. package/lib/cjs/contract/MarketContract.cjs +15 -9
  68. package/lib/cjs/contract/MarketContract.cjs.map +1 -0
  69. package/lib/cjs/contract/OtherAuditContract.cjs +15 -9
  70. package/lib/cjs/contract/OtherAuditContract.cjs.map +1 -0
  71. package/lib/cjs/contract/OtherBatchContract.cjs +15 -9
  72. package/lib/cjs/contract/OtherBatchContract.cjs.map +1 -0
  73. package/lib/cjs/contract/OtherMarketContract.cjs +15 -9
  74. package/lib/cjs/contract/OtherMarketContract.cjs.map +1 -0
  75. package/lib/cjs/contract/OtherProductContract.cjs +15 -9
  76. package/lib/cjs/contract/OtherProductContract.cjs.map +1 -0
  77. package/lib/cjs/contract/OtherProductImageContract.cjs +15 -9
  78. package/lib/cjs/contract/OtherProductImageContract.cjs.map +1 -0
  79. package/lib/cjs/contract/OtherProductSharedContract.cjs +15 -9
  80. package/lib/cjs/contract/OtherProductSharedContract.cjs.map +1 -0
  81. package/lib/cjs/contract/OtherProductStrengthContract.cjs +15 -9
  82. package/lib/cjs/contract/OtherProductStrengthContract.cjs.map +1 -0
  83. package/lib/cjs/contract/Product.cjs +15 -9
  84. package/lib/cjs/contract/Product.cjs.map +1 -0
  85. package/lib/cjs/contract/ProductContract.cjs +15 -9
  86. package/lib/cjs/contract/ProductContract.cjs.map +1 -0
  87. package/lib/cjs/contract/ProductStrengthContract.cjs +15 -9
  88. package/lib/cjs/contract/ProductStrengthContract.cjs.map +1 -0
  89. package/lib/cjs/contract/SegregatedPrivateDocumentContract.cjs +15 -9
  90. package/lib/cjs/contract/SegregatedPrivateDocumentContract.cjs.map +1 -0
  91. package/lib/cjs/contract/SegregatedSharedDocumentContract.cjs +15 -9
  92. package/lib/cjs/contract/SegregatedSharedDocumentContract.cjs.map +1 -0
  93. package/lib/cjs/contract/User.cjs +13 -7
  94. package/lib/cjs/contract/User.cjs.map +1 -0
  95. package/lib/cjs/contract/UserContract.cjs +15 -9
  96. package/lib/cjs/contract/UserContract.cjs.map +1 -0
  97. package/lib/cjs/contract/index.cjs +31 -30
  98. package/lib/cjs/contract/index.cjs.map +1 -0
  99. package/lib/cjs/contract/logging-context.cjs +1 -0
  100. package/lib/cjs/contract/logging-context.cjs.map +1 -0
  101. package/lib/cjs/contract/models/Audit.cjs +17 -11
  102. package/lib/cjs/contract/models/Audit.cjs.map +1 -0
  103. package/lib/cjs/contract/models/BaseIdentifiedModel.cjs +15 -9
  104. package/lib/cjs/contract/models/BaseIdentifiedModel.cjs.map +1 -0
  105. package/lib/cjs/contract/models/BaseModel.cjs +13 -7
  106. package/lib/cjs/contract/models/BaseModel.cjs.map +1 -0
  107. package/lib/cjs/contract/models/Batch.cjs +24 -18
  108. package/lib/cjs/contract/models/Batch.cjs.map +1 -0
  109. package/lib/cjs/contract/models/GtinOwner.cjs +18 -12
  110. package/lib/cjs/contract/models/GtinOwner.cjs.map +1 -0
  111. package/lib/cjs/contract/models/History.cjs +15 -9
  112. package/lib/cjs/contract/models/History.cjs.map +1 -0
  113. package/lib/cjs/contract/models/Leaflet.cjs +25 -19
  114. package/lib/cjs/contract/models/Leaflet.cjs.map +1 -0
  115. package/lib/cjs/contract/models/LeafletFile.cjs +19 -13
  116. package/lib/cjs/contract/models/LeafletFile.cjs.map +1 -0
  117. package/lib/cjs/contract/models/Market.cjs +19 -13
  118. package/lib/cjs/contract/models/Market.cjs.map +1 -0
  119. package/lib/cjs/contract/models/OtherAudit.cjs +20 -14
  120. package/lib/cjs/contract/models/OtherAudit.cjs.map +1 -0
  121. package/lib/cjs/contract/models/OtherBatchShared.cjs +27 -21
  122. package/lib/cjs/contract/models/OtherBatchShared.cjs.map +1 -0
  123. package/lib/cjs/contract/models/OtherLeaflet.cjs +27 -21
  124. package/lib/cjs/contract/models/OtherLeaflet.cjs.map +1 -0
  125. package/lib/cjs/contract/models/OtherLeafletFile.cjs +18 -12
  126. package/lib/cjs/contract/models/OtherLeafletFile.cjs.map +1 -0
  127. package/lib/cjs/contract/models/OtherMarket.cjs +21 -15
  128. package/lib/cjs/contract/models/OtherMarket.cjs.map +1 -0
  129. package/lib/cjs/contract/models/OtherProduct.cjs +24 -18
  130. package/lib/cjs/contract/models/OtherProduct.cjs.map +1 -0
  131. package/lib/cjs/contract/models/OtherProductImage.cjs +22 -16
  132. package/lib/cjs/contract/models/OtherProductImage.cjs.map +1 -0
  133. package/lib/cjs/contract/models/OtherProductShared.cjs +32 -26
  134. package/lib/cjs/contract/models/OtherProductShared.cjs.map +1 -0
  135. package/lib/cjs/contract/models/OtherProductStrength.cjs +21 -15
  136. package/lib/cjs/contract/models/OtherProductStrength.cjs.map +1 -0
  137. package/lib/cjs/contract/models/Product.cjs +24 -18
  138. package/lib/cjs/contract/models/Product.cjs.map +1 -0
  139. package/lib/cjs/contract/models/ProductStrength.cjs +19 -13
  140. package/lib/cjs/contract/models/ProductStrength.cjs.map +1 -0
  141. package/lib/cjs/contract/models/SegregatedDocument.cjs +23 -17
  142. package/lib/cjs/contract/models/SegregatedDocument.cjs.map +1 -0
  143. package/lib/cjs/contract/models/constants.cjs +3 -4
  144. package/lib/cjs/contract/models/constants.cjs.map +1 -0
  145. package/lib/cjs/contract/models/decorators-private.cjs +11 -10
  146. package/lib/cjs/contract/models/decorators-private.cjs.map +1 -0
  147. package/lib/cjs/contract/models/decorators.cjs +13 -12
  148. package/lib/cjs/contract/models/decorators.cjs.map +1 -0
  149. package/lib/cjs/contract/models/gtin.cjs +13 -7
  150. package/lib/cjs/contract/models/gtin.cjs.map +1 -0
  151. package/lib/cjs/contract/models/history-dec.cjs +11 -10
  152. package/lib/cjs/contract/models/history-dec.cjs.map +1 -0
  153. package/lib/cjs/contracts/ContractAdapter.cjs +27 -26
  154. package/lib/cjs/contracts/ContractAdapter.cjs.map +1 -0
  155. package/lib/cjs/contracts/ContractContext.cjs +1 -0
  156. package/lib/cjs/contracts/ContractContext.cjs.map +1 -0
  157. package/lib/cjs/contracts/FabricContractDispatch.cjs +1 -0
  158. package/lib/cjs/contracts/FabricContractDispatch.cjs.map +1 -0
  159. package/lib/cjs/contracts/FabricContractPaginator.cjs +5 -4
  160. package/lib/cjs/contracts/FabricContractPaginator.cjs.map +1 -0
  161. package/lib/cjs/contracts/FabricContractRepository.cjs +8 -7
  162. package/lib/cjs/contracts/FabricContractRepository.cjs.map +1 -0
  163. package/lib/cjs/contracts/FabricContractRepositoryObservableHandler.cjs +3 -2
  164. package/lib/cjs/contracts/FabricContractRepositoryObservableHandler.cjs.map +1 -0
  165. package/lib/cjs/contracts/FabricContractSequence.cjs +1 -0
  166. package/lib/cjs/contracts/FabricContractSequence.cjs.map +1 -0
  167. package/lib/cjs/contracts/FabricContractStatement.cjs +5 -4
  168. package/lib/cjs/contracts/FabricContractStatement.cjs.map +1 -0
  169. package/lib/cjs/contracts/MigrationContract.cjs +20 -14
  170. package/lib/cjs/contracts/MigrationContract.cjs.map +1 -0
  171. package/lib/cjs/contracts/PrivateSequence.cjs +11 -5
  172. package/lib/cjs/contracts/PrivateSequence.cjs.map +1 -0
  173. package/lib/cjs/contracts/auth/decorators.cjs +3 -2
  174. package/lib/cjs/contracts/auth/decorators.cjs.map +1 -0
  175. package/lib/cjs/contracts/auth/index.cjs +1 -0
  176. package/lib/cjs/contracts/auth/index.cjs.map +1 -0
  177. package/lib/cjs/contracts/crud/crud-contract.cjs +12 -11
  178. package/lib/cjs/contracts/crud/crud-contract.cjs.map +1 -0
  179. package/lib/cjs/contracts/crud/index.cjs +1 -0
  180. package/lib/cjs/contracts/crud/index.cjs.map +1 -0
  181. package/lib/cjs/contracts/crud/serialized-crud-contract.cjs +13 -7
  182. package/lib/cjs/contracts/crud/serialized-crud-contract.cjs.map +1 -0
  183. package/lib/cjs/contracts/erc20/erc20contract.cjs +53 -47
  184. package/lib/cjs/contracts/erc20/erc20contract.cjs.map +1 -0
  185. package/lib/cjs/contracts/erc20/index.cjs +3 -2
  186. package/lib/cjs/contracts/erc20/index.cjs.map +1 -0
  187. package/lib/cjs/contracts/erc20/models.cjs +11 -5
  188. package/lib/cjs/contracts/erc20/models.cjs.map +1 -0
  189. package/lib/cjs/contracts/index.cjs +1 -0
  190. package/lib/cjs/contracts/index.cjs.map +1 -0
  191. package/lib/cjs/contracts/logging.cjs +4 -3
  192. package/lib/cjs/contracts/logging.cjs.map +1 -0
  193. package/lib/cjs/contracts/overrides.cjs +3 -2
  194. package/lib/cjs/contracts/overrides.cjs.map +1 -0
  195. package/lib/cjs/contracts/types.cjs +1 -0
  196. package/lib/cjs/contracts/types.cjs.map +1 -0
  197. package/lib/cjs/contracts/uuid.cjs +1 -0
  198. package/lib/cjs/contracts/uuid.cjs.map +1 -0
  199. package/lib/cjs/index.cjs +6 -5
  200. package/lib/cjs/index.cjs.map +1 -0
  201. package/lib/cjs/shared/ClientSerializer.cjs +1 -0
  202. package/lib/cjs/shared/ClientSerializer.cjs.map +1 -0
  203. package/lib/cjs/shared/DeterministicSerializer.cjs +1 -0
  204. package/lib/cjs/shared/DeterministicSerializer.cjs.map +1 -0
  205. package/lib/cjs/shared/SimpleDeterministicSerializer.cjs +3 -2
  206. package/lib/cjs/shared/SimpleDeterministicSerializer.cjs.map +1 -0
  207. package/lib/cjs/shared/constants.cjs +3 -18
  208. package/lib/cjs/shared/constants.cjs.map +1 -0
  209. package/lib/cjs/shared/decorators.cjs +14 -13
  210. package/lib/cjs/shared/decorators.cjs.map +1 -0
  211. package/lib/cjs/shared/erc20/erc20-constants.cjs +2 -9
  212. package/lib/cjs/shared/erc20/erc20-constants.cjs.map +1 -0
  213. package/lib/cjs/shared/erc20/index.cjs +1 -0
  214. package/lib/cjs/shared/erc20/index.cjs.map +1 -0
  215. package/lib/cjs/shared/errors.cjs +1 -0
  216. package/lib/cjs/shared/errors.cjs.map +1 -0
  217. package/lib/cjs/shared/events.cjs +1 -0
  218. package/lib/cjs/shared/events.cjs.map +1 -0
  219. package/lib/cjs/shared/fabric-types.cjs +1 -0
  220. package/lib/cjs/shared/fabric-types.cjs.map +1 -0
  221. package/lib/cjs/shared/index.cjs +1 -0
  222. package/lib/cjs/shared/index.cjs.map +1 -0
  223. package/lib/cjs/shared/interfaces/Checkable.cjs +1 -0
  224. package/lib/cjs/shared/interfaces/Checkable.cjs.map +1 -0
  225. package/lib/cjs/shared/interfaces/index.cjs +1 -0
  226. package/lib/cjs/shared/interfaces/index.cjs.map +1 -0
  227. package/lib/cjs/shared/math.cjs +4 -3
  228. package/lib/cjs/shared/math.cjs.map +1 -0
  229. package/lib/cjs/shared/model/FabricBaseModel.cjs +13 -7
  230. package/lib/cjs/shared/model/FabricBaseModel.cjs.map +1 -0
  231. package/lib/cjs/shared/model/FabricIdentifiedBaseModel.cjs +15 -9
  232. package/lib/cjs/shared/model/FabricIdentifiedBaseModel.cjs.map +1 -0
  233. package/lib/cjs/shared/model/Identity.cjs +16 -10
  234. package/lib/cjs/shared/model/Identity.cjs.map +1 -0
  235. package/lib/cjs/shared/model/IdentityCredentials.cjs +11 -5
  236. package/lib/cjs/shared/model/IdentityCredentials.cjs.map +1 -0
  237. package/lib/cjs/shared/model/index.cjs +1 -0
  238. package/lib/cjs/shared/model/index.cjs.map +1 -0
  239. package/lib/cjs/shared/overrides/Model.cjs +1 -0
  240. package/lib/cjs/shared/overrides/Model.cjs.map +1 -0
  241. package/lib/cjs/shared/overrides/index.cjs +1 -0
  242. package/lib/cjs/shared/overrides/index.cjs.map +1 -0
  243. package/lib/cjs/shared/overrides/overrides.cjs +11 -10
  244. package/lib/cjs/shared/overrides/overrides.cjs.map +1 -0
  245. package/lib/cjs/shared/types.cjs +1 -0
  246. package/lib/cjs/shared/types.cjs.map +1 -0
  247. package/lib/cjs/version.cjs +2 -1
  248. package/lib/cjs/version.cjs.map +1 -0
  249. package/lib/esm/version.js +1 -1
  250. package/lib/types/bin/cli.d.cts +1 -0
  251. package/lib/types/bin/cli.d.mts +1 -0
  252. package/lib/types/cli-module.d.cts +3 -0
  253. package/lib/types/cli-module.d.mts +3 -0
  254. package/lib/types/cli-utils.d.cts +21 -0
  255. package/lib/types/cli-utils.d.mts +21 -0
  256. package/lib/types/client/FabricClientAdapter.d.cts +404 -0
  257. package/lib/types/client/FabricClientAdapter.d.mts +404 -0
  258. package/lib/types/client/FabricClientDispatch.d.cts +133 -0
  259. package/lib/types/client/FabricClientDispatch.d.mts +133 -0
  260. package/lib/types/client/FabricClientPaginator.d.cts +12 -0
  261. package/lib/types/client/FabricClientPaginator.d.mts +12 -0
  262. package/lib/types/client/FabricClientRepository.d.cts +71 -0
  263. package/lib/types/client/FabricClientRepository.d.mts +71 -0
  264. package/lib/types/client/FabricClientStatement.d.cts +64 -0
  265. package/lib/types/client/FabricClientStatement.d.mts +64 -0
  266. package/lib/types/client/collections/generation.d.cts +46 -0
  267. package/lib/types/client/collections/generation.d.mts +46 -0
  268. package/lib/types/client/collections/index.d.cts +1 -0
  269. package/lib/types/client/collections/index.d.mts +1 -0
  270. package/lib/types/client/constants.d.cts +2 -0
  271. package/lib/types/client/constants.d.mts +2 -0
  272. package/lib/types/client/crypto.d.cts +107 -0
  273. package/lib/types/client/crypto.d.mts +107 -0
  274. package/lib/types/client/erc20/FabricERC20ClientRepository.d.cts +254 -0
  275. package/lib/types/client/erc20/FabricERC20ClientRepository.d.mts +254 -0
  276. package/lib/types/client/erc20/index.d.cts +1 -0
  277. package/lib/types/client/erc20/index.d.mts +1 -0
  278. package/lib/types/client/fabric-fs.d.cts +92 -0
  279. package/lib/types/client/fabric-fs.d.mts +92 -0
  280. package/lib/types/client/fabric-hsm.d.cts +24 -0
  281. package/lib/types/client/fabric-hsm.d.mts +24 -0
  282. package/lib/types/client/ids/id-extraction.d.cts +4 -0
  283. package/lib/types/client/ids/id-extraction.d.mts +4 -0
  284. package/lib/types/client/ids/index.d.cts +1 -0
  285. package/lib/types/client/ids/index.d.mts +1 -0
  286. package/lib/types/client/index.d.cts +23 -0
  287. package/lib/types/client/index.d.mts +23 -0
  288. package/lib/types/client/indexes/generation.d.cts +10 -0
  289. package/lib/types/client/indexes/generation.d.mts +10 -0
  290. package/lib/types/client/indexes/index.d.cts +1 -0
  291. package/lib/types/client/indexes/index.d.mts +1 -0
  292. package/lib/types/client/logging.d.cts +60 -0
  293. package/lib/types/client/logging.d.mts +60 -0
  294. package/lib/types/client/services/FabricEnrollmentService.d.cts +176 -0
  295. package/lib/types/client/services/FabricEnrollmentService.d.mts +176 -0
  296. package/lib/types/client/services/FabricIdentityService.d.cts +98 -0
  297. package/lib/types/client/services/FabricIdentityService.d.mts +98 -0
  298. package/lib/types/client/services/RegistrationRequestBuilder.d.cts +19 -0
  299. package/lib/types/client/services/RegistrationRequestBuilder.d.mts +19 -0
  300. package/lib/types/client/services/constants.d.cts +15 -0
  301. package/lib/types/client/services/constants.d.mts +15 -0
  302. package/lib/types/client/services/index.d.cts +4 -0
  303. package/lib/types/client/services/index.d.mts +4 -0
  304. package/lib/types/client/types.d.cts +20 -0
  305. package/lib/types/client/types.d.mts +20 -0
  306. package/lib/types/client/utils.d.cts +71 -0
  307. package/lib/types/client/utils.d.mts +71 -0
  308. package/lib/types/contract/Address.d.cts +13 -0
  309. package/lib/types/contract/Address.d.mts +13 -0
  310. package/lib/types/contract/AddressContract.d.cts +5 -0
  311. package/lib/types/contract/AddressContract.d.mts +5 -0
  312. package/lib/types/contract/AuditContract.d.cts +5 -0
  313. package/lib/types/contract/AuditContract.d.mts +5 -0
  314. package/lib/types/contract/BatchContract.d.cts +5 -0
  315. package/lib/types/contract/BatchContract.d.mts +5 -0
  316. package/lib/types/contract/MarketContract.d.cts +5 -0
  317. package/lib/types/contract/MarketContract.d.mts +5 -0
  318. package/lib/types/contract/OtherAuditContract.d.cts +5 -0
  319. package/lib/types/contract/OtherAuditContract.d.mts +5 -0
  320. package/lib/types/contract/OtherBatchContract.d.cts +5 -0
  321. package/lib/types/contract/OtherBatchContract.d.mts +5 -0
  322. package/lib/types/contract/OtherMarketContract.d.cts +5 -0
  323. package/lib/types/contract/OtherMarketContract.d.mts +5 -0
  324. package/lib/types/contract/OtherProductContract.d.cts +5 -0
  325. package/lib/types/contract/OtherProductContract.d.mts +5 -0
  326. package/lib/types/contract/OtherProductImageContract.d.cts +5 -0
  327. package/lib/types/contract/OtherProductImageContract.d.mts +5 -0
  328. package/lib/types/contract/OtherProductSharedContract.d.cts +5 -0
  329. package/lib/types/contract/OtherProductSharedContract.d.mts +5 -0
  330. package/lib/types/contract/OtherProductStrengthContract.d.cts +5 -0
  331. package/lib/types/contract/OtherProductStrengthContract.d.mts +5 -0
  332. package/lib/types/contract/Product.d.cts +7 -0
  333. package/lib/types/contract/Product.d.mts +7 -0
  334. package/lib/types/contract/ProductContract.d.cts +5 -0
  335. package/lib/types/contract/ProductContract.d.mts +5 -0
  336. package/lib/types/contract/ProductStrengthContract.d.cts +5 -0
  337. package/lib/types/contract/ProductStrengthContract.d.mts +5 -0
  338. package/lib/types/contract/SegregatedPrivateDocumentContract.d.cts +5 -0
  339. package/lib/types/contract/SegregatedPrivateDocumentContract.d.mts +5 -0
  340. package/lib/types/contract/SegregatedSharedDocumentContract.d.cts +5 -0
  341. package/lib/types/contract/SegregatedSharedDocumentContract.d.mts +5 -0
  342. package/lib/types/contract/User.d.cts +7 -0
  343. package/lib/types/contract/User.d.mts +7 -0
  344. package/lib/types/contract/UserContract.d.cts +5 -0
  345. package/lib/types/contract/UserContract.d.mts +5 -0
  346. package/lib/types/contract/index.d.cts +2 -0
  347. package/lib/types/contract/index.d.mts +2 -0
  348. package/lib/types/contract/logging-context.d.cts +8 -0
  349. package/lib/types/contract/logging-context.d.mts +8 -0
  350. package/lib/types/contract/models/Audit.d.cts +13 -0
  351. package/lib/types/contract/models/Audit.d.mts +13 -0
  352. package/lib/types/contract/models/BaseIdentifiedModel.d.cts +7 -0
  353. package/lib/types/contract/models/BaseIdentifiedModel.d.mts +7 -0
  354. package/lib/types/contract/models/BaseModel.d.cts +7 -0
  355. package/lib/types/contract/models/BaseModel.d.mts +7 -0
  356. package/lib/types/contract/models/Batch.d.cts +18 -0
  357. package/lib/types/contract/models/Batch.d.mts +18 -0
  358. package/lib/types/contract/models/GtinOwner.d.cts +8 -0
  359. package/lib/types/contract/models/GtinOwner.d.mts +8 -0
  360. package/lib/types/contract/models/History.d.cts +9 -0
  361. package/lib/types/contract/models/History.d.mts +9 -0
  362. package/lib/types/contract/models/Leaflet.d.cts +12 -0
  363. package/lib/types/contract/models/Leaflet.d.mts +12 -0
  364. package/lib/types/contract/models/LeafletFile.d.cts +9 -0
  365. package/lib/types/contract/models/LeafletFile.d.mts +9 -0
  366. package/lib/types/contract/models/Market.d.cts +12 -0
  367. package/lib/types/contract/models/Market.d.mts +12 -0
  368. package/lib/types/contract/models/OtherAudit.d.cts +15 -0
  369. package/lib/types/contract/models/OtherAudit.d.mts +15 -0
  370. package/lib/types/contract/models/OtherBatchShared.d.cts +18 -0
  371. package/lib/types/contract/models/OtherBatchShared.d.mts +18 -0
  372. package/lib/types/contract/models/OtherLeaflet.d.cts +16 -0
  373. package/lib/types/contract/models/OtherLeaflet.d.mts +16 -0
  374. package/lib/types/contract/models/OtherLeafletFile.d.cts +10 -0
  375. package/lib/types/contract/models/OtherLeafletFile.d.mts +10 -0
  376. package/lib/types/contract/models/OtherMarket.d.cts +13 -0
  377. package/lib/types/contract/models/OtherMarket.d.mts +13 -0
  378. package/lib/types/contract/models/OtherProduct.d.cts +12 -0
  379. package/lib/types/contract/models/OtherProduct.d.mts +12 -0
  380. package/lib/types/contract/models/OtherProductImage.d.cts +9 -0
  381. package/lib/types/contract/models/OtherProductImage.d.mts +9 -0
  382. package/lib/types/contract/models/OtherProductShared.d.cts +18 -0
  383. package/lib/types/contract/models/OtherProductShared.d.mts +18 -0
  384. package/lib/types/contract/models/OtherProductStrength.d.cts +12 -0
  385. package/lib/types/contract/models/OtherProductStrength.d.mts +12 -0
  386. package/lib/types/contract/models/Product.d.cts +15 -0
  387. package/lib/types/contract/models/Product.d.mts +15 -0
  388. package/lib/types/contract/models/ProductStrength.d.cts +11 -0
  389. package/lib/types/contract/models/ProductStrength.d.mts +11 -0
  390. package/lib/types/contract/models/SegregatedDocument.d.cts +18 -0
  391. package/lib/types/contract/models/SegregatedDocument.d.mts +18 -0
  392. package/lib/types/contract/models/constants.d.cts +24 -0
  393. package/lib/types/contract/models/constants.d.mts +24 -0
  394. package/lib/types/contract/models/decorators-private.d.cts +16 -0
  395. package/lib/types/contract/models/decorators-private.d.mts +16 -0
  396. package/lib/types/contract/models/decorators.d.cts +28 -0
  397. package/lib/types/contract/models/decorators.d.mts +28 -0
  398. package/lib/types/contract/models/gtin.d.cts +8 -0
  399. package/lib/types/contract/models/gtin.d.mts +8 -0
  400. package/lib/types/contract/models/history-dec.d.cts +6 -0
  401. package/lib/types/contract/models/history-dec.d.mts +6 -0
  402. package/lib/types/contracts/ContractAdapter.d.cts +287 -0
  403. package/lib/types/contracts/ContractAdapter.d.mts +287 -0
  404. package/lib/types/contracts/ContractContext.d.cts +89 -0
  405. package/lib/types/contracts/ContractContext.d.mts +89 -0
  406. package/lib/types/contracts/FabricContractDispatch.d.cts +7 -0
  407. package/lib/types/contracts/FabricContractDispatch.d.mts +7 -0
  408. package/lib/types/contracts/FabricContractPaginator.d.cts +105 -0
  409. package/lib/types/contracts/FabricContractPaginator.d.mts +105 -0
  410. package/lib/types/contracts/FabricContractRepository.d.cts +119 -0
  411. package/lib/types/contracts/FabricContractRepository.d.mts +119 -0
  412. package/lib/types/contracts/FabricContractRepositoryObservableHandler.d.cts +62 -0
  413. package/lib/types/contracts/FabricContractRepositoryObservableHandler.d.mts +62 -0
  414. package/lib/types/contracts/FabricContractSequence.d.cts +87 -0
  415. package/lib/types/contracts/FabricContractSequence.d.mts +87 -0
  416. package/lib/types/contracts/FabricContractStatement.d.cts +36 -0
  417. package/lib/types/contracts/FabricContractStatement.d.mts +36 -0
  418. package/lib/types/contracts/MigrationContract.d.cts +22 -0
  419. package/lib/types/contracts/MigrationContract.d.mts +22 -0
  420. package/lib/types/contracts/PrivateSequence.d.cts +15 -0
  421. package/lib/types/contracts/PrivateSequence.d.mts +15 -0
  422. package/lib/types/contracts/auth/decorators.d.cts +6 -0
  423. package/lib/types/contracts/auth/decorators.d.mts +6 -0
  424. package/lib/types/contracts/auth/index.d.cts +1 -0
  425. package/lib/types/contracts/auth/index.d.mts +1 -0
  426. package/lib/types/contracts/crud/crud-contract.d.cts +199 -0
  427. package/lib/types/contracts/crud/crud-contract.d.mts +199 -0
  428. package/lib/types/contracts/crud/index.d.cts +2 -0
  429. package/lib/types/contracts/crud/index.d.mts +2 -0
  430. package/lib/types/contracts/crud/serialized-crud-contract.d.cts +42 -0
  431. package/lib/types/contracts/crud/serialized-crud-contract.d.mts +42 -0
  432. package/lib/types/contracts/erc20/erc20contract.d.cts +152 -0
  433. package/lib/types/contracts/erc20/erc20contract.d.mts +152 -0
  434. package/lib/types/contracts/erc20/index.d.cts +2 -0
  435. package/lib/types/contracts/erc20/index.d.mts +2 -0
  436. package/lib/types/contracts/erc20/models.d.cts +114 -0
  437. package/lib/types/contracts/erc20/models.d.mts +114 -0
  438. package/lib/types/contracts/index.d.cts +20 -0
  439. package/lib/types/contracts/index.d.mts +20 -0
  440. package/lib/types/contracts/logging.d.cts +54 -0
  441. package/lib/types/contracts/logging.d.mts +54 -0
  442. package/lib/types/contracts/overrides.d.cts +1 -0
  443. package/lib/types/contracts/overrides.d.mts +1 -0
  444. package/lib/types/contracts/types.d.cts +38 -0
  445. package/lib/types/contracts/types.d.mts +38 -0
  446. package/lib/types/contracts/uuid.d.cts +2 -0
  447. package/lib/types/contracts/uuid.d.mts +2 -0
  448. package/lib/types/index.d.cts +8 -0
  449. package/lib/types/index.d.mts +8 -0
  450. package/lib/types/shared/ClientSerializer.d.cts +52 -0
  451. package/lib/types/shared/ClientSerializer.d.mts +52 -0
  452. package/lib/types/shared/DeterministicSerializer.d.cts +47 -0
  453. package/lib/types/shared/DeterministicSerializer.d.mts +47 -0
  454. package/lib/types/shared/SimpleDeterministicSerializer.d.cts +7 -0
  455. package/lib/types/shared/SimpleDeterministicSerializer.d.mts +7 -0
  456. package/lib/types/shared/constants.d.cts +35 -0
  457. package/lib/types/shared/constants.d.mts +35 -0
  458. package/lib/types/shared/decorators.d.cts +81 -0
  459. package/lib/types/shared/decorators.d.mts +81 -0
  460. package/lib/types/shared/erc20/erc20-constants.d.cts +25 -0
  461. package/lib/types/shared/erc20/erc20-constants.d.mts +25 -0
  462. package/lib/types/shared/erc20/index.d.cts +1 -0
  463. package/lib/types/shared/erc20/index.d.mts +1 -0
  464. package/lib/types/shared/errors.d.cts +140 -0
  465. package/lib/types/shared/errors.d.mts +140 -0
  466. package/lib/types/shared/events.d.cts +37 -0
  467. package/lib/types/shared/events.d.mts +37 -0
  468. package/lib/types/shared/fabric-types.d.cts +32 -0
  469. package/lib/types/shared/fabric-types.d.mts +32 -0
  470. package/lib/types/shared/index.d.cts +21 -0
  471. package/lib/types/shared/index.d.mts +21 -0
  472. package/lib/types/shared/interfaces/Checkable.d.cts +23 -0
  473. package/lib/types/shared/interfaces/Checkable.d.mts +23 -0
  474. package/lib/types/shared/interfaces/index.d.cts +1 -0
  475. package/lib/types/shared/interfaces/index.d.mts +1 -0
  476. package/lib/types/shared/math.d.cts +34 -0
  477. package/lib/types/shared/math.d.mts +34 -0
  478. package/lib/types/shared/model/FabricBaseModel.d.cts +7 -0
  479. package/lib/types/shared/model/FabricBaseModel.d.mts +7 -0
  480. package/lib/types/shared/model/FabricIdentifiedBaseModel.d.cts +7 -0
  481. package/lib/types/shared/model/FabricIdentifiedBaseModel.d.mts +7 -0
  482. package/lib/types/shared/model/Identity.d.cts +42 -0
  483. package/lib/types/shared/model/Identity.d.mts +42 -0
  484. package/lib/types/shared/model/IdentityCredentials.d.cts +41 -0
  485. package/lib/types/shared/model/IdentityCredentials.d.mts +41 -0
  486. package/lib/types/shared/model/index.d.cts +4 -0
  487. package/lib/types/shared/model/index.d.mts +4 -0
  488. package/lib/types/shared/overrides/Model.d.cts +22 -0
  489. package/lib/types/shared/overrides/Model.d.mts +22 -0
  490. package/lib/types/shared/overrides/index.d.cts +2 -0
  491. package/lib/types/shared/overrides/index.d.mts +2 -0
  492. package/lib/types/shared/overrides/overrides.d.cts +1 -0
  493. package/lib/types/shared/overrides/overrides.d.mts +1 -0
  494. package/lib/types/shared/types.d.cts +125 -0
  495. package/lib/types/shared/types.d.mts +125 -0
  496. package/lib/types/version.d.cts +2 -0
  497. package/lib/types/version.d.mts +2 -0
  498. package/lib/types/version.d.ts +1 -1
  499. package/package.json +43 -23
  500. package/lib/cjs/bin/cli.js.map +0 -1
  501. package/lib/cjs/cli-module.js.map +0 -1
  502. package/lib/cjs/cli-utils.js.map +0 -1
  503. package/lib/cjs/client/FabricClientAdapter.js.map +0 -1
  504. package/lib/cjs/client/FabricClientDispatch.js.map +0 -1
  505. package/lib/cjs/client/FabricClientPaginator.js.map +0 -1
  506. package/lib/cjs/client/FabricClientRepository.js.map +0 -1
  507. package/lib/cjs/client/FabricClientStatement.js.map +0 -1
  508. package/lib/cjs/client/collections/generation.js.map +0 -1
  509. package/lib/cjs/client/collections/index.js.map +0 -1
  510. package/lib/cjs/client/constants.js.map +0 -1
  511. package/lib/cjs/client/crypto.js.map +0 -1
  512. package/lib/cjs/client/erc20/FabricERC20ClientRepository.js.map +0 -1
  513. package/lib/cjs/client/erc20/index.js.map +0 -1
  514. package/lib/cjs/client/fabric-fs.js.map +0 -1
  515. package/lib/cjs/client/fabric-hsm.js.map +0 -1
  516. package/lib/cjs/client/ids/id-extraction.js.map +0 -1
  517. package/lib/cjs/client/ids/index.js.map +0 -1
  518. package/lib/cjs/client/index.js.map +0 -1
  519. package/lib/cjs/client/indexes/generation.js.map +0 -1
  520. package/lib/cjs/client/indexes/index.js.map +0 -1
  521. package/lib/cjs/client/logging.js.map +0 -1
  522. package/lib/cjs/client/services/FabricEnrollmentService.js.map +0 -1
  523. package/lib/cjs/client/services/FabricIdentityService.js.map +0 -1
  524. package/lib/cjs/client/services/RegistrationRequestBuilder.js.map +0 -1
  525. package/lib/cjs/client/services/constants.js.map +0 -1
  526. package/lib/cjs/client/services/index.js.map +0 -1
  527. package/lib/cjs/client/types.js.map +0 -1
  528. package/lib/cjs/client/utils.js.map +0 -1
  529. package/lib/cjs/contract/Address.js.map +0 -1
  530. package/lib/cjs/contract/AddressContract.js.map +0 -1
  531. package/lib/cjs/contract/AuditContract.js.map +0 -1
  532. package/lib/cjs/contract/BatchContract.js.map +0 -1
  533. package/lib/cjs/contract/MarketContract.js.map +0 -1
  534. package/lib/cjs/contract/OtherAuditContract.js.map +0 -1
  535. package/lib/cjs/contract/OtherBatchContract.js.map +0 -1
  536. package/lib/cjs/contract/OtherMarketContract.js.map +0 -1
  537. package/lib/cjs/contract/OtherProductContract.js.map +0 -1
  538. package/lib/cjs/contract/OtherProductImageContract.js.map +0 -1
  539. package/lib/cjs/contract/OtherProductSharedContract.js.map +0 -1
  540. package/lib/cjs/contract/OtherProductStrengthContract.js.map +0 -1
  541. package/lib/cjs/contract/Product.js.map +0 -1
  542. package/lib/cjs/contract/ProductContract.js.map +0 -1
  543. package/lib/cjs/contract/ProductStrengthContract.js.map +0 -1
  544. package/lib/cjs/contract/SegregatedPrivateDocumentContract.js.map +0 -1
  545. package/lib/cjs/contract/SegregatedSharedDocumentContract.js.map +0 -1
  546. package/lib/cjs/contract/User.js.map +0 -1
  547. package/lib/cjs/contract/UserContract.js.map +0 -1
  548. package/lib/cjs/contract/index.js.map +0 -1
  549. package/lib/cjs/contract/logging-context.js.map +0 -1
  550. package/lib/cjs/contract/models/Audit.js.map +0 -1
  551. package/lib/cjs/contract/models/BaseIdentifiedModel.js.map +0 -1
  552. package/lib/cjs/contract/models/BaseModel.js.map +0 -1
  553. package/lib/cjs/contract/models/Batch.js.map +0 -1
  554. package/lib/cjs/contract/models/GtinOwner.js.map +0 -1
  555. package/lib/cjs/contract/models/History.js.map +0 -1
  556. package/lib/cjs/contract/models/Leaflet.js.map +0 -1
  557. package/lib/cjs/contract/models/LeafletFile.js.map +0 -1
  558. package/lib/cjs/contract/models/Market.js.map +0 -1
  559. package/lib/cjs/contract/models/OtherAudit.js.map +0 -1
  560. package/lib/cjs/contract/models/OtherBatchShared.js.map +0 -1
  561. package/lib/cjs/contract/models/OtherLeaflet.js.map +0 -1
  562. package/lib/cjs/contract/models/OtherLeafletFile.js.map +0 -1
  563. package/lib/cjs/contract/models/OtherMarket.js.map +0 -1
  564. package/lib/cjs/contract/models/OtherProduct.js.map +0 -1
  565. package/lib/cjs/contract/models/OtherProductImage.js.map +0 -1
  566. package/lib/cjs/contract/models/OtherProductShared.js.map +0 -1
  567. package/lib/cjs/contract/models/OtherProductStrength.js.map +0 -1
  568. package/lib/cjs/contract/models/Product.js.map +0 -1
  569. package/lib/cjs/contract/models/ProductStrength.js.map +0 -1
  570. package/lib/cjs/contract/models/SegregatedDocument.js.map +0 -1
  571. package/lib/cjs/contract/models/constants.js.map +0 -1
  572. package/lib/cjs/contract/models/decorators-private.js.map +0 -1
  573. package/lib/cjs/contract/models/decorators.js.map +0 -1
  574. package/lib/cjs/contract/models/gtin.js.map +0 -1
  575. package/lib/cjs/contract/models/history-dec.js.map +0 -1
  576. package/lib/cjs/contracts/ContractAdapter.js.map +0 -1
  577. package/lib/cjs/contracts/ContractContext.js.map +0 -1
  578. package/lib/cjs/contracts/FabricContractDispatch.js.map +0 -1
  579. package/lib/cjs/contracts/FabricContractPaginator.js.map +0 -1
  580. package/lib/cjs/contracts/FabricContractRepository.js.map +0 -1
  581. package/lib/cjs/contracts/FabricContractRepositoryObservableHandler.js.map +0 -1
  582. package/lib/cjs/contracts/FabricContractSequence.js.map +0 -1
  583. package/lib/cjs/contracts/FabricContractStatement.js.map +0 -1
  584. package/lib/cjs/contracts/MigrationContract.js.map +0 -1
  585. package/lib/cjs/contracts/PrivateSequence.js.map +0 -1
  586. package/lib/cjs/contracts/auth/decorators.js.map +0 -1
  587. package/lib/cjs/contracts/auth/index.js.map +0 -1
  588. package/lib/cjs/contracts/crud/crud-contract.js.map +0 -1
  589. package/lib/cjs/contracts/crud/index.js.map +0 -1
  590. package/lib/cjs/contracts/crud/serialized-crud-contract.js.map +0 -1
  591. package/lib/cjs/contracts/erc20/erc20contract.js.map +0 -1
  592. package/lib/cjs/contracts/erc20/index.js.map +0 -1
  593. package/lib/cjs/contracts/erc20/models.js.map +0 -1
  594. package/lib/cjs/contracts/index.js.map +0 -1
  595. package/lib/cjs/contracts/logging.js.map +0 -1
  596. package/lib/cjs/contracts/overrides.js.map +0 -1
  597. package/lib/cjs/contracts/types.js.map +0 -1
  598. package/lib/cjs/contracts/uuid.js.map +0 -1
  599. package/lib/cjs/index.js.map +0 -1
  600. package/lib/cjs/shared/ClientSerializer.js.map +0 -1
  601. package/lib/cjs/shared/DeterministicSerializer.js.map +0 -1
  602. package/lib/cjs/shared/SimpleDeterministicSerializer.js.map +0 -1
  603. package/lib/cjs/shared/constants.js.map +0 -1
  604. package/lib/cjs/shared/decorators.js.map +0 -1
  605. package/lib/cjs/shared/erc20/erc20-constants.js.map +0 -1
  606. package/lib/cjs/shared/erc20/index.js.map +0 -1
  607. package/lib/cjs/shared/errors.js.map +0 -1
  608. package/lib/cjs/shared/events.js.map +0 -1
  609. package/lib/cjs/shared/fabric-types.js.map +0 -1
  610. package/lib/cjs/shared/index.js.map +0 -1
  611. package/lib/cjs/shared/interfaces/Checkable.js.map +0 -1
  612. package/lib/cjs/shared/interfaces/index.js.map +0 -1
  613. package/lib/cjs/shared/math.js.map +0 -1
  614. package/lib/cjs/shared/model/FabricBaseModel.js.map +0 -1
  615. package/lib/cjs/shared/model/FabricIdentifiedBaseModel.js.map +0 -1
  616. package/lib/cjs/shared/model/Identity.js.map +0 -1
  617. package/lib/cjs/shared/model/IdentityCredentials.js.map +0 -1
  618. package/lib/cjs/shared/model/index.js.map +0 -1
  619. package/lib/cjs/shared/overrides/Model.js.map +0 -1
  620. package/lib/cjs/shared/overrides/index.js.map +0 -1
  621. package/lib/cjs/shared/overrides/overrides.js.map +0 -1
  622. package/lib/cjs/shared/types.js.map +0 -1
  623. package/lib/cjs/version.js.map +0 -1
@@ -0,0 +1,12 @@
1
+ import { MaybeContextualArg, Paginator, PreparedStatement, SerializedPage } from "@decaf-ts/core";
2
+ import { Model } from "@decaf-ts/decorator-validation";
3
+ import { Constructor } from "@decaf-ts/decoration";
4
+ import { FabricClientAdapter } from "./FabricClientAdapter.cjs";
5
+ import { MangoQuery } from "@decaf-ts/for-couchdb";
6
+ export declare class FabricClientPaginator<M extends Model> extends Paginator<M, M[], MangoQuery> {
7
+ bookmark?: string;
8
+ constructor(adapter: FabricClientAdapter, query: MangoQuery | PreparedStatement<any>, size: number, clazz: Constructor<M>);
9
+ protected prepare(rawStatement: MangoQuery): MangoQuery;
10
+ page(page?: number, ...args: MaybeContextualArg<any>): Promise<M[]>;
11
+ static isSerializedPage(obj: SerializedPage<any> | any): any;
12
+ }
@@ -0,0 +1,12 @@
1
+ import { MaybeContextualArg, Paginator, PreparedStatement, SerializedPage } from "@decaf-ts/core";
2
+ import { Model } from "@decaf-ts/decorator-validation";
3
+ import { Constructor } from "@decaf-ts/decoration";
4
+ import { FabricClientAdapter } from "./FabricClientAdapter.js";
5
+ import { MangoQuery } from "@decaf-ts/for-couchdb";
6
+ export declare class FabricClientPaginator<M extends Model> extends Paginator<M, M[], MangoQuery> {
7
+ bookmark?: string;
8
+ constructor(adapter: FabricClientAdapter, query: MangoQuery | PreparedStatement<any>, size: number, clazz: Constructor<M>);
9
+ protected prepare(rawStatement: MangoQuery): MangoQuery;
10
+ page(page?: number, ...args: MaybeContextualArg<any>): Promise<M[]>;
11
+ static isSerializedPage(obj: SerializedPage<any> | any): any;
12
+ }
@@ -0,0 +1,71 @@
1
+ import type { MaybeContextualArg } from "@decaf-ts/core";
2
+ import { ContextOf, DirectionLimitOffset, FlagsOf, ObserverHandler, OrderDirection, Repository, SerializedPage } from "@decaf-ts/core";
3
+ import { Model } from "@decaf-ts/decorator-validation";
4
+ import { Constructor } from "@decaf-ts/decoration";
5
+ import { type FabricClientAdapter } from "./FabricClientAdapter.cjs";
6
+ import { PrimaryKeyType } from "@decaf-ts/db-decorators";
7
+ /**
8
+ * @description Repository implementation for Fabric client operations
9
+ * @summary Extends the generic Repository to prepare context and arguments for CRUD operations executed via a Fabric client Adapter, wiring RepositoryFlags and Fabric-specific overrides.
10
+ * @template M extends Model - The model type handled by this repository
11
+ * @param {Adapter<any, MangoQuery, FabricFlags, Context<FabricFlags>>} [adapter] - Optional adapter instance used to execute operations
12
+ * @param {Constructor<M>} [clazz] - Optional model constructor used by the repository
13
+ * @return {void}
14
+ * @class FabricClientRepository
15
+ * @example
16
+ * import { Repository } from "@decaf-ts/core";
17
+ * import { FabricClientRepository } from "@decaf-ts/for-fabric";
18
+ *
19
+ * class User extends Model { id!: string; name!: string; }
20
+ * const repo = new FabricClientRepository<User>();
21
+ * const created = await repo.create(new User({ id: "1", name: "Alice" }));
22
+ * const loaded = await repo.read("1");
23
+ *
24
+ * @mermaid
25
+ * sequenceDiagram
26
+ * participant App
27
+ * participant Repo as FabricClientRepository
28
+ * participant Adapter
29
+ * App->>Repo: create(model)
30
+ * Repo->>Repo: createPrefix(model, ...args)
31
+ * Repo->>Adapter: create(table, id, model, flags)
32
+ * Adapter-->>Repo: result
33
+ * Repo-->>App: model
34
+ */
35
+ export declare class FabricClientRepository<M extends Model, A extends FabricClientAdapter = FabricClientAdapter> extends Repository<M, A> {
36
+ protected _overrides: Partial<FlagsOf<ContextOf<A>>> & {
37
+ ignoreValidation: boolean;
38
+ ignoreHandlers: boolean;
39
+ allowRawStatements: boolean;
40
+ forcePrepareSimpleQueries: boolean;
41
+ forcePrepareComplexQueries: boolean;
42
+ allowGenerationOverride: boolean;
43
+ rebuildWithTransient: boolean;
44
+ };
45
+ constructor(adapter?: A, clazz?: Constructor<M>, force?: boolean);
46
+ override(flags: Partial<FlagsOf<ContextOf<A>>>): this;
47
+ protected ObserverHandler(): ObserverHandler;
48
+ paginateBy(key: keyof M, order: OrderDirection, ref?: Omit<DirectionLimitOffset, "direction">, ...args: MaybeContextualArg<ContextOf<A>>): Promise<SerializedPage<M>>;
49
+ listBy(key: keyof M, order: OrderDirection, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
50
+ findBy(key: keyof M, value: any, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
51
+ findOneBy(key: keyof M, value: any, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M>;
52
+ find(value: string, order?: OrderDirection, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
53
+ page(value: string, direction?: OrderDirection, ref?: Omit<DirectionLimitOffset, "direction">, ...args: MaybeContextualArg<ContextOf<A>>): Promise<SerializedPage<M>>;
54
+ statement(name: string, ...args: MaybeContextualArg<ContextOf<A>>): Promise<any>;
55
+ private applyAfterRead;
56
+ countOf(key?: keyof M, ...args: MaybeContextualArg<ContextOf<A>>): Promise<number>;
57
+ maxOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[K]>;
58
+ minOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[K]>;
59
+ avgOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<number>;
60
+ sumOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<number>;
61
+ distinctOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[K][]>;
62
+ groupOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<Record<string, M[]>>;
63
+ healthcheck(...args: MaybeContextualArg<ContextOf<A>>): Promise<Record<string, any>>;
64
+ create(model: M, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M>;
65
+ update(model: M, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M>;
66
+ protected createAllPrefix(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<[M[], ...any[], ContextOf<A>]>;
67
+ createAll(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
68
+ readAll(keys: PrimaryKeyType[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
69
+ updateAll(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
70
+ private ensureLegacyMirrorFlag;
71
+ }
@@ -0,0 +1,71 @@
1
+ import type { MaybeContextualArg } from "@decaf-ts/core";
2
+ import { ContextOf, DirectionLimitOffset, FlagsOf, ObserverHandler, OrderDirection, Repository, SerializedPage } from "@decaf-ts/core";
3
+ import { Model } from "@decaf-ts/decorator-validation";
4
+ import { Constructor } from "@decaf-ts/decoration";
5
+ import { type FabricClientAdapter } from "./FabricClientAdapter.js";
6
+ import { PrimaryKeyType } from "@decaf-ts/db-decorators";
7
+ /**
8
+ * @description Repository implementation for Fabric client operations
9
+ * @summary Extends the generic Repository to prepare context and arguments for CRUD operations executed via a Fabric client Adapter, wiring RepositoryFlags and Fabric-specific overrides.
10
+ * @template M extends Model - The model type handled by this repository
11
+ * @param {Adapter<any, MangoQuery, FabricFlags, Context<FabricFlags>>} [adapter] - Optional adapter instance used to execute operations
12
+ * @param {Constructor<M>} [clazz] - Optional model constructor used by the repository
13
+ * @return {void}
14
+ * @class FabricClientRepository
15
+ * @example
16
+ * import { Repository } from "@decaf-ts/core";
17
+ * import { FabricClientRepository } from "@decaf-ts/for-fabric";
18
+ *
19
+ * class User extends Model { id!: string; name!: string; }
20
+ * const repo = new FabricClientRepository<User>();
21
+ * const created = await repo.create(new User({ id: "1", name: "Alice" }));
22
+ * const loaded = await repo.read("1");
23
+ *
24
+ * @mermaid
25
+ * sequenceDiagram
26
+ * participant App
27
+ * participant Repo as FabricClientRepository
28
+ * participant Adapter
29
+ * App->>Repo: create(model)
30
+ * Repo->>Repo: createPrefix(model, ...args)
31
+ * Repo->>Adapter: create(table, id, model, flags)
32
+ * Adapter-->>Repo: result
33
+ * Repo-->>App: model
34
+ */
35
+ export declare class FabricClientRepository<M extends Model, A extends FabricClientAdapter = FabricClientAdapter> extends Repository<M, A> {
36
+ protected _overrides: Partial<FlagsOf<ContextOf<A>>> & {
37
+ ignoreValidation: boolean;
38
+ ignoreHandlers: boolean;
39
+ allowRawStatements: boolean;
40
+ forcePrepareSimpleQueries: boolean;
41
+ forcePrepareComplexQueries: boolean;
42
+ allowGenerationOverride: boolean;
43
+ rebuildWithTransient: boolean;
44
+ };
45
+ constructor(adapter?: A, clazz?: Constructor<M>, force?: boolean);
46
+ override(flags: Partial<FlagsOf<ContextOf<A>>>): this;
47
+ protected ObserverHandler(): ObserverHandler;
48
+ paginateBy(key: keyof M, order: OrderDirection, ref?: Omit<DirectionLimitOffset, "direction">, ...args: MaybeContextualArg<ContextOf<A>>): Promise<SerializedPage<M>>;
49
+ listBy(key: keyof M, order: OrderDirection, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
50
+ findBy(key: keyof M, value: any, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
51
+ findOneBy(key: keyof M, value: any, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M>;
52
+ find(value: string, order?: OrderDirection, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
53
+ page(value: string, direction?: OrderDirection, ref?: Omit<DirectionLimitOffset, "direction">, ...args: MaybeContextualArg<ContextOf<A>>): Promise<SerializedPage<M>>;
54
+ statement(name: string, ...args: MaybeContextualArg<ContextOf<A>>): Promise<any>;
55
+ private applyAfterRead;
56
+ countOf(key?: keyof M, ...args: MaybeContextualArg<ContextOf<A>>): Promise<number>;
57
+ maxOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[K]>;
58
+ minOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[K]>;
59
+ avgOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<number>;
60
+ sumOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<number>;
61
+ distinctOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[K][]>;
62
+ groupOf<K extends keyof M>(key: K, ...args: MaybeContextualArg<ContextOf<A>>): Promise<Record<string, M[]>>;
63
+ healthcheck(...args: MaybeContextualArg<ContextOf<A>>): Promise<Record<string, any>>;
64
+ create(model: M, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M>;
65
+ update(model: M, ...args: MaybeContextualArg<ContextOf<A>>): Promise<M>;
66
+ protected createAllPrefix(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<[M[], ...any[], ContextOf<A>]>;
67
+ createAll(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
68
+ readAll(keys: PrimaryKeyType[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
69
+ updateAll(models: M[], ...args: MaybeContextualArg<ContextOf<A>>): Promise<M[]>;
70
+ private ensureLegacyMirrorFlag;
71
+ }
@@ -0,0 +1,64 @@
1
+ import { AdapterFlags, Condition, Context, MaybeContextualArg, PreparedStatement, Statement, StatementExecutor } from "@decaf-ts/core";
2
+ import { Model } from "@decaf-ts/decorator-validation";
3
+ import { FabricClientAdapter } from "./FabricClientAdapter.cjs";
4
+ import { MangoQuery } from "@decaf-ts/for-couchdb";
5
+ import { FabricClientFlags } from "./types.cjs";
6
+ export declare class FabricClientStatement<M extends Model, R> extends Statement<M, FabricClientAdapter, R, MangoQuery> {
7
+ constructor(adapter: FabricClientAdapter, overrides?: Partial<AdapterFlags>);
8
+ protected squash(ctx: Context<FabricClientFlags>): PreparedStatement<any> | undefined;
9
+ protected executePrepared(...argz: MaybeContextualArg<Context<FabricClientFlags>>): Promise<R>;
10
+ prepare(ctx?: Context<FabricClientFlags>): Promise<StatementExecutor<M, R>>;
11
+ /**
12
+ * @description Processes a record from CouchDB/Fabric
13
+ * @summary Extracts the ID from a CouchDB document and reverts it to a model instance
14
+ */
15
+ protected processRecord(record: any, ctx: Context<FabricClientFlags>): M;
16
+ /**
17
+ * @description Executes a raw Mango query
18
+ * @summary Sends a raw Mango query to Fabric and processes the results
19
+ */
20
+ raw<R>(rawInput: MangoQuery, ...args: any[]): Promise<R>;
21
+ /**
22
+ * @description Builds a CouchDB Mango query from the statement
23
+ * @summary Converts the statement's conditions, selectors, and options into a CouchDB Mango query
24
+ */
25
+ protected build(): MangoQuery;
26
+ /**
27
+ * @description Parses a condition into a CouchDB Mango query selector
28
+ * @summary Converts a Condition object into a CouchDB Mango query selector structure
29
+ */
30
+ protected parseCondition(condition: Condition<M>): MangoQuery;
31
+ /**
32
+ * @description Builds an aggregate query if aggregation is requested
33
+ * @summary Checks for aggregate operations and returns a special MangoQuery for them
34
+ */
35
+ private buildAggregateQuery;
36
+ /**
37
+ * @description Creates an aggregate descriptor for a view-based aggregation
38
+ */
39
+ private createAggregateDescriptor;
40
+ /**
41
+ * @description Creates the special aggregate MangoQuery marker
42
+ */
43
+ private createAggregateQuery;
44
+ /**
45
+ * @description Gets the adapter cast to FabricClientAdapter for view access
46
+ */
47
+ private getFabricAdapter;
48
+ /**
49
+ * @description Executes an aggregate query via adapter's view method
50
+ */
51
+ private executeAggregate;
52
+ /**
53
+ * @description Handles average calculation from sum and count views
54
+ */
55
+ private handleAverage;
56
+ /**
57
+ * @description Processes the view response based on aggregate kind
58
+ */
59
+ private processViewResponse;
60
+ /**
61
+ * @description Type guard to check if info is a view-based aggregate
62
+ */
63
+ private isViewAggregate;
64
+ }
@@ -0,0 +1,64 @@
1
+ import { AdapterFlags, Condition, Context, MaybeContextualArg, PreparedStatement, Statement, StatementExecutor } from "@decaf-ts/core";
2
+ import { Model } from "@decaf-ts/decorator-validation";
3
+ import { FabricClientAdapter } from "./FabricClientAdapter.js";
4
+ import { MangoQuery } from "@decaf-ts/for-couchdb";
5
+ import { FabricClientFlags } from "./types.js";
6
+ export declare class FabricClientStatement<M extends Model, R> extends Statement<M, FabricClientAdapter, R, MangoQuery> {
7
+ constructor(adapter: FabricClientAdapter, overrides?: Partial<AdapterFlags>);
8
+ protected squash(ctx: Context<FabricClientFlags>): PreparedStatement<any> | undefined;
9
+ protected executePrepared(...argz: MaybeContextualArg<Context<FabricClientFlags>>): Promise<R>;
10
+ prepare(ctx?: Context<FabricClientFlags>): Promise<StatementExecutor<M, R>>;
11
+ /**
12
+ * @description Processes a record from CouchDB/Fabric
13
+ * @summary Extracts the ID from a CouchDB document and reverts it to a model instance
14
+ */
15
+ protected processRecord(record: any, ctx: Context<FabricClientFlags>): M;
16
+ /**
17
+ * @description Executes a raw Mango query
18
+ * @summary Sends a raw Mango query to Fabric and processes the results
19
+ */
20
+ raw<R>(rawInput: MangoQuery, ...args: any[]): Promise<R>;
21
+ /**
22
+ * @description Builds a CouchDB Mango query from the statement
23
+ * @summary Converts the statement's conditions, selectors, and options into a CouchDB Mango query
24
+ */
25
+ protected build(): MangoQuery;
26
+ /**
27
+ * @description Parses a condition into a CouchDB Mango query selector
28
+ * @summary Converts a Condition object into a CouchDB Mango query selector structure
29
+ */
30
+ protected parseCondition(condition: Condition<M>): MangoQuery;
31
+ /**
32
+ * @description Builds an aggregate query if aggregation is requested
33
+ * @summary Checks for aggregate operations and returns a special MangoQuery for them
34
+ */
35
+ private buildAggregateQuery;
36
+ /**
37
+ * @description Creates an aggregate descriptor for a view-based aggregation
38
+ */
39
+ private createAggregateDescriptor;
40
+ /**
41
+ * @description Creates the special aggregate MangoQuery marker
42
+ */
43
+ private createAggregateQuery;
44
+ /**
45
+ * @description Gets the adapter cast to FabricClientAdapter for view access
46
+ */
47
+ private getFabricAdapter;
48
+ /**
49
+ * @description Executes an aggregate query via adapter's view method
50
+ */
51
+ private executeAggregate;
52
+ /**
53
+ * @description Handles average calculation from sum and count views
54
+ */
55
+ private handleAverage;
56
+ /**
57
+ * @description Processes the view response based on aggregate kind
58
+ */
59
+ private processViewResponse;
60
+ /**
61
+ * @description Type guard to check if info is a view-based aggregate
62
+ */
63
+ private isViewAggregate;
64
+ }
@@ -0,0 +1,46 @@
1
+ import { Constructor } from "@decaf-ts/decoration";
2
+ import { CouchDBDesignDoc } from "@decaf-ts/for-couchdb";
3
+ import { Model } from "@decaf-ts/decorator-validation";
4
+ export type FabricPolicyIdentity = {
5
+ role: {
6
+ name: string;
7
+ mspId: string;
8
+ };
9
+ };
10
+ export type FabricCollection = {
11
+ name: string;
12
+ policy: string;
13
+ requiredPeerCount: number;
14
+ maxPeerCount: number;
15
+ blockToLive: number;
16
+ memberOnlyRead: boolean;
17
+ memberOnlyWrite: boolean;
18
+ endorsementPolicy: {
19
+ identities: FabricPolicyIdentity[];
20
+ rule: string;
21
+ };
22
+ };
23
+ export type PrivateCollection = {
24
+ name: string;
25
+ policy: string;
26
+ requiredPeerCount: number;
27
+ maxPeerCount: number;
28
+ blockToLive: number;
29
+ memberOnlyRead: boolean;
30
+ memberOnlyWrite: boolean;
31
+ endorsementPolicy?: {
32
+ signaturePolicy: string;
33
+ };
34
+ };
35
+ export declare function collectionFor(collectionName: string, policy: string, requiredPeerCount: number, maxPeerCount: number, blockToLive: number, memberOnlyRead: boolean, memberOnlyWrite: boolean): PrivateCollection;
36
+ export declare function privateCollectionFor(mspId: string, collectionName?: string, requiredPeerCount?: number, maxPeerCount?: number, blockToLive?: number, memberOnlyRead?: boolean, memberOnlyWrite?: boolean): PrivateCollection;
37
+ export declare function sharedCollectionFor(mspIds: string[], collectionName: string, requiredPeerCount?: number, maxPeerCount?: number, blockToLive?: number, memberOnlyRead?: boolean, memberOnlyWrite?: boolean): PrivateCollection;
38
+ export declare function extractCollections<M extends Model>(m: Constructor<M>, mspIds: string[], overrides?: {
39
+ privateCols?: Partial<PrivateCollection>;
40
+ sharedCols?: Partial<PrivateCollection>;
41
+ }, mirror?: boolean): Promise<{
42
+ privates: PrivateCollection[];
43
+ shared: PrivateCollection[];
44
+ }>;
45
+ export declare function writeCollections(cols: PrivateCollection[], p?: string, fileName?: string): void;
46
+ export declare function writeCollectionDesignDocs(docs: CouchDBDesignDoc[], p?: string, collection?: string): void;
@@ -0,0 +1,46 @@
1
+ import { Constructor } from "@decaf-ts/decoration";
2
+ import { CouchDBDesignDoc } from "@decaf-ts/for-couchdb";
3
+ import { Model } from "@decaf-ts/decorator-validation";
4
+ export type FabricPolicyIdentity = {
5
+ role: {
6
+ name: string;
7
+ mspId: string;
8
+ };
9
+ };
10
+ export type FabricCollection = {
11
+ name: string;
12
+ policy: string;
13
+ requiredPeerCount: number;
14
+ maxPeerCount: number;
15
+ blockToLive: number;
16
+ memberOnlyRead: boolean;
17
+ memberOnlyWrite: boolean;
18
+ endorsementPolicy: {
19
+ identities: FabricPolicyIdentity[];
20
+ rule: string;
21
+ };
22
+ };
23
+ export type PrivateCollection = {
24
+ name: string;
25
+ policy: string;
26
+ requiredPeerCount: number;
27
+ maxPeerCount: number;
28
+ blockToLive: number;
29
+ memberOnlyRead: boolean;
30
+ memberOnlyWrite: boolean;
31
+ endorsementPolicy?: {
32
+ signaturePolicy: string;
33
+ };
34
+ };
35
+ export declare function collectionFor(collectionName: string, policy: string, requiredPeerCount: number, maxPeerCount: number, blockToLive: number, memberOnlyRead: boolean, memberOnlyWrite: boolean): PrivateCollection;
36
+ export declare function privateCollectionFor(mspId: string, collectionName?: string, requiredPeerCount?: number, maxPeerCount?: number, blockToLive?: number, memberOnlyRead?: boolean, memberOnlyWrite?: boolean): PrivateCollection;
37
+ export declare function sharedCollectionFor(mspIds: string[], collectionName: string, requiredPeerCount?: number, maxPeerCount?: number, blockToLive?: number, memberOnlyRead?: boolean, memberOnlyWrite?: boolean): PrivateCollection;
38
+ export declare function extractCollections<M extends Model>(m: Constructor<M>, mspIds: string[], overrides?: {
39
+ privateCols?: Partial<PrivateCollection>;
40
+ sharedCols?: Partial<PrivateCollection>;
41
+ }, mirror?: boolean): Promise<{
42
+ privates: PrivateCollection[];
43
+ shared: PrivateCollection[];
44
+ }>;
45
+ export declare function writeCollections(cols: PrivateCollection[], p?: string, fileName?: string): void;
46
+ export declare function writeCollectionDesignDocs(docs: CouchDBDesignDoc[], p?: string, collection?: string): void;
@@ -0,0 +1 @@
1
+ export * from "./generation.cjs";
@@ -0,0 +1 @@
1
+ export * from "./generation.js";
@@ -0,0 +1,2 @@
1
+ import { FabricClientFlags } from "./types.cjs";
2
+ export declare const DefaultFabricClientFlags: FabricClientFlags;
@@ -0,0 +1,2 @@
1
+ import { FabricClientFlags } from "./types.js";
2
+ export declare const DefaultFabricClientFlags: FabricClientFlags;
@@ -0,0 +1,107 @@
1
+ import { CryptoKey } from "@peculiar/webcrypto";
2
+ export declare enum BASE_ALPHABET {
3
+ BASE2 = "01",
4
+ BASE8 = "01234567",
5
+ BASE11 = "0123456789a",
6
+ BASE16 = "0123456789abcdef",
7
+ BASE32 = "0123456789ABCDEFGHJKMNPQRSTVWXYZ",
8
+ BASE32_Z = "ybndrfg8ejkmcpqxot1uwisza345h769",
9
+ BASE36 = "0123456789abcdefghijklmnopqrstuvwxyz",
10
+ BASE58 = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz",
11
+ BASE62 = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",
12
+ BASE64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",
13
+ BASE67 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_.!~"
14
+ }
15
+ export type keyObject = {
16
+ iv: ArrayBuffer;
17
+ key: CryptoKey;
18
+ };
19
+ export declare enum CRYPTO {
20
+ HASH = "SHA-256",
21
+ ITERATIONS = 1000,
22
+ KEYLENGTH = 48,
23
+ DERIVED_IV_LENGTH = 16,
24
+ DERIVED_KEY_LENGTH = 32,// Because SHA-256 used has a native size of 32 bytes
25
+ ALGORYTHM = "AES-GCM",
26
+ KEY_ALGORYTHM = "PBKDF2"
27
+ }
28
+ export declare class BaseEncoder {
29
+ private alphabet;
30
+ private readonly baseMap;
31
+ private readonly base;
32
+ private readonly leader;
33
+ private readonly factor;
34
+ private readonly iFactor;
35
+ constructor(alphabet: BASE_ALPHABET);
36
+ encode(source: Uint8Array | DataView | any[] | string): string;
37
+ private decodeUnsafe;
38
+ decode(source: string): Uint8Array<ArrayBufferLike>;
39
+ }
40
+ export declare class CryptoUtils {
41
+ private static readonly b58encoder;
42
+ private static readonly logger;
43
+ private constructor();
44
+ static fabricIdFromCertificate(certificate: string): string;
45
+ static encode(str: string): string;
46
+ static decode(str: string): string;
47
+ static stringToArrayBuffer(str: string): ArrayBuffer;
48
+ private static extractKey;
49
+ static extractPrivateKey(pem: Buffer | string, usages?: any[]): Promise<import("node:crypto").webcrypto.CryptoKey>;
50
+ static extractPublicKey(pem: Buffer | string, usages?: any[]): Promise<import("node:crypto").webcrypto.CryptoKey>;
51
+ static sign(privateKey: string, data: Buffer): Promise<string>;
52
+ static verify(certificate: string, signature: Buffer | string, data: Buffer | string): Promise<boolean>;
53
+ static encrypt(certificate: string, data: string | Buffer): Promise<string>;
54
+ private static getSubtleCrypto;
55
+ static decrypt(privateKey: string, data: string | Buffer): Promise<any>;
56
+ /**
57
+ * @summary Util function to get a random master key
58
+ *
59
+ * @description If data is not passed, a random ArrayBuffer will be generated
60
+ *
61
+ * @param {ArrayBuffer} data encrytion data
62
+ *
63
+ * @function getMaster
64
+ */
65
+ static getMaster(data?: ArrayBuffer): Promise<keyObject>;
66
+ /**
67
+ * @summary Util function to derive a key from another key
68
+ *
69
+ * @param {string} salt
70
+ * @param {CryptoKey} key Original key
71
+ *
72
+ * @function getDerivationKey
73
+ */
74
+ static getDerivationKey(salt: string, key: CryptoKey): Promise<{
75
+ key: any;
76
+ iv: ArrayBuffer;
77
+ }>;
78
+ /**
79
+ * @summary Util function to get the key and IV from the CrytoKey array
80
+ *
81
+ * @param {ArrayBuffer} derivation
82
+ *
83
+ * @function getKey
84
+ */
85
+ static getKey(derivation: ArrayBuffer): Promise<{
86
+ key: any;
87
+ iv: ArrayBuffer;
88
+ }>;
89
+ /**
90
+ * @summary Util function to decrypt data
91
+ *
92
+ * @param {string} text
93
+ * @param {keyObject} keyObject
94
+ *
95
+ * @function encrypt
96
+ */
97
+ static encryptPin(text: string, keyObject: keyObject): Promise<ArrayBuffer>;
98
+ /**
99
+ * @summary Util function to decrypt data
100
+ *
101
+ * @param {BufferSource} encryptedText
102
+ * @param {keyObject} keyObject
103
+ *
104
+ * @function decrypt
105
+ */
106
+ static decryptPin(encryptedText: ArrayBuffer, keyObject: keyObject): Promise<string>;
107
+ }
@@ -0,0 +1,107 @@
1
+ import { CryptoKey } from "@peculiar/webcrypto";
2
+ export declare enum BASE_ALPHABET {
3
+ BASE2 = "01",
4
+ BASE8 = "01234567",
5
+ BASE11 = "0123456789a",
6
+ BASE16 = "0123456789abcdef",
7
+ BASE32 = "0123456789ABCDEFGHJKMNPQRSTVWXYZ",
8
+ BASE32_Z = "ybndrfg8ejkmcpqxot1uwisza345h769",
9
+ BASE36 = "0123456789abcdefghijklmnopqrstuvwxyz",
10
+ BASE58 = "123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz",
11
+ BASE62 = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ",
12
+ BASE64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",
13
+ BASE67 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_.!~"
14
+ }
15
+ export type keyObject = {
16
+ iv: ArrayBuffer;
17
+ key: CryptoKey;
18
+ };
19
+ export declare enum CRYPTO {
20
+ HASH = "SHA-256",
21
+ ITERATIONS = 1000,
22
+ KEYLENGTH = 48,
23
+ DERIVED_IV_LENGTH = 16,
24
+ DERIVED_KEY_LENGTH = 32,// Because SHA-256 used has a native size of 32 bytes
25
+ ALGORYTHM = "AES-GCM",
26
+ KEY_ALGORYTHM = "PBKDF2"
27
+ }
28
+ export declare class BaseEncoder {
29
+ private alphabet;
30
+ private readonly baseMap;
31
+ private readonly base;
32
+ private readonly leader;
33
+ private readonly factor;
34
+ private readonly iFactor;
35
+ constructor(alphabet: BASE_ALPHABET);
36
+ encode(source: Uint8Array | DataView | any[] | string): string;
37
+ private decodeUnsafe;
38
+ decode(source: string): Uint8Array<ArrayBufferLike>;
39
+ }
40
+ export declare class CryptoUtils {
41
+ private static readonly b58encoder;
42
+ private static readonly logger;
43
+ private constructor();
44
+ static fabricIdFromCertificate(certificate: string): string;
45
+ static encode(str: string): string;
46
+ static decode(str: string): string;
47
+ static stringToArrayBuffer(str: string): ArrayBuffer;
48
+ private static extractKey;
49
+ static extractPrivateKey(pem: Buffer | string, usages?: any[]): Promise<import("node:crypto").webcrypto.CryptoKey>;
50
+ static extractPublicKey(pem: Buffer | string, usages?: any[]): Promise<import("node:crypto").webcrypto.CryptoKey>;
51
+ static sign(privateKey: string, data: Buffer): Promise<string>;
52
+ static verify(certificate: string, signature: Buffer | string, data: Buffer | string): Promise<boolean>;
53
+ static encrypt(certificate: string, data: string | Buffer): Promise<string>;
54
+ private static getSubtleCrypto;
55
+ static decrypt(privateKey: string, data: string | Buffer): Promise<any>;
56
+ /**
57
+ * @summary Util function to get a random master key
58
+ *
59
+ * @description If data is not passed, a random ArrayBuffer will be generated
60
+ *
61
+ * @param {ArrayBuffer} data encrytion data
62
+ *
63
+ * @function getMaster
64
+ */
65
+ static getMaster(data?: ArrayBuffer): Promise<keyObject>;
66
+ /**
67
+ * @summary Util function to derive a key from another key
68
+ *
69
+ * @param {string} salt
70
+ * @param {CryptoKey} key Original key
71
+ *
72
+ * @function getDerivationKey
73
+ */
74
+ static getDerivationKey(salt: string, key: CryptoKey): Promise<{
75
+ key: any;
76
+ iv: ArrayBuffer;
77
+ }>;
78
+ /**
79
+ * @summary Util function to get the key and IV from the CrytoKey array
80
+ *
81
+ * @param {ArrayBuffer} derivation
82
+ *
83
+ * @function getKey
84
+ */
85
+ static getKey(derivation: ArrayBuffer): Promise<{
86
+ key: any;
87
+ iv: ArrayBuffer;
88
+ }>;
89
+ /**
90
+ * @summary Util function to decrypt data
91
+ *
92
+ * @param {string} text
93
+ * @param {keyObject} keyObject
94
+ *
95
+ * @function encrypt
96
+ */
97
+ static encryptPin(text: string, keyObject: keyObject): Promise<ArrayBuffer>;
98
+ /**
99
+ * @summary Util function to decrypt data
100
+ *
101
+ * @param {BufferSource} encryptedText
102
+ * @param {keyObject} keyObject
103
+ *
104
+ * @function decrypt
105
+ */
106
+ static decryptPin(encryptedText: ArrayBuffer, keyObject: keyObject): Promise<string>;
107
+ }