@icure/api 7.1.14 → 8.0.0-RC.1

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 (322) hide show
  1. package/icc-api/api/IccAccesslogApi.d.ts +12 -1
  2. package/icc-api/api/IccAccesslogApi.js +142 -98
  3. package/icc-api/api/IccAccesslogApi.js.map +1 -1
  4. package/icc-api/api/IccBemikronoApi.d.ts +81 -0
  5. package/icc-api/api/IccBemikronoApi.js +163 -0
  6. package/icc-api/api/IccBemikronoApi.js.map +1 -0
  7. package/icc-api/api/IccCalendarItemApi.d.ts +21 -1
  8. package/icc-api/api/IccCalendarItemApi.js +183 -117
  9. package/icc-api/api/IccCalendarItemApi.js.map +1 -1
  10. package/icc-api/api/IccClassificationApi.d.ts +21 -1
  11. package/icc-api/api/IccClassificationApi.js +119 -63
  12. package/icc-api/api/IccClassificationApi.js.map +1 -1
  13. package/icc-api/api/IccContactApi.d.ts +21 -1
  14. package/icc-api/api/IccContactApi.js +385 -294
  15. package/icc-api/api/IccContactApi.js.map +1 -1
  16. package/icc-api/api/IccDocumentApi.d.ts +32 -25
  17. package/icc-api/api/IccDocumentApi.js +264 -212
  18. package/icc-api/api/IccDocumentApi.js.map +1 -1
  19. package/icc-api/api/IccExchangeDataApi.d.ts +19 -0
  20. package/icc-api/api/IccExchangeDataApi.js +85 -0
  21. package/icc-api/api/IccExchangeDataApi.js.map +1 -0
  22. package/icc-api/api/IccExchangeDataMapApi.d.ts +18 -0
  23. package/icc-api/api/IccExchangeDataMapApi.js +65 -0
  24. package/icc-api/api/IccExchangeDataMapApi.js.map +1 -0
  25. package/icc-api/api/IccFormApi.d.ts +21 -1
  26. package/icc-api/api/IccFormApi.js +321 -229
  27. package/icc-api/api/IccFormApi.js.map +1 -1
  28. package/icc-api/api/IccHelementApi.d.ts +21 -1
  29. package/icc-api/api/IccHelementApi.js +207 -137
  30. package/icc-api/api/IccHelementApi.js.map +1 -1
  31. package/icc-api/api/IccInvoiceApi.d.ts +21 -1
  32. package/icc-api/api/IccInvoiceApi.js +404 -298
  33. package/icc-api/api/IccInvoiceApi.js.map +1 -1
  34. package/icc-api/api/IccMaintenanceTaskApi.d.ts +12 -1
  35. package/icc-api/api/IccMaintenanceTaskApi.js +79 -43
  36. package/icc-api/api/IccMaintenanceTaskApi.js.map +1 -1
  37. package/icc-api/api/IccMessageApi.d.ts +12 -1
  38. package/icc-api/api/IccMessageApi.js +257 -191
  39. package/icc-api/api/IccMessageApi.js.map +1 -1
  40. package/icc-api/api/IccPatientApi.d.ts +12 -1
  41. package/icc-api/api/IccPatientApi.js +447 -351
  42. package/icc-api/api/IccPatientApi.js.map +1 -1
  43. package/icc-api/api/IccReceiptApi.d.ts +22 -8
  44. package/icc-api/api/IccReceiptApi.js +121 -64
  45. package/icc-api/api/IccReceiptApi.js.map +1 -1
  46. package/icc-api/api/IccRestApiPath.js +1 -1
  47. package/icc-api/api/IccRestApiPath.js.map +1 -1
  48. package/icc-api/api/IccTimeTableApi.d.ts +12 -1
  49. package/icc-api/api/IccTimeTableApi.js +86 -48
  50. package/icc-api/api/IccTimeTableApi.js.map +1 -1
  51. package/icc-api/index.d.ts +1 -0
  52. package/icc-api/index.js +1 -0
  53. package/icc-api/index.js.map +1 -1
  54. package/icc-api/model/AccessLog.d.ts +4 -0
  55. package/icc-api/model/AccessLog.js +1 -0
  56. package/icc-api/model/AccessLog.js.map +1 -1
  57. package/icc-api/model/Article.d.ts +4 -0
  58. package/icc-api/model/Article.js +1 -0
  59. package/icc-api/model/Article.js.map +1 -1
  60. package/icc-api/model/CalendarItem.d.ts +4 -0
  61. package/icc-api/model/CalendarItem.js +1 -0
  62. package/icc-api/model/CalendarItem.js.map +1 -1
  63. package/icc-api/model/Classification.d.ts +4 -0
  64. package/icc-api/model/Classification.js +1 -0
  65. package/icc-api/model/Classification.js.map +1 -1
  66. package/icc-api/model/ClassificationTemplate.d.ts +2 -0
  67. package/icc-api/model/ClassificationTemplate.js.map +1 -1
  68. package/icc-api/model/Contact.d.ts +4 -0
  69. package/icc-api/model/Contact.js +1 -0
  70. package/icc-api/model/Contact.js.map +1 -1
  71. package/icc-api/model/Device.d.ts +4 -4
  72. package/icc-api/model/Device.js.map +1 -1
  73. package/icc-api/model/Document.d.ts +4 -0
  74. package/icc-api/model/Document.js +1 -0
  75. package/icc-api/model/Document.js.map +1 -1
  76. package/icc-api/model/ExchangeData.d.ts +61 -0
  77. package/icc-api/model/ExchangeData.js +12 -0
  78. package/icc-api/model/ExchangeData.js.map +1 -0
  79. package/icc-api/model/ExchangeDataMap.d.ts +21 -0
  80. package/icc-api/model/ExchangeDataMap.js +10 -0
  81. package/icc-api/model/ExchangeDataMap.js.map +1 -0
  82. package/icc-api/model/ExchangeDataMapCreationBatch.d.ts +13 -0
  83. package/icc-api/model/ExchangeDataMapCreationBatch.js +10 -0
  84. package/icc-api/model/ExchangeDataMapCreationBatch.js.map +1 -0
  85. package/icc-api/model/Form.d.ts +4 -0
  86. package/icc-api/model/Form.js +1 -0
  87. package/icc-api/model/Form.js.map +1 -1
  88. package/icc-api/model/HealthElement.d.ts +4 -0
  89. package/icc-api/model/HealthElement.js +1 -0
  90. package/icc-api/model/HealthElement.js.map +1 -1
  91. package/icc-api/model/HealthcareParty.d.ts +2 -2
  92. package/icc-api/model/HealthcareParty.js.map +1 -1
  93. package/icc-api/model/IcureStub.d.ts +2 -0
  94. package/icc-api/model/IcureStub.js.map +1 -1
  95. package/icc-api/model/Invoice.d.ts +4 -0
  96. package/icc-api/model/Invoice.js +1 -0
  97. package/icc-api/model/Invoice.js.map +1 -1
  98. package/icc-api/model/MaintenanceTask.d.ts +4 -0
  99. package/icc-api/model/MaintenanceTask.js +1 -0
  100. package/icc-api/model/MaintenanceTask.js.map +1 -1
  101. package/icc-api/model/Message.d.ts +4 -0
  102. package/icc-api/model/Message.js +1 -0
  103. package/icc-api/model/Message.js.map +1 -1
  104. package/icc-api/model/PaginatedListExchangeData.d.ts +9 -0
  105. package/icc-api/model/PaginatedListExchangeData.js +10 -0
  106. package/icc-api/model/PaginatedListExchangeData.js.map +1 -0
  107. package/icc-api/model/Patient.d.ts +6 -2
  108. package/icc-api/model/Patient.js +1 -0
  109. package/icc-api/model/Patient.js.map +1 -1
  110. package/icc-api/model/PatientByHcPartyGenderEducationProfession.d.ts +31 -0
  111. package/icc-api/model/PatientByHcPartyGenderEducationProfession.js +32 -0
  112. package/icc-api/model/PatientByHcPartyGenderEducationProfession.js.map +1 -0
  113. package/icc-api/model/Receipt.d.ts +4 -0
  114. package/icc-api/model/Receipt.js +1 -0
  115. package/icc-api/model/Receipt.js.map +1 -1
  116. package/icc-api/model/SecureDelegation.d.ts +52 -0
  117. package/icc-api/model/SecureDelegation.js +16 -0
  118. package/icc-api/model/SecureDelegation.js.map +1 -0
  119. package/icc-api/model/SecurityMetadata.d.ts +33 -0
  120. package/icc-api/model/SecurityMetadata.js +13 -0
  121. package/icc-api/model/SecurityMetadata.js.map +1 -0
  122. package/icc-api/model/Service.d.ts +2 -0
  123. package/icc-api/model/Service.js.map +1 -1
  124. package/icc-api/model/TimeTable.d.ts +4 -0
  125. package/icc-api/model/TimeTable.js +1 -0
  126. package/icc-api/model/TimeTable.js.map +1 -1
  127. package/icc-api/model/models.d.ts +20 -39
  128. package/icc-api/model/models.js +15 -37
  129. package/icc-api/model/models.js.map +1 -1
  130. package/icc-api/model/requests/EntityBulkShareResult.d.ts +28 -0
  131. package/icc-api/model/requests/EntityBulkShareResult.js +16 -0
  132. package/icc-api/model/requests/EntityBulkShareResult.js.map +1 -0
  133. package/icc-api/model/requests/EntityShareOrMetadataUpdateRequest.d.ts +10 -0
  134. package/icc-api/model/requests/EntityShareOrMetadataUpdateRequest.js +17 -0
  135. package/icc-api/model/requests/EntityShareOrMetadataUpdateRequest.js.map +1 -0
  136. package/icc-api/model/requests/EntityShareRequest.d.ts +110 -0
  137. package/icc-api/model/requests/EntityShareRequest.js +63 -0
  138. package/icc-api/model/requests/EntityShareRequest.js.map +1 -0
  139. package/icc-api/model/requests/EntitySharedMetadataUpdateRequest.d.ts +54 -0
  140. package/icc-api/model/requests/EntitySharedMetadataUpdateRequest.js +24 -0
  141. package/icc-api/model/requests/EntitySharedMetadataUpdateRequest.js.map +1 -0
  142. package/icc-api/model/requests/MinimalEntityBulkShareResult.d.ts +23 -0
  143. package/icc-api/model/requests/MinimalEntityBulkShareResult.js +13 -0
  144. package/icc-api/model/requests/MinimalEntityBulkShareResult.js.map +1 -0
  145. package/icc-api/model/requests/RejectedShareOrMetadataUpdateRequest.d.ts +21 -0
  146. package/icc-api/model/requests/RejectedShareOrMetadataUpdateRequest.js +14 -0
  147. package/icc-api/model/requests/RejectedShareOrMetadataUpdateRequest.js.map +1 -0
  148. package/icc-x-api/basexapi/EncryptedEntityXApi.d.ts +3 -2
  149. package/icc-x-api/basexapi/EncryptedEntityXApi.js.map +1 -1
  150. package/icc-x-api/crypto/AES.js +1 -1
  151. package/icc-x-api/crypto/AES.js.map +1 -1
  152. package/icc-x-api/crypto/AccessControlKeysHeadersProvider.d.ts +16 -0
  153. package/icc-x-api/crypto/AccessControlKeysHeadersProvider.js +41 -0
  154. package/icc-x-api/crypto/AccessControlKeysHeadersProvider.js.map +1 -0
  155. package/icc-x-api/crypto/AccessControlSecretUtils.d.ts +42 -0
  156. package/icc-x-api/crypto/AccessControlSecretUtils.js +86 -0
  157. package/icc-x-api/crypto/AccessControlSecretUtils.js.map +1 -0
  158. package/icc-x-api/crypto/BaseExchangeDataManager.d.ts +146 -0
  159. package/icc-x-api/crypto/BaseExchangeDataManager.js +342 -0
  160. package/icc-x-api/crypto/BaseExchangeDataManager.js.map +1 -0
  161. package/icc-x-api/crypto/BaseExchangeKeysManager.d.ts +0 -18
  162. package/icc-x-api/crypto/BaseExchangeKeysManager.js +11 -85
  163. package/icc-x-api/crypto/BaseExchangeKeysManager.js.map +1 -1
  164. package/icc-x-api/crypto/ConfidentialEntities.d.ts +26 -16
  165. package/icc-x-api/crypto/ConfidentialEntities.js +30 -17
  166. package/icc-x-api/crypto/ConfidentialEntities.js.map +1 -1
  167. package/icc-x-api/crypto/CryptoStrategies.d.ts +8 -1
  168. package/icc-x-api/crypto/CryptoStrategies.js.map +1 -1
  169. package/icc-x-api/crypto/ExchangeDataManager.d.ts +95 -0
  170. package/icc-x-api/crypto/ExchangeDataManager.js +493 -0
  171. package/icc-x-api/crypto/ExchangeDataManager.js.map +1 -0
  172. package/icc-x-api/crypto/ExchangeDataMapManager.d.ts +32 -0
  173. package/icc-x-api/crypto/ExchangeDataMapManager.js +70 -0
  174. package/icc-x-api/crypto/ExchangeDataMapManager.js.map +1 -0
  175. package/icc-x-api/crypto/ExchangeKeysManager.d.ts +4 -16
  176. package/icc-x-api/crypto/ExchangeKeysManager.js +4 -62
  177. package/icc-x-api/crypto/ExchangeKeysManager.js.map +1 -1
  178. package/icc-x-api/crypto/ExtendedApisUtils.d.ts +336 -0
  179. package/icc-x-api/crypto/ExtendedApisUtils.js +3 -0
  180. package/icc-x-api/crypto/ExtendedApisUtils.js.map +1 -0
  181. package/icc-x-api/crypto/ExtendedApisUtilsImpl.d.ts +181 -0
  182. package/icc-x-api/crypto/ExtendedApisUtilsImpl.js +562 -0
  183. package/icc-x-api/crypto/ExtendedApisUtilsImpl.js.map +1 -0
  184. package/icc-x-api/crypto/KeyRecovery.d.ts +5 -2
  185. package/icc-x-api/crypto/KeyRecovery.js +59 -29
  186. package/icc-x-api/crypto/KeyRecovery.js.map +1 -1
  187. package/icc-x-api/crypto/LegacyCryptoStrategies.d.ts +7 -2
  188. package/icc-x-api/crypto/LegacyCryptoStrategies.js +8 -1
  189. package/icc-x-api/crypto/LegacyCryptoStrategies.js.map +1 -1
  190. package/icc-x-api/crypto/LegacyDelegationSecurityMetadataDecryptor.d.ts +39 -0
  191. package/icc-x-api/crypto/LegacyDelegationSecurityMetadataDecryptor.js +150 -0
  192. package/icc-x-api/crypto/LegacyDelegationSecurityMetadataDecryptor.js.map +1 -0
  193. package/icc-x-api/crypto/RSA.d.ts +34 -8
  194. package/icc-x-api/crypto/RSA.js +80 -13
  195. package/icc-x-api/crypto/RSA.js.map +1 -1
  196. package/icc-x-api/crypto/SecureDelegationsEncryption.d.ts +54 -0
  197. package/icc-x-api/crypto/SecureDelegationsEncryption.js +178 -0
  198. package/icc-x-api/crypto/SecureDelegationsEncryption.js.map +1 -0
  199. package/icc-x-api/crypto/SecureDelegationsManager.d.ts +66 -0
  200. package/icc-x-api/crypto/SecureDelegationsManager.js +261 -0
  201. package/icc-x-api/crypto/SecureDelegationsManager.js.map +1 -0
  202. package/icc-x-api/crypto/SecureDelegationsSecurityMetadataDecryptor.d.ts +37 -0
  203. package/icc-x-api/crypto/SecureDelegationsSecurityMetadataDecryptor.js +294 -0
  204. package/icc-x-api/crypto/SecureDelegationsSecurityMetadataDecryptor.js.map +1 -0
  205. package/icc-x-api/crypto/SecurityMetadataDecryptor.d.ts +114 -0
  206. package/icc-x-api/crypto/SecurityMetadataDecryptor.js +98 -0
  207. package/icc-x-api/crypto/SecurityMetadataDecryptor.js.map +1 -0
  208. package/icc-x-api/crypto/ShamirKeysManager.d.ts +5 -5
  209. package/icc-x-api/crypto/ShamirKeysManager.js +6 -9
  210. package/icc-x-api/crypto/ShamirKeysManager.js.map +1 -1
  211. package/icc-x-api/crypto/TransferKeysManager.d.ts +8 -6
  212. package/icc-x-api/crypto/TransferKeysManager.js +75 -52
  213. package/icc-x-api/crypto/TransferKeysManager.js.map +1 -1
  214. package/icc-x-api/crypto/{KeyManager.d.ts → UserEncryptionKeysManager.d.ts} +4 -6
  215. package/icc-x-api/crypto/{KeyManager.js → UserEncryptionKeysManager.js} +43 -23
  216. package/icc-x-api/crypto/UserEncryptionKeysManager.js.map +1 -0
  217. package/icc-x-api/crypto/UserSignatureKeysManager.d.ts +26 -0
  218. package/icc-x-api/crypto/UserSignatureKeysManager.js +74 -0
  219. package/icc-x-api/crypto/UserSignatureKeysManager.js.map +1 -0
  220. package/icc-x-api/crypto/utils.d.ts +61 -11
  221. package/icc-x-api/crypto/utils.js +113 -44
  222. package/icc-x-api/crypto/utils.js.map +1 -1
  223. package/icc-x-api/filters/filters.js.map +1 -1
  224. package/icc-x-api/icc-accesslog-x-api.d.ts +46 -11
  225. package/icc-x-api/icc-accesslog-x-api.js +75 -42
  226. package/icc-x-api/icc-accesslog-x-api.js.map +1 -1
  227. package/icc-x-api/icc-calendar-item-x-api.d.ts +50 -14
  228. package/icc-x-api/icc-calendar-item-x-api.js +99 -49
  229. package/icc-x-api/icc-calendar-item-x-api.js.map +1 -1
  230. package/icc-x-api/icc-classification-x-api.d.ts +44 -9
  231. package/icc-x-api/icc-classification-x-api.js +56 -31
  232. package/icc-x-api/icc-classification-x-api.js.map +1 -1
  233. package/icc-x-api/icc-contact-x-api.d.ts +56 -32
  234. package/icc-x-api/icc-contact-x-api.js +95 -64
  235. package/icc-x-api/icc-contact-x-api.js.map +1 -1
  236. package/icc-x-api/icc-crypto-x-api.d.ts +28 -334
  237. package/icc-x-api/icc-crypto-x-api.js +41 -765
  238. package/icc-x-api/icc-crypto-x-api.js.map +1 -1
  239. package/icc-x-api/icc-data-owner-x-api.d.ts +20 -8
  240. package/icc-x-api/icc-data-owner-x-api.js +31 -10
  241. package/icc-x-api/icc-data-owner-x-api.js.map +1 -1
  242. package/icc-x-api/icc-document-x-api.d.ts +48 -11
  243. package/icc-x-api/icc-document-x-api.js +111 -64
  244. package/icc-x-api/icc-document-x-api.js.map +1 -1
  245. package/icc-x-api/icc-form-x-api.d.ts +45 -10
  246. package/icc-x-api/icc-form-x-api.js +65 -35
  247. package/icc-x-api/icc-form-x-api.js.map +1 -1
  248. package/icc-x-api/icc-hcparty-x-api.d.ts +2 -2
  249. package/icc-x-api/icc-hcparty-x-api.js +3 -3
  250. package/icc-x-api/icc-hcparty-x-api.js.map +1 -1
  251. package/icc-x-api/icc-helement-x-api.d.ts +55 -18
  252. package/icc-x-api/icc-helement-x-api.js +76 -41
  253. package/icc-x-api/icc-helement-x-api.js.map +1 -1
  254. package/icc-x-api/icc-icure-maintenance-x-api.d.ts +7 -2
  255. package/icc-x-api/icc-icure-maintenance-x-api.js +38 -27
  256. package/icc-x-api/icc-icure-maintenance-x-api.js.map +1 -1
  257. package/icc-x-api/icc-invoice-x-api.d.ts +50 -15
  258. package/icc-x-api/icc-invoice-x-api.js +63 -33
  259. package/icc-x-api/icc-invoice-x-api.js.map +1 -1
  260. package/icc-x-api/icc-maintenance-task-x-api.d.ts +53 -21
  261. package/icc-x-api/icc-maintenance-task-x-api.js +72 -35
  262. package/icc-x-api/icc-maintenance-task-x-api.js.map +1 -1
  263. package/icc-x-api/icc-message-x-api.d.ts +53 -15
  264. package/icc-x-api/icc-message-x-api.js +65 -36
  265. package/icc-x-api/icc-message-x-api.js.map +1 -1
  266. package/icc-x-api/icc-patient-x-api.d.ts +84 -29
  267. package/icc-x-api/icc-patient-x-api.js +313 -378
  268. package/icc-x-api/icc-patient-x-api.js.map +1 -1
  269. package/icc-x-api/icc-receipt-x-api.d.ts +44 -12
  270. package/icc-x-api/icc-receipt-x-api.js +67 -35
  271. package/icc-x-api/icc-receipt-x-api.js.map +1 -1
  272. package/icc-x-api/icc-time-table-x-api.d.ts +43 -12
  273. package/icc-x-api/icc-time-table-x-api.js +56 -26
  274. package/icc-x-api/icc-time-table-x-api.js.map +1 -1
  275. package/icc-x-api/icc-user-x-api.d.ts +2 -2
  276. package/icc-x-api/icc-user-x-api.js +3 -3
  277. package/icc-x-api/icc-user-x-api.js.map +1 -1
  278. package/icc-x-api/index.d.ts +4 -2
  279. package/icc-x-api/index.js +154 -135
  280. package/icc-x-api/index.js.map +1 -1
  281. package/icc-x-api/storage/DefaultStorageEntryKeysFactory.d.ts +2 -0
  282. package/icc-x-api/storage/DefaultStorageEntryKeysFactory.js +9 -2
  283. package/icc-x-api/storage/DefaultStorageEntryKeysFactory.js.map +1 -1
  284. package/icc-x-api/storage/IcureStorageFacade.d.ts +23 -2
  285. package/icc-x-api/storage/IcureStorageFacade.js +36 -2
  286. package/icc-x-api/storage/IcureStorageFacade.js.map +1 -1
  287. package/icc-x-api/storage/KeyStorageFacade.d.ts +12 -0
  288. package/icc-x-api/storage/KeyStorageFacade.js.map +1 -1
  289. package/icc-x-api/storage/KeyStorageImpl.d.ts +2 -0
  290. package/icc-x-api/storage/KeyStorageImpl.js +10 -0
  291. package/icc-x-api/storage/KeyStorageImpl.js.map +1 -1
  292. package/icc-x-api/storage/StorageEntryKeysFactory.d.ts +14 -1
  293. package/icc-x-api/storage/StorageEntryKeysFactory.js.map +1 -1
  294. package/icc-x-api/utils/EntityWithDelegationTypeName.d.ts +32 -0
  295. package/icc-x-api/utils/EntityWithDelegationTypeName.js +75 -0
  296. package/icc-x-api/utils/EntityWithDelegationTypeName.js.map +1 -0
  297. package/icc-x-api/utils/ShareResult.d.ts +74 -0
  298. package/icc-x-api/utils/ShareResult.js +61 -0
  299. package/icc-x-api/utils/ShareResult.js.map +1 -0
  300. package/icc-x-api/utils/binary-utils.d.ts +1 -0
  301. package/icc-x-api/utils/binary-utils.js +8 -1
  302. package/icc-x-api/utils/binary-utils.js.map +1 -1
  303. package/icc-x-api/utils/collection-utils.d.ts +5 -0
  304. package/icc-x-api/utils/collection-utils.js +26 -1
  305. package/icc-x-api/utils/collection-utils.js.map +1 -1
  306. package/icc-x-api/utils/crypto-utils.d.ts +4 -3
  307. package/icc-x-api/utils/crypto-utils.js +5 -4
  308. package/icc-x-api/utils/crypto-utils.js.map +1 -1
  309. package/icc-x-api/utils/lru-temporised-async-cache.d.ts +26 -3
  310. package/icc-x-api/utils/lru-temporised-async-cache.js +75 -15
  311. package/icc-x-api/utils/lru-temporised-async-cache.js.map +1 -1
  312. package/icc-x-api/utils/websocket.d.ts +10 -10
  313. package/icc-x-api/utils/websocket.js +18 -9
  314. package/icc-x-api/utils/websocket.js.map +1 -1
  315. package/index.d.ts +1 -1
  316. package/index.js +3 -1
  317. package/index.js.map +1 -1
  318. package/package.json +2 -3
  319. package/icc-x-api/crypto/EntitiesEncryption.d.ts +0 -275
  320. package/icc-x-api/crypto/EntitiesEncryption.js +0 -734
  321. package/icc-x-api/crypto/EntitiesEncryption.js.map +0 -1
  322. package/icc-x-api/crypto/KeyManager.js.map +0 -1
