@oystehr/sdk 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (660) hide show
  1. package/.eslintrc.js +14 -0
  2. package/LICENSE.md +9 -0
  3. package/README.md +339 -0
  4. package/dist/cjs/client/client.d.ts +49 -0
  5. package/dist/cjs/config.d.ts +45 -0
  6. package/dist/cjs/errors/index.d.ts +17 -0
  7. package/dist/cjs/fhir/fhir-types.d.ts +9 -0
  8. package/dist/cjs/fhir/index.d.ts +2 -0
  9. package/dist/cjs/fhir/utils.d.ts +14 -0
  10. package/dist/cjs/index.cjs +1333 -0
  11. package/dist/cjs/index.cjs.map +1 -0
  12. package/dist/cjs/index.d.cts +16 -0
  13. package/dist/cjs/index.d.ts +16 -0
  14. package/dist/cjs/index.min.cjs +2 -0
  15. package/dist/cjs/index.min.cjs.map +1 -0
  16. package/dist/cjs/package.json +1 -0
  17. package/dist/cjs/resources/classes/application.d.ts +62 -0
  18. package/dist/cjs/resources/classes/charge.d.ts +30 -0
  19. package/dist/cjs/resources/classes/conversation-ext.d.ts +10 -0
  20. package/dist/cjs/resources/classes/conversation.d.ts +64 -0
  21. package/dist/cjs/resources/classes/developer.d.ts +50 -0
  22. package/dist/cjs/resources/classes/erx.d.ts +18 -0
  23. package/dist/cjs/resources/classes/fhir-ext.d.ts +58 -0
  24. package/dist/cjs/resources/classes/fhir.d.ts +21 -0
  25. package/dist/cjs/resources/classes/index.d.ts +44 -0
  26. package/dist/cjs/resources/classes/m2m.d.ts +57 -0
  27. package/dist/cjs/resources/classes/messaging.d.ts +10 -0
  28. package/dist/cjs/resources/classes/paymentMethod.d.ts +70 -0
  29. package/dist/cjs/resources/classes/project.d.ts +20 -0
  30. package/dist/cjs/resources/classes/rcm.d.ts +39 -0
  31. package/dist/cjs/resources/classes/role.d.ts +42 -0
  32. package/dist/cjs/resources/classes/secret.d.ts +34 -0
  33. package/dist/cjs/resources/classes/telemed.d.ts +29 -0
  34. package/dist/cjs/resources/classes/transactionalSMS.d.ts +22 -0
  35. package/dist/cjs/resources/classes/user.d.ts +56 -0
  36. package/dist/cjs/resources/classes/version.d.ts +10 -0
  37. package/dist/cjs/resources/classes/z3-ext.d.ts +10 -0
  38. package/dist/cjs/resources/classes/z3.d.ts +51 -0
  39. package/dist/cjs/resources/classes/zambda-ext.d.ts +6 -0
  40. package/dist/cjs/resources/classes/zambda.d.ts +63 -0
  41. package/dist/cjs/resources/classes/zambdaLogStream.d.ts +27 -0
  42. package/dist/cjs/resources/index.d.ts +1 -0
  43. package/dist/cjs/resources/types/AccessPolicy.d.ts +7 -0
  44. package/dist/cjs/resources/types/Application.d.ts +59 -0
  45. package/dist/cjs/resources/types/ApplicationCreateParams.d.ts +59 -0
  46. package/dist/cjs/resources/types/ApplicationCreateResponse.d.ts +5 -0
  47. package/dist/cjs/resources/types/ApplicationDeleteParams.d.ts +3 -0
  48. package/dist/cjs/resources/types/ApplicationGetParams.d.ts +3 -0
  49. package/dist/cjs/resources/types/ApplicationGetResponse.d.ts +5 -0
  50. package/dist/cjs/resources/types/ApplicationListItem.d.ts +15 -0
  51. package/dist/cjs/resources/types/ApplicationListResponse.d.ts +5 -0
  52. package/dist/cjs/resources/types/ApplicationRevokeAccessTokenParams.d.ts +4 -0
  53. package/dist/cjs/resources/types/ApplicationRevokeAccessTokenResponse.d.ts +6 -0
  54. package/dist/cjs/resources/types/ApplicationRevokeRefreshTokenParams.d.ts +4 -0
  55. package/dist/cjs/resources/types/ApplicationRevokeRefreshTokenResponse.d.ts +6 -0
  56. package/dist/cjs/resources/types/ApplicationRotateSecretParams.d.ts +3 -0
  57. package/dist/cjs/resources/types/ApplicationRotateSecretResponse.d.ts +6 -0
  58. package/dist/cjs/resources/types/ApplicationUpdateParams.d.ts +59 -0
  59. package/dist/cjs/resources/types/ApplicationUpdateResponse.d.ts +5 -0
  60. package/dist/cjs/resources/types/Card.d.ts +8 -0
  61. package/dist/cjs/resources/types/CardIdentifier.d.ts +7 -0
  62. package/dist/cjs/resources/types/ChargeDetails.d.ts +8 -0
  63. package/dist/cjs/resources/types/ChargeIssueParams.d.ts +6 -0
  64. package/dist/cjs/resources/types/ChargeStatusParams.d.ts +6 -0
  65. package/dist/cjs/resources/types/ChargeStatusResponse.d.ts +5 -0
  66. package/dist/cjs/resources/types/ClaimAddress.d.ts +7 -0
  67. package/dist/cjs/resources/types/ClaimCMS1500.d.ts +100 -0
  68. package/dist/cjs/resources/types/ClaimDate.d.ts +5 -0
  69. package/dist/cjs/resources/types/ClaimDatePeriod.d.ts +5 -0
  70. package/dist/cjs/resources/types/ClaimDateWithQualifier.d.ts +5 -0
  71. package/dist/cjs/resources/types/ClaimId.d.ts +4 -0
  72. package/dist/cjs/resources/types/ClaimName.d.ts +6 -0
  73. package/dist/cjs/resources/types/ConversationAddParticipantParams.d.ts +21 -0
  74. package/dist/cjs/resources/types/ConversationCreateParams.d.ts +7 -0
  75. package/dist/cjs/resources/types/ConversationCreateResponse.d.ts +10 -0
  76. package/dist/cjs/resources/types/ConversationGetTokenResponse.d.ts +9 -0
  77. package/dist/cjs/resources/types/ConversationMessageParams.d.ts +13 -0
  78. package/dist/cjs/resources/types/ConversationRemoveParticipantParams.d.ts +11 -0
  79. package/dist/cjs/resources/types/Developer.d.ts +20 -0
  80. package/dist/cjs/resources/types/DeveloperDeleteParams.d.ts +3 -0
  81. package/dist/cjs/resources/types/DeveloperGetParams.d.ts +3 -0
  82. package/dist/cjs/resources/types/DeveloperGetResponse.d.ts +5 -0
  83. package/dist/cjs/resources/types/DeveloperInviteParams.d.ts +17 -0
  84. package/dist/cjs/resources/types/DeveloperInviteResponse.d.ts +23 -0
  85. package/dist/cjs/resources/types/DeveloperListItem.d.ts +7 -0
  86. package/dist/cjs/resources/types/DeveloperListResponse.d.ts +5 -0
  87. package/dist/cjs/resources/types/DeveloperListV2Params.d.ts +11 -0
  88. package/dist/cjs/resources/types/DeveloperListV2Response.d.ts +29 -0
  89. package/dist/cjs/resources/types/DeveloperUpdateParams.d.ts +9 -0
  90. package/dist/cjs/resources/types/DeveloperUpdateResponse.d.ts +5 -0
  91. package/dist/cjs/resources/types/ErxAllergySearchParams.d.ts +3 -0
  92. package/dist/cjs/resources/types/ErxAllergySearchResponse.d.ts +19 -0
  93. package/dist/cjs/resources/types/ErxMedicationSearchParams.d.ts +6 -0
  94. package/dist/cjs/resources/types/ErxMedicationSearchResponse.d.ts +38 -0
  95. package/dist/cjs/resources/types/ErxSyncPatientParams.d.ts +3 -0
  96. package/dist/cjs/resources/types/ErxSyncPatientResponse.d.ts +9 -0
  97. package/dist/cjs/resources/types/M2m.d.ts +30 -0
  98. package/dist/cjs/resources/types/M2mCreateParams.d.ts +20 -0
  99. package/dist/cjs/resources/types/M2mCreateResponse.d.ts +5 -0
  100. package/dist/cjs/resources/types/M2mDeleteParams.d.ts +3 -0
  101. package/dist/cjs/resources/types/M2mGetParams.d.ts +3 -0
  102. package/dist/cjs/resources/types/M2mGetResponse.d.ts +5 -0
  103. package/dist/cjs/resources/types/M2mListItem.d.ts +25 -0
  104. package/dist/cjs/resources/types/M2mListResponse.d.ts +5 -0
  105. package/dist/cjs/resources/types/M2mListV2Params.d.ts +10 -0
  106. package/dist/cjs/resources/types/M2mListV2Response.d.ts +16 -0
  107. package/dist/cjs/resources/types/M2mRotateSecretParams.d.ts +3 -0
  108. package/dist/cjs/resources/types/M2mRotateSecretResponse.d.ts +6 -0
  109. package/dist/cjs/resources/types/M2mUpdateParams.d.ts +21 -0
  110. package/dist/cjs/resources/types/M2mUpdateResponse.d.ts +5 -0
  111. package/dist/cjs/resources/types/MessagingGetMessagingConfigResponse.d.ts +8 -0
  112. package/dist/cjs/resources/types/MessagingServiceInfo.d.ts +14 -0
  113. package/dist/cjs/resources/types/PaymentMethodDeleteParams.d.ts +16 -0
  114. package/dist/cjs/resources/types/PaymentMethodListParams.d.ts +12 -0
  115. package/dist/cjs/resources/types/PaymentMethodListResponse.d.ts +8 -0
  116. package/dist/cjs/resources/types/PaymentMethodSetDefaultParams.d.ts +16 -0
  117. package/dist/cjs/resources/types/PaymentMethodSetUpParams.d.ts +12 -0
  118. package/dist/cjs/resources/types/PaymentMethodSetUpResponse.d.ts +9 -0
  119. package/dist/cjs/resources/types/Project.d.ts +17 -0
  120. package/dist/cjs/resources/types/ProjectGetResponse.d.ts +5 -0
  121. package/dist/cjs/resources/types/ProjectUpdateParams.d.ts +16 -0
  122. package/dist/cjs/resources/types/ProjectUpdateResponse.d.ts +5 -0
  123. package/dist/cjs/resources/types/RcmEligibilityCheckParams.d.ts +6 -0
  124. package/dist/cjs/resources/types/RcmEligibilityCheckResponse.d.ts +5 -0
  125. package/dist/cjs/resources/types/RcmSubmitProfessionalClaimParams.d.ts +10 -0
  126. package/dist/cjs/resources/types/RcmSubmitProfessionalClaimResponse.d.ts +5 -0
  127. package/dist/cjs/resources/types/RcmValidateProfessionalClaimParams.d.ts +6 -0
  128. package/dist/cjs/resources/types/RcmValidateProfessionalClaimResponse.d.ts +21 -0
  129. package/dist/cjs/resources/types/Role.d.ts +16 -0
  130. package/dist/cjs/resources/types/RoleCreateParams.d.ts +12 -0
  131. package/dist/cjs/resources/types/RoleCreateResponse.d.ts +5 -0
  132. package/dist/cjs/resources/types/RoleDeleteParams.d.ts +3 -0
  133. package/dist/cjs/resources/types/RoleGetParams.d.ts +3 -0
  134. package/dist/cjs/resources/types/RoleGetResponse.d.ts +5 -0
  135. package/dist/cjs/resources/types/RoleListItem.d.ts +14 -0
  136. package/dist/cjs/resources/types/RoleListResponse.d.ts +5 -0
  137. package/dist/cjs/resources/types/RoleStub.d.ts +10 -0
  138. package/dist/cjs/resources/types/RoleUpdateParams.d.ts +17 -0
  139. package/dist/cjs/resources/types/RoleUpdateResponse.d.ts +5 -0
  140. package/dist/cjs/resources/types/Secret.d.ts +10 -0
  141. package/dist/cjs/resources/types/SecretDeleteParams.d.ts +3 -0
  142. package/dist/cjs/resources/types/SecretGetParams.d.ts +3 -0
  143. package/dist/cjs/resources/types/SecretGetResponse.d.ts +5 -0
  144. package/dist/cjs/resources/types/SecretListItem.d.ts +6 -0
  145. package/dist/cjs/resources/types/SecretListResponse.d.ts +5 -0
  146. package/dist/cjs/resources/types/SecretSetParams.d.ts +10 -0
  147. package/dist/cjs/resources/types/SecretSetResponse.d.ts +5 -0
  148. package/dist/cjs/resources/types/TelemedCreateMeetingParams.d.ts +7 -0
  149. package/dist/cjs/resources/types/TelemedCreateMeetingResponse.d.ts +10 -0
  150. package/dist/cjs/resources/types/TelemedJoinMeetingParams.d.ts +4 -0
  151. package/dist/cjs/resources/types/TelemedJoinMeetingResponse.d.ts +27 -0
  152. package/dist/cjs/resources/types/TransactionalSMSSendParams.d.ts +10 -0
  153. package/dist/cjs/resources/types/TransactionalSMSSendResponse.d.ts +9 -0
  154. package/dist/cjs/resources/types/User.d.ts +36 -0
  155. package/dist/cjs/resources/types/UserDeleteParams.d.ts +3 -0
  156. package/dist/cjs/resources/types/UserGetParams.d.ts +3 -0
  157. package/dist/cjs/resources/types/UserGetResponse.d.ts +5 -0
  158. package/dist/cjs/resources/types/UserInviteParams.d.ts +35 -0
  159. package/dist/cjs/resources/types/UserInviteResponse.d.ts +37 -0
  160. package/dist/cjs/resources/types/UserListItem.d.ts +15 -0
  161. package/dist/cjs/resources/types/UserListResponse.d.ts +5 -0
  162. package/dist/cjs/resources/types/UserListV2Params.d.ts +11 -0
  163. package/dist/cjs/resources/types/UserListV2Response.d.ts +16 -0
  164. package/dist/cjs/resources/types/UserMeResponse.d.ts +5 -0
  165. package/dist/cjs/resources/types/UserUpdateParams.d.ts +9 -0
  166. package/dist/cjs/resources/types/UserUpdateResponse.d.ts +5 -0
  167. package/dist/cjs/resources/types/VersionGetResponse.d.ts +17 -0
  168. package/dist/cjs/resources/types/Z3CreateBucketParams.d.ts +3 -0
  169. package/dist/cjs/resources/types/Z3CreateBucketResponse.d.ts +10 -0
  170. package/dist/cjs/resources/types/Z3DeleteBucketParams.d.ts +3 -0
  171. package/dist/cjs/resources/types/Z3DeleteObjectParams.d.ts +8 -0
  172. package/dist/cjs/resources/types/Z3GetPresignedUrlParams.d.ts +9 -0
  173. package/dist/cjs/resources/types/Z3GetPresignedUrlResponse.d.ts +9 -0
  174. package/dist/cjs/resources/types/Z3ListBucketsResponse.d.ts +14 -0
  175. package/dist/cjs/resources/types/Z3ListObjectsParams.d.ts +4 -0
  176. package/dist/cjs/resources/types/Z3ListObjectsResponse.d.ts +13 -0
  177. package/dist/cjs/resources/types/ZambdaCreateParams.d.ts +12 -0
  178. package/dist/cjs/resources/types/ZambdaCreateResponse.d.ts +5 -0
  179. package/dist/cjs/resources/types/ZambdaDeleteParams.d.ts +3 -0
  180. package/dist/cjs/resources/types/ZambdaExecuteParams.d.ts +4 -0
  181. package/dist/cjs/resources/types/ZambdaExecutePublicParams.d.ts +4 -0
  182. package/dist/cjs/resources/types/ZambdaExecutePublicResponse.d.ts +5 -0
  183. package/dist/cjs/resources/types/ZambdaExecuteResponse.d.ts +5 -0
  184. package/dist/cjs/resources/types/ZambdaExecuteResult.d.ts +10 -0
  185. package/dist/cjs/resources/types/ZambdaFunction.d.ts +38 -0
  186. package/dist/cjs/resources/types/ZambdaGetParams.d.ts +3 -0
  187. package/dist/cjs/resources/types/ZambdaGetResponse.d.ts +5 -0
  188. package/dist/cjs/resources/types/ZambdaListResponse.d.ts +5 -0
  189. package/dist/cjs/resources/types/ZambdaLogStreamGetParams.d.ts +8 -0
  190. package/dist/cjs/resources/types/ZambdaLogStreamGetResponse.d.ts +27 -0
  191. package/dist/cjs/resources/types/ZambdaLogStreamListParams.d.ts +4 -0
  192. package/dist/cjs/resources/types/ZambdaLogStreamListResponse.d.ts +46 -0
  193. package/dist/cjs/resources/types/ZambdaLogStreamSearchParams.d.ts +19 -0
  194. package/dist/cjs/resources/types/ZambdaLogStreamSearchResponse.d.ts +23 -0
  195. package/dist/cjs/resources/types/ZambdaS3UploadParams.d.ts +7 -0
  196. package/dist/cjs/resources/types/ZambdaS3UploadResponse.d.ts +9 -0
  197. package/dist/cjs/resources/types/ZambdaSchedule.d.ts +30 -0
  198. package/dist/cjs/resources/types/ZambdaUpdateParams.d.ts +17 -0
  199. package/dist/cjs/resources/types/ZambdaUpdateResponse.d.ts +5 -0
  200. package/dist/cjs/resources/types/fhir.d.ts +46 -0
  201. package/dist/cjs/resources/types/index.d.ts +158 -0
  202. package/dist/cjs/tests/common.d.ts +2 -0
  203. package/dist/cjs/tests/setup/constants.d.ts +12 -0
  204. package/dist/cjs/tests/setup/global.d.ts +1 -0
  205. package/dist/cjs/tests/setup/per-test.d.ts +1 -0
  206. package/dist/esm/client/client.d.ts +49 -0
  207. package/dist/esm/client/client.js +251 -0
  208. package/dist/esm/client/client.js.map +1 -0
  209. package/dist/esm/config.d.ts +45 -0
  210. package/dist/esm/errors/index.d.ts +17 -0
  211. package/dist/esm/errors/index.js +38 -0
  212. package/dist/esm/errors/index.js.map +1 -0
  213. package/dist/esm/fhir/fhir-types.d.ts +9 -0
  214. package/dist/esm/fhir/index.d.ts +2 -0
  215. package/dist/esm/fhir/utils.d.ts +14 -0
  216. package/dist/esm/index.d.ts +16 -0
  217. package/dist/esm/index.js +14 -0
  218. package/dist/esm/index.js.map +1 -0
  219. package/dist/esm/index.min.js +2 -0
  220. package/dist/esm/index.min.js.map +1 -0
  221. package/dist/esm/node_modules/tslib/package.json +1 -0
  222. package/dist/esm/node_modules/tslib/tslib.es6.js +34 -0
  223. package/dist/esm/node_modules/tslib/tslib.es6.js.map +1 -0
  224. package/dist/esm/package.json +1 -0
  225. package/dist/esm/resources/classes/application.d.ts +62 -0
  226. package/dist/esm/resources/classes/application.js +67 -0
  227. package/dist/esm/resources/classes/application.js.map +1 -0
  228. package/dist/esm/resources/classes/charge.d.ts +30 -0
  229. package/dist/esm/resources/classes/charge.js +35 -0
  230. package/dist/esm/resources/classes/charge.js.map +1 -0
  231. package/dist/esm/resources/classes/conversation-ext.d.ts +10 -0
  232. package/dist/esm/resources/classes/conversation-ext.js +28 -0
  233. package/dist/esm/resources/classes/conversation-ext.js.map +1 -0
  234. package/dist/esm/resources/classes/conversation.d.ts +64 -0
  235. package/dist/esm/resources/classes/conversation.js +69 -0
  236. package/dist/esm/resources/classes/conversation.js.map +1 -0
  237. package/dist/esm/resources/classes/developer.d.ts +50 -0
  238. package/dist/esm/resources/classes/developer.js +55 -0
  239. package/dist/esm/resources/classes/developer.js.map +1 -0
  240. package/dist/esm/resources/classes/erx.d.ts +18 -0
  241. package/dist/esm/resources/classes/erx.js +23 -0
  242. package/dist/esm/resources/classes/erx.js.map +1 -0
  243. package/dist/esm/resources/classes/fhir-ext.d.ts +58 -0
  244. package/dist/esm/resources/classes/fhir-ext.js +130 -0
  245. package/dist/esm/resources/classes/fhir-ext.js.map +1 -0
  246. package/dist/esm/resources/classes/fhir.d.ts +21 -0
  247. package/dist/esm/resources/classes/fhir.js +27 -0
  248. package/dist/esm/resources/classes/fhir.js.map +1 -0
  249. package/dist/esm/resources/classes/index.d.ts +44 -0
  250. package/dist/esm/resources/classes/index.js +49 -0
  251. package/dist/esm/resources/classes/index.js.map +1 -0
  252. package/dist/esm/resources/classes/m2m.d.ts +57 -0
  253. package/dist/esm/resources/classes/m2m.js +62 -0
  254. package/dist/esm/resources/classes/m2m.js.map +1 -0
  255. package/dist/esm/resources/classes/messaging.d.ts +10 -0
  256. package/dist/esm/resources/classes/messaging.js +15 -0
  257. package/dist/esm/resources/classes/messaging.js.map +1 -0
  258. package/dist/esm/resources/classes/paymentMethod.d.ts +70 -0
  259. package/dist/esm/resources/classes/paymentMethod.js +75 -0
  260. package/dist/esm/resources/classes/paymentMethod.js.map +1 -0
  261. package/dist/esm/resources/classes/project.d.ts +20 -0
  262. package/dist/esm/resources/classes/project.js +25 -0
  263. package/dist/esm/resources/classes/project.js.map +1 -0
  264. package/dist/esm/resources/classes/rcm.d.ts +39 -0
  265. package/dist/esm/resources/classes/rcm.js +44 -0
  266. package/dist/esm/resources/classes/rcm.js.map +1 -0
  267. package/dist/esm/resources/classes/role.d.ts +42 -0
  268. package/dist/esm/resources/classes/role.js +47 -0
  269. package/dist/esm/resources/classes/role.js.map +1 -0
  270. package/dist/esm/resources/classes/secret.d.ts +34 -0
  271. package/dist/esm/resources/classes/secret.js +39 -0
  272. package/dist/esm/resources/classes/secret.js.map +1 -0
  273. package/dist/esm/resources/classes/telemed.d.ts +29 -0
  274. package/dist/esm/resources/classes/telemed.js +34 -0
  275. package/dist/esm/resources/classes/telemed.js.map +1 -0
  276. package/dist/esm/resources/classes/transactionalSMS.d.ts +22 -0
  277. package/dist/esm/resources/classes/transactionalSMS.js +27 -0
  278. package/dist/esm/resources/classes/transactionalSMS.js.map +1 -0
  279. package/dist/esm/resources/classes/user.d.ts +56 -0
  280. package/dist/esm/resources/classes/user.js +61 -0
  281. package/dist/esm/resources/classes/user.js.map +1 -0
  282. package/dist/esm/resources/classes/version.d.ts +10 -0
  283. package/dist/esm/resources/classes/version.js +15 -0
  284. package/dist/esm/resources/classes/version.js.map +1 -0
  285. package/dist/esm/resources/classes/z3-ext.d.ts +10 -0
  286. package/dist/esm/resources/classes/z3-ext.js +34 -0
  287. package/dist/esm/resources/classes/z3-ext.js.map +1 -0
  288. package/dist/esm/resources/classes/z3.d.ts +51 -0
  289. package/dist/esm/resources/classes/z3.js +56 -0
  290. package/dist/esm/resources/classes/z3.js.map +1 -0
  291. package/dist/esm/resources/classes/zambda-ext.d.ts +6 -0
  292. package/dist/esm/resources/classes/zambda-ext.js +14 -0
  293. package/dist/esm/resources/classes/zambda-ext.js.map +1 -0
  294. package/dist/esm/resources/classes/zambda.d.ts +63 -0
  295. package/dist/esm/resources/classes/zambda.js +68 -0
  296. package/dist/esm/resources/classes/zambda.js.map +1 -0
  297. package/dist/esm/resources/classes/zambdaLogStream.d.ts +27 -0
  298. package/dist/esm/resources/classes/zambdaLogStream.js +32 -0
  299. package/dist/esm/resources/classes/zambdaLogStream.js.map +1 -0
  300. package/dist/esm/resources/index.d.ts +1 -0
  301. package/dist/esm/resources/types/AccessPolicy.d.ts +7 -0
  302. package/dist/esm/resources/types/Application.d.ts +59 -0
  303. package/dist/esm/resources/types/ApplicationCreateParams.d.ts +59 -0
  304. package/dist/esm/resources/types/ApplicationCreateResponse.d.ts +5 -0
  305. package/dist/esm/resources/types/ApplicationDeleteParams.d.ts +3 -0
  306. package/dist/esm/resources/types/ApplicationGetParams.d.ts +3 -0
  307. package/dist/esm/resources/types/ApplicationGetResponse.d.ts +5 -0
  308. package/dist/esm/resources/types/ApplicationListItem.d.ts +15 -0
  309. package/dist/esm/resources/types/ApplicationListResponse.d.ts +5 -0
  310. package/dist/esm/resources/types/ApplicationRevokeAccessTokenParams.d.ts +4 -0
  311. package/dist/esm/resources/types/ApplicationRevokeAccessTokenResponse.d.ts +6 -0
  312. package/dist/esm/resources/types/ApplicationRevokeRefreshTokenParams.d.ts +4 -0
  313. package/dist/esm/resources/types/ApplicationRevokeRefreshTokenResponse.d.ts +6 -0
  314. package/dist/esm/resources/types/ApplicationRotateSecretParams.d.ts +3 -0
  315. package/dist/esm/resources/types/ApplicationRotateSecretResponse.d.ts +6 -0
  316. package/dist/esm/resources/types/ApplicationUpdateParams.d.ts +59 -0
  317. package/dist/esm/resources/types/ApplicationUpdateResponse.d.ts +5 -0
  318. package/dist/esm/resources/types/Card.d.ts +8 -0
  319. package/dist/esm/resources/types/CardIdentifier.d.ts +7 -0
  320. package/dist/esm/resources/types/ChargeDetails.d.ts +8 -0
  321. package/dist/esm/resources/types/ChargeIssueParams.d.ts +6 -0
  322. package/dist/esm/resources/types/ChargeStatusParams.d.ts +6 -0
  323. package/dist/esm/resources/types/ChargeStatusResponse.d.ts +5 -0
  324. package/dist/esm/resources/types/ClaimAddress.d.ts +7 -0
  325. package/dist/esm/resources/types/ClaimCMS1500.d.ts +100 -0
  326. package/dist/esm/resources/types/ClaimDate.d.ts +5 -0
  327. package/dist/esm/resources/types/ClaimDatePeriod.d.ts +5 -0
  328. package/dist/esm/resources/types/ClaimDateWithQualifier.d.ts +5 -0
  329. package/dist/esm/resources/types/ClaimId.d.ts +4 -0
  330. package/dist/esm/resources/types/ClaimName.d.ts +6 -0
  331. package/dist/esm/resources/types/ConversationAddParticipantParams.d.ts +21 -0
  332. package/dist/esm/resources/types/ConversationCreateParams.d.ts +7 -0
  333. package/dist/esm/resources/types/ConversationCreateResponse.d.ts +10 -0
  334. package/dist/esm/resources/types/ConversationGetTokenResponse.d.ts +9 -0
  335. package/dist/esm/resources/types/ConversationMessageParams.d.ts +13 -0
  336. package/dist/esm/resources/types/ConversationRemoveParticipantParams.d.ts +11 -0
  337. package/dist/esm/resources/types/Developer.d.ts +20 -0
  338. package/dist/esm/resources/types/DeveloperDeleteParams.d.ts +3 -0
  339. package/dist/esm/resources/types/DeveloperGetParams.d.ts +3 -0
  340. package/dist/esm/resources/types/DeveloperGetResponse.d.ts +5 -0
  341. package/dist/esm/resources/types/DeveloperInviteParams.d.ts +17 -0
  342. package/dist/esm/resources/types/DeveloperInviteResponse.d.ts +23 -0
  343. package/dist/esm/resources/types/DeveloperListItem.d.ts +7 -0
  344. package/dist/esm/resources/types/DeveloperListResponse.d.ts +5 -0
  345. package/dist/esm/resources/types/DeveloperListV2Params.d.ts +11 -0
  346. package/dist/esm/resources/types/DeveloperListV2Response.d.ts +29 -0
  347. package/dist/esm/resources/types/DeveloperUpdateParams.d.ts +9 -0
  348. package/dist/esm/resources/types/DeveloperUpdateResponse.d.ts +5 -0
  349. package/dist/esm/resources/types/ErxAllergySearchParams.d.ts +3 -0
  350. package/dist/esm/resources/types/ErxAllergySearchResponse.d.ts +19 -0
  351. package/dist/esm/resources/types/ErxMedicationSearchParams.d.ts +6 -0
  352. package/dist/esm/resources/types/ErxMedicationSearchResponse.d.ts +38 -0
  353. package/dist/esm/resources/types/ErxSyncPatientParams.d.ts +3 -0
  354. package/dist/esm/resources/types/ErxSyncPatientResponse.d.ts +9 -0
  355. package/dist/esm/resources/types/M2m.d.ts +30 -0
  356. package/dist/esm/resources/types/M2mCreateParams.d.ts +20 -0
  357. package/dist/esm/resources/types/M2mCreateResponse.d.ts +5 -0
  358. package/dist/esm/resources/types/M2mDeleteParams.d.ts +3 -0
  359. package/dist/esm/resources/types/M2mGetParams.d.ts +3 -0
  360. package/dist/esm/resources/types/M2mGetResponse.d.ts +5 -0
  361. package/dist/esm/resources/types/M2mListItem.d.ts +25 -0
  362. package/dist/esm/resources/types/M2mListResponse.d.ts +5 -0
  363. package/dist/esm/resources/types/M2mListV2Params.d.ts +10 -0
  364. package/dist/esm/resources/types/M2mListV2Response.d.ts +16 -0
  365. package/dist/esm/resources/types/M2mRotateSecretParams.d.ts +3 -0
  366. package/dist/esm/resources/types/M2mRotateSecretResponse.d.ts +6 -0
  367. package/dist/esm/resources/types/M2mUpdateParams.d.ts +21 -0
  368. package/dist/esm/resources/types/M2mUpdateResponse.d.ts +5 -0
  369. package/dist/esm/resources/types/MessagingGetMessagingConfigResponse.d.ts +8 -0
  370. package/dist/esm/resources/types/MessagingServiceInfo.d.ts +14 -0
  371. package/dist/esm/resources/types/PaymentMethodDeleteParams.d.ts +16 -0
  372. package/dist/esm/resources/types/PaymentMethodListParams.d.ts +12 -0
  373. package/dist/esm/resources/types/PaymentMethodListResponse.d.ts +8 -0
  374. package/dist/esm/resources/types/PaymentMethodSetDefaultParams.d.ts +16 -0
  375. package/dist/esm/resources/types/PaymentMethodSetUpParams.d.ts +12 -0
  376. package/dist/esm/resources/types/PaymentMethodSetUpResponse.d.ts +9 -0
  377. package/dist/esm/resources/types/Project.d.ts +17 -0
  378. package/dist/esm/resources/types/ProjectGetResponse.d.ts +5 -0
  379. package/dist/esm/resources/types/ProjectUpdateParams.d.ts +16 -0
  380. package/dist/esm/resources/types/ProjectUpdateResponse.d.ts +5 -0
  381. package/dist/esm/resources/types/RcmEligibilityCheckParams.d.ts +6 -0
  382. package/dist/esm/resources/types/RcmEligibilityCheckResponse.d.ts +5 -0
  383. package/dist/esm/resources/types/RcmSubmitProfessionalClaimParams.d.ts +10 -0
  384. package/dist/esm/resources/types/RcmSubmitProfessionalClaimResponse.d.ts +5 -0
  385. package/dist/esm/resources/types/RcmValidateProfessionalClaimParams.d.ts +6 -0
  386. package/dist/esm/resources/types/RcmValidateProfessionalClaimResponse.d.ts +21 -0
  387. package/dist/esm/resources/types/Role.d.ts +16 -0
  388. package/dist/esm/resources/types/RoleCreateParams.d.ts +12 -0
  389. package/dist/esm/resources/types/RoleCreateResponse.d.ts +5 -0
  390. package/dist/esm/resources/types/RoleDeleteParams.d.ts +3 -0
  391. package/dist/esm/resources/types/RoleGetParams.d.ts +3 -0
  392. package/dist/esm/resources/types/RoleGetResponse.d.ts +5 -0
  393. package/dist/esm/resources/types/RoleListItem.d.ts +14 -0
  394. package/dist/esm/resources/types/RoleListResponse.d.ts +5 -0
  395. package/dist/esm/resources/types/RoleStub.d.ts +10 -0
  396. package/dist/esm/resources/types/RoleUpdateParams.d.ts +17 -0
  397. package/dist/esm/resources/types/RoleUpdateResponse.d.ts +5 -0
  398. package/dist/esm/resources/types/Secret.d.ts +10 -0
  399. package/dist/esm/resources/types/SecretDeleteParams.d.ts +3 -0
  400. package/dist/esm/resources/types/SecretGetParams.d.ts +3 -0
  401. package/dist/esm/resources/types/SecretGetResponse.d.ts +5 -0
  402. package/dist/esm/resources/types/SecretListItem.d.ts +6 -0
  403. package/dist/esm/resources/types/SecretListResponse.d.ts +5 -0
  404. package/dist/esm/resources/types/SecretSetParams.d.ts +10 -0
  405. package/dist/esm/resources/types/SecretSetResponse.d.ts +5 -0
  406. package/dist/esm/resources/types/TelemedCreateMeetingParams.d.ts +7 -0
  407. package/dist/esm/resources/types/TelemedCreateMeetingResponse.d.ts +10 -0
  408. package/dist/esm/resources/types/TelemedJoinMeetingParams.d.ts +4 -0
  409. package/dist/esm/resources/types/TelemedJoinMeetingResponse.d.ts +27 -0
  410. package/dist/esm/resources/types/TransactionalSMSSendParams.d.ts +10 -0
  411. package/dist/esm/resources/types/TransactionalSMSSendResponse.d.ts +9 -0
  412. package/dist/esm/resources/types/User.d.ts +36 -0
  413. package/dist/esm/resources/types/UserDeleteParams.d.ts +3 -0
  414. package/dist/esm/resources/types/UserGetParams.d.ts +3 -0
  415. package/dist/esm/resources/types/UserGetResponse.d.ts +5 -0
  416. package/dist/esm/resources/types/UserInviteParams.d.ts +35 -0
  417. package/dist/esm/resources/types/UserInviteResponse.d.ts +37 -0
  418. package/dist/esm/resources/types/UserListItem.d.ts +15 -0
  419. package/dist/esm/resources/types/UserListResponse.d.ts +5 -0
  420. package/dist/esm/resources/types/UserListV2Params.d.ts +11 -0
  421. package/dist/esm/resources/types/UserListV2Response.d.ts +16 -0
  422. package/dist/esm/resources/types/UserMeResponse.d.ts +5 -0
  423. package/dist/esm/resources/types/UserUpdateParams.d.ts +9 -0
  424. package/dist/esm/resources/types/UserUpdateResponse.d.ts +5 -0
  425. package/dist/esm/resources/types/VersionGetResponse.d.ts +17 -0
  426. package/dist/esm/resources/types/Z3CreateBucketParams.d.ts +3 -0
  427. package/dist/esm/resources/types/Z3CreateBucketResponse.d.ts +10 -0
  428. package/dist/esm/resources/types/Z3DeleteBucketParams.d.ts +3 -0
  429. package/dist/esm/resources/types/Z3DeleteObjectParams.d.ts +8 -0
  430. package/dist/esm/resources/types/Z3GetPresignedUrlParams.d.ts +9 -0
  431. package/dist/esm/resources/types/Z3GetPresignedUrlResponse.d.ts +9 -0
  432. package/dist/esm/resources/types/Z3ListBucketsResponse.d.ts +14 -0
  433. package/dist/esm/resources/types/Z3ListObjectsParams.d.ts +4 -0
  434. package/dist/esm/resources/types/Z3ListObjectsResponse.d.ts +13 -0
  435. package/dist/esm/resources/types/ZambdaCreateParams.d.ts +12 -0
  436. package/dist/esm/resources/types/ZambdaCreateResponse.d.ts +5 -0
  437. package/dist/esm/resources/types/ZambdaDeleteParams.d.ts +3 -0
  438. package/dist/esm/resources/types/ZambdaExecuteParams.d.ts +4 -0
  439. package/dist/esm/resources/types/ZambdaExecutePublicParams.d.ts +4 -0
  440. package/dist/esm/resources/types/ZambdaExecutePublicResponse.d.ts +5 -0
  441. package/dist/esm/resources/types/ZambdaExecuteResponse.d.ts +5 -0
  442. package/dist/esm/resources/types/ZambdaExecuteResult.d.ts +10 -0
  443. package/dist/esm/resources/types/ZambdaFunction.d.ts +38 -0
  444. package/dist/esm/resources/types/ZambdaGetParams.d.ts +3 -0
  445. package/dist/esm/resources/types/ZambdaGetResponse.d.ts +5 -0
  446. package/dist/esm/resources/types/ZambdaListResponse.d.ts +5 -0
  447. package/dist/esm/resources/types/ZambdaLogStreamGetParams.d.ts +8 -0
  448. package/dist/esm/resources/types/ZambdaLogStreamGetResponse.d.ts +27 -0
  449. package/dist/esm/resources/types/ZambdaLogStreamListParams.d.ts +4 -0
  450. package/dist/esm/resources/types/ZambdaLogStreamListResponse.d.ts +46 -0
  451. package/dist/esm/resources/types/ZambdaLogStreamSearchParams.d.ts +19 -0
  452. package/dist/esm/resources/types/ZambdaLogStreamSearchResponse.d.ts +23 -0
  453. package/dist/esm/resources/types/ZambdaS3UploadParams.d.ts +7 -0
  454. package/dist/esm/resources/types/ZambdaS3UploadResponse.d.ts +9 -0
  455. package/dist/esm/resources/types/ZambdaSchedule.d.ts +30 -0
  456. package/dist/esm/resources/types/ZambdaUpdateParams.d.ts +17 -0
  457. package/dist/esm/resources/types/ZambdaUpdateResponse.d.ts +5 -0
  458. package/dist/esm/resources/types/fhir.d.ts +46 -0
  459. package/dist/esm/resources/types/index.d.ts +158 -0
  460. package/dist/esm/tests/common.d.ts +2 -0
  461. package/dist/esm/tests/setup/constants.d.ts +12 -0
  462. package/dist/esm/tests/setup/global.d.ts +1 -0
  463. package/dist/esm/tests/setup/per-test.d.ts +1 -0
  464. package/package.json +59 -0
  465. package/rollup.config-cjs.mjs +49 -0
  466. package/rollup.config-mjs.mjs +49 -0
  467. package/src/client/client.ts +307 -0
  468. package/src/config.ts +56 -0
  469. package/src/errors/index.ts +41 -0
  470. package/src/fhir/fhir-types.ts +15 -0
  471. package/src/fhir/index.ts +2 -0
  472. package/src/fhir/utils.ts +68 -0
  473. package/src/index.cts +22 -0
  474. package/src/index.ts +27 -0
  475. package/src/resources/classes/application.ts +100 -0
  476. package/src/resources/classes/charge.ts +37 -0
  477. package/src/resources/classes/conversation-ext.ts +31 -0
  478. package/src/resources/classes/conversation.ts +82 -0
  479. package/src/resources/classes/developer.ts +72 -0
  480. package/src/resources/classes/erx.ts +36 -0
  481. package/src/resources/classes/fhir-ext.ts +214 -0
  482. package/src/resources/classes/fhir.ts +26 -0
  483. package/src/resources/classes/index.ts +68 -0
  484. package/src/resources/classes/m2m.ts +82 -0
  485. package/src/resources/classes/messaging.ts +16 -0
  486. package/src/resources/classes/paymentMethod.ts +87 -0
  487. package/src/resources/classes/project.ts +26 -0
  488. package/src/resources/classes/rcm.ts +63 -0
  489. package/src/resources/classes/role.ts +61 -0
  490. package/src/resources/classes/secret.ts +50 -0
  491. package/src/resources/classes/telemed.ts +47 -0
  492. package/src/resources/classes/transactionalSMS.ts +28 -0
  493. package/src/resources/classes/user.ts +79 -0
  494. package/src/resources/classes/version.ts +15 -0
  495. package/src/resources/classes/z3-ext.ts +54 -0
  496. package/src/resources/classes/z3.ts +74 -0
  497. package/src/resources/classes/zambda-ext.ts +20 -0
  498. package/src/resources/classes/zambda.ts +93 -0
  499. package/src/resources/classes/zambdaLogStream.ts +45 -0
  500. package/src/resources/index.ts +1 -0
  501. package/src/resources/types/AccessPolicy.ts +9 -0
  502. package/src/resources/types/Application.ts +61 -0
  503. package/src/resources/types/ApplicationCreateParams.ts +61 -0
  504. package/src/resources/types/ApplicationCreateResponse.ts +7 -0
  505. package/src/resources/types/ApplicationDeleteParams.ts +5 -0
  506. package/src/resources/types/ApplicationGetParams.ts +5 -0
  507. package/src/resources/types/ApplicationGetResponse.ts +7 -0
  508. package/src/resources/types/ApplicationListItem.ts +17 -0
  509. package/src/resources/types/ApplicationListResponse.ts +7 -0
  510. package/src/resources/types/ApplicationRevokeAccessTokenParams.ts +6 -0
  511. package/src/resources/types/ApplicationRevokeAccessTokenResponse.ts +8 -0
  512. package/src/resources/types/ApplicationRevokeRefreshTokenParams.ts +6 -0
  513. package/src/resources/types/ApplicationRevokeRefreshTokenResponse.ts +8 -0
  514. package/src/resources/types/ApplicationRotateSecretParams.ts +5 -0
  515. package/src/resources/types/ApplicationRotateSecretResponse.ts +8 -0
  516. package/src/resources/types/ApplicationUpdateParams.ts +61 -0
  517. package/src/resources/types/ApplicationUpdateResponse.ts +7 -0
  518. package/src/resources/types/Card.ts +10 -0
  519. package/src/resources/types/CardIdentifier.ts +9 -0
  520. package/src/resources/types/ChargeDetails.ts +11 -0
  521. package/src/resources/types/ChargeIssueParams.ts +8 -0
  522. package/src/resources/types/ChargeStatusParams.ts +8 -0
  523. package/src/resources/types/ChargeStatusResponse.ts +7 -0
  524. package/src/resources/types/ClaimAddress.ts +9 -0
  525. package/src/resources/types/ClaimCMS1500.ts +103 -0
  526. package/src/resources/types/ClaimDate.ts +7 -0
  527. package/src/resources/types/ClaimDatePeriod.ts +8 -0
  528. package/src/resources/types/ClaimDateWithQualifier.ts +8 -0
  529. package/src/resources/types/ClaimId.ts +6 -0
  530. package/src/resources/types/ClaimName.ts +8 -0
  531. package/src/resources/types/ConversationAddParticipantParams.ts +23 -0
  532. package/src/resources/types/ConversationCreateParams.ts +10 -0
  533. package/src/resources/types/ConversationCreateResponse.ts +12 -0
  534. package/src/resources/types/ConversationGetTokenResponse.ts +11 -0
  535. package/src/resources/types/ConversationMessageParams.ts +15 -0
  536. package/src/resources/types/ConversationRemoveParticipantParams.ts +13 -0
  537. package/src/resources/types/Developer.ts +23 -0
  538. package/src/resources/types/DeveloperDeleteParams.ts +5 -0
  539. package/src/resources/types/DeveloperGetParams.ts +5 -0
  540. package/src/resources/types/DeveloperGetResponse.ts +7 -0
  541. package/src/resources/types/DeveloperInviteParams.ts +20 -0
  542. package/src/resources/types/DeveloperInviteResponse.ts +25 -0
  543. package/src/resources/types/DeveloperListItem.ts +9 -0
  544. package/src/resources/types/DeveloperListResponse.ts +7 -0
  545. package/src/resources/types/DeveloperListV2Params.ts +13 -0
  546. package/src/resources/types/DeveloperListV2Response.ts +31 -0
  547. package/src/resources/types/DeveloperUpdateParams.ts +12 -0
  548. package/src/resources/types/DeveloperUpdateResponse.ts +7 -0
  549. package/src/resources/types/ErxAllergySearchParams.ts +5 -0
  550. package/src/resources/types/ErxAllergySearchResponse.ts +21 -0
  551. package/src/resources/types/ErxMedicationSearchParams.ts +8 -0
  552. package/src/resources/types/ErxMedicationSearchResponse.ts +40 -0
  553. package/src/resources/types/ErxSyncPatientParams.ts +5 -0
  554. package/src/resources/types/ErxSyncPatientResponse.ts +11 -0
  555. package/src/resources/types/M2m.ts +33 -0
  556. package/src/resources/types/M2mCreateParams.ts +23 -0
  557. package/src/resources/types/M2mCreateResponse.ts +7 -0
  558. package/src/resources/types/M2mDeleteParams.ts +5 -0
  559. package/src/resources/types/M2mGetParams.ts +5 -0
  560. package/src/resources/types/M2mGetResponse.ts +7 -0
  561. package/src/resources/types/M2mListItem.ts +28 -0
  562. package/src/resources/types/M2mListResponse.ts +7 -0
  563. package/src/resources/types/M2mListV2Params.ts +12 -0
  564. package/src/resources/types/M2mListV2Response.ts +18 -0
  565. package/src/resources/types/M2mRotateSecretParams.ts +5 -0
  566. package/src/resources/types/M2mRotateSecretResponse.ts +8 -0
  567. package/src/resources/types/M2mUpdateParams.ts +24 -0
  568. package/src/resources/types/M2mUpdateResponse.ts +7 -0
  569. package/src/resources/types/MessagingGetMessagingConfigResponse.ts +10 -0
  570. package/src/resources/types/MessagingServiceInfo.ts +16 -0
  571. package/src/resources/types/PaymentMethodDeleteParams.ts +18 -0
  572. package/src/resources/types/PaymentMethodListParams.ts +14 -0
  573. package/src/resources/types/PaymentMethodListResponse.ts +10 -0
  574. package/src/resources/types/PaymentMethodSetDefaultParams.ts +18 -0
  575. package/src/resources/types/PaymentMethodSetUpParams.ts +14 -0
  576. package/src/resources/types/PaymentMethodSetUpResponse.ts +11 -0
  577. package/src/resources/types/Project.ts +20 -0
  578. package/src/resources/types/ProjectGetResponse.ts +7 -0
  579. package/src/resources/types/ProjectUpdateParams.ts +18 -0
  580. package/src/resources/types/ProjectUpdateResponse.ts +7 -0
  581. package/src/resources/types/RcmEligibilityCheckParams.ts +8 -0
  582. package/src/resources/types/RcmEligibilityCheckResponse.ts +7 -0
  583. package/src/resources/types/RcmSubmitProfessionalClaimParams.ts +13 -0
  584. package/src/resources/types/RcmSubmitProfessionalClaimResponse.ts +7 -0
  585. package/src/resources/types/RcmValidateProfessionalClaimParams.ts +9 -0
  586. package/src/resources/types/RcmValidateProfessionalClaimResponse.ts +23 -0
  587. package/src/resources/types/Role.ts +19 -0
  588. package/src/resources/types/RoleCreateParams.ts +15 -0
  589. package/src/resources/types/RoleCreateResponse.ts +7 -0
  590. package/src/resources/types/RoleDeleteParams.ts +5 -0
  591. package/src/resources/types/RoleGetParams.ts +5 -0
  592. package/src/resources/types/RoleGetResponse.ts +7 -0
  593. package/src/resources/types/RoleListItem.ts +16 -0
  594. package/src/resources/types/RoleListResponse.ts +7 -0
  595. package/src/resources/types/RoleStub.ts +12 -0
  596. package/src/resources/types/RoleUpdateParams.ts +20 -0
  597. package/src/resources/types/RoleUpdateResponse.ts +7 -0
  598. package/src/resources/types/Secret.ts +12 -0
  599. package/src/resources/types/SecretDeleteParams.ts +5 -0
  600. package/src/resources/types/SecretGetParams.ts +5 -0
  601. package/src/resources/types/SecretGetResponse.ts +7 -0
  602. package/src/resources/types/SecretListItem.ts +8 -0
  603. package/src/resources/types/SecretListResponse.ts +7 -0
  604. package/src/resources/types/SecretSetParams.ts +12 -0
  605. package/src/resources/types/SecretSetResponse.ts +7 -0
  606. package/src/resources/types/TelemedCreateMeetingParams.ts +10 -0
  607. package/src/resources/types/TelemedCreateMeetingResponse.ts +12 -0
  608. package/src/resources/types/TelemedJoinMeetingParams.ts +6 -0
  609. package/src/resources/types/TelemedJoinMeetingResponse.ts +29 -0
  610. package/src/resources/types/TransactionalSMSSendParams.ts +12 -0
  611. package/src/resources/types/TransactionalSMSSendResponse.ts +11 -0
  612. package/src/resources/types/User.ts +39 -0
  613. package/src/resources/types/UserDeleteParams.ts +5 -0
  614. package/src/resources/types/UserGetParams.ts +5 -0
  615. package/src/resources/types/UserGetResponse.ts +7 -0
  616. package/src/resources/types/UserInviteParams.ts +38 -0
  617. package/src/resources/types/UserInviteResponse.ts +39 -0
  618. package/src/resources/types/UserListItem.ts +17 -0
  619. package/src/resources/types/UserListResponse.ts +7 -0
  620. package/src/resources/types/UserListV2Params.ts +13 -0
  621. package/src/resources/types/UserListV2Response.ts +18 -0
  622. package/src/resources/types/UserMeResponse.ts +7 -0
  623. package/src/resources/types/UserUpdateParams.ts +12 -0
  624. package/src/resources/types/UserUpdateResponse.ts +7 -0
  625. package/src/resources/types/VersionGetResponse.ts +19 -0
  626. package/src/resources/types/Z3CreateBucketParams.ts +5 -0
  627. package/src/resources/types/Z3CreateBucketResponse.ts +12 -0
  628. package/src/resources/types/Z3DeleteBucketParams.ts +5 -0
  629. package/src/resources/types/Z3DeleteObjectParams.ts +10 -0
  630. package/src/resources/types/Z3GetPresignedUrlParams.ts +11 -0
  631. package/src/resources/types/Z3GetPresignedUrlResponse.ts +11 -0
  632. package/src/resources/types/Z3ListBucketsResponse.ts +16 -0
  633. package/src/resources/types/Z3ListObjectsParams.ts +6 -0
  634. package/src/resources/types/Z3ListObjectsResponse.ts +15 -0
  635. package/src/resources/types/ZambdaCreateParams.ts +15 -0
  636. package/src/resources/types/ZambdaCreateResponse.ts +7 -0
  637. package/src/resources/types/ZambdaDeleteParams.ts +5 -0
  638. package/src/resources/types/ZambdaExecuteParams.ts +6 -0
  639. package/src/resources/types/ZambdaExecutePublicParams.ts +6 -0
  640. package/src/resources/types/ZambdaExecutePublicResponse.ts +7 -0
  641. package/src/resources/types/ZambdaExecuteResponse.ts +7 -0
  642. package/src/resources/types/ZambdaExecuteResult.ts +12 -0
  643. package/src/resources/types/ZambdaFunction.ts +41 -0
  644. package/src/resources/types/ZambdaGetParams.ts +5 -0
  645. package/src/resources/types/ZambdaGetResponse.ts +7 -0
  646. package/src/resources/types/ZambdaListResponse.ts +7 -0
  647. package/src/resources/types/ZambdaLogStreamGetParams.ts +10 -0
  648. package/src/resources/types/ZambdaLogStreamGetResponse.ts +29 -0
  649. package/src/resources/types/ZambdaLogStreamListParams.ts +6 -0
  650. package/src/resources/types/ZambdaLogStreamListResponse.ts +48 -0
  651. package/src/resources/types/ZambdaLogStreamSearchParams.ts +21 -0
  652. package/src/resources/types/ZambdaLogStreamSearchResponse.ts +25 -0
  653. package/src/resources/types/ZambdaS3UploadParams.ts +9 -0
  654. package/src/resources/types/ZambdaS3UploadResponse.ts +11 -0
  655. package/src/resources/types/ZambdaSchedule.ts +32 -0
  656. package/src/resources/types/ZambdaUpdateParams.ts +20 -0
  657. package/src/resources/types/ZambdaUpdateResponse.ts +7 -0
  658. package/src/resources/types/fhir.ts +75 -0
  659. package/src/resources/types/index.ts +160 -0
  660. package/turbo.json +13 -0