@@ -0,0 +1,61 @@
1
+ export declare class ExchangeData {
2
+ constructor(json: JSON | any);
3
+ /**
4
+ * the Id of the exchange data. We encourage using either a v4 UUID or a HL7 Id.
5
+ */
6
+ id?: string;
7
+ /**
8
+ * the revision of the exchange data in the database, used for conflict management / optimistic locking.
9
+ */
10
+ rev?: string;
11
+ /**
12
+ * ID of the data owner which created this exchange data, in order to share some data with the [delegate].
13
+ */
14
+ delegator: string;
15
+ /**
16
+ * ID of a data owner which can use this exchange data to access data shared with him by [delegator].
17
+ */
18
+ delegate: string;
19
+ /**
20
+ * Aes key to use for sharing data from the delegator to the delegate, encrypted with the public keys of both delegate
21
+ * and delegator. This key should never be sent decrypted to the server, as it allows to read medical data.
22
+ */
23
+ exchangeKey: {
24
+ [keyPairFingerprint: string]: string;
25
+ };
26
+ /**
27
+ * Key used for access control to data shared from the delegator to the delegate, encrypted with the public keys of both
28
+ * delegate and delegator.
29
+ *
30
+ * This key will be used by the client to calculate the keys of [HasSecureDelegationsAccessControl.securityMetadata] which
31
+ * allows to implement a form of access control where the identity of data owners with access to a specific entity can't be
32
+ * deduced from the database alone. This is useful for example to allow patients to access their medical data without creating
33
+ * a deducible link between the patient and the medical data in the database.
34
+ *
35
+ * There are no strict requirements on how the client should use this secret to create the security metadata key, but for
36
+ * authentication the client must be able to provide a 128 bit long access control key (see [DataOwnerAuthenticationDetails.accessControlKeys])
37
+ * which once hashed using sha256 will give the key of the security metadata.
38
+ * However, in order to avoid introducing undesired links between entities which could be detrimental to the patients privacy
39
+ * the access control keys should be created also using information on the entity class and confidentiality level of information
40
+ * in applications where hcps share information using a hierarchical structure.
41
+ * ```
42
+ * accessControlKey = sha256Bytes(accessControlSecret + entityClass + confidentialityLevel).take(16)
43
+ * securityMetadataKey = sha256Hex(accessControlKey)
44
+ * ```
45
+ */
46
+ accessControlSecret: {
47
+ [keyPairFingerprint: string]: string;
48
+ };
49
+ /**
50
+ * Signature to ensure the key data has not been tampered with: when creating new exchange data the delegator will hash
51
+ * the content of [exchangeKey] and [accessControlSecret] then use his trusted private keys to sign this hash. This field
52
+ * will contain the signature by fingerprint of the public key to use for verification.
53
+ */
54
+ signature: {
55
+ [keyPairFingerprint: string]: string;
56
+ };
57
+ /**
58
+ * hard delete (unix epoch in ms) timestamp of the object. Filled automatically when the delete method is called.
59
+ */
60
+ deletionDate?: number;
61
+ }
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExchangeData = void 0;
4
+ class ExchangeData {
5
+ constructor(json) {
6
+ if (!json.delegator || !json.delegate || !json.exchangeKey || !json.accessControlSecret || !json.signature)
7
+ throw new Error(`Exchange data json is missing required properties.\n${JSON.stringify(json)}`);
8
+ Object.assign(this, json);
9
+ }
10
+ }
11
+ exports.ExchangeData = ExchangeData;
12
+ //# sourceMappingURL=ExchangeData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExchangeData.js","sourceRoot":"","sources":["../../../icc-api/model/ExchangeData.ts"],"names":[],"mappings":";;;AAAA,MAAa,YAAY;IACvB,YAAY,IAAgB;QAC1B,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,IAAI,CAAC,SAAS;YACxG,MAAM,IAAI,KAAK,CAAC,uDAAuD,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QAChG,MAAM,CAAC,MAAM,CAAC,IAAoB,EAAE,IAAI,CAAC,CAAA;IAC3C,CAAC;CAsDF;AA3DD,oCA2DC","sourcesContent":["export class ExchangeData {\n constructor(json: JSON | any) {\n if (!json.delegator || !json.delegate || !json.exchangeKey || !json.accessControlSecret || !json.signature)\n throw new Error(`Exchange data json is missing required properties.\\n${JSON.stringify(json)}`)\n Object.assign(this as ExchangeData, json)\n }\n\n /**\n * the Id of the exchange data. We encourage using either a v4 UUID or a HL7 Id.\n */\n id?: string\n /**\n * the revision of the exchange data in the database, used for conflict management / optimistic locking.\n */\n rev?: string\n /**\n * ID of the data owner which created this exchange data, in order to share some data with the [delegate].\n */\n delegator!: string\n /**\n * ID of a data owner which can use this exchange data to access data shared with him by [delegator].\n */\n delegate!: string\n /**\n * Aes key to use for sharing data from the delegator to the delegate, encrypted with the public keys of both delegate\n * and delegator. This key should never be sent decrypted to the server, as it allows to read medical data.\n */\n exchangeKey!: { [keyPairFingerprint: string]: string }\n /**\n * Key used for access control to data shared from the delegator to the delegate, encrypted with the public keys of both\n * delegate and delegator.\n *\n * This key will be used by the client to calculate the keys of [HasSecureDelegationsAccessControl.securityMetadata] which\n * allows to implement a form of access control where the identity of data owners with access to a specific entity can't be\n * deduced from the database alone. This is useful for example to allow patients to access their medical data without creating\n * a deducible link between the patient and the medical data in the database.\n *\n * There are no strict requirements on how the client should use this secret to create the security metadata key, but for\n * authentication the client must be able to provide a 128 bit long access control key (see [DataOwnerAuthenticationDetails.accessControlKeys])\n * which once hashed using sha256 will give the key of the security metadata.\n * However, in order to avoid introducing undesired links between entities which could be detrimental to the patients privacy\n * the access control keys should be created also using information on the entity class and confidentiality level of information\n * in applications where hcps share information using a hierarchical structure.\n * ```\n * accessControlKey = sha256Bytes(accessControlSecret + entityClass + confidentialityLevel).take(16)\n * securityMetadataKey = sha256Hex(accessControlKey)\n * ```\n */\n accessControlSecret!: { [keyPairFingerprint: string]: string }\n /**\n * Signature to ensure the key data has not been tampered with: when creating new exchange data the delegator will hash\n * the content of [exchangeKey] and [accessControlSecret] then use his trusted private keys to sign this hash. This field\n * will contain the signature by fingerprint of the public key to use for verification.\n */\n signature!: { [keyPairFingerprint: string]: string }\n /**\n * hard delete (unix epoch in ms) timestamp of the object. Filled automatically when the delete method is called.\n */\n deletionDate?: number\n}\n"]}
@@ -0,0 +1,21 @@
1
+ export declare class ExchangeDataMap {
2
+ constructor(json: JSON | any);
3
+ /**
4
+ * the Id of the exchange data. It is the hex-encoded string of the hashed version of the access control key
5
+ */
6
+ id: string;
7
+ /**
8
+ * the revision of the exchange data in the database, used for conflict management / optimistic locking.
9
+ */
10
+ rev?: string;
11
+ /**
12
+ * a map where each key is the fingerprint of a public key and the value is an exchange data id, encrypted with the private key corresponding to that public key.
13
+ */
14
+ encryptedExchangeDataIds: {
15
+ [keyPairFingerprint: string]: string;
16
+ };
17
+ /**
18
+ * hard delete (unix epoch in ms) timestamp of the object. Filled automatically when the delete method is called.
19
+ */
20
+ deletionDate?: number;
21
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExchangeDataMap = void 0;
4
+ class ExchangeDataMap {
5
+ constructor(json) {
6
+ Object.assign(this, json);
7
+ }
8
+ }
9
+ exports.ExchangeDataMap = ExchangeDataMap;
10
+ //# sourceMappingURL=ExchangeDataMap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExchangeDataMap.js","sourceRoot":"","sources":["../../../icc-api/model/ExchangeDataMap.ts"],"names":[],"mappings":";;;AAAA,MAAa,eAAe;IAC1B,YAAY,IAAgB;QAC1B,MAAM,CAAC,MAAM,CAAC,IAAuB,EAAE,IAAI,CAAC,CAAA;IAC9C,CAAC;CAkBF;AArBD,0CAqBC","sourcesContent":["export class ExchangeDataMap {\n constructor(json: JSON | any) {\n Object.assign(this as ExchangeDataMap, json)\n }\n\n /**\n * the Id of the exchange data. It is the hex-encoded string of the hashed version of the access control key\n */\n id!: string\n /**\n * the revision of the exchange data in the database, used for conflict management / optimistic locking.\n */\n rev?: string\n /**\n * a map where each key is the fingerprint of a public key and the value is an exchange data id, encrypted with the private key corresponding to that public key.\n */\n encryptedExchangeDataIds!: { [keyPairFingerprint: string]: string }\n /**\n * hard delete (unix epoch in ms) timestamp of the object. Filled automatically when the delete method is called.\n */\n deletionDate?: number\n}\n"]}
@@ -0,0 +1,13 @@
1
+ export declare class ExchangeDataMapCreationBatch {
2
+ constructor(json: JSON | any);
3
+ /**
4
+ * Each entry of this map can be used to create a new ExchangeDataMap. Each key is the hex-encoded access control key
5
+ * while the value is another map that associated the encrypted ExchangeData id to the fingerprint
6
+ * of the public key used to encrypt it.
7
+ */
8
+ batch?: {
9
+ [key: string]: {
10
+ [key: string]: string;
11
+ };
12
+ };
13
+ }
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ExchangeDataMapCreationBatch = void 0;
4
+ class ExchangeDataMapCreationBatch {
5
+ constructor(json) {
6
+ Object.assign(this, json);
7
+ }
8
+ }
9
+ exports.ExchangeDataMapCreationBatch = ExchangeDataMapCreationBatch;
10
+ //# sourceMappingURL=ExchangeDataMapCreationBatch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExchangeDataMapCreationBatch.js","sourceRoot":"","sources":["../../../icc-api/model/ExchangeDataMapCreationBatch.ts"],"names":[],"mappings":";;;AAAA,MAAa,4BAA4B;IACvC,YAAY,IAAgB;QAC1B,MAAM,CAAC,MAAM,CAAC,IAAoC,EAAE,IAAI,CAAC,CAAA;IAC3D,CAAC;CAQF;AAXD,oEAWC","sourcesContent":["export class ExchangeDataMapCreationBatch {\n constructor(json: JSON | any) {\n Object.assign(this as ExchangeDataMapCreationBatch, json)\n }\n\n /**\n * Each entry of this map can be used to create a new ExchangeDataMap. Each key is the hex-encoded access control key\n * while the value is another map that associated the encrypted ExchangeData id to the fingerprint\n * of the public key used to encrypt it.\n */\n batch?: { [key: string]: { [key: string]: string } }\n}\n"]}
@@ -11,6 +11,8 @@
11
11
  */
12
12
  import { CodeStub } from './CodeStub';
13
13
  import { Delegation } from './Delegation';
14
+ import { SecurityMetadata } from './SecurityMetadata';
15
+ import { EntityWithDelegationTypeName } from '../../icc-x-api/utils/EntityWithDelegationTypeName';
14
16
  export declare class Form {
15
17
  constructor(json: JSON | any);
16
18
  /**
@@ -115,4 +117,6 @@ export declare class Form {
115
117
  * The base64 encoded data of this object, formatted as JSON and encrypted in AES using the random master key from encryptionKeys.
116
118
  */
117
119
  encryptedSelf?: string;
120
+ securityMetadata?: SecurityMetadata;
121
+ readonly _type?: EntityWithDelegationTypeName;
118
122
  }
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Form = void 0;
4
4
  class Form {
5
5
  constructor(json) {
6
+ this._type = 'Form';
6
7
  Object.assign(this, json);
7
8
  }
8
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Form.js","sourceRoot":"","sources":["../../../icc-api/model/Form.ts"],"names":[],"mappings":";;;AAcA,MAAa,IAAI;IACf,YAAY,IAAgB;QAC1B,MAAM,CAAC,MAAM,CAAC,IAAY,EAAE,IAAI,CAAC,CAAA;IACnC,CAAC;CAkGF;AArGD,oBAqGC","sourcesContent":["/**\n * iCure Data Stack API Documentation\n * The iCure Data Stack Application API is the native interface to iCure. This version is obsolete, please use v2.\n *\n * OpenAPI spec version: v1\n *\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport { CodeStub } from './CodeStub'\nimport { Delegation } from './Delegation'\n\nexport class Form {\n constructor(json: JSON | any) {\n Object.assign(this as Form, json)\n }\n\n /**\n * the Id of the form. We encourage using either a v4 UUID or a HL7 Id.\n */\n id?: string\n /**\n * the revision of the form in the database, used for conflict management / optimistic locking.\n */\n rev?: string\n /**\n * The timestamp (unix epoch in ms) of creation of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n created?: number\n /**\n * The date (unix epoch in ms) of the latest modification of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n modified?: number\n /**\n * The id of the User that has created this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n author?: string\n /**\n * The id of the HealthcareParty that is responsible for this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n responsible?: string\n /**\n * The id of the medical location where this entity was created.\n */\n medicalLocationId?: string\n /**\n * A tag is an item from a codification system that qualifies an entity as being member of a certain class, whatever the value it might have taken. If the tag qualifies the content of a field, it means that whatever the content of the field, the tag will always apply. For example, the label of a field is qualified using a tag. LOINC is a codification system typically used for tags.\n */\n tags?: Array<CodeStub>\n /**\n * A code is an item from a codification system that qualifies the content of this entity. SNOMED-CT, ICPC-2 or ICD-10 codifications systems can be used for codes\n */\n codes?: Array<CodeStub>\n /**\n * Soft delete (unix epoch in ms) timestamp of the object.\n */\n endOfLife?: number\n /**\n * hard delete (unix epoch in ms) timestamp of the object. Filled automatically when deletePatient is called.\n */\n deletionDate?: number\n openingDate?: number\n status?: string\n version?: number\n logicalUuid?: string\n /**\n * Name/basic description of the form\n */\n descr?: string\n /**\n * A unique external id (from another external source).\n */\n uniqueId?: string\n /**\n * Id of the form template being used to display the form\n */\n formTemplateId?: string\n /**\n * Id of the contact for which the form is being used.\n */\n contactId?: string\n /**\n * The healthcare element to which this form is attached.\n */\n healthElementId?: string\n /**\n * The healthcare approach to which this form is attached.\n */\n planOfActionId?: string\n /**\n * The parent of this form, used to determine the forms hierarchy\n */\n parent?: string\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find all contacts for a specific patient. These keys are in clear. You can have several to partition the medical document space.\n */\n secretForeignKeys?: Array<string>\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find the patient for a specific contact. These keys are the encrypted id (using the hcParty key for the delegate) that can be found in clear inside the patient. ids encrypted using the hcParty keys.\n */\n cryptedForeignKeys?: { [key: string]: Array<Delegation> }\n /**\n * When a document is created, the responsible generates a cryptographically random master key (never to be used for something else than referencing from other entities). He/she encrypts it using his own AES exchange key and stores it as a delegation. The responsible is thus always in the delegations as well\n */\n delegations?: { [key: string]: Array<Delegation> }\n /**\n * When a document needs to be encrypted, the responsible generates a cryptographically random master key (different from the delegation key, never to appear in clear anywhere in the db. He/she encrypts it using his own AES exchange key and stores it as a delegation\n */\n encryptionKeys?: { [key: string]: Array<Delegation> }\n /**\n * The base64 encoded data of this object, formatted as JSON and encrypted in AES using the random master key from encryptionKeys.\n */\n encryptedSelf?: string\n}\n"]}
1
+ {"version":3,"file":"Form.js","sourceRoot":"","sources":["../../../icc-api/model/Form.ts"],"names":[],"mappings":";;;AAgBA,MAAa,IAAI;IACf,YAAY,IAAgB;QAqGnB,UAAK,GAAkC,MAAM,CAAA;QApGpD,MAAM,CAAC,MAAM,CAAC,IAAY,EAAE,IAAI,CAAC,CAAA;IACnC,CAAC;CAoGF;AAvGD,oBAuGC","sourcesContent":["/**\n * iCure Data Stack API Documentation\n * The iCure Data Stack Application API is the native interface to iCure. This version is obsolete, please use v2.\n *\n * OpenAPI spec version: v1\n *\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport { CodeStub } from './CodeStub'\nimport { Delegation } from './Delegation'\nimport { SecurityMetadata } from './SecurityMetadata'\nimport { EntityWithDelegationTypeName } from '../../icc-x-api/utils/EntityWithDelegationTypeName'\n\nexport class Form {\n constructor(json: JSON | any) {\n Object.assign(this as Form, json)\n }\n\n /**\n * the Id of the form. We encourage using either a v4 UUID or a HL7 Id.\n */\n id?: string\n /**\n * the revision of the form in the database, used for conflict management / optimistic locking.\n */\n rev?: string\n /**\n * The timestamp (unix epoch in ms) of creation of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n created?: number\n /**\n * The date (unix epoch in ms) of the latest modification of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n modified?: number\n /**\n * The id of the User that has created this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n author?: string\n /**\n * The id of the HealthcareParty that is responsible for this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n responsible?: string\n /**\n * The id of the medical location where this entity was created.\n */\n medicalLocationId?: string\n /**\n * A tag is an item from a codification system that qualifies an entity as being member of a certain class, whatever the value it might have taken. If the tag qualifies the content of a field, it means that whatever the content of the field, the tag will always apply. For example, the label of a field is qualified using a tag. LOINC is a codification system typically used for tags.\n */\n tags?: Array<CodeStub>\n /**\n * A code is an item from a codification system that qualifies the content of this entity. SNOMED-CT, ICPC-2 or ICD-10 codifications systems can be used for codes\n */\n codes?: Array<CodeStub>\n /**\n * Soft delete (unix epoch in ms) timestamp of the object.\n */\n endOfLife?: number\n /**\n * hard delete (unix epoch in ms) timestamp of the object. Filled automatically when deletePatient is called.\n */\n deletionDate?: number\n openingDate?: number\n status?: string\n version?: number\n logicalUuid?: string\n /**\n * Name/basic description of the form\n */\n descr?: string\n /**\n * A unique external id (from another external source).\n */\n uniqueId?: string\n /**\n * Id of the form template being used to display the form\n */\n formTemplateId?: string\n /**\n * Id of the contact for which the form is being used.\n */\n contactId?: string\n /**\n * The healthcare element to which this form is attached.\n */\n healthElementId?: string\n /**\n * The healthcare approach to which this form is attached.\n */\n planOfActionId?: string\n /**\n * The parent of this form, used to determine the forms hierarchy\n */\n parent?: string\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find all contacts for a specific patient. These keys are in clear. You can have several to partition the medical document space.\n */\n secretForeignKeys?: Array<string>\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find the patient for a specific contact. These keys are the encrypted id (using the hcParty key for the delegate) that can be found in clear inside the patient. ids encrypted using the hcParty keys.\n */\n cryptedForeignKeys?: { [key: string]: Array<Delegation> }\n /**\n * When a document is created, the responsible generates a cryptographically random master key (never to be used for something else than referencing from other entities). He/she encrypts it using his own AES exchange key and stores it as a delegation. The responsible is thus always in the delegations as well\n */\n delegations?: { [key: string]: Array<Delegation> }\n /**\n * When a document needs to be encrypted, the responsible generates a cryptographically random master key (different from the delegation key, never to appear in clear anywhere in the db. He/she encrypts it using his own AES exchange key and stores it as a delegation\n */\n encryptionKeys?: { [key: string]: Array<Delegation> }\n /**\n * The base64 encoded data of this object, formatted as JSON and encrypted in AES using the random master key from encryptionKeys.\n */\n encryptedSelf?: string\n securityMetadata?: SecurityMetadata\n readonly _type?: EntityWithDelegationTypeName = 'Form'\n}\n"]}
@@ -16,6 +16,8 @@ import { Episode } from './Episode';
16
16
  import { Identifier } from './Identifier';
17
17
  import { PlanOfAction } from './PlanOfAction';
18
18
  import { Annotation } from './Annotation';
19
+ import { SecurityMetadata } from './SecurityMetadata';
20
+ import { EntityWithDelegationTypeName } from '../../icc-x-api/utils/EntityWithDelegationTypeName';
19
21
  /**
20
22
  * This entity is a root level object. It represents a healthcare element. It is serialized in JSON and saved in the underlying CouchDB database.
21
23
  */
@@ -157,6 +159,8 @@ export declare class HealthElement {
157
159
  * The base64 encoded data of this object, formatted as JSON and encrypted in AES using the random master key from encryptionKeys.
158
160
  */
159
161
  encryptedSelf?: string;
162
+ securityMetadata?: SecurityMetadata;
163
+ readonly _type?: EntityWithDelegationTypeName;
160
164
  }
161
165
  export declare namespace HealthElement {
162
166
  type LateralityEnum = 'left' | 'right';
@@ -6,6 +6,7 @@ exports.HealthElement = void 0;
6
6
  */
7
7
  class HealthElement {
8
8
  constructor(json) {
9
+ this._type = 'HealthElement';
9
10
  Object.assign(this, json);
10
11
  }
11
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"HealthElement.js","sourceRoot":"","sources":["../../../icc-api/model/HealthElement.ts"],"names":[],"mappings":";;;AAmBA;;GAEG;AACH,MAAa,aAAa;IACxB,YAAY,IAAgB;QAC1B,MAAM,CAAC,MAAM,CAAC,IAAqB,EAAE,IAAI,CAAC,CAAA;IAC5C,CAAC;CAsIF;AAzID,sCAyIC;AACD,WAAiB,aAAa;IAEf,4BAAc,GAAG;QAC5B,IAAI,EAAE,MAAwB;QAC9B,KAAK,EAAE,OAAyB;KACjC,CAAA;AACH,CAAC,EANgB,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAM7B","sourcesContent":["/**\n * iCure Data Stack API Documentation\n * The iCure Data Stack Application API is the native interface to iCure. This version is obsolete, please use v2.\n *\n * OpenAPI spec version: v1\n *\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport { CareTeamMember } from './CareTeamMember'\nimport { CodeStub } from './CodeStub'\nimport { Delegation } from './Delegation'\nimport { Episode } from './Episode'\nimport { Identifier } from './Identifier'\nimport { PlanOfAction } from './PlanOfAction'\nimport { Annotation } from './Annotation'\n\n/**\n * This entity is a root level object. It represents a healthcare element. It is serialized in JSON and saved in the underlying CouchDB database.\n */\nexport class HealthElement {\n constructor(json: JSON | any) {\n Object.assign(this as HealthElement, json)\n }\n\n /**\n * The Id of the healthcare element. We encourage using either a v4 UUID or a HL7 Id.\n */\n id?: string\n identifiers?: Array<Identifier>\n /**\n * The revision of the healthcare element in the database, used for conflict management / optimistic locking.\n */\n rev?: string\n /**\n * The timestamp (unix epoch in ms) of creation of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n created?: number\n /**\n * The date (unix epoch in ms) of the latest modification of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n modified?: number\n /**\n * The id of the User that has created this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n author?: string\n /**\n * The id of the HealthcareParty that is responsible for this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n responsible?: string\n /**\n * The id of the medical location where this entity was created.\n */\n medicalLocationId?: string\n /**\n * A tag is an item from a codification system that qualifies an entity as being member of a certain class, whatever the value it might have taken. If the tag qualifies the content of a field, it means that whatever the content of the field, the tag will always apply. For example, the label of a field is qualified using a tag. LOINC is a codification system typically used for tags.\n */\n tags?: Array<CodeStub>\n /**\n * A code is an item from a codification system that qualifies the content of this entity. SNOMED-CT, ICPC-2 or ICD-10 codifications systems can be used for codes\n */\n codes?: Array<CodeStub>\n /**\n * Soft delete (unix epoch in ms) timestamp of the object.\n */\n endOfLife?: number\n /**\n * hard delete (unix epoch in ms) timestamp of the object. Filled automatically when deletePatient is called.\n */\n deletionDate?: number\n /**\n * The logical id of the healthcare element, used to link together different versions of the same healthcare element. We encourage using either a v4 UUID or a HL7 Id.\n */\n healthElementId?: string\n /**\n * The date (unix epoch in ms) when the healthcare element is noted to have started and also closes on the same date\n */\n valueDate?: number\n /**\n * The date (unix epoch in ms) of the start of the healthcare element.\n */\n openingDate?: number\n /**\n * The date (unix epoch in ms) marking the end of the healthcare element.\n */\n closingDate?: number\n /**\n * Description of the healthcare element.\n */\n descr?: string\n /**\n * A text note (can be confidential, encrypted by default).\n * @deprecated Use notes instead\n */\n note?: string\n\n /**\n * Localized text notes (can be confidential, encrypted by default).\n */\n notes?: Annotation[]\n\n /**\n * If the healthcare element is relevant or not (Set relevant by default).\n */\n relevant?: boolean\n /**\n * Id of the opening contact when the healthcare element was created.\n */\n idOpeningContact?: string\n /**\n * Id of the closing contact for the healthcare element.\n */\n idClosingContact?: string\n /**\n * Id of the service when a service is used to create a healthcare element.\n */\n idService?: string\n /**\n * bit 0: active/inactive, bit 1: relevant/irrelevant, bit 2 : present/absent, ex: 0 = active,relevant and present\n */\n status?: number\n /**\n * Left or Right dominance/preference.\n */\n laterality?: HealthElement.LateralityEnum\n /**\n * List of healthcare approaches.\n */\n plansOfAction?: Array<PlanOfAction>\n /**\n * List of episodes of occurrences of the healthcare element.\n */\n episodes?: Array<Episode>\n /**\n * List of care team members assigned for the healthcare element.\n */\n careTeam?: Array<CareTeamMember>\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find all contacts for a specific patient. These keys are in clear. You can have several to partition the medical document space.\n */\n secretForeignKeys?: Array<string>\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find the patient for a specific contact. These keys are the encrypted id (using the hcParty key for the delegate) that can be found in clear inside the patient. ids encrypted using the hcParty keys.\n */\n cryptedForeignKeys?: { [key: string]: Array<Delegation> }\n /**\n * When a document is created, the responsible generates a cryptographically random master key (never to be used for something else than referencing from other entities). He/she encrypts it using his own AES exchange key and stores it as a delegation. The responsible is thus always in the delegations as well\n */\n delegations?: { [key: string]: Array<Delegation> }\n /**\n * When a document needs to be encrypted, the responsible generates a cryptographically random master key (different from the delegation key, never to appear in clear anywhere in the db. He/she encrypts it using his own AES exchange key and stores it as a delegation\n */\n encryptionKeys?: { [key: string]: Array<Delegation> }\n /**\n * The base64 encoded data of this object, formatted as JSON and encrypted in AES using the random master key from encryptionKeys.\n */\n encryptedSelf?: string\n}\nexport namespace HealthElement {\n export type LateralityEnum = 'left' | 'right'\n export const LateralityEnum = {\n Left: 'left' as LateralityEnum,\n Right: 'right' as LateralityEnum,\n }\n}\n"]}
1
+ {"version":3,"file":"HealthElement.js","sourceRoot":"","sources":["../../../icc-api/model/HealthElement.ts"],"names":[],"mappings":";;;AAqBA;;GAEG;AACH,MAAa,aAAa;IACxB,YAAY,IAAgB;QAyInB,UAAK,GAAkC,eAAe,CAAA;QAxI7D,MAAM,CAAC,MAAM,CAAC,IAAqB,EAAE,IAAI,CAAC,CAAA;IAC5C,CAAC;CAwIF;AA3ID,sCA2IC;AACD,WAAiB,aAAa;IAEf,4BAAc,GAAG;QAC5B,IAAI,EAAE,MAAwB;QAC9B,KAAK,EAAE,OAAyB;KACjC,CAAA;AACH,CAAC,EANgB,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAM7B","sourcesContent":["/**\n * iCure Data Stack API Documentation\n * The iCure Data Stack Application API is the native interface to iCure. This version is obsolete, please use v2.\n *\n * OpenAPI spec version: v1\n *\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport { CareTeamMember } from './CareTeamMember'\nimport { CodeStub } from './CodeStub'\nimport { Delegation } from './Delegation'\nimport { Episode } from './Episode'\nimport { Identifier } from './Identifier'\nimport { PlanOfAction } from './PlanOfAction'\nimport { Annotation } from './Annotation'\nimport { SecurityMetadata } from './SecurityMetadata'\nimport { EntityWithDelegationTypeName } from '../../icc-x-api/utils/EntityWithDelegationTypeName'\n\n/**\n * This entity is a root level object. It represents a healthcare element. It is serialized in JSON and saved in the underlying CouchDB database.\n */\nexport class HealthElement {\n constructor(json: JSON | any) {\n Object.assign(this as HealthElement, json)\n }\n\n /**\n * The Id of the healthcare element. We encourage using either a v4 UUID or a HL7 Id.\n */\n id?: string\n identifiers?: Array<Identifier>\n /**\n * The revision of the healthcare element in the database, used for conflict management / optimistic locking.\n */\n rev?: string\n /**\n * The timestamp (unix epoch in ms) of creation of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n created?: number\n /**\n * The date (unix epoch in ms) of the latest modification of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n modified?: number\n /**\n * The id of the User that has created this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n author?: string\n /**\n * The id of the HealthcareParty that is responsible for this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n responsible?: string\n /**\n * The id of the medical location where this entity was created.\n */\n medicalLocationId?: string\n /**\n * A tag is an item from a codification system that qualifies an entity as being member of a certain class, whatever the value it might have taken. If the tag qualifies the content of a field, it means that whatever the content of the field, the tag will always apply. For example, the label of a field is qualified using a tag. LOINC is a codification system typically used for tags.\n */\n tags?: Array<CodeStub>\n /**\n * A code is an item from a codification system that qualifies the content of this entity. SNOMED-CT, ICPC-2 or ICD-10 codifications systems can be used for codes\n */\n codes?: Array<CodeStub>\n /**\n * Soft delete (unix epoch in ms) timestamp of the object.\n */\n endOfLife?: number\n /**\n * hard delete (unix epoch in ms) timestamp of the object. Filled automatically when deletePatient is called.\n */\n deletionDate?: number\n /**\n * The logical id of the healthcare element, used to link together different versions of the same healthcare element. We encourage using either a v4 UUID or a HL7 Id.\n */\n healthElementId?: string\n /**\n * The date (unix epoch in ms) when the healthcare element is noted to have started and also closes on the same date\n */\n valueDate?: number\n /**\n * The date (unix epoch in ms) of the start of the healthcare element.\n */\n openingDate?: number\n /**\n * The date (unix epoch in ms) marking the end of the healthcare element.\n */\n closingDate?: number\n /**\n * Description of the healthcare element.\n */\n descr?: string\n /**\n * A text note (can be confidential, encrypted by default).\n * @deprecated Use notes instead\n */\n note?: string\n\n /**\n * Localized text notes (can be confidential, encrypted by default).\n */\n notes?: Annotation[]\n\n /**\n * If the healthcare element is relevant or not (Set relevant by default).\n */\n relevant?: boolean\n /**\n * Id of the opening contact when the healthcare element was created.\n */\n idOpeningContact?: string\n /**\n * Id of the closing contact for the healthcare element.\n */\n idClosingContact?: string\n /**\n * Id of the service when a service is used to create a healthcare element.\n */\n idService?: string\n /**\n * bit 0: active/inactive, bit 1: relevant/irrelevant, bit 2 : present/absent, ex: 0 = active,relevant and present\n */\n status?: number\n /**\n * Left or Right dominance/preference.\n */\n laterality?: HealthElement.LateralityEnum\n /**\n * List of healthcare approaches.\n */\n plansOfAction?: Array<PlanOfAction>\n /**\n * List of episodes of occurrences of the healthcare element.\n */\n episodes?: Array<Episode>\n /**\n * List of care team members assigned for the healthcare element.\n */\n careTeam?: Array<CareTeamMember>\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find all contacts for a specific patient. These keys are in clear. You can have several to partition the medical document space.\n */\n secretForeignKeys?: Array<string>\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find the patient for a specific contact. These keys are the encrypted id (using the hcParty key for the delegate) that can be found in clear inside the patient. ids encrypted using the hcParty keys.\n */\n cryptedForeignKeys?: { [key: string]: Array<Delegation> }\n /**\n * When a document is created, the responsible generates a cryptographically random master key (never to be used for something else than referencing from other entities). He/she encrypts it using his own AES exchange key and stores it as a delegation. The responsible is thus always in the delegations as well\n */\n delegations?: { [key: string]: Array<Delegation> }\n /**\n * When a document needs to be encrypted, the responsible generates a cryptographically random master key (different from the delegation key, never to appear in clear anywhere in the db. He/she encrypts it using his own AES exchange key and stores it as a delegation\n */\n encryptionKeys?: { [key: string]: Array<Delegation> }\n /**\n * The base64 encoded data of this object, formatted as JSON and encrypted in AES using the random master key from encryptionKeys.\n */\n encryptedSelf?: string\n securityMetadata?: SecurityMetadata\n readonly _type?: EntityWithDelegationTypeName = 'HealthElement'\n}\nexport namespace HealthElement {\n export type LateralityEnum = 'left' | 'right'\n export const LateralityEnum = {\n Left: 'left' as LateralityEnum,\n Right: 'right' as LateralityEnum,\n }\n}\n"]}
@@ -218,9 +218,9 @@ export declare class HealthcareParty {
218
218
  */
219
219
  publicKey?: string;
220
220
  /**
221
- * The public keys of this actor which should be used for RSA-OAEP with sha256 encryption.
221
+ * The public keys of this actor that are generates using the OAEP Sha-256 standard
222
222
  */
223
- publicKeysForOaepWithSha256?: string[];
223
+ publicKeysForOaepWithSha256?: Array<string>;
224
224
  }
225
225
  export declare namespace HealthcareParty {
226
226
  type GenderEnum = 'male' | 'female' | 'indeterminate' | 'changed' | 'changedToMale' | 'changedToFemale' | 'unknown';
@@ -1 +1 @@
1
- {"version":3,"file":"HealthcareParty.js","sourceRoot":"","sources":["../../../icc-api/model/HealthcareParty.ts"],"names":[],"mappings":";;;AAoBA;;GAEG;AACH,+CAAuC;AACvC,MAAa,eAAe;IAC1B,YAAY,IAAgB;QAC1B,MAAM,CAAC,MAAM,CAAC,IAAuB,EAAE,IAAI,EAAE,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,EAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAA,qBAAO,EAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IACvG,CAAC;CAsLF;AAzLD,0CAyLC;AACD,WAAiB,eAAe;IAEjB,0BAAU,GAAG;QACxB,IAAI,EAAE,MAAoB;QAC1B,MAAM,EAAE,QAAsB;QAC9B,aAAa,EAAE,eAA6B;QAC5C,OAAO,EAAE,SAAuB;QAChC,aAAa,EAAE,eAA6B;QAC5C,eAAe,EAAE,iBAA+B;QAChD,OAAO,EAAE,SAAuB;KACjC,CAAA;IAEY,4BAAY,GAAG;QAC1B,OAAO,EAAE,SAAyB;QAClC,cAAc,EAAE,gBAAgC;QAChD,YAAY,EAAE,cAA8B;KAC7C,CAAA;AACH,CAAC,EAjBgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAiB/B","sourcesContent":["/**\n * iCure Data Stack API Documentation\n * The iCure Data Stack Application API is the native interface to iCure. This version is obsolete, please use v2.\n *\n * OpenAPI spec version: v1\n *\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport { Address } from './Address'\nimport { CodeStub } from './CodeStub'\nimport { FinancialInstitutionInformation } from './FinancialInstitutionInformation'\nimport { FlatRateTarification } from './FlatRateTarification'\nimport { HealthcarePartyHistoryStatus } from './HealthcarePartyHistoryStatus'\nimport { Identifier } from './Identifier'\nimport { PersonName } from './PersonName'\nimport { PropertyStub } from './PropertyStub'\n\n/**\n * This entity is a root level object. It represents a healthcare party. It is serialized in JSON and saved in the underlying icure-healthdata CouchDB database.\n */\nimport { b64_2ab } from './ModelHelper'\nexport class HealthcareParty {\n constructor(json: JSON | any) {\n Object.assign(this as HealthcareParty, json, json?.picture ? { picture: b64_2ab(json.picture) } : {})\n }\n\n /**\n * the Id of the healthcare party. We encourage using either a v4 UUID or a HL7 Id.\n */\n id?: string\n /**\n * the revision of the healthcare party in the database, used for conflict management / optimistic locking.\n */\n rev?: string\n /**\n * creation timestamp of the object.\n */\n created?: number\n /**\n * last modification timestamp of the object.\n */\n modified?: number\n /**\n * hard delete (unix epoch in ms) timestamp of the object. Filled automatically when deletePatient is called.\n */\n deletionDate?: number\n /**\n * The healthcareparty's identifiers, used by the client to identify uniquely and unambiguously the HCP. However, iCure may not guarantee this uniqueness by itself : This should be done at the client side.\n */\n identifier?: Array<Identifier>\n /**\n * A tag is an item from a codification system that qualifies an entity as being member of a certain class, whatever the value it might have taken. If the tag qualifies the content of a field, it means that whatever the content of the field, the tag will always apply. For example, the label of a field is qualified using a tag. LOINC is a codification system typically used for tags.\n */\n tags?: Array<CodeStub>\n /**\n * A code is an item from a codification system that qualifies the content of this entity. SNOMED-CT, ICPC-2 or ICD-10 codifications systems can be used for codes\n */\n codes?: Array<CodeStub>\n /**\n * The full name of the healthcare party, used mainly when the healthcare party is an organization\n */\n name?: string\n /**\n * the lastname (surname) of the healthcare party. This is the official lastname that should be used for official administrative purposes.\n */\n lastName?: string\n /**\n * the firstname (name) of the healthcare party.\n */\n firstName?: string\n /**\n * the list of all names of the healthcare party, also containing the official full name information. Ordered by preference of use. First element is therefore the official name used for the healthcare party in the application\n */\n names?: Array<PersonName>\n /**\n * the gender of the healthcare party: male, female, indeterminate, changed, changedToMale, changedToFemale, unknown\n */\n gender?: HealthcareParty.GenderEnum\n /**\n * Mr., Ms., Pr., Dr. ...\n */\n civility?: string\n /**\n * The name of the company this healthcare party is member of\n */\n companyName?: string\n /**\n * Medical specialty of the healthcare party\n */\n speciality?: string\n /**\n * Bank Account identifier of the healhtcare party, IBAN, deprecated, use financial institutions instead\n */\n bankAccount?: string\n /**\n * Bank Identifier Code, the SWIFT Address assigned to the bank, use financial institutions instead\n */\n bic?: string\n proxyBankAccount?: string\n proxyBic?: string\n /**\n * All details included in the invoice header\n */\n invoiceHeader?: string\n /**\n * Identifier number for institution type if the healthcare party is an enterprise\n */\n cbe?: string\n /**\n * Identifier number for the institution if the healthcare party is an organization\n */\n ehp?: string\n /**\n * The id of the user that usually handles this healthcare party.\n */\n userId?: string\n /**\n * Id of parent of the user representing the healthcare party.\n */\n parentId?: string\n convention?: number\n /**\n * National Institute for Health and Invalidity Insurance number assigned to healthcare parties (institution or person).\n */\n nihii?: string\n nihiiSpecCode?: string\n /**\n * Social security inscription number.\n */\n ssin?: string\n /**\n * The list of addresses (with address type).\n */\n addresses?: Array<Address>\n /**\n * The list of languages spoken by the patient ordered by fluency (alpha-2 code http://www.loc.gov/standards/iso639-2/ascii_8bits.html).\n */\n languages?: Array<string>\n /**\n * A picture usually saved in JPEG format.\n */\n picture?: ArrayBuffer\n /**\n * The healthcare party's status: 'trainee' or 'withconvention' or 'accredited'\n */\n statuses?: Array<HealthcareParty.StatusesEnum>\n /**\n * The healthcare party's status history\n */\n statusHistory?: Array<HealthcarePartyHistoryStatus>\n /**\n * Medical specialty of the healthcare party codified using FHIR or Kmehr codificaiton scheme\n */\n specialityCodes?: Array<CodeStub>\n /**\n * The type of format for contacting the healthcare party, ex: mobile, phone, email, etc.\n */\n sendFormats?: { [key: string]: string }\n /**\n * Text notes.\n */\n notes?: string\n /**\n * List of financial information (Bank, bank account).\n */\n financialInstitutionInformation?: Array<FinancialInstitutionInformation>\n /**\n * A description of the HCP, meant for the public and in multiple languages.\n */\n descr?: { [key: string]: string }\n /**\n * The invoicing scheme this healthcare party adheres to : 'service fee' or 'flat rate'\n */\n billingType?: string\n type?: string\n contactPerson?: string\n contactPersonHcpId?: string\n supervisorId?: string\n flatRateTarifications?: Array<FlatRateTarification>\n importedData?: { [key: string]: string }\n options?: { [key: string]: string }\n properties?: Array<PropertyStub>\n /**\n * For each couple of HcParties (delegator and delegate), this map contains the exchange AES key. The delegator is always this hcp, the key of the map is the id of the delegate.The AES exchange key is encrypted using RSA twice : once using this hcp public key (index 0 in the Array) and once using the other hcp public key (index 1 in the Array). For a pair of HcParties. Each HcParty always has one AES exchange key for himself.\n */\n hcPartyKeys?: { [key: string]: Array<string> }\n /**\n * Extra AES exchange keys, usually the ones we lost access to at some point. The structure is { publicKey: { delegateId: { myPubKey1: aesExKey_for_this, delegatePubKey1: aesExKey_for_delegate } } }\n */\n aesExchangeKeys?: { [key: string]: { [key: string]: { [key: string]: string } } }\n /**\n * Our private keys encrypted with our public keys. The structure is { publicKey1: { publicKey2: privateKey2_encrypted_with_publicKey1, publicKey3: privateKey3_encrypted_with_publicKey1 } }\n */\n transferKeys?: { [key: string]: { [key: string]: string } }\n /**\n * The privateKeyShamirPartitions are used to share this hcp's private RSA key with a series of other hcParties using Shamir's algorithm. The key of the map is the hcp Id with whom this partition has been shared. The value is \\\"threshold⎮partition in hex\\\" encrypted using the the partition's holder's public RSA key\n */\n privateKeyShamirPartitions?: { [key: string]: string }\n /**\n * The public key of this hcp\n */\n publicKey?: string\n /**\n * The public keys of this actor which should be used for RSA-OAEP with sha256 encryption.\n */\n publicKeysForOaepWithSha256?: string[]\n}\nexport namespace HealthcareParty {\n export type GenderEnum = 'male' | 'female' | 'indeterminate' | 'changed' | 'changedToMale' | 'changedToFemale' | 'unknown'\n export const GenderEnum = {\n Male: 'male' as GenderEnum,\n Female: 'female' as GenderEnum,\n Indeterminate: 'indeterminate' as GenderEnum,\n Changed: 'changed' as GenderEnum,\n ChangedToMale: 'changedToMale' as GenderEnum,\n ChangedToFemale: 'changedToFemale' as GenderEnum,\n Unknown: 'unknown' as GenderEnum,\n }\n export type StatusesEnum = 'trainee' | 'withconvention' | 'accreditated'\n export const StatusesEnum = {\n Trainee: 'trainee' as StatusesEnum,\n Withconvention: 'withconvention' as StatusesEnum,\n Accreditated: 'accreditated' as StatusesEnum,\n }\n}\n"]}
1
+ {"version":3,"file":"HealthcareParty.js","sourceRoot":"","sources":["../../../icc-api/model/HealthcareParty.ts"],"names":[],"mappings":";;;AAoBA;;GAEG;AACH,+CAAuC;AACvC,MAAa,eAAe;IAC1B,YAAY,IAAgB;QAC1B,MAAM,CAAC,MAAM,CAAC,IAAuB,EAAE,IAAI,EAAE,CAAA,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,EAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAA,qBAAO,EAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAA;IACvG,CAAC;CAsLF;AAzLD,0CAyLC;AACD,WAAiB,eAAe;IAEjB,0BAAU,GAAG;QACxB,IAAI,EAAE,MAAoB;QAC1B,MAAM,EAAE,QAAsB;QAC9B,aAAa,EAAE,eAA6B;QAC5C,OAAO,EAAE,SAAuB;QAChC,aAAa,EAAE,eAA6B;QAC5C,eAAe,EAAE,iBAA+B;QAChD,OAAO,EAAE,SAAuB;KACjC,CAAA;IAEY,4BAAY,GAAG;QAC1B,OAAO,EAAE,SAAyB;QAClC,cAAc,EAAE,gBAAgC;QAChD,YAAY,EAAE,cAA8B;KAC7C,CAAA;AACH,CAAC,EAjBgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAiB/B","sourcesContent":["/**\n * iCure Data Stack API Documentation\n * The iCure Data Stack Application API is the native interface to iCure. This version is obsolete, please use v2.\n *\n * OpenAPI spec version: v1\n *\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport { Address } from './Address'\nimport { CodeStub } from './CodeStub'\nimport { FinancialInstitutionInformation } from './FinancialInstitutionInformation'\nimport { FlatRateTarification } from './FlatRateTarification'\nimport { HealthcarePartyHistoryStatus } from './HealthcarePartyHistoryStatus'\nimport { Identifier } from './Identifier'\nimport { PersonName } from './PersonName'\nimport { PropertyStub } from './PropertyStub'\n\n/**\n * This entity is a root level object. It represents a healthcare party. It is serialized in JSON and saved in the underlying icure-healthdata CouchDB database.\n */\nimport { b64_2ab } from './ModelHelper'\nexport class HealthcareParty {\n constructor(json: JSON | any) {\n Object.assign(this as HealthcareParty, json, json?.picture ? { picture: b64_2ab(json.picture) } : {})\n }\n\n /**\n * the Id of the healthcare party. We encourage using either a v4 UUID or a HL7 Id.\n */\n id?: string\n /**\n * the revision of the healthcare party in the database, used for conflict management / optimistic locking.\n */\n rev?: string\n /**\n * creation timestamp of the object.\n */\n created?: number\n /**\n * last modification timestamp of the object.\n */\n modified?: number\n /**\n * hard delete (unix epoch in ms) timestamp of the object. Filled automatically when deletePatient is called.\n */\n deletionDate?: number\n /**\n * The healthcareparty's identifiers, used by the client to identify uniquely and unambiguously the HCP. However, iCure may not guarantee this uniqueness by itself : This should be done at the client side.\n */\n identifier?: Array<Identifier>\n /**\n * A tag is an item from a codification system that qualifies an entity as being member of a certain class, whatever the value it might have taken. If the tag qualifies the content of a field, it means that whatever the content of the field, the tag will always apply. For example, the label of a field is qualified using a tag. LOINC is a codification system typically used for tags.\n */\n tags?: Array<CodeStub>\n /**\n * A code is an item from a codification system that qualifies the content of this entity. SNOMED-CT, ICPC-2 or ICD-10 codifications systems can be used for codes\n */\n codes?: Array<CodeStub>\n /**\n * The full name of the healthcare party, used mainly when the healthcare party is an organization\n */\n name?: string\n /**\n * the lastname (surname) of the healthcare party. This is the official lastname that should be used for official administrative purposes.\n */\n lastName?: string\n /**\n * the firstname (name) of the healthcare party.\n */\n firstName?: string\n /**\n * the list of all names of the healthcare party, also containing the official full name information. Ordered by preference of use. First element is therefore the official name used for the healthcare party in the application\n */\n names?: Array<PersonName>\n /**\n * the gender of the healthcare party: male, female, indeterminate, changed, changedToMale, changedToFemale, unknown\n */\n gender?: HealthcareParty.GenderEnum\n /**\n * Mr., Ms., Pr., Dr. ...\n */\n civility?: string\n /**\n * The name of the company this healthcare party is member of\n */\n companyName?: string\n /**\n * Medical specialty of the healthcare party\n */\n speciality?: string\n /**\n * Bank Account identifier of the healhtcare party, IBAN, deprecated, use financial institutions instead\n */\n bankAccount?: string\n /**\n * Bank Identifier Code, the SWIFT Address assigned to the bank, use financial institutions instead\n */\n bic?: string\n proxyBankAccount?: string\n proxyBic?: string\n /**\n * All details included in the invoice header\n */\n invoiceHeader?: string\n /**\n * Identifier number for institution type if the healthcare party is an enterprise\n */\n cbe?: string\n /**\n * Identifier number for the institution if the healthcare party is an organization\n */\n ehp?: string\n /**\n * The id of the user that usually handles this healthcare party.\n */\n userId?: string\n /**\n * Id of parent of the user representing the healthcare party.\n */\n parentId?: string\n convention?: number\n /**\n * National Institute for Health and Invalidity Insurance number assigned to healthcare parties (institution or person).\n */\n nihii?: string\n nihiiSpecCode?: string\n /**\n * Social security inscription number.\n */\n ssin?: string\n /**\n * The list of addresses (with address type).\n */\n addresses?: Array<Address>\n /**\n * The list of languages spoken by the patient ordered by fluency (alpha-2 code http://www.loc.gov/standards/iso639-2/ascii_8bits.html).\n */\n languages?: Array<string>\n /**\n * A picture usually saved in JPEG format.\n */\n picture?: ArrayBuffer\n /**\n * The healthcare party's status: 'trainee' or 'withconvention' or 'accredited'\n */\n statuses?: Array<HealthcareParty.StatusesEnum>\n /**\n * The healthcare party's status history\n */\n statusHistory?: Array<HealthcarePartyHistoryStatus>\n /**\n * Medical specialty of the healthcare party codified using FHIR or Kmehr codificaiton scheme\n */\n specialityCodes?: Array<CodeStub>\n /**\n * The type of format for contacting the healthcare party, ex: mobile, phone, email, etc.\n */\n sendFormats?: { [key: string]: string }\n /**\n * Text notes.\n */\n notes?: string\n /**\n * List of financial information (Bank, bank account).\n */\n financialInstitutionInformation?: Array<FinancialInstitutionInformation>\n /**\n * A description of the HCP, meant for the public and in multiple languages.\n */\n descr?: { [key: string]: string }\n /**\n * The invoicing scheme this healthcare party adheres to : 'service fee' or 'flat rate'\n */\n billingType?: string\n type?: string\n contactPerson?: string\n contactPersonHcpId?: string\n supervisorId?: string\n flatRateTarifications?: Array<FlatRateTarification>\n importedData?: { [key: string]: string }\n options?: { [key: string]: string }\n properties?: Array<PropertyStub>\n /**\n * For each couple of HcParties (delegator and delegate), this map contains the exchange AES key. The delegator is always this hcp, the key of the map is the id of the delegate.The AES exchange key is encrypted using RSA twice : once using this hcp public key (index 0 in the Array) and once using the other hcp public key (index 1 in the Array). For a pair of HcParties. Each HcParty always has one AES exchange key for himself.\n */\n hcPartyKeys?: { [key: string]: Array<string> }\n /**\n * Extra AES exchange keys, usually the ones we lost access to at some point. The structure is { publicKey: { delegateId: { myPubKey1: aesExKey_for_this, delegatePubKey1: aesExKey_for_delegate } } }\n */\n aesExchangeKeys?: { [key: string]: { [key: string]: { [key: string]: string } } }\n /**\n * Our private keys encrypted with our public keys. The structure is { publicKey1: { publicKey2: privateKey2_encrypted_with_publicKey1, publicKey3: privateKey3_encrypted_with_publicKey1 } }\n */\n transferKeys?: { [key: string]: { [key: string]: string } }\n /**\n * The privateKeyShamirPartitions are used to share this hcp's private RSA key with a series of other hcParties using Shamir's algorithm. The key of the map is the hcp Id with whom this partition has been shared. The value is \\\"threshold⎮partition in hex\\\" encrypted using the the partition's holder's public RSA key\n */\n privateKeyShamirPartitions?: { [key: string]: string }\n /**\n * The public key of this hcp\n */\n publicKey?: string\n /**\n * The public keys of this actor that are generates using the OAEP Sha-256 standard\n */\n publicKeysForOaepWithSha256?: Array<string>\n}\nexport namespace HealthcareParty {\n export type GenderEnum = 'male' | 'female' | 'indeterminate' | 'changed' | 'changedToMale' | 'changedToFemale' | 'unknown'\n export const GenderEnum = {\n Male: 'male' as GenderEnum,\n Female: 'female' as GenderEnum,\n Indeterminate: 'indeterminate' as GenderEnum,\n Changed: 'changed' as GenderEnum,\n ChangedToMale: 'changedToMale' as GenderEnum,\n ChangedToFemale: 'changedToFemale' as GenderEnum,\n Unknown: 'unknown' as GenderEnum,\n }\n export type StatusesEnum = 'trainee' | 'withconvention' | 'accreditated'\n export const StatusesEnum = {\n Trainee: 'trainee' as StatusesEnum,\n Withconvention: 'withconvention' as StatusesEnum,\n Accreditated: 'accreditated' as StatusesEnum,\n }\n}\n"]}
@@ -11,6 +11,7 @@
11
11
  */
12
12
  import { CodeStub } from './CodeStub';
13
13
  import { Delegation } from './Delegation';
14
+ import { SecurityMetadata } from './SecurityMetadata';
14
15
  export declare class IcureStub {
15
16
  constructor(json: JSON | any);
16
17
  id?: string;
@@ -73,4 +74,5 @@ export declare class IcureStub {
73
74
  * The base64 encoded data of this object, formatted as JSON and encrypted in AES using the random master key from encryptionKeys.
74
75
  */
75
76
  encryptedSelf?: string;
77
+ securityMetadata?: SecurityMetadata;
76
78
  }
@@ -1 +1 @@
1
- {"version":3,"file":"IcureStub.js","sourceRoot":"","sources":["../../../icc-api/model/IcureStub.ts"],"names":[],"mappings":";;;AAcA,MAAa,SAAS;IACpB,YAAY,IAAgB;QAC1B,MAAM,CAAC,MAAM,CAAC,IAAiB,EAAE,IAAI,CAAC,CAAA;IACxC,CAAC;CAwDF;AA3DD,8BA2DC","sourcesContent":["/**\n * iCure Data Stack API Documentation\n * The iCure Data Stack Application API is the native interface to iCure. This version is obsolete, please use v2.\n *\n * OpenAPI spec version: v1\n *\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport { CodeStub } from './CodeStub'\nimport { Delegation } from './Delegation'\n\nexport class IcureStub {\n constructor(json: JSON | any) {\n Object.assign(this as IcureStub, json)\n }\n\n id?: string\n rev?: string\n /**\n * The timestamp (unix epoch in ms) of creation of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n created?: number\n /**\n * The date (unix epoch in ms) of the latest modification of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n modified?: number\n /**\n * The id of the User that has created this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n author?: string\n /**\n * The id of the HealthcareParty that is responsible for this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n responsible?: string\n /**\n * The id of the medical location where this entity was created.\n */\n medicalLocationId?: string\n /**\n * A tag is an item from a codification system that qualifies an entity as being member of a certain class, whatever the value it might have taken. If the tag qualifies the content of a field, it means that whatever the content of the field, the tag will always apply. For example, the label of a field is qualified using a tag. LOINC is a codification system typically used for tags.\n */\n tags?: Array<CodeStub>\n /**\n * A code is an item from a codification system that qualifies the content of this entity. SNOMED-CT, ICPC-2 or ICD-10 codifications systems can be used for codes\n */\n codes?: Array<CodeStub>\n /**\n * Soft delete (unix epoch in ms) timestamp of the object.\n */\n endOfLife?: number\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find all contacts for a specific patient. These keys are in clear. You can have several to partition the medical document space.\n */\n secretForeignKeys?: Array<string>\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find the patient for a specific contact. These keys are the encrypted id (using the hcParty key for the delegate) that can be found in clear inside the patient. ids encrypted using the hcParty keys.\n */\n cryptedForeignKeys?: { [key: string]: Array<Delegation> }\n /**\n * When a document is created, the responsible generates a cryptographically random master key (never to be used for something else than referencing from other entities). He/she encrypts it using his own AES exchange key and stores it as a delegation. The responsible is thus always in the delegations as well\n */\n delegations?: { [key: string]: Array<Delegation> }\n /**\n * When a document needs to be encrypted, the responsible generates a cryptographically random master key (different from the delegation key, never to appear in clear anywhere in the db. He/she encrypts it using his own AES exchange key and stores it as a delegation\n */\n encryptionKeys?: { [key: string]: Array<Delegation> }\n /**\n * The base64 encoded data of this object, formatted as JSON and encrypted in AES using the random master key from encryptionKeys.\n */\n encryptedSelf?: string\n}\n"]}
1
+ {"version":3,"file":"IcureStub.js","sourceRoot":"","sources":["../../../icc-api/model/IcureStub.ts"],"names":[],"mappings":";;;AAeA,MAAa,SAAS;IACpB,YAAY,IAAgB;QAC1B,MAAM,CAAC,MAAM,CAAC,IAAiB,EAAE,IAAI,CAAC,CAAA;IACxC,CAAC;CAyDF;AA5DD,8BA4DC","sourcesContent":["/**\n * iCure Data Stack API Documentation\n * The iCure Data Stack Application API is the native interface to iCure. This version is obsolete, please use v2.\n *\n * OpenAPI spec version: v1\n *\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport { CodeStub } from './CodeStub'\nimport { Delegation } from './Delegation'\nimport { SecurityMetadata } from './SecurityMetadata'\n\nexport class IcureStub {\n constructor(json: JSON | any) {\n Object.assign(this as IcureStub, json)\n }\n\n id?: string\n rev?: string\n /**\n * The timestamp (unix epoch in ms) of creation of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n created?: number\n /**\n * The date (unix epoch in ms) of the latest modification of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n modified?: number\n /**\n * The id of the User that has created this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n author?: string\n /**\n * The id of the HealthcareParty that is responsible for this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n responsible?: string\n /**\n * The id of the medical location where this entity was created.\n */\n medicalLocationId?: string\n /**\n * A tag is an item from a codification system that qualifies an entity as being member of a certain class, whatever the value it might have taken. If the tag qualifies the content of a field, it means that whatever the content of the field, the tag will always apply. For example, the label of a field is qualified using a tag. LOINC is a codification system typically used for tags.\n */\n tags?: Array<CodeStub>\n /**\n * A code is an item from a codification system that qualifies the content of this entity. SNOMED-CT, ICPC-2 or ICD-10 codifications systems can be used for codes\n */\n codes?: Array<CodeStub>\n /**\n * Soft delete (unix epoch in ms) timestamp of the object.\n */\n endOfLife?: number\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find all contacts for a specific patient. These keys are in clear. You can have several to partition the medical document space.\n */\n secretForeignKeys?: Array<string>\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find the patient for a specific contact. These keys are the encrypted id (using the hcParty key for the delegate) that can be found in clear inside the patient. ids encrypted using the hcParty keys.\n */\n cryptedForeignKeys?: { [key: string]: Array<Delegation> }\n /**\n * When a document is created, the responsible generates a cryptographically random master key (never to be used for something else than referencing from other entities). He/she encrypts it using his own AES exchange key and stores it as a delegation. The responsible is thus always in the delegations as well\n */\n delegations?: { [key: string]: Array<Delegation> }\n /**\n * When a document needs to be encrypted, the responsible generates a cryptographically random master key (different from the delegation key, never to appear in clear anywhere in the db. He/she encrypts it using his own AES exchange key and stores it as a delegation\n */\n encryptionKeys?: { [key: string]: Array<Delegation> }\n /**\n * The base64 encoded data of this object, formatted as JSON and encrypted in AES using the random master key from encryptionKeys.\n */\n encryptedSelf?: string\n securityMetadata?: SecurityMetadata\n}\n"]}
@@ -14,6 +14,8 @@ import { Delegation } from './Delegation';
14
14
  import { IdentityDocumentReader } from './IdentityDocumentReader';
15
15
  import { InvoicingCode } from './InvoicingCode';
16
16
  import { Payment } from './Payment';
17
+ import { SecurityMetadata } from './SecurityMetadata';
18
+ import { EntityWithDelegationTypeName } from '../../icc-x-api/utils/EntityWithDelegationTypeName';
17
19
  /**
18
20
  * This entity is a root level object. It represents an Invoice. It is serialized in JSON and saved in the underlying iCure CouchDB database.
19
21
  */
@@ -171,6 +173,8 @@ export declare class Invoice {
171
173
  * The base64 encoded data of this object, formatted as JSON and encrypted in AES using the random master key from encryptionKeys.
172
174
  */
173
175
  encryptedSelf?: string;
176
+ securityMetadata?: SecurityMetadata;
177
+ readonly _type?: EntityWithDelegationTypeName;
174
178
  }
175
179
  export declare namespace Invoice {
176
180
  type InvoiceTypeEnum = 'patient' | 'mutualfund' | 'payingagency' | 'insurance' | 'efact' | 'other';
@@ -6,6 +6,7 @@ exports.Invoice = void 0;
6
6
  */
7
7
  class Invoice {
8
8
  constructor(json) {
9
+ this._type = 'Invoice';
9
10
  Object.assign(this, json);
10
11
  }
11
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Invoice.js","sourceRoot":"","sources":["../../../icc-api/model/Invoice.ts"],"names":[],"mappings":";;;AAiBA;;GAEG;AACH,MAAa,OAAO;IAClB,YAAY,IAAgB;QAC1B,MAAM,CAAC,MAAM,CAAC,IAAe,EAAE,IAAI,CAAC,CAAA;IACtC,CAAC;CAgJF;AAnJD,0BAmJC;AACD,WAAiB,OAAO;IAET,uBAAe,GAAG;QAC7B,OAAO,EAAE,SAA4B;QACrC,UAAU,EAAE,YAA+B;QAC3C,YAAY,EAAE,cAAiC;QAC/C,SAAS,EAAE,WAA8B;QACzC,KAAK,EAAE,OAA0B;QACjC,KAAK,EAAE,OAA0B;KAClC,CAAA;IAEY,0BAAkB,GAAG;QAChC,KAAK,EAAE,OAA6B;QACpC,OAAO,EAAE,SAA+B;QACxC,KAAK,EAAE,OAA6B;QACpC,KAAK,EAAE,OAA6B;QACpC,SAAS,EAAE,WAAiC;QAC5C,KAAK,EAAE,OAA6B;QACpC,IAAI,EAAE,MAA4B;KACnC,CAAA;IAEY,4BAAoB,GAAG;QAClC,KAAK,EAAE,OAA+B;QACtC,QAAQ,EAAE,UAAkC;KAC7C,CAAA;IAEY,uBAAe,GAAG;QAC7B,IAAI,EAAE,MAAyB;QAC/B,KAAK,EAAE,OAA0B;QACjC,SAAS,EAAE,WAA8B;QACzC,UAAU,EAAE,YAA+B;QAC3C,SAAS,EAAE,WAA8B;QACzC,MAAM,EAAE,QAA2B;QACnC,OAAO,EAAE,SAA4B;QACrC,KAAK,EAAE,OAA0B;KAClC,CAAA;AACH,CAAC,EApCgB,OAAO,GAAP,eAAO,KAAP,eAAO,QAoCvB","sourcesContent":["/**\n * iCure Data Stack API Documentation\n * The iCure Data Stack Application API is the native interface to iCure. This version is obsolete, please use v2.\n *\n * OpenAPI spec version: v1\n *\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport { CodeStub } from './CodeStub'\nimport { Delegation } from './Delegation'\nimport { IdentityDocumentReader } from './IdentityDocumentReader'\nimport { InvoicingCode } from './InvoicingCode'\nimport { Payment } from './Payment'\n\n/**\n * This entity is a root level object. It represents an Invoice. It is serialized in JSON and saved in the underlying iCure CouchDB database.\n */\nexport class Invoice {\n constructor(json: JSON | any) {\n Object.assign(this as Invoice, json)\n }\n\n /**\n * The Id of the Invoice. We encourage using either a v4 UUID or a HL7 Id.\n */\n id?: string\n /**\n * The revision of the invoice in the database, used for conflict management / optimistic locking.\n */\n rev?: string\n /**\n * The timestamp (unix epoch in ms) of creation of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n created?: number\n /**\n * The date (unix epoch in ms) of the latest modification of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n modified?: number\n /**\n * The id of the User that has created this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n author?: string\n /**\n * The id of the HealthcareParty that is responsible for this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n responsible?: string\n /**\n * The id of the medical location where this entity was created.\n */\n medicalLocationId?: string\n /**\n * A tag is an item from a codification system that qualifies an entity as being member of a certain class, whatever the value it might have taken. If the tag qualifies the content of a field, it means that whatever the content of the field, the tag will always apply. For example, the label of a field is qualified using a tag. LOINC is a codification system typically used for tags.\n */\n tags?: Array<CodeStub>\n /**\n * A code is an item from a codification system that qualifies the content of this entity. SNOMED-CT, ICPC-2 or ICD-10 codifications systems can be used for codes\n */\n codes?: Array<CodeStub>\n /**\n * Soft delete (unix epoch in ms) timestamp of the object.\n */\n endOfLife?: number\n /**\n * hard delete (unix epoch in ms) timestamp of the object. Filled automatically when deletePatient is called.\n */\n deletionDate?: number\n /**\n * The timestamp (unix epoch in ms) when the invoice was drafted, will be filled automatically if missing. Not enforced by the application server.\n */\n invoiceDate?: number\n /**\n * The timestamp (unix epoch in ms) when the invoice was sent, will be filled automatically if missing. Not enforced by the application server.\n */\n sentDate?: number\n /**\n * The timestamp (unix epoch in ms) when the invoice is printed, will be filled automatically if missing. Not enforced by the application server.\n */\n printedDate?: number\n invoicingCodes?: Array<InvoicingCode>\n receipts?: { [key: string]: string }\n /**\n * The type of user that receives the invoice, a patient or a healthcare party\n */\n recipientType?: string\n /**\n * Id of the recipient of the invoice. For healthcare party and insurance, patient link happens through secretForeignKeys\n */\n recipientId?: string\n invoiceReference?: string\n thirdPartyReference?: string\n thirdPartyPaymentJustification?: string\n thirdPartyPaymentReason?: string\n reason?: string\n /**\n * The format the invoice should follow based on the recipient which could be a patient, mutual fund or paying agency such as the CPAS\n */\n invoiceType?: Invoice.InvoiceTypeEnum\n /**\n * Medium of the invoice: CD ROM, Email, paper, etc.\n */\n sentMediumType?: Invoice.SentMediumTypeEnum\n interventionType?: Invoice.InterventionTypeEnum\n groupId?: string\n /**\n * Type of payment, ex: cash, wired, insurance, debit card, etc.\n */\n paymentType?: Invoice.PaymentTypeEnum\n paid?: number\n payments?: Array<Payment>\n gnotionNihii?: string\n gnotionSsin?: string\n gnotionLastName?: string\n gnotionFirstName?: string\n gnotionCdHcParty?: string\n invoicePeriod?: number\n careProviderType?: string\n internshipNihii?: string\n internshipSsin?: string\n internshipLastName?: string\n internshipFirstName?: string\n internshipCdHcParty?: string\n internshipCbe?: string\n supervisorNihii?: string\n supervisorSsin?: string\n supervisorLastName?: string\n supervisorFirstName?: string\n supervisorCdHcParty?: string\n supervisorCbe?: string\n error?: string\n encounterLocationName?: string\n encounterLocationNihii?: string\n encounterLocationNorm?: number\n longDelayJustification?: number\n correctiveInvoiceId?: string\n correctedInvoiceId?: string\n creditNote?: boolean\n creditNoteRelatedInvoiceId?: string\n idDocument?: IdentityDocumentReader\n admissionDate?: number\n locationNihii?: string\n locationService?: number\n cancelReason?: string\n cancelDate?: number\n options?: { [key: string]: string }\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find all contacts for a specific patient. These keys are in clear. You can have several to partition the medical document space.\n */\n secretForeignKeys?: Array<string>\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find the patient for a specific contact. These keys are the encrypted id (using the hcParty key for the delegate) that can be found in clear inside the patient. ids encrypted using the hcParty keys.\n */\n cryptedForeignKeys?: { [key: string]: Array<Delegation> }\n /**\n * When a document is created, the responsible generates a cryptographically random master key (never to be used for something else than referencing from other entities). He/she encrypts it using his own AES exchange key and stores it as a delegation. The responsible is thus always in the delegations as well\n */\n delegations?: { [key: string]: Array<Delegation> }\n /**\n * When a document needs to be encrypted, the responsible generates a cryptographically random master key (different from the delegation key, never to appear in clear anywhere in the db. He/she encrypts it using his own AES exchange key and stores it as a delegation\n */\n encryptionKeys?: { [key: string]: Array<Delegation> }\n /**\n * The base64 encoded data of this object, formatted as JSON and encrypted in AES using the random master key from encryptionKeys.\n */\n encryptedSelf?: string\n}\nexport namespace Invoice {\n export type InvoiceTypeEnum = 'patient' | 'mutualfund' | 'payingagency' | 'insurance' | 'efact' | 'other'\n export const InvoiceTypeEnum = {\n Patient: 'patient' as InvoiceTypeEnum,\n Mutualfund: 'mutualfund' as InvoiceTypeEnum,\n Payingagency: 'payingagency' as InvoiceTypeEnum,\n Insurance: 'insurance' as InvoiceTypeEnum,\n Efact: 'efact' as InvoiceTypeEnum,\n Other: 'other' as InvoiceTypeEnum,\n }\n export type SentMediumTypeEnum = 'cdrom' | 'eattest' | 'efact' | 'email' | 'mediprima' | 'paper' | 'stat'\n export const SentMediumTypeEnum = {\n Cdrom: 'cdrom' as SentMediumTypeEnum,\n Eattest: 'eattest' as SentMediumTypeEnum,\n Efact: 'efact' as SentMediumTypeEnum,\n Email: 'email' as SentMediumTypeEnum,\n Mediprima: 'mediprima' as SentMediumTypeEnum,\n Paper: 'paper' as SentMediumTypeEnum,\n Stat: 'stat' as SentMediumTypeEnum,\n }\n export type InterventionTypeEnum = 'total' | 'userfees'\n export const InterventionTypeEnum = {\n Total: 'total' as InterventionTypeEnum,\n Userfees: 'userfees' as InterventionTypeEnum,\n }\n export type PaymentTypeEnum = 'cash' | 'wired' | 'insurance' | 'creditcard' | 'debitcard' | 'paypal' | 'bitcoin' | 'other'\n export const PaymentTypeEnum = {\n Cash: 'cash' as PaymentTypeEnum,\n Wired: 'wired' as PaymentTypeEnum,\n Insurance: 'insurance' as PaymentTypeEnum,\n Creditcard: 'creditcard' as PaymentTypeEnum,\n Debitcard: 'debitcard' as PaymentTypeEnum,\n Paypal: 'paypal' as PaymentTypeEnum,\n Bitcoin: 'bitcoin' as PaymentTypeEnum,\n Other: 'other' as PaymentTypeEnum,\n }\n}\n"]}
1
+ {"version":3,"file":"Invoice.js","sourceRoot":"","sources":["../../../icc-api/model/Invoice.ts"],"names":[],"mappings":";;;AAmBA;;GAEG;AACH,MAAa,OAAO;IAClB,YAAY,IAAgB;QAmJnB,UAAK,GAAkC,SAAS,CAAA;QAlJvD,MAAM,CAAC,MAAM,CAAC,IAAe,EAAE,IAAI,CAAC,CAAA;IACtC,CAAC;CAkJF;AArJD,0BAqJC;AACD,WAAiB,OAAO;IAET,uBAAe,GAAG;QAC7B,OAAO,EAAE,SAA4B;QACrC,UAAU,EAAE,YAA+B;QAC3C,YAAY,EAAE,cAAiC;QAC/C,SAAS,EAAE,WAA8B;QACzC,KAAK,EAAE,OAA0B;QACjC,KAAK,EAAE,OAA0B;KAClC,CAAA;IAEY,0BAAkB,GAAG;QAChC,KAAK,EAAE,OAA6B;QACpC,OAAO,EAAE,SAA+B;QACxC,KAAK,EAAE,OAA6B;QACpC,KAAK,EAAE,OAA6B;QACpC,SAAS,EAAE,WAAiC;QAC5C,KAAK,EAAE,OAA6B;QACpC,IAAI,EAAE,MAA4B;KACnC,CAAA;IAEY,4BAAoB,GAAG;QAClC,KAAK,EAAE,OAA+B;QACtC,QAAQ,EAAE,UAAkC;KAC7C,CAAA;IAEY,uBAAe,GAAG;QAC7B,IAAI,EAAE,MAAyB;QAC/B,KAAK,EAAE,OAA0B;QACjC,SAAS,EAAE,WAA8B;QACzC,UAAU,EAAE,YAA+B;QAC3C,SAAS,EAAE,WAA8B;QACzC,MAAM,EAAE,QAA2B;QACnC,OAAO,EAAE,SAA4B;QACrC,KAAK,EAAE,OAA0B;KAClC,CAAA;AACH,CAAC,EApCgB,OAAO,GAAP,eAAO,KAAP,eAAO,QAoCvB","sourcesContent":["/**\n * iCure Data Stack API Documentation\n * The iCure Data Stack Application API is the native interface to iCure. This version is obsolete, please use v2.\n *\n * OpenAPI spec version: v1\n *\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport { CodeStub } from './CodeStub'\nimport { Delegation } from './Delegation'\nimport { IdentityDocumentReader } from './IdentityDocumentReader'\nimport { InvoicingCode } from './InvoicingCode'\nimport { Payment } from './Payment'\nimport { SecurityMetadata } from './SecurityMetadata'\nimport { EntityWithDelegationTypeName } from '../../icc-x-api/utils/EntityWithDelegationTypeName'\n\n/**\n * This entity is a root level object. It represents an Invoice. It is serialized in JSON and saved in the underlying iCure CouchDB database.\n */\nexport class Invoice {\n constructor(json: JSON | any) {\n Object.assign(this as Invoice, json)\n }\n\n /**\n * The Id of the Invoice. We encourage using either a v4 UUID or a HL7 Id.\n */\n id?: string\n /**\n * The revision of the invoice in the database, used for conflict management / optimistic locking.\n */\n rev?: string\n /**\n * The timestamp (unix epoch in ms) of creation of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n created?: number\n /**\n * The date (unix epoch in ms) of the latest modification of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n modified?: number\n /**\n * The id of the User that has created this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n author?: string\n /**\n * The id of the HealthcareParty that is responsible for this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n responsible?: string\n /**\n * The id of the medical location where this entity was created.\n */\n medicalLocationId?: string\n /**\n * A tag is an item from a codification system that qualifies an entity as being member of a certain class, whatever the value it might have taken. If the tag qualifies the content of a field, it means that whatever the content of the field, the tag will always apply. For example, the label of a field is qualified using a tag. LOINC is a codification system typically used for tags.\n */\n tags?: Array<CodeStub>\n /**\n * A code is an item from a codification system that qualifies the content of this entity. SNOMED-CT, ICPC-2 or ICD-10 codifications systems can be used for codes\n */\n codes?: Array<CodeStub>\n /**\n * Soft delete (unix epoch in ms) timestamp of the object.\n */\n endOfLife?: number\n /**\n * hard delete (unix epoch in ms) timestamp of the object. Filled automatically when deletePatient is called.\n */\n deletionDate?: number\n /**\n * The timestamp (unix epoch in ms) when the invoice was drafted, will be filled automatically if missing. Not enforced by the application server.\n */\n invoiceDate?: number\n /**\n * The timestamp (unix epoch in ms) when the invoice was sent, will be filled automatically if missing. Not enforced by the application server.\n */\n sentDate?: number\n /**\n * The timestamp (unix epoch in ms) when the invoice is printed, will be filled automatically if missing. Not enforced by the application server.\n */\n printedDate?: number\n invoicingCodes?: Array<InvoicingCode>\n receipts?: { [key: string]: string }\n /**\n * The type of user that receives the invoice, a patient or a healthcare party\n */\n recipientType?: string\n /**\n * Id of the recipient of the invoice. For healthcare party and insurance, patient link happens through secretForeignKeys\n */\n recipientId?: string\n invoiceReference?: string\n thirdPartyReference?: string\n thirdPartyPaymentJustification?: string\n thirdPartyPaymentReason?: string\n reason?: string\n /**\n * The format the invoice should follow based on the recipient which could be a patient, mutual fund or paying agency such as the CPAS\n */\n invoiceType?: Invoice.InvoiceTypeEnum\n /**\n * Medium of the invoice: CD ROM, Email, paper, etc.\n */\n sentMediumType?: Invoice.SentMediumTypeEnum\n interventionType?: Invoice.InterventionTypeEnum\n groupId?: string\n /**\n * Type of payment, ex: cash, wired, insurance, debit card, etc.\n */\n paymentType?: Invoice.PaymentTypeEnum\n paid?: number\n payments?: Array<Payment>\n gnotionNihii?: string\n gnotionSsin?: string\n gnotionLastName?: string\n gnotionFirstName?: string\n gnotionCdHcParty?: string\n invoicePeriod?: number\n careProviderType?: string\n internshipNihii?: string\n internshipSsin?: string\n internshipLastName?: string\n internshipFirstName?: string\n internshipCdHcParty?: string\n internshipCbe?: string\n supervisorNihii?: string\n supervisorSsin?: string\n supervisorLastName?: string\n supervisorFirstName?: string\n supervisorCdHcParty?: string\n supervisorCbe?: string\n error?: string\n encounterLocationName?: string\n encounterLocationNihii?: string\n encounterLocationNorm?: number\n longDelayJustification?: number\n correctiveInvoiceId?: string\n correctedInvoiceId?: string\n creditNote?: boolean\n creditNoteRelatedInvoiceId?: string\n idDocument?: IdentityDocumentReader\n admissionDate?: number\n locationNihii?: string\n locationService?: number\n cancelReason?: string\n cancelDate?: number\n options?: { [key: string]: string }\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find all contacts for a specific patient. These keys are in clear. You can have several to partition the medical document space.\n */\n secretForeignKeys?: Array<string>\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find the patient for a specific contact. These keys are the encrypted id (using the hcParty key for the delegate) that can be found in clear inside the patient. ids encrypted using the hcParty keys.\n */\n cryptedForeignKeys?: { [key: string]: Array<Delegation> }\n /**\n * When a document is created, the responsible generates a cryptographically random master key (never to be used for something else than referencing from other entities). He/she encrypts it using his own AES exchange key and stores it as a delegation. The responsible is thus always in the delegations as well\n */\n delegations?: { [key: string]: Array<Delegation> }\n /**\n * When a document needs to be encrypted, the responsible generates a cryptographically random master key (different from the delegation key, never to appear in clear anywhere in the db. He/she encrypts it using his own AES exchange key and stores it as a delegation\n */\n encryptionKeys?: { [key: string]: Array<Delegation> }\n /**\n * The base64 encoded data of this object, formatted as JSON and encrypted in AES using the random master key from encryptionKeys.\n */\n encryptedSelf?: string\n securityMetadata?: SecurityMetadata\n readonly _type?: EntityWithDelegationTypeName = 'Invoice'\n}\nexport namespace Invoice {\n export type InvoiceTypeEnum = 'patient' | 'mutualfund' | 'payingagency' | 'insurance' | 'efact' | 'other'\n export const InvoiceTypeEnum = {\n Patient: 'patient' as InvoiceTypeEnum,\n Mutualfund: 'mutualfund' as InvoiceTypeEnum,\n Payingagency: 'payingagency' as InvoiceTypeEnum,\n Insurance: 'insurance' as InvoiceTypeEnum,\n Efact: 'efact' as InvoiceTypeEnum,\n Other: 'other' as InvoiceTypeEnum,\n }\n export type SentMediumTypeEnum = 'cdrom' | 'eattest' | 'efact' | 'email' | 'mediprima' | 'paper' | 'stat'\n export const SentMediumTypeEnum = {\n Cdrom: 'cdrom' as SentMediumTypeEnum,\n Eattest: 'eattest' as SentMediumTypeEnum,\n Efact: 'efact' as SentMediumTypeEnum,\n Email: 'email' as SentMediumTypeEnum,\n Mediprima: 'mediprima' as SentMediumTypeEnum,\n Paper: 'paper' as SentMediumTypeEnum,\n Stat: 'stat' as SentMediumTypeEnum,\n }\n export type InterventionTypeEnum = 'total' | 'userfees'\n export const InterventionTypeEnum = {\n Total: 'total' as InterventionTypeEnum,\n Userfees: 'userfees' as InterventionTypeEnum,\n }\n export type PaymentTypeEnum = 'cash' | 'wired' | 'insurance' | 'creditcard' | 'debitcard' | 'paypal' | 'bitcoin' | 'other'\n export const PaymentTypeEnum = {\n Cash: 'cash' as PaymentTypeEnum,\n Wired: 'wired' as PaymentTypeEnum,\n Insurance: 'insurance' as PaymentTypeEnum,\n Creditcard: 'creditcard' as PaymentTypeEnum,\n Debitcard: 'debitcard' as PaymentTypeEnum,\n Paypal: 'paypal' as PaymentTypeEnum,\n Bitcoin: 'bitcoin' as PaymentTypeEnum,\n Other: 'other' as PaymentTypeEnum,\n }\n}\n"]}
@@ -13,6 +13,8 @@ import { CodeStub } from './CodeStub';
13
13
  import { Delegation } from './Delegation';
14
14
  import { Identifier } from './Identifier';
15
15
  import { PropertyStub } from './PropertyStub';
16
+ import { SecurityMetadata } from './SecurityMetadata';
17
+ import { EntityWithDelegationTypeName } from '../../icc-x-api/utils/EntityWithDelegationTypeName';
16
18
  export declare class MaintenanceTask {
17
19
  constructor(json: JSON | any);
18
20
  id?: string;
@@ -83,6 +85,8 @@ export declare class MaintenanceTask {
83
85
  * The base64 encoded data of this object, formatted as JSON and encrypted in AES using the random master key from encryptionKeys.
84
86
  */
85
87
  encryptedSelf?: string;
88
+ securityMetadata?: SecurityMetadata;
89
+ readonly _type?: EntityWithDelegationTypeName;
86
90
  }
87
91
  export declare namespace MaintenanceTask {
88
92
  type StatusEnum = 'pending' | 'ongoing' | 'cancelled' | 'completed';
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MaintenanceTask = void 0;
4
4
  class MaintenanceTask {
5
5
  constructor(json) {
6
+ this._type = 'MaintenanceTask';
6
7
  Object.assign(this, json);
7
8
  }
8
9
  }
@@ -1 +1 @@
1
- {"version":3,"file":"MaintenanceTask.js","sourceRoot":"","sources":["../../../icc-api/model/MaintenanceTask.ts"],"names":[],"mappings":";;;AAgBA,MAAa,eAAe;IAC1B,YAAY,IAAgB;QAC1B,MAAM,CAAC,MAAM,CAAC,IAAuB,EAAE,IAAI,CAAC,CAAA;IAC9C,CAAC;CAgEF;AAnED,0CAmEC;AACD,WAAiB,eAAe;IAEjB,0BAAU,GAAkD;QACvE,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,SAAS;QAClB,SAAS,EAAE,WAAW;QACtB,SAAS,EAAE,WAAW;KACvB,CAAA;IAEY,4BAAY,GAAoD;QAC3E,aAAa,EAAE,iBAAiB;QAChC,oBAAoB,EAAE,0BAA0B;QAChD,KAAK,EAAE,OAAO;KACf,CAAA;AACH,CAAC,EAdgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAc/B","sourcesContent":["/**\n * iCure Data Stack API Documentation\n * The iCure Data Stack Application API is the native interface to iCure. This version is obsolete, please use v2.\n *\n * OpenAPI spec version: v1\n *\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport { CodeStub } from './CodeStub'\nimport { Delegation } from './Delegation'\nimport { Identifier } from './Identifier'\nimport { PropertyStub } from './PropertyStub'\n\nexport class MaintenanceTask {\n constructor(json: JSON | any) {\n Object.assign(this as MaintenanceTask, json)\n }\n\n id?: string\n rev?: string\n identifier?: Array<Identifier>\n /**\n * The timestamp (unix epoch in ms) of creation of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n created?: number\n /**\n * The date (unix epoch in ms) of the latest modification of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n modified?: number\n /**\n * The id of the User that has created this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n author?: string\n /**\n * The id of the HealthcareParty that is responsible for this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n responsible?: string\n /**\n * The id of the medical location where this entity was created.\n */\n medicalLocationId?: string\n /**\n * A tag is an item from a codification system that qualifies an entity as being member of a certain class, whatever the value it might have taken. If the tag qualifies the content of a field, it means that whatever the content of the field, the tag will always apply. For example, the label of a field is qualified using a tag. LOINC is a codification system typically used for tags.\n */\n tags?: Array<CodeStub>\n /**\n * A code is an item from a codification system that qualifies the content of this entity. SNOMED-CT, ICPC-2 or ICD-10 codifications systems can be used for codes\n */\n codes?: Array<CodeStub>\n /**\n * Soft delete (unix epoch in ms) timestamp of the object.\n */\n endOfLife?: number\n /**\n * hard delete (unix epoch in ms) timestamp of the object. Filled automatically when deletePatient is called.\n */\n deletionDate?: number\n taskType?: MaintenanceTask.TaskTypeEnum\n properties?: Array<PropertyStub>\n status?: MaintenanceTask.StatusEnum\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find all contacts for a specific patient. These keys are in clear. You can have several to partition the medical document space.\n */\n secretForeignKeys?: Array<string>\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find the patient for a specific contact. These keys are the encrypted id (using the hcParty key for the delegate) that can be found in clear inside the patient. ids encrypted using the hcParty keys.\n */\n cryptedForeignKeys?: { [key: string]: Array<Delegation> }\n /**\n * When a document is created, the responsible generates a cryptographically random master key (never to be used for something else than referencing from other entities). He/she encrypts it using his own AES exchange key and stores it as a delegation. The responsible is thus always in the delegations as well\n */\n delegations?: { [key: string]: Array<Delegation> }\n /**\n * When a document needs to be encrypted, the responsible generates a cryptographically random master key (different from the delegation key, never to appear in clear anywhere in the db. He/she encrypts it using his own AES exchange key and stores it as a delegation\n */\n encryptionKeys?: { [key: string]: Array<Delegation> }\n /**\n * The base64 encoded data of this object, formatted as JSON and encrypted in AES using the random master key from encryptionKeys.\n */\n encryptedSelf?: string\n}\nexport namespace MaintenanceTask {\n export type StatusEnum = 'pending' | 'ongoing' | 'cancelled' | 'completed'\n export const StatusEnum: { [key: string]: MaintenanceTask.StatusEnum } = {\n Pending: 'pending',\n Ongoing: 'ongoing',\n Cancelled: 'cancelled',\n Completed: 'completed',\n }\n export type TaskTypeEnum = 'KEY_PAIR_UPDATE' | 'NEW_USER_OWN_DATA_ACCESS' | 'OTHER'\n export const TaskTypeEnum: { [key: string]: MaintenanceTask.TaskTypeEnum } = {\n KeyPairUpdate: 'KEY_PAIR_UPDATE',\n NewUserOwnDataAccess: 'NEW_USER_OWN_DATA_ACCESS',\n Other: 'OTHER',\n }\n}\n"]}
1
+ {"version":3,"file":"MaintenanceTask.js","sourceRoot":"","sources":["../../../icc-api/model/MaintenanceTask.ts"],"names":[],"mappings":";;;AAkBA,MAAa,eAAe;IAC1B,YAAY,IAAgB;QAmEnB,UAAK,GAAkC,iBAAiB,CAAA;QAlE/D,MAAM,CAAC,MAAM,CAAC,IAAuB,EAAE,IAAI,CAAC,CAAA;IAC9C,CAAC;CAkEF;AArED,0CAqEC;AACD,WAAiB,eAAe;IAEjB,0BAAU,GAAkD;QACvE,OAAO,EAAE,SAAS;QAClB,OAAO,EAAE,SAAS;QAClB,SAAS,EAAE,WAAW;QACtB,SAAS,EAAE,WAAW;KACvB,CAAA;IAEY,4BAAY,GAAoD;QAC3E,aAAa,EAAE,iBAAiB;QAChC,oBAAoB,EAAE,0BAA0B;QAChD,KAAK,EAAE,OAAO;KACf,CAAA;AACH,CAAC,EAdgB,eAAe,GAAf,uBAAe,KAAf,uBAAe,QAc/B","sourcesContent":["/**\n * iCure Data Stack API Documentation\n * The iCure Data Stack Application API is the native interface to iCure. This version is obsolete, please use v2.\n *\n * OpenAPI spec version: v1\n *\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport { CodeStub } from './CodeStub'\nimport { Delegation } from './Delegation'\nimport { Identifier } from './Identifier'\nimport { PropertyStub } from './PropertyStub'\nimport { SecurityMetadata } from './SecurityMetadata'\nimport { EntityWithDelegationTypeName } from '../../icc-x-api/utils/EntityWithDelegationTypeName'\n\nexport class MaintenanceTask {\n constructor(json: JSON | any) {\n Object.assign(this as MaintenanceTask, json)\n }\n\n id?: string\n rev?: string\n identifier?: Array<Identifier>\n /**\n * The timestamp (unix epoch in ms) of creation of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n created?: number\n /**\n * The date (unix epoch in ms) of the latest modification of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n modified?: number\n /**\n * The id of the User that has created this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n author?: string\n /**\n * The id of the HealthcareParty that is responsible for this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n responsible?: string\n /**\n * The id of the medical location where this entity was created.\n */\n medicalLocationId?: string\n /**\n * A tag is an item from a codification system that qualifies an entity as being member of a certain class, whatever the value it might have taken. If the tag qualifies the content of a field, it means that whatever the content of the field, the tag will always apply. For example, the label of a field is qualified using a tag. LOINC is a codification system typically used for tags.\n */\n tags?: Array<CodeStub>\n /**\n * A code is an item from a codification system that qualifies the content of this entity. SNOMED-CT, ICPC-2 or ICD-10 codifications systems can be used for codes\n */\n codes?: Array<CodeStub>\n /**\n * Soft delete (unix epoch in ms) timestamp of the object.\n */\n endOfLife?: number\n /**\n * hard delete (unix epoch in ms) timestamp of the object. Filled automatically when deletePatient is called.\n */\n deletionDate?: number\n taskType?: MaintenanceTask.TaskTypeEnum\n properties?: Array<PropertyStub>\n status?: MaintenanceTask.StatusEnum\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find all contacts for a specific patient. These keys are in clear. You can have several to partition the medical document space.\n */\n secretForeignKeys?: Array<string>\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find the patient for a specific contact. These keys are the encrypted id (using the hcParty key for the delegate) that can be found in clear inside the patient. ids encrypted using the hcParty keys.\n */\n cryptedForeignKeys?: { [key: string]: Array<Delegation> }\n /**\n * When a document is created, the responsible generates a cryptographically random master key (never to be used for something else than referencing from other entities). He/she encrypts it using his own AES exchange key and stores it as a delegation. The responsible is thus always in the delegations as well\n */\n delegations?: { [key: string]: Array<Delegation> }\n /**\n * When a document needs to be encrypted, the responsible generates a cryptographically random master key (different from the delegation key, never to appear in clear anywhere in the db. He/she encrypts it using his own AES exchange key and stores it as a delegation\n */\n encryptionKeys?: { [key: string]: Array<Delegation> }\n /**\n * The base64 encoded data of this object, formatted as JSON and encrypted in AES using the random master key from encryptionKeys.\n */\n encryptedSelf?: string\n securityMetadata?: SecurityMetadata\n readonly _type?: EntityWithDelegationTypeName = 'MaintenanceTask'\n}\nexport namespace MaintenanceTask {\n export type StatusEnum = 'pending' | 'ongoing' | 'cancelled' | 'completed'\n export const StatusEnum: { [key: string]: MaintenanceTask.StatusEnum } = {\n Pending: 'pending',\n Ongoing: 'ongoing',\n Cancelled: 'cancelled',\n Completed: 'completed',\n }\n export type TaskTypeEnum = 'KEY_PAIR_UPDATE' | 'NEW_USER_OWN_DATA_ACCESS' | 'OTHER'\n export const TaskTypeEnum: { [key: string]: MaintenanceTask.TaskTypeEnum } = {\n KeyPairUpdate: 'KEY_PAIR_UPDATE',\n NewUserOwnDataAccess: 'NEW_USER_OWN_DATA_ACCESS',\n Other: 'OTHER',\n }\n}\n"]}
@@ -12,6 +12,8 @@
12
12
  import { CodeStub } from './CodeStub';
13
13
  import { Delegation } from './Delegation';
14
14
  import { MessageReadStatus } from './MessageReadStatus';
15
+ import { SecurityMetadata } from './SecurityMetadata';
16
+ import { EntityWithDelegationTypeName } from '../../icc-x-api/utils/EntityWithDelegationTypeName';
15
17
  /**
16
18
  * This entity is a root level object. It represents a Message. It is serialized in JSON and saved in the underlying CouchDB database.
17
19
  */
@@ -152,4 +154,6 @@ export declare class Message {
152
154
  * The base64 encoded data of this object, formatted as JSON and encrypted in AES using the random master key from encryptionKeys.
153
155
  */
154
156
  encryptedSelf?: string;
157
+ securityMetadata?: SecurityMetadata;
158
+ readonly _type?: EntityWithDelegationTypeName;
155
159
  }
@@ -6,6 +6,7 @@ exports.Message = void 0;
6
6
  */
7
7
  class Message {
8
8
  constructor(json) {
9
+ this._type = 'Message';
9
10
  Object.assign(this, json);
10
11
  }
11
12
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Message.js","sourceRoot":"","sources":["../../../icc-api/model/Message.ts"],"names":[],"mappings":";;;AAeA;;GAEG;AACH,MAAa,OAAO;IAClB,YAAY,IAAgB;QAC1B,MAAM,CAAC,MAAM,CAAC,IAAe,EAAE,IAAI,CAAC,CAAA;IACtC,CAAC;CA2HF;AA9HD,0BA8HC","sourcesContent":["/**\n * iCure Data Stack API Documentation\n * The iCure Data Stack Application API is the native interface to iCure. This version is obsolete, please use v2.\n *\n * OpenAPI spec version: v1\n *\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport { CodeStub } from './CodeStub'\nimport { Delegation } from './Delegation'\nimport { MessageReadStatus } from './MessageReadStatus'\n\n/**\n * This entity is a root level object. It represents a Message. It is serialized in JSON and saved in the underlying CouchDB database.\n */\nexport class Message {\n constructor(json: JSON | any) {\n Object.assign(this as Message, json)\n }\n\n /**\n * The ID of the message. We encourage using either a v4 UUID or a HL7 Id.\n */\n id?: string\n /**\n * The revision of the message in the database, used for conflict management / optimistic locking.\n */\n rev?: string\n /**\n * The timestamp (unix epoch in ms) of creation of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n created?: number\n /**\n * The date (unix epoch in ms) of the latest modification of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n modified?: number\n /**\n * The id of the User that has created this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n author?: string\n /**\n * The id of the HealthcareParty that is responsible for this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n responsible?: string\n /**\n * The id of the medical location where this entity was created.\n */\n medicalLocationId?: string\n /**\n * A tag is an item from a codification system that qualifies an entity as being member of a certain class, whatever the value it might have taken. If the tag qualifies the content of a field, it means that whatever the content of the field, the tag will always apply. For example, the label of a field is qualified using a tag. LOINC is a codification system typically used for tags.\n */\n tags?: Array<CodeStub>\n /**\n * A code is an item from a codification system that qualifies the content of this entity. SNOMED-CT, ICPC-2 or ICD-10 codifications systems can be used for codes\n */\n codes?: Array<CodeStub>\n /**\n * Soft delete (unix epoch in ms) timestamp of the object.\n */\n endOfLife?: number\n /**\n * hard delete (unix epoch in ms) timestamp of the object. Filled automatically when deletePatient is called.\n */\n deletionDate?: number\n /**\n * Address of the sender of the message\n */\n fromAddress?: string\n /**\n * ID of the healthcare party sending the message\n */\n fromHealthcarePartyId?: string\n formId?: string\n /**\n * Status of the message\n */\n status?: number\n /**\n * The type of user who is the recipient of this message\n */\n recipientsType?: string\n /**\n * List of IDs of healthcare parties to whom the message is addressed\n */\n recipients?: Array<string>\n /**\n * The address of the recipient of the message. Format is of an email address with extra domains defined for mycarenet and ehealth: (efact.mycarenet.be/eattest.mycarenet.be/chapter4.mycarenet.be/ehbox.ehealth.fgov.be)\n */\n toAddresses?: Array<string>\n /**\n * The timestamp (unix epoch in ms) when the message was received\n */\n received?: number\n /**\n * The timestamp (unix epoch in ms) when the message was sent\n */\n sent?: number\n metas?: { [key: string]: string }\n /**\n * Status showing whether the message is read or not and the time of reading\n */\n readStatus?: { [key: string]: MessageReadStatus }\n transportGuid?: string\n remark?: string\n conversationGuid?: string\n /**\n * Subject for the message\n */\n subject?: string\n /**\n * Set of IDs for invoices in the message\n */\n invoiceIds?: Array<string>\n /**\n * ID of a parent in a message conversation\n */\n parentId?: string\n externalRef?: string\n unassignedResults?: Array<string>\n assignedResults?: { [key: string]: string }\n senderReferences?: { [key: string]: string }\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find all contacts for a specific patient. These keys are in clear. You can have several to partition the medical document space.\n */\n secretForeignKeys?: Array<string>\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find the patient for a specific contact. These keys are the encrypted id (using the hcParty key for the delegate) that can be found in clear inside the patient. ids encrypted using the hcParty keys.\n */\n cryptedForeignKeys?: { [key: string]: Array<Delegation> }\n /**\n * When a document is created, the responsible generates a cryptographically random master key (never to be used for something else than referencing from other entities). He/she encrypts it using his own AES exchange key and stores it as a delegation. The responsible is thus always in the delegations as well\n */\n delegations?: { [key: string]: Array<Delegation> }\n /**\n * When a document needs to be encrypted, the responsible generates a cryptographically random master key (different from the delegation key, never to appear in clear anywhere in the db. He/she encrypts it using his own AES exchange key and stores it as a delegation\n */\n encryptionKeys?: { [key: string]: Array<Delegation> }\n /**\n * The base64 encoded data of this object, formatted as JSON and encrypted in AES using the random master key from encryptionKeys.\n */\n encryptedSelf?: string\n}\n"]}
1
+ {"version":3,"file":"Message.js","sourceRoot":"","sources":["../../../icc-api/model/Message.ts"],"names":[],"mappings":";;;AAiBA;;GAEG;AACH,MAAa,OAAO;IAClB,YAAY,IAAgB;QA8HnB,UAAK,GAAkC,SAAS,CAAA;QA7HvD,MAAM,CAAC,MAAM,CAAC,IAAe,EAAE,IAAI,CAAC,CAAA;IACtC,CAAC;CA6HF;AAhID,0BAgIC","sourcesContent":["/**\n * iCure Data Stack API Documentation\n * The iCure Data Stack Application API is the native interface to iCure. This version is obsolete, please use v2.\n *\n * OpenAPI spec version: v1\n *\n *\n * NOTE: This class is auto generated by the swagger code generator program.\n * https://github.com/swagger-api/swagger-codegen.git\n * Do not edit the class manually.\n */\nimport { CodeStub } from './CodeStub'\nimport { Delegation } from './Delegation'\nimport { MessageReadStatus } from './MessageReadStatus'\nimport { SecurityMetadata } from './SecurityMetadata'\nimport { EntityWithDelegationTypeName } from '../../icc-x-api/utils/EntityWithDelegationTypeName'\n\n/**\n * This entity is a root level object. It represents a Message. It is serialized in JSON and saved in the underlying CouchDB database.\n */\nexport class Message {\n constructor(json: JSON | any) {\n Object.assign(this as Message, json)\n }\n\n /**\n * The ID of the message. We encourage using either a v4 UUID or a HL7 Id.\n */\n id?: string\n /**\n * The revision of the message in the database, used for conflict management / optimistic locking.\n */\n rev?: string\n /**\n * The timestamp (unix epoch in ms) of creation of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n created?: number\n /**\n * The date (unix epoch in ms) of the latest modification of this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n modified?: number\n /**\n * The id of the User that has created this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n author?: string\n /**\n * The id of the HealthcareParty that is responsible for this entity, will be filled automatically if missing. Not enforced by the application server.\n */\n responsible?: string\n /**\n * The id of the medical location where this entity was created.\n */\n medicalLocationId?: string\n /**\n * A tag is an item from a codification system that qualifies an entity as being member of a certain class, whatever the value it might have taken. If the tag qualifies the content of a field, it means that whatever the content of the field, the tag will always apply. For example, the label of a field is qualified using a tag. LOINC is a codification system typically used for tags.\n */\n tags?: Array<CodeStub>\n /**\n * A code is an item from a codification system that qualifies the content of this entity. SNOMED-CT, ICPC-2 or ICD-10 codifications systems can be used for codes\n */\n codes?: Array<CodeStub>\n /**\n * Soft delete (unix epoch in ms) timestamp of the object.\n */\n endOfLife?: number\n /**\n * hard delete (unix epoch in ms) timestamp of the object. Filled automatically when deletePatient is called.\n */\n deletionDate?: number\n /**\n * Address of the sender of the message\n */\n fromAddress?: string\n /**\n * ID of the healthcare party sending the message\n */\n fromHealthcarePartyId?: string\n formId?: string\n /**\n * Status of the message\n */\n status?: number\n /**\n * The type of user who is the recipient of this message\n */\n recipientsType?: string\n /**\n * List of IDs of healthcare parties to whom the message is addressed\n */\n recipients?: Array<string>\n /**\n * The address of the recipient of the message. Format is of an email address with extra domains defined for mycarenet and ehealth: (efact.mycarenet.be/eattest.mycarenet.be/chapter4.mycarenet.be/ehbox.ehealth.fgov.be)\n */\n toAddresses?: Array<string>\n /**\n * The timestamp (unix epoch in ms) when the message was received\n */\n received?: number\n /**\n * The timestamp (unix epoch in ms) when the message was sent\n */\n sent?: number\n metas?: { [key: string]: string }\n /**\n * Status showing whether the message is read or not and the time of reading\n */\n readStatus?: { [key: string]: MessageReadStatus }\n transportGuid?: string\n remark?: string\n conversationGuid?: string\n /**\n * Subject for the message\n */\n subject?: string\n /**\n * Set of IDs for invoices in the message\n */\n invoiceIds?: Array<string>\n /**\n * ID of a parent in a message conversation\n */\n parentId?: string\n externalRef?: string\n unassignedResults?: Array<string>\n assignedResults?: { [key: string]: string }\n senderReferences?: { [key: string]: string }\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find all contacts for a specific patient. These keys are in clear. You can have several to partition the medical document space.\n */\n secretForeignKeys?: Array<string>\n /**\n * The secretForeignKeys are filled at the to many end of a one to many relationship (for example inside Contact for the Patient -> Contacts relationship). Used when we want to find the patient for a specific contact. These keys are the encrypted id (using the hcParty key for the delegate) that can be found in clear inside the patient. ids encrypted using the hcParty keys.\n */\n cryptedForeignKeys?: { [key: string]: Array<Delegation> }\n /**\n * When a document is created, the responsible generates a cryptographically random master key (never to be used for something else than referencing from other entities). He/she encrypts it using his own AES exchange key and stores it as a delegation. The responsible is thus always in the delegations as well\n */\n delegations?: { [key: string]: Array<Delegation> }\n /**\n * When a document needs to be encrypted, the responsible generates a cryptographically random master key (different from the delegation key, never to appear in clear anywhere in the db. He/she encrypts it using his own AES exchange key and stores it as a delegation\n */\n encryptionKeys?: { [key: string]: Array<Delegation> }\n /**\n * The base64 encoded data of this object, formatted as JSON and encrypted in AES using the random master key from encryptionKeys.\n */\n encryptedSelf?: string\n securityMetadata?: SecurityMetadata\n readonly _type?: EntityWithDelegationTypeName = 'Message'\n}\n"]}
@@ -0,0 +1,9 @@
1
+ import { ExchangeData } from './ExchangeData';
2
+ import { PaginatedDocumentKeyIdPairObject } from './PaginatedDocumentKeyIdPairObject';
3
+ export declare class PaginatedListExchangeData {
4
+ constructor(json: JSON | any);
5
+ pageSize?: number;
6
+ totalSize?: number;
7
+ rows?: Array<ExchangeData>;
8
+ nextKeyPair?: PaginatedDocumentKeyIdPairObject;
9
+ }