@@ -0,0 +1,251 @@
1
+ import { __awaiter } from '../node_modules/tslib/tslib.es6.js';
2
+ import { v4 } from 'uuid';
3
+ import { OystehrSdkError, OystehrFHIRError } from '../errors/index.js';
4
+
5
+ const defaultProjectApiUrl = 'https://project-api.zapehr.com/v1';
6
+ const defaultFhirApiUrl = 'https://fhir-api.zapehr.com';
7
+ const STATUS_CODES_TO_RETRY = [408, 429, 500, 502, 503, 504];
8
+ const ERROR_CODES_TO_RETRY = [
9
+ 'ECONNRESET',
10
+ 'ECONNREFUSED',
11
+ 'EPIPE',
12
+ 'ETIMEDOUT',
13
+ 'UND_ERR_CONNECT_TIMEOUT',
14
+ 'UND_ERR_HEADERS_TIMEOUT',
15
+ 'UND_ERR_HEADERS_TIMEOUT',
16
+ 'UND_ERR_SOCKET',
17
+ ];
18
+ class SDKResource {
19
+ constructor(config) {
20
+ this.config = config;
21
+ }
22
+ request(path, method) {
23
+ return (params, request) => __awaiter(this, void 0, void 0, function* () {
24
+ const baseUrlThunk = () => { var _a; return (_a = this.config.projectApiUrl) !== null && _a !== void 0 ? _a : defaultProjectApiUrl; };
25
+ const configThunk = () => this.config;
26
+ try {
27
+ return yield fetcher(baseUrlThunk, configThunk, path, method)(params, request);
28
+ }
29
+ catch (err) {
30
+ const error = err;
31
+ throw new OystehrSdkError({ message: error.message, code: error.code });
32
+ }
33
+ });
34
+ }
35
+ fhirRequest(path, method) {
36
+ return (params, request) => __awaiter(this, void 0, void 0, function* () {
37
+ try {
38
+ const baseUrlThunk = () => { var _a; return (_a = this.config.fhirApiUrl) !== null && _a !== void 0 ? _a : defaultFhirApiUrl; };
39
+ const configThunk = () => this.config;
40
+ // must await here to catch
41
+ return yield fetcher(baseUrlThunk, configThunk, path, method)(params, request);
42
+ }
43
+ catch (err) {
44
+ // FHIR API error messages are JSON strings
45
+ const fullError = err;
46
+ if (typeof fullError.message === 'string') {
47
+ throw new OystehrSdkError({
48
+ message: fullError.message,
49
+ code: fullError.code,
50
+ });
51
+ }
52
+ throw new OystehrFHIRError({
53
+ error: fullError.message,
54
+ code: fullError.code,
55
+ });
56
+ }
57
+ });
58
+ }
59
+ }
60
+ function isInternalClientRequest(request) {
61
+ return 'accessToken' in request;
62
+ }
63
+ function fetcher(baseUrlThunk, configThunk, path, methodParam) {
64
+ return (params, request) => __awaiter(this, void 0, void 0, function* () {
65
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
66
+ // this function supports multiple signatures. fetcher(baseUrl, path, method)(params, request) or fetcher(baseUrl, path, method)(request)
67
+ // or fetcher(baseUrl, path, method)(params) or fetcher(baseUrl, path, method)(). the types for this are handled by Client<Path, Methods>
68
+ // and this is the backend implementation behind it. the heuristic we're using is that if the first param is an object with an accessToken
69
+ // and there is no second param, assume the first one is the request object instead
70
+ const providedParams = !!params && !request && !Array.isArray(params) && isInternalClientRequest(params)
71
+ ? {}
72
+ : (_a = params) !== null && _a !== void 0 ? _a : {};
73
+ const requestCtx = !!params && !request && !Array.isArray(params) && isInternalClientRequest(params)
74
+ ? params
75
+ : request;
76
+ const method = methodParam.toLowerCase();
77
+ const config = configThunk();
78
+ const fetchImpl = (_b = config.fetch) !== null && _b !== void 0 ? _b : fetch;
79
+ const accessToken = (_c = requestCtx === null || requestCtx === void 0 ? void 0 : requestCtx.accessToken) !== null && _c !== void 0 ? _c : config.accessToken;
80
+ const projectId = (_d = requestCtx === null || requestCtx === void 0 ? void 0 : requestCtx.projectId) !== null && _d !== void 0 ? _d : configThunk().projectId;
81
+ let finalPath = path;
82
+ let finalParams = providedParams;
83
+ if (!Array.isArray(providedParams)) {
84
+ const [subbedPath, addlParams] = subParamsInPath(path, providedParams);
85
+ finalPath = subbedPath;
86
+ finalParams = addlParams;
87
+ }
88
+ finalPath = finalPath.replace(/^\//, ''); // remove leading slash
89
+ const baseUrlEvaluated = baseUrlThunk();
90
+ const fullBaseUrl = baseUrlEvaluated.endsWith('/') ? baseUrlEvaluated : baseUrlEvaluated + '/';
91
+ const url = new URL(finalPath, fullBaseUrl);
92
+ let body;
93
+ if (Array.isArray(finalParams)) {
94
+ body = JSON.stringify(finalParams);
95
+ }
96
+ else if (Object.keys(finalParams).length) {
97
+ if (method === 'get') {
98
+ addParamsToSearch(finalParams, url.searchParams);
99
+ }
100
+ else if ((requestCtx === null || requestCtx === void 0 ? void 0 : requestCtx.contentType) === 'application/x-www-form-urlencoded') {
101
+ const search = new URLSearchParams();
102
+ addParamsToSearch(finalParams, search);
103
+ body = search.toString();
104
+ }
105
+ else {
106
+ body = JSON.stringify(finalParams);
107
+ }
108
+ }
109
+ else {
110
+ // override for rpc call
111
+ if ((requestCtx === null || requestCtx === void 0 ? void 0 : requestCtx.contentType) !== 'application/x-www-form-urlencoded' && method === 'post') {
112
+ body = '{}';
113
+ }
114
+ }
115
+ const headers = Object.assign(projectId
116
+ ? {
117
+ 'x-zapehr-project-id': projectId,
118
+ 'x-oystehr-project-id': projectId,
119
+ }
120
+ : {}, {
121
+ 'content-type': (_e = requestCtx === null || requestCtx === void 0 ? void 0 : requestCtx.contentType) !== null && _e !== void 0 ? _e : 'application/json',
122
+ }, accessToken ? { Authorization: `Bearer ${accessToken}` } : {}, (requestCtx === null || requestCtx === void 0 ? void 0 : requestCtx.ifMatch) ? { 'If-Match': requestCtx.ifMatch } : {}, { 'x-oystehr-request-id': (_f = requestCtx === null || requestCtx === void 0 ? void 0 : requestCtx.requestId) !== null && _f !== void 0 ? _f : v4() });
123
+ const retryConfig = {
124
+ retries: (_h = (_g = config.retry) === null || _g === void 0 ? void 0 : _g.retries) !== null && _h !== void 0 ? _h : 3,
125
+ onRetry: (_j = config.retry) === null || _j === void 0 ? void 0 : _j.onRetry,
126
+ // Using array instead of set because the length is too short for uniqueness to be important
127
+ retryOn: [...((_l = (_k = config.retry) === null || _k === void 0 ? void 0 : _k.retryOn) !== null && _l !== void 0 ? _l : []), ...STATUS_CODES_TO_RETRY],
128
+ };
129
+ retryConfig.retryOn.push(...STATUS_CODES_TO_RETRY);
130
+ return retry((attempt) => __awaiter(this, void 0, void 0, function* () {
131
+ var _m, _o, _p, _q, _r, _s;
132
+ const response = yield fetchImpl(new Request(url, {
133
+ method: method.toUpperCase(),
134
+ body,
135
+ headers,
136
+ }));
137
+ const responseBody = response.body ? yield response.text() : null;
138
+ let responseJson;
139
+ try {
140
+ responseJson =
141
+ responseBody &&
142
+ (((_m = response.headers.get('content-type')) === null || _m === void 0 ? void 0 : _m.includes('application/json')) ||
143
+ ((_o = response.headers.get('content-type')) === null || _o === void 0 ? void 0 : _o.includes('application/fhir+json')))
144
+ ? JSON.parse(responseBody)
145
+ : null;
146
+ }
147
+ catch (err) {
148
+ // ignore JSON.parse errors
149
+ responseJson = null;
150
+ }
151
+ const isError = !response.ok || response.status >= 400;
152
+ if (isError) {
153
+ headers['x-oystehr-fetch-attempts'] = `${attempt}`;
154
+ const errObj = {
155
+ message: (_r = (_q = (_p = responseJson === null || responseJson === void 0 ? void 0 : responseJson.message) !== null && _p !== void 0 ? _p : responseJson) !== null && _q !== void 0 ? _q : responseBody) !== null && _r !== void 0 ? _r : response.statusText,
156
+ code: (_s = responseJson === null || responseJson === void 0 ? void 0 : responseJson.code) !== null && _s !== void 0 ? _s : response.status,
157
+ response,
158
+ };
159
+ throw errObj;
160
+ }
161
+ return responseJson;
162
+ }), retryConfig);
163
+ });
164
+ }
165
+ function retry(work, config) {
166
+ var _a, _b;
167
+ return __awaiter(this, void 0, void 0, function* () {
168
+ let lastErr;
169
+ for (const attempt of Array.from({ length: ((_a = config.retries) !== null && _a !== void 0 ? _a : 0) + 1 }, (_, index) => index)) {
170
+ try {
171
+ return yield work(attempt);
172
+ }
173
+ catch (e) {
174
+ let isRetryable = false;
175
+ if ('response' in e) {
176
+ // error from API
177
+ const err = e;
178
+ isRetryable = config.retryOn.includes(err.code);
179
+ // Removes response
180
+ lastErr = { message: e.message, code: e.code };
181
+ }
182
+ else {
183
+ lastErr = e;
184
+ // error from fetch
185
+ if ('code' in e && typeof e.code === 'string') {
186
+ const err = e;
187
+ isRetryable = ERROR_CODES_TO_RETRY.includes(err.code);
188
+ }
189
+ }
190
+ if (!isRetryable) {
191
+ break;
192
+ }
193
+ if (config.onRetry && attempt !== ((_b = config.retries) !== null && _b !== void 0 ? _b : 0)) {
194
+ config.onRetry(attempt + 1);
195
+ }
196
+ }
197
+ }
198
+ throw lastErr;
199
+ });
200
+ }
201
+ /**
202
+ * Substitutes params in a path and returns the path with params substituted and any unused params.
203
+ *
204
+ * Uses the property names in the params object to determine the param to substitute in the path.
205
+ *
206
+ * @param path JSON API resource URI
207
+ * @param params all params provided to the client method
208
+ * @returns resource URI with params substituted and any unused params
209
+ */
210
+ function subParamsInPath(path, params) {
211
+ const unusedParams = Object.assign({}, params);
212
+ // capture everything of the form `{paramName}` and replace with the value of `params[paramName]`
213
+ const subbedPath = path.replace(/\{([^}]+)\}/g, (_, paramName) => {
214
+ delete unusedParams[paramName];
215
+ // override for path params that are paths, indicated by a `+` at the end
216
+ if (paramName.match(/^.*\+$/)) {
217
+ return params[paramName] + '';
218
+ }
219
+ // error if param value is empty
220
+ if (!params[paramName] || params[paramName] === '') {
221
+ throw new OystehrSdkError({ message: `Required path parameter is an empty string: ${paramName}`, code: 400 });
222
+ }
223
+ // encode search params
224
+ if (params[paramName]) {
225
+ return encodeURIComponent(params[paramName] + ''); // coerce to string
226
+ }
227
+ return '';
228
+ });
229
+ const unusedKeys = Object.keys(unusedParams);
230
+ const addlParams = unusedKeys.length
231
+ ? unusedKeys.reduce((acc, key) => (Object.assign(Object.assign({}, acc), { [key]: unusedParams[key] })), {})
232
+ : {};
233
+ return [subbedPath, addlParams];
234
+ }
235
+ /**
236
+ * Adds params to a URLSearchParams object in such a way as to preserve array values.
237
+ * @param params params
238
+ * @param search URLSearchParams object
239
+ */
240
+ function addParamsToSearch(params, search) {
241
+ for (const [key, value] of Object.entries(params)) {
242
+ if (Array.isArray(value)) {
243
+ value.forEach((v) => search.append(key, v));
244
+ continue;
245
+ }
246
+ search.append(key, value);
247
+ }
248
+ }
249
+
250
+ export { SDKResource, addParamsToSearch };
251
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sources":["../../../src/client/client.ts"],"sourcesContent":["import { v4 as uuidv4 } from 'uuid';\nimport { OystehrConfig } from '../config';\nimport { OystehrFHIRError, OystehrSdkError } from '../errors';\nimport { FhirBundle, FhirResource, OperationOutcome } from '../resources/types';\n\ntype HttpMethod = 'get' | 'put' | 'post' | 'delete' | 'options' | 'head' | 'patch' | 'trace';\nconst defaultProjectApiUrl = 'https://project-api.zapehr.com/v1';\nconst defaultFhirApiUrl = 'https://fhir-api.zapehr.com';\nconst STATUS_CODES_TO_RETRY = [408, 429, 500, 502, 503, 504];\nconst ERROR_CODES_TO_RETRY = [\n 'ECONNRESET',\n 'ECONNREFUSED',\n 'EPIPE',\n 'ETIMEDOUT',\n 'UND_ERR_CONNECT_TIMEOUT',\n 'UND_ERR_HEADERS_TIMEOUT',\n 'UND_ERR_HEADERS_TIMEOUT',\n 'UND_ERR_SOCKET',\n];\n\n/**\n * Optional parameter that can be passed to the client methods. It allows\n * overriding the access token or project ID, and setting various headers,\n * such as 'Content-Type'.\n */\nexport interface OystehrClientRequest {\n /**\n * The access token to use for the request. If not provided, the access token from `oystehr.init()` will be used.\n */\n accessToken?: string;\n /**\n * The project ID to use for the request. If not provided, the project ID from `oystehr.init()` will be used.\n */\n projectId?: string;\n /**\n * The value of the 'Content-Type' header to use for the request.\n */\n contentType?: string;\n /**\n * Unique identifier for this request.\n */\n requestId?: string;\n}\n\ninterface InternalClientRequest extends OystehrClientRequest {\n ifMatch?: string;\n}\n\ntype FhirData<T extends FhirResource> = T | T[] | FhirBundle<T>;\nexport type FhirFetcherResponse<T extends FhirData<FhirResource> = any> = T;\n\nexport class SDKResource {\n private readonly config: OystehrConfig;\n constructor(config: OystehrConfig) {\n this.config = config;\n }\n\n request(path: string, method: string): FetcherFunction {\n return async (params: any, request?: InternalClientRequest): Promise<FetcherResponse> => {\n const baseUrlThunk = (): string => this.config.projectApiUrl ?? defaultProjectApiUrl;\n const configThunk = (): OystehrConfig => this.config;\n try {\n return await fetcher(baseUrlThunk, configThunk, path, method)(params, request);\n } catch (err: any) {\n const error = err as { message: string; code: number };\n throw new OystehrSdkError({ message: error.message, code: error.code });\n }\n };\n }\n\n fhirRequest<T extends FhirResource = any>(path: string, method: string) {\n return async (params: any, request?: InternalClientRequest): Promise<FhirFetcherResponse<T>> => {\n try {\n const baseUrlThunk = (): string => this.config.fhirApiUrl ?? defaultFhirApiUrl;\n const configThunk = (): OystehrConfig => this.config;\n // must await here to catch\n return await fetcher(baseUrlThunk, configThunk, path, method)(params, request);\n } catch (err: unknown) {\n // FHIR API error messages are JSON strings\n const fullError = err as { message: string | Record<string, any>; code: number };\n if (typeof fullError.message === 'string') {\n throw new OystehrSdkError({\n message: fullError.message,\n code: fullError.code,\n });\n }\n throw new OystehrFHIRError({\n error: fullError.message as OperationOutcome,\n code: fullError.code,\n });\n }\n };\n }\n}\n\nexport type FetcherError = { message: string; code: number };\nexport type FetcherResponse = any;\nexport type FetcherFunction = (\n params?: Record<string, any> | [any] | InternalClientRequest,\n request?: InternalClientRequest\n) => Promise<FetcherResponse>;\n\nfunction isInternalClientRequest(request: Record<string, any>): request is InternalClientRequest {\n return 'accessToken' in request;\n}\n\nfunction fetcher(\n baseUrlThunk: () => string,\n configThunk: () => OystehrConfig,\n path: string,\n methodParam: string\n): FetcherFunction {\n return async (\n params?: Record<string, unknown> | [any] | InternalClientRequest,\n request?: InternalClientRequest\n ): Promise<FetcherResponse> => {\n // this function supports multiple signatures. fetcher(baseUrl, path, method)(params, request) or fetcher(baseUrl, path, method)(request)\n // or fetcher(baseUrl, path, method)(params) or fetcher(baseUrl, path, method)(). the types for this are handled by Client<Path, Methods>\n // and this is the backend implementation behind it. the heuristic we're using is that if the first param is an object with an accessToken\n // and there is no second param, assume the first one is the request object instead\n const providedParams: Record<string, unknown> | [any] =\n !!params && !request && !Array.isArray(params) && isInternalClientRequest(params)\n ? {}\n : (params as Record<string, unknown>) ?? {};\n const requestCtx =\n !!params && !request && !Array.isArray(params) && isInternalClientRequest(params)\n ? (params as InternalClientRequest)\n : request;\n const method = methodParam.toLowerCase() as HttpMethod;\n const config = configThunk();\n const fetchImpl = config.fetch ?? fetch;\n const accessToken = requestCtx?.accessToken ?? config.accessToken;\n const projectId = requestCtx?.projectId ?? configThunk().projectId;\n let finalPath = path;\n let finalParams = providedParams;\n if (!Array.isArray(providedParams)) {\n const [subbedPath, addlParams] = subParamsInPath(path, providedParams);\n finalPath = subbedPath;\n finalParams = addlParams;\n }\n finalPath = finalPath.replace(/^\\//, ''); // remove leading slash\n const baseUrlEvaluated = baseUrlThunk();\n const fullBaseUrl = baseUrlEvaluated.endsWith('/') ? baseUrlEvaluated : baseUrlEvaluated + '/';\n const url = new URL(finalPath, fullBaseUrl);\n let body: any;\n\n if (Array.isArray(finalParams)) {\n body = JSON.stringify(finalParams);\n } else if (Object.keys(finalParams).length) {\n if (method === 'get') {\n addParamsToSearch(finalParams, url.searchParams);\n } else if (requestCtx?.contentType === 'application/x-www-form-urlencoded') {\n const search = new URLSearchParams();\n addParamsToSearch(finalParams, search);\n body = search.toString();\n } else {\n body = JSON.stringify(finalParams);\n }\n } else {\n // override for rpc call\n if (requestCtx?.contentType !== 'application/x-www-form-urlencoded' && method === 'post') {\n body = '{}';\n }\n }\n\n const headers: Record<string, string> = Object.assign(\n projectId\n ? {\n 'x-zapehr-project-id': projectId,\n 'x-oystehr-project-id': projectId,\n }\n : {},\n {\n 'content-type': requestCtx?.contentType ?? 'application/json',\n },\n accessToken ? { Authorization: `Bearer ${accessToken}` } : {},\n requestCtx?.ifMatch ? { 'If-Match': requestCtx.ifMatch } : {},\n { 'x-oystehr-request-id': requestCtx?.requestId ?? uuidv4() }\n );\n const retryConfig: ConstructedRetryConfig = {\n retries: config.retry?.retries ?? 3,\n onRetry: config.retry?.onRetry,\n // Using array instead of set because the length is too short for uniqueness to be important\n retryOn: [...(config.retry?.retryOn ?? []), ...STATUS_CODES_TO_RETRY],\n };\n retryConfig.retryOn.push(...STATUS_CODES_TO_RETRY);\n return retry(async (attempt) => {\n const response = await fetchImpl(\n new Request(url, {\n method: method.toUpperCase(),\n body,\n headers,\n })\n );\n const responseBody = response.body ? await response.text() : null;\n let responseJson: Record<string, unknown> | null;\n try {\n responseJson =\n responseBody &&\n (response.headers.get('content-type')?.includes('application/json') ||\n response.headers.get('content-type')?.includes('application/fhir+json'))\n ? JSON.parse(responseBody)\n : null;\n } catch (err) {\n // ignore JSON.parse errors\n responseJson = null;\n }\n const isError = !response.ok || response.status >= 400;\n if (isError) {\n headers['x-oystehr-fetch-attempts'] = `${attempt}`;\n const errObj = {\n message: responseJson?.message ?? responseJson ?? responseBody ?? response.statusText,\n code: responseJson?.code ?? response.status,\n response,\n };\n throw errObj;\n }\n return responseJson;\n }, retryConfig);\n };\n}\n\ntype ConstructedRetryConfig = Omit<NonNullable<OystehrConfig['retry']>, 'retryOn'> & {\n retryOn: NonNullable<NonNullable<OystehrConfig['retry']>['retryOn']>;\n};\nasync function retry<T>(work: (attempt: number) => Promise<T>, config: ConstructedRetryConfig): Promise<T> {\n let lastErr;\n for (const attempt of Array.from({ length: (config.retries ?? 0) + 1 }, (_, index) => index)) {\n try {\n return await work(attempt);\n } catch (e: any) {\n let isRetryable = false;\n if ('response' in e) {\n // error from API\n const err = e as FetcherError;\n isRetryable = config.retryOn.includes(err.code);\n // Removes response\n lastErr = { message: e.message, code: e.code };\n } else {\n lastErr = e;\n // error from fetch\n if ('code' in e && typeof e.code === 'string') {\n const err = e as { code: string };\n isRetryable = ERROR_CODES_TO_RETRY.includes(err.code);\n }\n }\n if (!isRetryable) {\n break;\n }\n if (config.onRetry && attempt !== (config.retries ?? 0)) {\n config.onRetry(attempt + 1);\n }\n }\n }\n throw lastErr;\n}\n\n/**\n * Substitutes params in a path and returns the path with params substituted and any unused params.\n *\n * Uses the property names in the params object to determine the param to substitute in the path.\n *\n * @param path JSON API resource URI\n * @param params all params provided to the client method\n * @returns resource URI with params substituted and any unused params\n */\nfunction subParamsInPath(path: string, params: Record<string, unknown>): [string, Record<string, string>] {\n const unusedParams = { ...params };\n // capture everything of the form `{paramName}` and replace with the value of `params[paramName]`\n const subbedPath = path.replace(/\\{([^}]+)\\}/g, (_, paramName) => {\n delete unusedParams[paramName];\n // override for path params that are paths, indicated by a `+` at the end\n if (paramName.match(/^.*\\+$/)) {\n return params[paramName] + '';\n }\n // error if param value is empty\n if (!params[paramName] || params[paramName] === '') {\n throw new OystehrSdkError({ message: `Required path parameter is an empty string: ${paramName}`, code: 400 });\n }\n // encode search params\n if (params[paramName]) {\n return encodeURIComponent(params[paramName] + ''); // coerce to string\n }\n return '';\n });\n\n const unusedKeys = Object.keys(unusedParams);\n const addlParams = unusedKeys.length\n ? unusedKeys.reduce((acc, key) => ({ ...acc, [key]: unusedParams[key] }), {})\n : {};\n return [subbedPath, addlParams];\n}\n\n/**\n * Adds params to a URLSearchParams object in such a way as to preserve array values.\n * @param params params\n * @param search URLSearchParams object\n */\nexport function addParamsToSearch(params: Record<string, unknown>, search: URLSearchParams): void {\n for (const [key, value] of Object.entries(params)) {\n if (Array.isArray(value)) {\n value.forEach((v) => search.append(key, v as string));\n continue;\n }\n search.append(key, value as string);\n }\n}\n"],"names":["uuidv4"],"mappings":"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"}
@@ -0,0 +1,45 @@
1
+ /**
2
+ * Configuration for the Oystehr SDK client
3
+ */
4
+ export interface OystehrConfig {
5
+ /**
6
+ * Access token for your user, M2M, or developer account.
7
+ */
8
+ accessToken?: string;
9
+ /**
10
+ * Optional Oystehr Project ID. Required for developer accessTokens.
11
+ */
12
+ projectId?: string;
13
+ fhirApiUrl?: string;
14
+ projectApiUrl?: string;
15
+ /**
16
+ * Optionally provide a custom fetch implementation. This must conform to the
17
+ * built-in node.js fetch implementation (undici fetch).
18
+ * @param req
19
+ * @returns
20
+ */
21
+ fetch?: (req: Request) => Promise<Response>;
22
+ /**
23
+ * Optional configuration for retrying request in case of error. Defaults to
24
+ * `{ retries: 3 }` if not provided.
25
+ */
26
+ retry?: {
27
+ /**
28
+ * Number of retries.
29
+ */
30
+ retries: number;
31
+ /**
32
+ * Optional, non-async function to call when a request is retried.
33
+ * @param attempt
34
+ * @returns
35
+ */
36
+ onRetry?: (attempt: number) => void;
37
+ /**
38
+ * Optional list of additional errors to retry for. The Oystehr SDK will always
39
+ * retry for status codes 408, 429, 500, 502, 503, and 504.
40
+ */
41
+ retryOn?: number[];
42
+ };
43
+ }
44
+ export declare function getConfig(): OystehrConfig;
45
+ export declare function setConfig(config: OystehrConfig): void;
@@ -0,0 +1,17 @@
1
+ import { OperationOutcome as OperationOutcomeR4B } from 'fhir/r4b';
2
+ import { OperationOutcome as OperationOutcomeR5 } from 'fhir/r5';
3
+ export declare class OystehrSdkError extends Error {
4
+ code: number;
5
+ constructor({ message, code }: {
6
+ message: string;
7
+ code: number;
8
+ });
9
+ toString(): string;
10
+ }
11
+ export declare class OystehrFHIRError extends OystehrSdkError {
12
+ cause: OperationOutcomeR4B | OperationOutcomeR5;
13
+ constructor({ error, code }: {
14
+ error: OperationOutcomeR4B | OperationOutcomeR5;
15
+ code: number;
16
+ });
17
+ }
@@ -0,0 +1,38 @@
1
+ class OystehrSdkError extends Error {
2
+ constructor({ message, code }) {
3
+ super(message);
4
+ Object.setPrototypeOf(this, OystehrSdkError.prototype);
5
+ this.code = code;
6
+ this.name = 'OystehrSdkError';
7
+ }
8
+ toString() {
9
+ return `${this.name}: ${this.message} (code: ${this.code})`;
10
+ }
11
+ }
12
+ function transformOperationOutcomeToErrorMessage(cause) {
13
+ var _a;
14
+ const causes = [];
15
+ for (const issue of (_a = cause.issue) !== null && _a !== void 0 ? _a : []) {
16
+ if (issue.details && issue.details.text) {
17
+ causes.push(issue.details.text);
18
+ }
19
+ }
20
+ if (!causes.length) {
21
+ causes.push('Unknown FHIR error');
22
+ }
23
+ return causes.join(',');
24
+ }
25
+ class OystehrFHIRError extends OystehrSdkError {
26
+ constructor({ error, code }) {
27
+ super({
28
+ message: transformOperationOutcomeToErrorMessage(error),
29
+ code,
30
+ });
31
+ Object.setPrototypeOf(this, OystehrFHIRError.prototype);
32
+ this.cause = error;
33
+ this.name = 'OystehrFHIRError';
34
+ }
35
+ }
36
+
37
+ export { OystehrFHIRError, OystehrSdkError };
38
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../../src/errors/index.ts"],"sourcesContent":["import { OperationOutcome as OperationOutcomeR4B } from 'fhir/r4b';\nimport { OperationOutcome as OperationOutcomeR5 } from 'fhir/r5';\n\nexport class OystehrSdkError extends Error {\n code: number;\n constructor({ message, code }: { message: string; code: number }) {\n super(message);\n Object.setPrototypeOf(this, OystehrSdkError.prototype);\n this.code = code;\n this.name = 'OystehrSdkError';\n }\n toString(): string {\n return `${this.name}: ${this.message} (code: ${this.code})`;\n }\n}\n\nfunction transformOperationOutcomeToErrorMessage(cause: OperationOutcomeR4B | OperationOutcomeR5): string {\n const causes = [];\n for (const issue of cause.issue ?? []) {\n if (issue.details && issue.details.text) {\n causes.push(issue.details.text);\n }\n }\n if (!causes.length) {\n causes.push('Unknown FHIR error');\n }\n return causes.join(',');\n}\n\nexport class OystehrFHIRError extends OystehrSdkError {\n cause: OperationOutcomeR4B | OperationOutcomeR5;\n constructor({ error, code }: { error: OperationOutcomeR4B | OperationOutcomeR5; code: number }) {\n super({\n message: transformOperationOutcomeToErrorMessage(error as OperationOutcomeR4B | OperationOutcomeR5),\n code,\n });\n Object.setPrototypeOf(this, OystehrFHIRError.prototype);\n this.cause = error as OperationOutcomeR4B | OperationOutcomeR5;\n this.name = 'OystehrFHIRError';\n }\n}\n"],"names":[],"mappings":"AAGM,MAAO,eAAgB,SAAQ,KAAK,CAAA;AAExC,IAAA,WAAA,CAAY,EAAE,OAAO,EAAE,IAAI,EAAqC,EAAA;QAC9D,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,eAAe,CAAC,SAAS,CAAC,CAAC;AACvD,QAAA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;AACjB,QAAA,IAAI,CAAC,IAAI,GAAG,iBAAiB,CAAC;KAC/B;IACD,QAAQ,GAAA;AACN,QAAA,OAAO,CAAG,EAAA,IAAI,CAAC,IAAI,CAAK,EAAA,EAAA,IAAI,CAAC,OAAO,CAAW,QAAA,EAAA,IAAI,CAAC,IAAI,GAAG,CAAC;KAC7D;AACF,CAAA;AAED,SAAS,uCAAuC,CAAC,KAA+C,EAAA;;IAC9F,MAAM,MAAM,GAAG,EAAE,CAAC;IAClB,KAAK,MAAM,KAAK,IAAI,CAAA,EAAA,GAAA,KAAK,CAAC,KAAK,MAAI,IAAA,IAAA,EAAA,KAAA,KAAA,CAAA,GAAA,EAAA,GAAA,EAAE,EAAE;QACrC,IAAI,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE;YACvC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;AACjC,SAAA;AACF,KAAA;AACD,IAAA,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;AAClB,QAAA,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;AACnC,KAAA;AACD,IAAA,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC1B,CAAC;AAEK,MAAO,gBAAiB,SAAQ,eAAe,CAAA;AAEnD,IAAA,WAAA,CAAY,EAAE,KAAK,EAAE,IAAI,EAAqE,EAAA;AAC5F,QAAA,KAAK,CAAC;AACJ,YAAA,OAAO,EAAE,uCAAuC,CAAC,KAAiD,CAAC;YACnG,IAAI;AACL,SAAA,CAAC,CAAC;QACH,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,gBAAgB,CAAC,SAAS,CAAC,CAAC;AACxD,QAAA,IAAI,CAAC,KAAK,GAAG,KAAiD,CAAC;AAC/D,QAAA,IAAI,CAAC,IAAI,GAAG,kBAAkB,CAAC;KAChC;AACF;;;;"}
@@ -0,0 +1,9 @@
1
+ import * as R4B from 'fhir/r4b';
2
+ import * as R5 from 'fhir/r5';
3
+ export type Binary = R4B.Binary | R5.Binary;
4
+ export type FhirResource = R4B.FhirResource | R5.FhirResource;
5
+ export type Resource = R4B.Resource | R5.Resource;
6
+ export type Bundle<BundleContentType = FhirResource> = R4B.Bundle<BundleContentType> | R5.Bundle<BundleContentType>;
7
+ export type BundleEntry<BundleContentType = FhirResource> = R4B.BundleEntry<BundleContentType> | R5.BundleEntry<BundleContentType>;
8
+ export type Address = R4B.Address | R5.Address;
9
+ export type HumanName = R4B.HumanName | R5.HumanName;
@@ -0,0 +1,2 @@
1
+ export * from './utils';
2
+ export * from './fhir-types';
@@ -0,0 +1,14 @@
1
+ import { Address, HumanName } from './fhir-types';
2
+ export interface AddressFormatOptions {
3
+ all?: boolean;
4
+ use?: boolean;
5
+ lineSeparator?: string;
6
+ }
7
+ export interface HumanNameFormatOptions {
8
+ all?: boolean;
9
+ prefix?: boolean;
10
+ suffix?: boolean;
11
+ use?: boolean;
12
+ }
13
+ export declare function formatAddress(address: Address, options?: AddressFormatOptions): string;
14
+ export declare function formatHumanName(name: HumanName, options?: HumanNameFormatOptions): string;
@@ -0,0 +1,16 @@
1
+ import type { OystehrClientRequest } from './client/client';
2
+ import { OystehrConfig } from './config';
3
+ import * as errors from './errors';
4
+ import { Oystehr as OystehrBase } from './resources/classes';
5
+ export * from './resources';
6
+ export type { OystehrClientRequest };
7
+ export type { OystehrConfig };
8
+ declare class Oystehr extends OystehrBase {
9
+ static OystehrFHIRError: typeof errors.OystehrFHIRError;
10
+ static OystehrSdkError: typeof errors.OystehrSdkError;
11
+ }
12
+ declare namespace Oystehr {
13
+ type OystehrFHIRError = errors.OystehrFHIRError;
14
+ type OystehrSdkError = errors.OystehrSdkError;
15
+ }
16
+ export default Oystehr;
@@ -0,0 +1,14 @@
1
+ import { OystehrFHIRError, OystehrSdkError } from './errors/index.js';
2
+ import { Oystehr as Oystehr$1 } from './resources/classes/index.js';
3
+
4
+ // HACK: ideally we would only have to do this for CommonJS
5
+ // where default + named exports are not allowed; however,
6
+ // our ancient tsc settings are somehow grabbing js from
7
+ // dist/esm and types from dist/cjs
8
+ class Oystehr extends Oystehr$1 {
9
+ }
10
+ Oystehr.OystehrFHIRError = OystehrFHIRError;
11
+ Oystehr.OystehrSdkError = OystehrSdkError;
12
+
13
+ export { Oystehr as default };
14
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":["../../src/index.ts"],"sourcesContent":["import type { OystehrClientRequest } from './client/client';\nimport { OystehrConfig } from './config';\nimport * as errors from './errors';\nimport { Oystehr as OystehrBase } from './resources/classes';\n\nexport * from './resources';\n\nexport type { OystehrClientRequest };\nexport type { OystehrConfig };\n\n// HACK: ideally we would only have to do this for CommonJS\n// where default + named exports are not allowed; however,\n// our ancient tsc settings are somehow grabbing js from\n// dist/esm and types from dist/cjs\n\nclass Oystehr extends OystehrBase {\n static OystehrFHIRError = errors.OystehrFHIRError;\n static OystehrSdkError = errors.OystehrSdkError;\n}\n\n// eslint-disable-next-line @typescript-eslint/no-namespace\nnamespace Oystehr {\n export type OystehrFHIRError = errors.OystehrFHIRError;\n export type OystehrSdkError = errors.OystehrSdkError;\n}\n\nexport default Oystehr;\n"],"names":["OystehrBase","errors.OystehrFHIRError","errors.OystehrSdkError"],"mappings":";;;AAUA;AACA;AACA;AACA;AAEA,MAAM,OAAQ,SAAQA,SAAW,CAAA;;AACxB,OAAA,CAAA,gBAAgB,GAAGC,gBAAuB,CAAC;AAC3C,OAAA,CAAA,eAAe,GAAGC,eAAsB;;;;"}
@@ -0,0 +1,2 @@
1
+ import{v4 as e}from"uuid";class t extends Error{constructor({message:e,code:s}){super(e),Object.setPrototypeOf(this,t.prototype),this.code=s,this.name="OystehrSdkError"}toString(){return`${this.name}: ${this.message} (code: ${this.code})`}}function s(e){var t;const s=[];for(const i of null!==(t=e.issue)&&void 0!==t?t:[])i.details&&i.details.text&&s.push(i.details.text);return s.length||s.push("Unknown FHIR error"),s.join(",")}class i extends t{constructor({error:e,code:t}){super({message:s(e),code:t}),Object.setPrototypeOf(this,i.prototype),this.cause=e,this.name="OystehrFHIRError"}}function r(e,t,s,i){return new(s||(s=Promise))((function(r,n){function o(e){try{u(i.next(e))}catch(e){n(e)}}function c(e){try{u(i.throw(e))}catch(e){n(e)}}function u(e){var t;e.done?r(e.value):(t=e.value,t instanceof s?t:new s((function(e){e(t)}))).then(o,c)}u((i=i.apply(e,t||[])).next())}))}"function"==typeof SuppressedError&&SuppressedError;const n=[408,429,500,502,503,504],o=["ECONNRESET","ECONNREFUSED","EPIPE","ETIMEDOUT","UND_ERR_CONNECT_TIMEOUT","UND_ERR_HEADERS_TIMEOUT","UND_ERR_HEADERS_TIMEOUT","UND_ERR_SOCKET"];class c{constructor(e){this.config=e}request(e,s){return(i,n)=>r(this,void 0,void 0,(function*(){const r=()=>{var e;return null!==(e=this.config.projectApiUrl)&&void 0!==e?e:"https://project-api.zapehr.com/v1"},o=()=>this.config;try{return yield a(r,o,e,s)(i,n)}catch(e){const s=e;throw new t({message:s.message,code:s.code})}}))}fhirRequest(e,s){return(n,o)=>r(this,void 0,void 0,(function*(){try{const t=()=>{var e;return null!==(e=this.config.fhirApiUrl)&&void 0!==e?e:"https://fhir-api.zapehr.com"},i=()=>this.config;return yield a(t,i,e,s)(n,o)}catch(e){const s=e;if("string"==typeof s.message)throw new t({message:s.message,code:s.code});throw new i({error:s.message,code:s.code})}}))}}function u(e){return"accessToken"in e}function a(s,i,c,a){return(d,l)=>r(this,void 0,void 0,(function*(){var p,m,g,v,f,y,q,b,O,j,w;const E=d&&!l&&!Array.isArray(d)&&u(d)?{}:null!==(p=d)&&void 0!==p?p:{},T=d&&!l&&!Array.isArray(d)&&u(d)?d:l,x=a.toLowerCase(),S=i(),k=null!==(m=S.fetch)&&void 0!==m?m:fetch,R=null!==(g=null==T?void 0:T.accessToken)&&void 0!==g?g:S.accessToken,N=null!==(v=null==T?void 0:T.projectId)&&void 0!==v?v:i().projectId;let P=c,U=E;if(!Array.isArray(E)){const[e,s]=function(e,s){const i=Object.assign({},s),r=e.replace(/\{([^}]+)\}/g,((e,r)=>{if(delete i[r],r.match(/^.*\+$/))return s[r]+"";if(!s[r]||""===s[r])throw new t({message:`Required path parameter is an empty string: ${r}`,code:400});return s[r]?encodeURIComponent(s[r]+""):""})),n=Object.keys(i),o=n.length?n.reduce(((e,t)=>Object.assign(Object.assign({},e),{[t]:i[t]})),{}):{};return[r,o]}(c,E);P=e,U=s}P=P.replace(/^\//,"");const z=s(),I=z.endsWith("/")?z:z+"/",$=new URL(P,I);let A;if(Array.isArray(U))A=JSON.stringify(U);else if(Object.keys(U).length)if("get"===x)h(U,$.searchParams);else if("application/x-www-form-urlencoded"===(null==T?void 0:T.contentType)){const e=new URLSearchParams;h(U,e),A=e.toString()}else A=JSON.stringify(U);else"application/x-www-form-urlencoded"!==(null==T?void 0:T.contentType)&&"post"===x&&(A="{}");const _=Object.assign(N?{"x-zapehr-project-id":N,"x-oystehr-project-id":N}:{},{"content-type":null!==(f=null==T?void 0:T.contentType)&&void 0!==f?f:"application/json"},R?{Authorization:`Bearer ${R}`}:{},(null==T?void 0:T.ifMatch)?{"If-Match":T.ifMatch}:{},{"x-oystehr-request-id":null!==(y=null==T?void 0:T.requestId)&&void 0!==y?y:e()}),C={retries:null!==(b=null===(q=S.retry)||void 0===q?void 0:q.retries)&&void 0!==b?b:3,onRetry:null===(O=S.retry)||void 0===O?void 0:O.onRetry,retryOn:[...null!==(w=null===(j=S.retry)||void 0===j?void 0:j.retryOn)&&void 0!==w?w:[],...n]};return C.retryOn.push(...n),function(e,t){var s,i;return r(this,void 0,void 0,(function*(){let r;for(const n of Array.from({length:(null!==(s=t.retries)&&void 0!==s?s:0)+1},((e,t)=>t)))try{return yield e(n)}catch(e){let s=!1;if("response"in e){const i=e;s=t.retryOn.includes(i.code),r={message:e.message,code:e.code}}else if(r=e,"code"in e&&"string"==typeof e.code){const t=e;s=o.includes(t.code)}if(!s)break;t.onRetry&&n!==(null!==(i=t.retries)&&void 0!==i?i:0)&&t.onRetry(n+1)}throw r}))}((e=>r(this,void 0,void 0,(function*(){var t,s,i,r,n,o;const c=yield k(new Request($,{method:x.toUpperCase(),body:A,headers:_})),u=c.body?yield c.text():null;let a;try{a=u&&((null===(t=c.headers.get("content-type"))||void 0===t?void 0:t.includes("application/json"))||(null===(s=c.headers.get("content-type"))||void 0===s?void 0:s.includes("application/fhir+json")))?JSON.parse(u):null}catch(e){a=null}if(!c.ok||c.status>=400){_["x-oystehr-fetch-attempts"]=`${e}`;throw{message:null!==(n=null!==(r=null!==(i=null==a?void 0:a.message)&&void 0!==i?i:a)&&void 0!==r?r:u)&&void 0!==n?n:c.statusText,code:null!==(o=null==a?void 0:a.code)&&void 0!==o?o:c.status,response:c}}return a}))),C)}))}function h(e,t){for(const[s,i]of Object.entries(e))Array.isArray(i)?i.forEach((e=>t.append(s,e))):t.append(s,i)}class d extends c{constructor(e){super(e),this.list=e=>this.request("/application","get")(e),this.create=(e,t)=>this.request("/application","post")(e,t),this.get=(e,t)=>this.request("/application/{id}","get")(e,t),this.update=(e,t)=>this.request("/application/{id}","patch")(e,t),this.delete=(e,t)=>this.request("/application/{id}","delete")(e,t),this.rotateSecret=(e,t)=>this.request("/application/{id}/rotate-secret","post")(e,t),this.revokeRefreshToken=(e,t)=>this.request("/application/{id}/revoke-refresh-token","post")(e,t),this.revokeAccessToken=(e,t)=>this.request("/application/{id}/revoke-access-token","post")(e,t)}}class l extends c{constructor(e){super(e),this.issue=(e,t)=>this.request("/payment/charge/issue","post")(e,t),this.status=(e,t)=>this.request("/payment/charge/status","post")(e,t)}}const p="https://extensions.fhir.zapehr.com/encounter-virtual-service-pre-release",m="addressString";function g(e){var t,s,i;if(function(e){return Object.hasOwn(e,"virtualService")}(e)){const s=null===(t=e.virtualService)||void 0===t?void 0:t.find((e=>{var t;return"https://fhir.zapehr.com/virtual-service-type"===(null===(t=e.channelType)||void 0===t?void 0:t.system)}));return null==s?void 0:s.addressString}if(!e.extension)return;const r=e.extension.find((e=>e.url===p));if(!(null==r?void 0:r.extension))return;return null===(i=null===(s=r.extension)||void 0===s?void 0:s.find((e=>e.url===m)))||void 0===i?void 0:i.valueString}class v extends c{constructor(e){super(e),this.ENCOUNTER_VS_EXTENSION_URL=p,this.ENCOUNTER_VS_EXTENSION_RELATIVE_URL=m,this.getConversationIdFromEncounter=g,this.create=(e,t)=>this.request("/messaging/conversation","post")(e,t),this.getToken=e=>this.request("/messaging/conversation/token","get")(e),this.addParticipant=(e,t)=>this.request("/messaging/conversation/{conversationId}/participant","post")(e,t),this.removeParticipant=(e,t)=>this.request("/messaging/conversation/{conversationId}/participant","delete")(e,t),this.message=(e,t)=>this.request("/messaging/conversation/{conversationId}/message","post")(e,t)}}class f extends c{constructor(e){super(e),this.get=(e,t)=>this.request("/developer/{id}","get")(e,t),this.update=(e,t)=>this.request("/developer/{id}","patch")(e,t),this.delete=(e,t)=>this.request("/developer/{id}","delete")(e,t),this.invite=(e,t)=>this.request("/developer/invite","post")(e,t),this.list=e=>this.request("/developer","get")(e),this.listV2=(e,t)=>this.request("/developer/v2/list","get")(e,t)}}class y extends c{constructor(e){super(e),this.syncPatient=(e,t)=>this.request("/erx/sync-patient/{patientId}","post")(e,t),this.allergySearch=(e,t)=>this.request("/erx/allergy/search","get")(e,t),this.medicationSearch=(e,t)=>this.request("/erx/medication/search","get")(e,t)}}function q({resourceType:e,params:t},s){return r(this,void 0,void 0,(function*(){let i;t&&(i=Object.entries(t).reduce(((e,[t,s])=>(e[s.name]||(e[s.name]=[]),e[s.name].push(s.value),e)),{}));const r=yield this.fhirRequest(`/${e}/_search`,"POST")(i,Object.assign(Object.assign({},s),{contentType:"application/x-www-form-urlencoded"}));return Object.assign(Object.assign({},r),{unbundle:function(){var e,t;return null!==(t=null===(e=this.entry)||void 0===e?void 0:e.map((e=>e.resource)).filter((e=>void 0!==e)))&&void 0!==t?t:[]}})}))}function b(e,t){return r(this,void 0,void 0,(function*(){const{resourceType:s}=e;return this.fhirRequest(`/${s}`,"POST")(e,t)}))}function O({resourceType:e,id:t},s){return r(this,void 0,void 0,(function*(){return this.fhirRequest(`/${e}/${t}`,"GET")({},s)}))}function j(e,t){return r(this,void 0,void 0,(function*(){const{id:s,resourceType:i}=e;return this.fhirRequest(`/${i}/${s}`,"PUT")(e,Object.assign(Object.assign({},t),{ifMatch:(null==t?void 0:t.optimisticLockingVersionId)?`W/"${t.optimisticLockingVersionId}"`:void 0}))}))}function w({resourceType:e,id:t,operations:s},i){return r(this,void 0,void 0,(function*(){return this.fhirRequest(`/${e}/${t}`,"PATCH")(s,Object.assign(Object.assign({},i),{contentType:"application/json-patch+json",ifMatch:(null==i?void 0:i.optimisticLockingVersionId)?`W/"${i.optimisticLockingVersionId}"`:void 0}))}))}function E({resourceType:e,id:t},s){return r(this,void 0,void 0,(function*(){return this.fhirRequest(`/${e}/${t}`,"DELETE")({},s)}))}function T({resourceType:e,id:t,versionId:s},i){return r(this,void 0,void 0,(function*(){return this.fhirRequest(`/${e}/${t}/_history${s?`/${s}`:""}`,"GET")({},i)}))}function x(e){const{method:t,url:s}=e,i={request:{method:t,url:s}};if(s.split("?").length>1){const[e,t]=s.split("?"),r=t.split("&").map((e=>{const[t,s]=e.split("=");return{name:t,value:s}})).reduce(((e,{name:t,value:s})=>(e[t]=s,e)),{}),n=new URLSearchParams;h(r,n),i.request.url=`${e}?${n.toString()}`}if(["GET","DELETE","HEAD"].includes(t))return i;if("PUT"===t){const{resource:t}=e;return Object.assign(Object.assign({},i),{resource:t})}if("PATCH"===t)return"resource"in e?Object.assign(Object.assign({},i),{resource:e.resource}):Object.assign(Object.assign({},i),{resource:{resourceType:"Binary",contentType:"application/json-patch+json",data:Buffer.from(JSON.stringify(e.operations),"utf8").toString("base64")}});if("POST"===t){const{resource:t,fullUrl:s}=e;return Object.assign(Object.assign({},i),{resource:t,fullUrl:s})}throw new Error("Unrecognized method")}function S(e){return function(t,s){return r(this,void 0,void 0,(function*(){return this.fhirRequest("/","POST")({resourceType:"Bundle",type:e,entry:t.requests.map(x)},s)}))}}const k=S("batch"),R=S("transaction");class N extends c{constructor(e){super(e),this.search=q,this.create=b,this.get=O,this.update=j,this.patch=w,this.delete=E,this.history=T,this.batch=k,this.transaction=R}}class P extends c{constructor(e){super(e),this.list=e=>this.request("/m2m","get")(e),this.create=(e,t)=>this.request("/m2m","post")(e,t),this.get=(e,t)=>this.request("/m2m/{id}","get")(e,t),this.update=(e,t)=>this.request("/m2m/{id}","patch")(e,t),this.delete=(e,t)=>this.request("/m2m/{id}","delete")(e,t),this.rotateSecret=(e,t)=>this.request("/m2m/{id}/rotate-secret","post")(e,t),this.listV2=(e,t)=>this.request("/m2m/v2/list","get")(e,t)}}class U extends c{constructor(e){super(e),this.getMessagingConfig=e=>this.request("/messaging/config","get")(e)}}class z extends c{constructor(e){super(e),this.setUp=(e,t)=>this.request("/payment/payment-method/setup","post")(e,t),this.setDefault=(e,t)=>this.request("/payment/payment-method/set-default","post")(e,t),this.delete=(e,t)=>this.request("/payment/payment-method","delete")(e,t),this.list=(e,t)=>this.request("/payment/payment-method/list","post")(e,t)}}class I extends c{constructor(e){super(e),this.get=e=>this.request("/project","get")(e),this.update=(e,t)=>this.request("/project","patch")(e,t)}}class $ extends c{constructor(e){super(e),this.eligibilityCheck=(e,t)=>this.request("/rcm/eligibility-check","post")(e,t),this.validateProfessionalClaim=(e,t)=>this.request("/rcm/professional-claim/validate","post")(e,t),this.submitProfessionalClaim=(e,t)=>this.request("/rcm/professional-claim/submit","post")(e,t)}}class A extends c{constructor(e){super(e),this.list=e=>this.request("/iam/role","get")(e),this.create=(e,t)=>this.request("/iam/role","post")(e,t),this.get=(e,t)=>this.request("/iam/role/{roleId}","get")(e,t),this.update=(e,t)=>this.request("/iam/role/{roleId}","patch")(e,t),this.delete=(e,t)=>this.request("/iam/role/{roleId}","delete")(e,t)}}class _ extends c{constructor(e){super(e),this.list=e=>this.request("/secret","get")(e),this.set=(e,t)=>this.request("/secret","post")(e,t),this.get=(e,t)=>this.request("/secret/{name}","get")(e,t),this.delete=(e,t)=>this.request("/secret/{name}","delete")(e,t)}}class C extends c{constructor(e){super(e),this.createMeeting=(e,t)=>this.request("/telemed/v2/meeting","post")(e,t),this.joinMeeting=(e,t)=>this.request("/telemed/v2/meeting/{encounterId}/join","get")(e,t)}}class L extends c{constructor(e){super(e),this.send=(e,t)=>this.request("/messaging/transactional-sms/send","post")(e,t)}}class M extends c{constructor(e){super(e),this.me=e=>this.request("/user/me","get")(e),this.get=(e,t)=>this.request("/user/{id}","get")(e,t),this.update=(e,t)=>this.request("/user/{id}","patch")(e,t),this.delete=(e,t)=>this.request("/user/{id}","delete")(e,t),this.invite=(e,t)=>this.request("/user/invite","post")(e,t),this.list=e=>this.request("/user","get")(e),this.listV2=(e,t)=>this.request("/user/v2/list","get")(e,t)}}class D extends c{constructor(e){super(e),this.get=e=>this.request("/version","get")(e)}}function V({bucketName:e,"objectPath+":t,file:s}){return r(this,void 0,void 0,(function*(){const i=yield this.request("/z3/{bucketName}/{objectPath+}","post")({action:"upload",bucketName:e,"objectPath+":t});yield fetch(i.signedUrl,{method:"PUT",body:s})}))}function F({bucketName:e,"objectPath+":t}){return r(this,void 0,void 0,(function*(){const s=yield this.request("/z3/{bucketName}/{objectPath+}","post")({action:"download",bucketName:e,"objectPath+":t}),i=yield fetch(s.signedUrl,{method:"GET"});if(!i.ok)throw new Error("Failed to download file");return i.arrayBuffer()}))}class B extends c{constructor(e){super(e),this.uploadFile=V,this.downloadFile=F,this.listBuckets=e=>this.request("/z3","get")(e),this.createBucket=(e,t)=>this.request("/z3/{bucketName}","put")(e,t),this.deleteBucket=(e,t)=>this.request("/z3/{bucketName}","delete")(e,t),this.listObjects=(e,t)=>this.request("/z3/{bucketName}/{objectPath+}","get")(e,t),this.getPresignedUrl=(e,t)=>this.request("/z3/{bucketName}/{objectPath+}","post")(e,t),this.deleteObject=(e,t)=>this.request("/z3/{bucketName}/{objectPath+}","delete")(e,t)}}function H({id:e,file:t,filename:s}){return r(this,void 0,void 0,(function*(){const i=yield this.request("/zambda/{id}/s3-upload","post")({id:e,filename:s});yield fetch(i.signedUrl,{method:"PUT",body:t})}))}class G extends c{constructor(e){super(e),this.uploadFile=H,this.list=e=>this.request("/zambda","get")(e),this.create=(e,t)=>this.request("/zambda","post")(e,t),this.get=(e,t)=>this.request("/zambda/{id}","get")(e,t),this.update=(e,t)=>this.request("/zambda/{id}","patch")(e,t),this.delete=(e,t)=>this.request("/zambda/{id}","delete")(e,t),this.execute=(e,t)=>this.request("/zambda/{id}/execute","post")(e,t),this.executePublic=(e,t)=>this.request("/zambda/{id}/execute-public","post")(e,t),this.s3Upload=(e,t)=>this.request("/zambda/{id}/s3-upload","post")(e,t)}}class J extends c{constructor(e){super(e),this.list=(e,t)=>this.request("/zambda/{id}/logStream","post")(e,t),this.search=(e,t)=>this.request("/zambda/{id}/logStream/search","post")(e,t),this.get=(e,t)=>this.request("/zambda/{id}/logStream/{logStreamName}","post")(e,t)}}let W=class{constructor(e){this.application=new d(e),this.developer=new f(e),this.m2m=new P(e),this.messaging=new U(e),this.conversation=new v(e),this.transactionalSMS=new L(e),this.paymentMethod=new z(e),this.charge=new l(e),this.project=new I(e),this.rcm=new $(e),this.erx=new y(e),this.role=new A(e),this.secret=new _(e),this.telemed=new C(e),this.user=new M(e),this.version=new D(e),this.z3=new B(e),this.zambda=new G(e),this.zambdaLogStream=new J(e),this.fhir=new N(e)}};class X extends W{}X.OystehrFHIRError=i,X.OystehrSdkError=t;export{X as default};
2
+ //# sourceMappingURL=index.min.js.map