@nexalink/carecompass-sdk 0.6.1 → 0.7.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 (767) hide show
  1. package/README.md +390 -22
  2. package/dist/adapters.d.ts +54 -0
  3. package/dist/adapters.js +53 -0
  4. package/dist/client.d.ts +117 -1
  5. package/dist/client.js +218 -2
  6. package/dist/coding-element.d.ts +22 -0
  7. package/dist/coding-element.js +475 -0
  8. package/dist/coding-ui.d.ts +62 -0
  9. package/dist/coding-ui.js +358 -0
  10. package/dist/coding.d.ts +188 -0
  11. package/dist/coding.js +590 -0
  12. package/dist/index.d.ts +12 -1
  13. package/dist/index.js +6 -0
  14. package/dist/rcm.d.ts +5 -16
  15. package/dist/rcm.js +58 -53
  16. package/dist/telemetry.d.ts +11 -0
  17. package/dist/telemetry.js +19 -2
  18. package/dist/ui.d.ts +4 -0
  19. package/dist/ui.js +2 -0
  20. package/dist/version.js +1 -1
  21. package/node_modules/@nexalink/coding-contracts/LICENSE +23 -0
  22. package/node_modules/@nexalink/coding-contracts/README.md +200 -0
  23. package/node_modules/@nexalink/coding-contracts/dist/cjs/index.cjs +6179 -0
  24. package/node_modules/@nexalink/coding-contracts/dist/index.d.ts +1338 -0
  25. package/node_modules/@nexalink/coding-contracts/dist/index.js +6135 -0
  26. package/node_modules/@nexalink/coding-contracts/package.json +60 -0
  27. package/node_modules/@nexalink/coding-contracts/schemas/coding-batch.schema.json +63 -0
  28. package/node_modules/@nexalink/coding-contracts/schemas/coding-case-clinical.schema.json +428 -0
  29. package/node_modules/@nexalink/coding-contracts/schemas/coding-case-context.schema.json +128 -0
  30. package/node_modules/@nexalink/coding-contracts/schemas/coding-case-payer.schema.json +126 -0
  31. package/node_modules/@nexalink/coding-contracts/schemas/coding-case.schema.json +97 -0
  32. package/node_modules/@nexalink/coding-contracts/schemas/coding-decision-line.schema.json +172 -0
  33. package/node_modules/@nexalink/coding-contracts/schemas/coding-decision.schema.json +430 -0
  34. package/node_modules/@nexalink/coding-contracts/schemas/coding-evidence.schema.json +100 -0
  35. package/node_modules/@nexalink/coding-contracts/schemas/coding-extension.schema.json +36 -0
  36. package/node_modules/@nexalink/coding-contracts/schemas/coding-reviewer-action.schema.json +64 -0
  37. package/node_modules/@nexalink/coding-contracts/schemas/coding-rule-result.schema.json +90 -0
  38. package/node_modules/@nexalink/coding-contracts/schemas/coding-service-line.schema.json +120 -0
  39. package/node_modules/@nexalink/coding-contracts/schemas/rcm-coding-input.schema.json +82 -0
  40. package/node_modules/@nexalink/coding-contracts/schemas/rcm-coding-output.schema.json +146 -0
  41. package/node_modules/@nexalink/coding-contracts/schemas/rcm-model-prompt.schema.json +91 -0
  42. package/node_modules/@nexalink/coding-contracts/schemas/rcm-retrieval-metadata.schema.json +61 -0
  43. package/node_modules/@nexalink/coding-contracts/schemas/rcm-reviewer-event.schema.json +92 -0
  44. package/node_modules/@nexalink/coding-contracts/schemas/rcm-runtime-event.schema.json +170 -0
  45. package/node_modules/@nexalink/coding-contracts/schemas/rcm-supporting-reference.schema.json +81 -0
  46. package/node_modules/@nexalink/coding-contracts/schemas/rcm-workflow-catalog.schema.json +180 -0
  47. package/node_modules/@nexalink/coding-contracts/versions.json +107 -0
  48. package/node_modules/@nexalink/coding-contracts/workflow-constants.json +11 -0
  49. package/node_modules/zod/LICENSE +21 -0
  50. package/node_modules/zod/README.md +191 -0
  51. package/node_modules/zod/index.cjs +33 -0
  52. package/node_modules/zod/index.d.cts +4 -0
  53. package/node_modules/zod/index.d.ts +4 -0
  54. package/node_modules/zod/index.js +4 -0
  55. package/node_modules/zod/locales/index.cjs +17 -0
  56. package/node_modules/zod/locales/index.d.cts +1 -0
  57. package/node_modules/zod/locales/index.d.ts +1 -0
  58. package/node_modules/zod/locales/index.js +1 -0
  59. package/node_modules/zod/locales/package.json +7 -0
  60. package/node_modules/zod/mini/index.cjs +32 -0
  61. package/node_modules/zod/mini/index.d.cts +3 -0
  62. package/node_modules/zod/mini/index.d.ts +3 -0
  63. package/node_modules/zod/mini/index.js +3 -0
  64. package/node_modules/zod/mini/package.json +7 -0
  65. package/node_modules/zod/package.json +135 -0
  66. package/node_modules/zod/src/index.ts +4 -0
  67. package/node_modules/zod/src/locales/index.ts +1 -0
  68. package/node_modules/zod/src/mini/index.ts +3 -0
  69. package/node_modules/zod/src/v3/ZodError.ts +330 -0
  70. package/node_modules/zod/src/v3/benchmarks/datetime.ts +58 -0
  71. package/node_modules/zod/src/v3/benchmarks/discriminatedUnion.ts +80 -0
  72. package/node_modules/zod/src/v3/benchmarks/index.ts +59 -0
  73. package/node_modules/zod/src/v3/benchmarks/ipv4.ts +57 -0
  74. package/node_modules/zod/src/v3/benchmarks/object.ts +69 -0
  75. package/node_modules/zod/src/v3/benchmarks/primitives.ts +162 -0
  76. package/node_modules/zod/src/v3/benchmarks/realworld.ts +63 -0
  77. package/node_modules/zod/src/v3/benchmarks/string.ts +55 -0
  78. package/node_modules/zod/src/v3/benchmarks/union.ts +80 -0
  79. package/node_modules/zod/src/v3/errors.ts +13 -0
  80. package/node_modules/zod/src/v3/external.ts +6 -0
  81. package/node_modules/zod/src/v3/helpers/enumUtil.ts +17 -0
  82. package/node_modules/zod/src/v3/helpers/errorUtil.ts +8 -0
  83. package/node_modules/zod/src/v3/helpers/parseUtil.ts +176 -0
  84. package/node_modules/zod/src/v3/helpers/partialUtil.ts +34 -0
  85. package/node_modules/zod/src/v3/helpers/typeAliases.ts +2 -0
  86. package/node_modules/zod/src/v3/helpers/util.ts +224 -0
  87. package/node_modules/zod/src/v3/index.ts +4 -0
  88. package/node_modules/zod/src/v3/locales/en.ts +124 -0
  89. package/node_modules/zod/src/v3/standard-schema.ts +113 -0
  90. package/node_modules/zod/src/v3/tests/Mocker.ts +54 -0
  91. package/node_modules/zod/src/v3/tests/all-errors.test.ts +157 -0
  92. package/node_modules/zod/src/v3/tests/anyunknown.test.ts +28 -0
  93. package/node_modules/zod/src/v3/tests/array.test.ts +71 -0
  94. package/node_modules/zod/src/v3/tests/async-parsing.test.ts +388 -0
  95. package/node_modules/zod/src/v3/tests/async-refinements.test.ts +46 -0
  96. package/node_modules/zod/src/v3/tests/base.test.ts +29 -0
  97. package/node_modules/zod/src/v3/tests/bigint.test.ts +55 -0
  98. package/node_modules/zod/src/v3/tests/branded.test.ts +53 -0
  99. package/node_modules/zod/src/v3/tests/catch.test.ts +220 -0
  100. package/node_modules/zod/src/v3/tests/coerce.test.ts +133 -0
  101. package/node_modules/zod/src/v3/tests/complex.test.ts +70 -0
  102. package/node_modules/zod/src/v3/tests/custom.test.ts +31 -0
  103. package/node_modules/zod/src/v3/tests/date.test.ts +32 -0
  104. package/node_modules/zod/src/v3/tests/deepmasking.test.ts +186 -0
  105. package/node_modules/zod/src/v3/tests/default.test.ts +112 -0
  106. package/node_modules/zod/src/v3/tests/description.test.ts +33 -0
  107. package/node_modules/zod/src/v3/tests/discriminated-unions.test.ts +315 -0
  108. package/node_modules/zod/src/v3/tests/enum.test.ts +80 -0
  109. package/node_modules/zod/src/v3/tests/error.test.ts +551 -0
  110. package/node_modules/zod/src/v3/tests/firstparty.test.ts +87 -0
  111. package/node_modules/zod/src/v3/tests/firstpartyschematypes.test.ts +21 -0
  112. package/node_modules/zod/src/v3/tests/function.test.ts +261 -0
  113. package/node_modules/zod/src/v3/tests/generics.test.ts +48 -0
  114. package/node_modules/zod/src/v3/tests/instanceof.test.ts +37 -0
  115. package/node_modules/zod/src/v3/tests/intersection.test.ts +110 -0
  116. package/node_modules/zod/src/v3/tests/language-server.source.ts +76 -0
  117. package/node_modules/zod/src/v3/tests/language-server.test.ts +207 -0
  118. package/node_modules/zod/src/v3/tests/literal.test.ts +36 -0
  119. package/node_modules/zod/src/v3/tests/map.test.ts +110 -0
  120. package/node_modules/zod/src/v3/tests/masking.test.ts +4 -0
  121. package/node_modules/zod/src/v3/tests/mocker.test.ts +19 -0
  122. package/node_modules/zod/src/v3/tests/nan.test.ts +24 -0
  123. package/node_modules/zod/src/v3/tests/nativeEnum.test.ts +87 -0
  124. package/node_modules/zod/src/v3/tests/nullable.test.ts +42 -0
  125. package/node_modules/zod/src/v3/tests/number.test.ts +176 -0
  126. package/node_modules/zod/src/v3/tests/object-augmentation.test.ts +29 -0
  127. package/node_modules/zod/src/v3/tests/object-in-es5-env.test.ts +29 -0
  128. package/node_modules/zod/src/v3/tests/object.test.ts +434 -0
  129. package/node_modules/zod/src/v3/tests/optional.test.ts +42 -0
  130. package/node_modules/zod/src/v3/tests/parseUtil.test.ts +23 -0
  131. package/node_modules/zod/src/v3/tests/parser.test.ts +41 -0
  132. package/node_modules/zod/src/v3/tests/partials.test.ts +243 -0
  133. package/node_modules/zod/src/v3/tests/pickomit.test.ts +111 -0
  134. package/node_modules/zod/src/v3/tests/pipeline.test.ts +29 -0
  135. package/node_modules/zod/src/v3/tests/preprocess.test.ts +186 -0
  136. package/node_modules/zod/src/v3/tests/primitive.test.ts +440 -0
  137. package/node_modules/zod/src/v3/tests/promise.test.ts +90 -0
  138. package/node_modules/zod/src/v3/tests/readonly.test.ts +194 -0
  139. package/node_modules/zod/src/v3/tests/record.test.ts +171 -0
  140. package/node_modules/zod/src/v3/tests/recursive.test.ts +197 -0
  141. package/node_modules/zod/src/v3/tests/refine.test.ts +313 -0
  142. package/node_modules/zod/src/v3/tests/safeparse.test.ts +27 -0
  143. package/node_modules/zod/src/v3/tests/set.test.ts +142 -0
  144. package/node_modules/zod/src/v3/tests/standard-schema.test.ts +83 -0
  145. package/node_modules/zod/src/v3/tests/string.test.ts +916 -0
  146. package/node_modules/zod/src/v3/tests/transformer.test.ts +233 -0
  147. package/node_modules/zod/src/v3/tests/tuple.test.ts +90 -0
  148. package/node_modules/zod/src/v3/tests/unions.test.ts +57 -0
  149. package/node_modules/zod/src/v3/tests/validations.test.ts +133 -0
  150. package/node_modules/zod/src/v3/tests/void.test.ts +15 -0
  151. package/node_modules/zod/src/v3/types.ts +5138 -0
  152. package/node_modules/zod/src/v4/classic/checks.ts +32 -0
  153. package/node_modules/zod/src/v4/classic/coerce.ts +27 -0
  154. package/node_modules/zod/src/v4/classic/compat.ts +70 -0
  155. package/node_modules/zod/src/v4/classic/errors.ts +82 -0
  156. package/node_modules/zod/src/v4/classic/external.ts +52 -0
  157. package/node_modules/zod/src/v4/classic/from-json-schema.ts +659 -0
  158. package/node_modules/zod/src/v4/classic/index.ts +5 -0
  159. package/node_modules/zod/src/v4/classic/iso.ts +90 -0
  160. package/node_modules/zod/src/v4/classic/parse.ts +82 -0
  161. package/node_modules/zod/src/v4/classic/schemas.ts +2672 -0
  162. package/node_modules/zod/src/v4/classic/tests/anyunknown.test.ts +26 -0
  163. package/node_modules/zod/src/v4/classic/tests/apply.test.ts +59 -0
  164. package/node_modules/zod/src/v4/classic/tests/array.test.ts +264 -0
  165. package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +216 -0
  166. package/node_modules/zod/src/v4/classic/tests/async-parsing.test.ts +381 -0
  167. package/node_modules/zod/src/v4/classic/tests/async-refinements.test.ts +68 -0
  168. package/node_modules/zod/src/v4/classic/tests/base.test.ts +7 -0
  169. package/node_modules/zod/src/v4/classic/tests/bigint.test.ts +54 -0
  170. package/node_modules/zod/src/v4/classic/tests/brand.test.ts +106 -0
  171. package/node_modules/zod/src/v4/classic/tests/catch.test.ts +326 -0
  172. package/node_modules/zod/src/v4/classic/tests/coalesce.test.ts +20 -0
  173. package/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +573 -0
  174. package/node_modules/zod/src/v4/classic/tests/codec.test.ts +703 -0
  175. package/node_modules/zod/src/v4/classic/tests/coerce.test.ts +160 -0
  176. package/node_modules/zod/src/v4/classic/tests/continuability.test.ts +374 -0
  177. package/node_modules/zod/src/v4/classic/tests/custom.test.ts +40 -0
  178. package/node_modules/zod/src/v4/classic/tests/date.test.ts +62 -0
  179. package/node_modules/zod/src/v4/classic/tests/datetime.test.ts +302 -0
  180. package/node_modules/zod/src/v4/classic/tests/default.test.ts +409 -0
  181. package/node_modules/zod/src/v4/classic/tests/describe-meta-checks.test.ts +27 -0
  182. package/node_modules/zod/src/v4/classic/tests/description.test.ts +32 -0
  183. package/node_modules/zod/src/v4/classic/tests/detached-methods.test.ts +197 -0
  184. package/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +694 -0
  185. package/node_modules/zod/src/v4/classic/tests/enum.test.ts +285 -0
  186. package/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +807 -0
  187. package/node_modules/zod/src/v4/classic/tests/error.test.ts +711 -0
  188. package/node_modules/zod/src/v4/classic/tests/file.test.ts +96 -0
  189. package/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +179 -0
  190. package/node_modules/zod/src/v4/classic/tests/fix-json-issue.test.ts +26 -0
  191. package/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +895 -0
  192. package/node_modules/zod/src/v4/classic/tests/function.test.ts +360 -0
  193. package/node_modules/zod/src/v4/classic/tests/generics.test.ts +72 -0
  194. package/node_modules/zod/src/v4/classic/tests/global-config.test.ts +39 -0
  195. package/node_modules/zod/src/v4/classic/tests/hash.test.ts +68 -0
  196. package/node_modules/zod/src/v4/classic/tests/index.test.ts +939 -0
  197. package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +60 -0
  198. package/node_modules/zod/src/v4/classic/tests/intersection.test.ts +198 -0
  199. package/node_modules/zod/src/v4/classic/tests/jitless-allows-eval.test.ts +46 -0
  200. package/node_modules/zod/src/v4/classic/tests/json.test.ts +109 -0
  201. package/node_modules/zod/src/v4/classic/tests/lazy.test.ts +227 -0
  202. package/node_modules/zod/src/v4/classic/tests/literal.test.ts +117 -0
  203. package/node_modules/zod/src/v4/classic/tests/locales_ka.test.ts +29 -0
  204. package/node_modules/zod/src/v4/classic/tests/locales_ro.test.ts +24 -0
  205. package/node_modules/zod/src/v4/classic/tests/map.test.ts +330 -0
  206. package/node_modules/zod/src/v4/classic/tests/nan.test.ts +21 -0
  207. package/node_modules/zod/src/v4/classic/tests/nested-refine.test.ts +168 -0
  208. package/node_modules/zod/src/v4/classic/tests/nonoptional.test.ts +101 -0
  209. package/node_modules/zod/src/v4/classic/tests/nullable.test.ts +22 -0
  210. package/node_modules/zod/src/v4/classic/tests/number.test.ts +325 -0
  211. package/node_modules/zod/src/v4/classic/tests/object.test.ts +717 -0
  212. package/node_modules/zod/src/v4/classic/tests/optional.test.ts +333 -0
  213. package/node_modules/zod/src/v4/classic/tests/partial.test.ts +450 -0
  214. package/node_modules/zod/src/v4/classic/tests/pickomit.test.ts +211 -0
  215. package/node_modules/zod/src/v4/classic/tests/pipe.test.ts +101 -0
  216. package/node_modules/zod/src/v4/classic/tests/prefault.test.ts +74 -0
  217. package/node_modules/zod/src/v4/classic/tests/preprocess-types.test.ts +26 -0
  218. package/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +351 -0
  219. package/node_modules/zod/src/v4/classic/tests/primitive.test.ts +175 -0
  220. package/node_modules/zod/src/v4/classic/tests/promise.test.ts +81 -0
  221. package/node_modules/zod/src/v4/classic/tests/prototypes.test.ts +23 -0
  222. package/node_modules/zod/src/v4/classic/tests/readonly.test.ts +252 -0
  223. package/node_modules/zod/src/v4/classic/tests/record.test.ts +717 -0
  224. package/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +631 -0
  225. package/node_modules/zod/src/v4/classic/tests/refine.test.ts +633 -0
  226. package/node_modules/zod/src/v4/classic/tests/registries.test.ts +243 -0
  227. package/node_modules/zod/src/v4/classic/tests/set.test.ts +181 -0
  228. package/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +134 -0
  229. package/node_modules/zod/src/v4/classic/tests/string-formats.test.ts +125 -0
  230. package/node_modules/zod/src/v4/classic/tests/string.test.ts +1224 -0
  231. package/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +106 -0
  232. package/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +771 -0
  233. package/node_modules/zod/src/v4/classic/tests/to-json-schema-methods.test.ts +438 -0
  234. package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +3125 -0
  235. package/node_modules/zod/src/v4/classic/tests/transform.test.ts +378 -0
  236. package/node_modules/zod/src/v4/classic/tests/tuple.test.ts +496 -0
  237. package/node_modules/zod/src/v4/classic/tests/union.test.ts +273 -0
  238. package/node_modules/zod/src/v4/classic/tests/url.test.ts +13 -0
  239. package/node_modules/zod/src/v4/classic/tests/validations.test.ts +283 -0
  240. package/node_modules/zod/src/v4/classic/tests/void.test.ts +12 -0
  241. package/node_modules/zod/src/v4/core/api.ts +1823 -0
  242. package/node_modules/zod/src/v4/core/checks.ts +1293 -0
  243. package/node_modules/zod/src/v4/core/config.ts +15 -0
  244. package/node_modules/zod/src/v4/core/core.ts +153 -0
  245. package/node_modules/zod/src/v4/core/doc.ts +44 -0
  246. package/node_modules/zod/src/v4/core/errors.ts +455 -0
  247. package/node_modules/zod/src/v4/core/index.ts +16 -0
  248. package/node_modules/zod/src/v4/core/json-schema-generator.ts +126 -0
  249. package/node_modules/zod/src/v4/core/json-schema-processors.ts +666 -0
  250. package/node_modules/zod/src/v4/core/json-schema.ts +147 -0
  251. package/node_modules/zod/src/v4/core/parse.ts +195 -0
  252. package/node_modules/zod/src/v4/core/regexes.ts +190 -0
  253. package/node_modules/zod/src/v4/core/registries.ts +105 -0
  254. package/node_modules/zod/src/v4/core/schemas.ts +4730 -0
  255. package/node_modules/zod/src/v4/core/standard-schema.ts +159 -0
  256. package/node_modules/zod/src/v4/core/tests/extend.test.ts +59 -0
  257. package/node_modules/zod/src/v4/core/tests/index.test.ts +46 -0
  258. package/node_modules/zod/src/v4/core/tests/locales/be.test.ts +124 -0
  259. package/node_modules/zod/src/v4/core/tests/locales/el.test.ts +215 -0
  260. package/node_modules/zod/src/v4/core/tests/locales/en.test.ts +22 -0
  261. package/node_modules/zod/src/v4/core/tests/locales/es.test.ts +181 -0
  262. package/node_modules/zod/src/v4/core/tests/locales/fr.test.ts +72 -0
  263. package/node_modules/zod/src/v4/core/tests/locales/he.test.ts +379 -0
  264. package/node_modules/zod/src/v4/core/tests/locales/hr.test.ts +163 -0
  265. package/node_modules/zod/src/v4/core/tests/locales/nl.test.ts +46 -0
  266. package/node_modules/zod/src/v4/core/tests/locales/ru.test.ts +128 -0
  267. package/node_modules/zod/src/v4/core/tests/locales/tr.test.ts +69 -0
  268. package/node_modules/zod/src/v4/core/tests/locales/uz.test.ts +105 -0
  269. package/node_modules/zod/src/v4/core/tests/record-constructor.test.ts +125 -0
  270. package/node_modules/zod/src/v4/core/tests/recursive-tuples.test.ts +45 -0
  271. package/node_modules/zod/src/v4/core/to-json-schema.ts +622 -0
  272. package/node_modules/zod/src/v4/core/util.ts +983 -0
  273. package/node_modules/zod/src/v4/core/versions.ts +5 -0
  274. package/node_modules/zod/src/v4/core/zsf.ts +323 -0
  275. package/node_modules/zod/src/v4/index.ts +4 -0
  276. package/node_modules/zod/src/v4/locales/ar.ts +115 -0
  277. package/node_modules/zod/src/v4/locales/az.ts +111 -0
  278. package/node_modules/zod/src/v4/locales/be.ts +176 -0
  279. package/node_modules/zod/src/v4/locales/bg.ts +128 -0
  280. package/node_modules/zod/src/v4/locales/ca.ts +116 -0
  281. package/node_modules/zod/src/v4/locales/cs.ts +118 -0
  282. package/node_modules/zod/src/v4/locales/da.ts +123 -0
  283. package/node_modules/zod/src/v4/locales/de.ts +116 -0
  284. package/node_modules/zod/src/v4/locales/el.ts +121 -0
  285. package/node_modules/zod/src/v4/locales/en.ts +123 -0
  286. package/node_modules/zod/src/v4/locales/eo.ts +118 -0
  287. package/node_modules/zod/src/v4/locales/es.ts +141 -0
  288. package/node_modules/zod/src/v4/locales/fa.ts +126 -0
  289. package/node_modules/zod/src/v4/locales/fi.ts +121 -0
  290. package/node_modules/zod/src/v4/locales/fr-CA.ts +116 -0
  291. package/node_modules/zod/src/v4/locales/fr.ts +132 -0
  292. package/node_modules/zod/src/v4/locales/he.ts +246 -0
  293. package/node_modules/zod/src/v4/locales/hr.ts +131 -0
  294. package/node_modules/zod/src/v4/locales/hu.ts +117 -0
  295. package/node_modules/zod/src/v4/locales/hy.ts +164 -0
  296. package/node_modules/zod/src/v4/locales/id.ts +115 -0
  297. package/node_modules/zod/src/v4/locales/index.ts +52 -0
  298. package/node_modules/zod/src/v4/locales/is.ts +119 -0
  299. package/node_modules/zod/src/v4/locales/it.ts +116 -0
  300. package/node_modules/zod/src/v4/locales/ja.ts +114 -0
  301. package/node_modules/zod/src/v4/locales/ka.ts +123 -0
  302. package/node_modules/zod/src/v4/locales/kh.ts +7 -0
  303. package/node_modules/zod/src/v4/locales/km.ts +119 -0
  304. package/node_modules/zod/src/v4/locales/ko.ts +121 -0
  305. package/node_modules/zod/src/v4/locales/lt.ts +239 -0
  306. package/node_modules/zod/src/v4/locales/mk.ts +118 -0
  307. package/node_modules/zod/src/v4/locales/ms.ts +115 -0
  308. package/node_modules/zod/src/v4/locales/nl.ts +121 -0
  309. package/node_modules/zod/src/v4/locales/no.ts +116 -0
  310. package/node_modules/zod/src/v4/locales/ota.ts +117 -0
  311. package/node_modules/zod/src/v4/locales/pl.ts +118 -0
  312. package/node_modules/zod/src/v4/locales/ps.ts +126 -0
  313. package/node_modules/zod/src/v4/locales/pt.ts +116 -0
  314. package/node_modules/zod/src/v4/locales/ro.ts +129 -0
  315. package/node_modules/zod/src/v4/locales/ru.ts +176 -0
  316. package/node_modules/zod/src/v4/locales/sl.ts +118 -0
  317. package/node_modules/zod/src/v4/locales/sv.ts +119 -0
  318. package/node_modules/zod/src/v4/locales/ta.ts +118 -0
  319. package/node_modules/zod/src/v4/locales/th.ts +119 -0
  320. package/node_modules/zod/src/v4/locales/tr.ts +111 -0
  321. package/node_modules/zod/src/v4/locales/ua.ts +7 -0
  322. package/node_modules/zod/src/v4/locales/uk.ts +117 -0
  323. package/node_modules/zod/src/v4/locales/ur.ts +119 -0
  324. package/node_modules/zod/src/v4/locales/uz.ts +117 -0
  325. package/node_modules/zod/src/v4/locales/vi.ts +117 -0
  326. package/node_modules/zod/src/v4/locales/yo.ts +124 -0
  327. package/node_modules/zod/src/v4/locales/zh-CN.ts +116 -0
  328. package/node_modules/zod/src/v4/locales/zh-TW.ts +115 -0
  329. package/node_modules/zod/src/v4/mini/checks.ts +32 -0
  330. package/node_modules/zod/src/v4/mini/coerce.ts +27 -0
  331. package/node_modules/zod/src/v4/mini/external.ts +41 -0
  332. package/node_modules/zod/src/v4/mini/index.ts +3 -0
  333. package/node_modules/zod/src/v4/mini/iso.ts +66 -0
  334. package/node_modules/zod/src/v4/mini/parse.ts +14 -0
  335. package/node_modules/zod/src/v4/mini/schemas.ts +1947 -0
  336. package/node_modules/zod/src/v4/mini/tests/apply.test.ts +24 -0
  337. package/node_modules/zod/src/v4/mini/tests/assignability.test.ts +129 -0
  338. package/node_modules/zod/src/v4/mini/tests/brand.test.ts +94 -0
  339. package/node_modules/zod/src/v4/mini/tests/checks.test.ts +144 -0
  340. package/node_modules/zod/src/v4/mini/tests/codec.test.ts +548 -0
  341. package/node_modules/zod/src/v4/mini/tests/computed.test.ts +36 -0
  342. package/node_modules/zod/src/v4/mini/tests/error.test.ts +22 -0
  343. package/node_modules/zod/src/v4/mini/tests/functions.test.ts +5 -0
  344. package/node_modules/zod/src/v4/mini/tests/index.test.ts +993 -0
  345. package/node_modules/zod/src/v4/mini/tests/number.test.ts +95 -0
  346. package/node_modules/zod/src/v4/mini/tests/object.test.ts +227 -0
  347. package/node_modules/zod/src/v4/mini/tests/prototypes.test.ts +43 -0
  348. package/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +325 -0
  349. package/node_modules/zod/src/v4/mini/tests/standard-schema.test.ts +50 -0
  350. package/node_modules/zod/src/v4/mini/tests/string.test.ts +352 -0
  351. package/node_modules/zod/src/v4-mini/index.ts +3 -0
  352. package/node_modules/zod/v3/ZodError.cjs +138 -0
  353. package/node_modules/zod/v3/ZodError.d.cts +164 -0
  354. package/node_modules/zod/v3/ZodError.d.ts +164 -0
  355. package/node_modules/zod/v3/ZodError.js +133 -0
  356. package/node_modules/zod/v3/errors.cjs +17 -0
  357. package/node_modules/zod/v3/errors.d.cts +5 -0
  358. package/node_modules/zod/v3/errors.d.ts +5 -0
  359. package/node_modules/zod/v3/errors.js +9 -0
  360. package/node_modules/zod/v3/external.cjs +22 -0
  361. package/node_modules/zod/v3/external.d.cts +6 -0
  362. package/node_modules/zod/v3/external.d.ts +6 -0
  363. package/node_modules/zod/v3/external.js +6 -0
  364. package/node_modules/zod/v3/helpers/enumUtil.cjs +2 -0
  365. package/node_modules/zod/v3/helpers/enumUtil.d.cts +8 -0
  366. package/node_modules/zod/v3/helpers/enumUtil.d.ts +8 -0
  367. package/node_modules/zod/v3/helpers/enumUtil.js +1 -0
  368. package/node_modules/zod/v3/helpers/errorUtil.cjs +9 -0
  369. package/node_modules/zod/v3/helpers/errorUtil.d.cts +9 -0
  370. package/node_modules/zod/v3/helpers/errorUtil.d.ts +9 -0
  371. package/node_modules/zod/v3/helpers/errorUtil.js +6 -0
  372. package/node_modules/zod/v3/helpers/parseUtil.cjs +124 -0
  373. package/node_modules/zod/v3/helpers/parseUtil.d.cts +78 -0
  374. package/node_modules/zod/v3/helpers/parseUtil.d.ts +78 -0
  375. package/node_modules/zod/v3/helpers/parseUtil.js +109 -0
  376. package/node_modules/zod/v3/helpers/partialUtil.cjs +2 -0
  377. package/node_modules/zod/v3/helpers/partialUtil.d.cts +8 -0
  378. package/node_modules/zod/v3/helpers/partialUtil.d.ts +8 -0
  379. package/node_modules/zod/v3/helpers/partialUtil.js +1 -0
  380. package/node_modules/zod/v3/helpers/typeAliases.cjs +2 -0
  381. package/node_modules/zod/v3/helpers/typeAliases.d.cts +2 -0
  382. package/node_modules/zod/v3/helpers/typeAliases.d.ts +2 -0
  383. package/node_modules/zod/v3/helpers/typeAliases.js +1 -0
  384. package/node_modules/zod/v3/helpers/util.cjs +137 -0
  385. package/node_modules/zod/v3/helpers/util.d.cts +85 -0
  386. package/node_modules/zod/v3/helpers/util.d.ts +85 -0
  387. package/node_modules/zod/v3/helpers/util.js +133 -0
  388. package/node_modules/zod/v3/index.cjs +33 -0
  389. package/node_modules/zod/v3/index.d.cts +4 -0
  390. package/node_modules/zod/v3/index.d.ts +4 -0
  391. package/node_modules/zod/v3/index.js +4 -0
  392. package/node_modules/zod/v3/locales/en.cjs +112 -0
  393. package/node_modules/zod/v3/locales/en.d.cts +3 -0
  394. package/node_modules/zod/v3/locales/en.d.ts +3 -0
  395. package/node_modules/zod/v3/locales/en.js +109 -0
  396. package/node_modules/zod/v3/package.json +7 -0
  397. package/node_modules/zod/v3/standard-schema.cjs +2 -0
  398. package/node_modules/zod/v3/standard-schema.d.cts +102 -0
  399. package/node_modules/zod/v3/standard-schema.d.ts +102 -0
  400. package/node_modules/zod/v3/standard-schema.js +1 -0
  401. package/node_modules/zod/v3/types.cjs +3777 -0
  402. package/node_modules/zod/v3/types.d.cts +1034 -0
  403. package/node_modules/zod/v3/types.d.ts +1034 -0
  404. package/node_modules/zod/v3/types.js +3695 -0
  405. package/node_modules/zod/v4/classic/checks.cjs +33 -0
  406. package/node_modules/zod/v4/classic/checks.d.cts +1 -0
  407. package/node_modules/zod/v4/classic/checks.d.ts +1 -0
  408. package/node_modules/zod/v4/classic/checks.js +1 -0
  409. package/node_modules/zod/v4/classic/coerce.cjs +47 -0
  410. package/node_modules/zod/v4/classic/coerce.d.cts +17 -0
  411. package/node_modules/zod/v4/classic/coerce.d.ts +17 -0
  412. package/node_modules/zod/v4/classic/coerce.js +17 -0
  413. package/node_modules/zod/v4/classic/compat.cjs +61 -0
  414. package/node_modules/zod/v4/classic/compat.d.cts +50 -0
  415. package/node_modules/zod/v4/classic/compat.d.ts +50 -0
  416. package/node_modules/zod/v4/classic/compat.js +31 -0
  417. package/node_modules/zod/v4/classic/errors.cjs +74 -0
  418. package/node_modules/zod/v4/classic/errors.d.cts +30 -0
  419. package/node_modules/zod/v4/classic/errors.d.ts +30 -0
  420. package/node_modules/zod/v4/classic/errors.js +48 -0
  421. package/node_modules/zod/v4/classic/external.cjs +73 -0
  422. package/node_modules/zod/v4/classic/external.d.cts +16 -0
  423. package/node_modules/zod/v4/classic/external.d.ts +16 -0
  424. package/node_modules/zod/v4/classic/external.js +20 -0
  425. package/node_modules/zod/v4/classic/from-json-schema.cjs +625 -0
  426. package/node_modules/zod/v4/classic/from-json-schema.d.cts +12 -0
  427. package/node_modules/zod/v4/classic/from-json-schema.d.ts +12 -0
  428. package/node_modules/zod/v4/classic/from-json-schema.js +599 -0
  429. package/node_modules/zod/v4/classic/index.cjs +33 -0
  430. package/node_modules/zod/v4/classic/index.d.cts +4 -0
  431. package/node_modules/zod/v4/classic/index.d.ts +4 -0
  432. package/node_modules/zod/v4/classic/index.js +4 -0
  433. package/node_modules/zod/v4/classic/iso.cjs +60 -0
  434. package/node_modules/zod/v4/classic/iso.d.cts +22 -0
  435. package/node_modules/zod/v4/classic/iso.d.ts +22 -0
  436. package/node_modules/zod/v4/classic/iso.js +30 -0
  437. package/node_modules/zod/v4/classic/package.json +7 -0
  438. package/node_modules/zod/v4/classic/parse.cjs +41 -0
  439. package/node_modules/zod/v4/classic/parse.d.cts +31 -0
  440. package/node_modules/zod/v4/classic/parse.d.ts +31 -0
  441. package/node_modules/zod/v4/classic/parse.js +15 -0
  442. package/node_modules/zod/v4/classic/schemas.cjs +1511 -0
  443. package/node_modules/zod/v4/classic/schemas.d.cts +767 -0
  444. package/node_modules/zod/v4/classic/schemas.d.ts +767 -0
  445. package/node_modules/zod/v4/classic/schemas.js +1395 -0
  446. package/node_modules/zod/v4/core/api.cjs +1227 -0
  447. package/node_modules/zod/v4/core/api.d.cts +325 -0
  448. package/node_modules/zod/v4/core/api.d.ts +325 -0
  449. package/node_modules/zod/v4/core/api.js +1087 -0
  450. package/node_modules/zod/v4/core/checks.cjs +601 -0
  451. package/node_modules/zod/v4/core/checks.d.cts +278 -0
  452. package/node_modules/zod/v4/core/checks.d.ts +278 -0
  453. package/node_modules/zod/v4/core/checks.js +575 -0
  454. package/node_modules/zod/v4/core/core.cjs +85 -0
  455. package/node_modules/zod/v4/core/core.d.cts +70 -0
  456. package/node_modules/zod/v4/core/core.d.ts +70 -0
  457. package/node_modules/zod/v4/core/core.js +78 -0
  458. package/node_modules/zod/v4/core/doc.cjs +39 -0
  459. package/node_modules/zod/v4/core/doc.d.cts +14 -0
  460. package/node_modules/zod/v4/core/doc.d.ts +14 -0
  461. package/node_modules/zod/v4/core/doc.js +35 -0
  462. package/node_modules/zod/v4/core/errors.cjs +216 -0
  463. package/node_modules/zod/v4/core/errors.d.cts +221 -0
  464. package/node_modules/zod/v4/core/errors.d.ts +221 -0
  465. package/node_modules/zod/v4/core/errors.js +185 -0
  466. package/node_modules/zod/v4/core/index.cjs +47 -0
  467. package/node_modules/zod/v4/core/index.d.cts +16 -0
  468. package/node_modules/zod/v4/core/index.d.ts +16 -0
  469. package/node_modules/zod/v4/core/index.js +16 -0
  470. package/node_modules/zod/v4/core/json-schema-generator.cjs +99 -0
  471. package/node_modules/zod/v4/core/json-schema-generator.d.cts +65 -0
  472. package/node_modules/zod/v4/core/json-schema-generator.d.ts +65 -0
  473. package/node_modules/zod/v4/core/json-schema-generator.js +95 -0
  474. package/node_modules/zod/v4/core/json-schema-processors.cjs +644 -0
  475. package/node_modules/zod/v4/core/json-schema-processors.d.cts +49 -0
  476. package/node_modules/zod/v4/core/json-schema-processors.d.ts +49 -0
  477. package/node_modules/zod/v4/core/json-schema-processors.js +601 -0
  478. package/node_modules/zod/v4/core/json-schema.cjs +2 -0
  479. package/node_modules/zod/v4/core/json-schema.d.cts +88 -0
  480. package/node_modules/zod/v4/core/json-schema.d.ts +88 -0
  481. package/node_modules/zod/v4/core/json-schema.js +1 -0
  482. package/node_modules/zod/v4/core/package.json +7 -0
  483. package/node_modules/zod/v4/core/parse.cjs +131 -0
  484. package/node_modules/zod/v4/core/parse.d.cts +49 -0
  485. package/node_modules/zod/v4/core/parse.d.ts +49 -0
  486. package/node_modules/zod/v4/core/parse.js +93 -0
  487. package/node_modules/zod/v4/core/regexes.cjs +172 -0
  488. package/node_modules/zod/v4/core/regexes.d.cts +85 -0
  489. package/node_modules/zod/v4/core/regexes.d.ts +85 -0
  490. package/node_modules/zod/v4/core/regexes.js +139 -0
  491. package/node_modules/zod/v4/core/registries.cjs +56 -0
  492. package/node_modules/zod/v4/core/registries.d.cts +35 -0
  493. package/node_modules/zod/v4/core/registries.d.ts +35 -0
  494. package/node_modules/zod/v4/core/registries.js +51 -0
  495. package/node_modules/zod/v4/core/schemas.cjs +2270 -0
  496. package/node_modules/zod/v4/core/schemas.d.cts +1184 -0
  497. package/node_modules/zod/v4/core/schemas.d.ts +1184 -0
  498. package/node_modules/zod/v4/core/schemas.js +2239 -0
  499. package/node_modules/zod/v4/core/standard-schema.cjs +2 -0
  500. package/node_modules/zod/v4/core/standard-schema.d.cts +126 -0
  501. package/node_modules/zod/v4/core/standard-schema.d.ts +126 -0
  502. package/node_modules/zod/v4/core/standard-schema.js +1 -0
  503. package/node_modules/zod/v4/core/to-json-schema.cjs +457 -0
  504. package/node_modules/zod/v4/core/to-json-schema.d.cts +114 -0
  505. package/node_modules/zod/v4/core/to-json-schema.d.ts +114 -0
  506. package/node_modules/zod/v4/core/to-json-schema.js +448 -0
  507. package/node_modules/zod/v4/core/util.cjs +734 -0
  508. package/node_modules/zod/v4/core/util.d.cts +200 -0
  509. package/node_modules/zod/v4/core/util.d.ts +200 -0
  510. package/node_modules/zod/v4/core/util.js +674 -0
  511. package/node_modules/zod/v4/core/versions.cjs +8 -0
  512. package/node_modules/zod/v4/core/versions.d.cts +5 -0
  513. package/node_modules/zod/v4/core/versions.d.ts +5 -0
  514. package/node_modules/zod/v4/core/versions.js +5 -0
  515. package/node_modules/zod/v4/index.cjs +22 -0
  516. package/node_modules/zod/v4/index.d.cts +3 -0
  517. package/node_modules/zod/v4/index.d.ts +3 -0
  518. package/node_modules/zod/v4/index.js +3 -0
  519. package/node_modules/zod/v4/locales/ar.cjs +133 -0
  520. package/node_modules/zod/v4/locales/ar.d.cts +5 -0
  521. package/node_modules/zod/v4/locales/ar.d.ts +4 -0
  522. package/node_modules/zod/v4/locales/ar.js +106 -0
  523. package/node_modules/zod/v4/locales/az.cjs +132 -0
  524. package/node_modules/zod/v4/locales/az.d.cts +5 -0
  525. package/node_modules/zod/v4/locales/az.d.ts +4 -0
  526. package/node_modules/zod/v4/locales/az.js +105 -0
  527. package/node_modules/zod/v4/locales/be.cjs +183 -0
  528. package/node_modules/zod/v4/locales/be.d.cts +5 -0
  529. package/node_modules/zod/v4/locales/be.d.ts +4 -0
  530. package/node_modules/zod/v4/locales/be.js +156 -0
  531. package/node_modules/zod/v4/locales/bg.cjs +147 -0
  532. package/node_modules/zod/v4/locales/bg.d.cts +5 -0
  533. package/node_modules/zod/v4/locales/bg.d.ts +4 -0
  534. package/node_modules/zod/v4/locales/bg.js +120 -0
  535. package/node_modules/zod/v4/locales/ca.cjs +134 -0
  536. package/node_modules/zod/v4/locales/ca.d.cts +5 -0
  537. package/node_modules/zod/v4/locales/ca.d.ts +4 -0
  538. package/node_modules/zod/v4/locales/ca.js +107 -0
  539. package/node_modules/zod/v4/locales/cs.cjs +138 -0
  540. package/node_modules/zod/v4/locales/cs.d.cts +5 -0
  541. package/node_modules/zod/v4/locales/cs.d.ts +4 -0
  542. package/node_modules/zod/v4/locales/cs.js +111 -0
  543. package/node_modules/zod/v4/locales/da.cjs +142 -0
  544. package/node_modules/zod/v4/locales/da.d.cts +5 -0
  545. package/node_modules/zod/v4/locales/da.d.ts +4 -0
  546. package/node_modules/zod/v4/locales/da.js +115 -0
  547. package/node_modules/zod/v4/locales/de.cjs +135 -0
  548. package/node_modules/zod/v4/locales/de.d.cts +5 -0
  549. package/node_modules/zod/v4/locales/de.d.ts +4 -0
  550. package/node_modules/zod/v4/locales/de.js +108 -0
  551. package/node_modules/zod/v4/locales/el.cjs +136 -0
  552. package/node_modules/zod/v4/locales/el.d.cts +5 -0
  553. package/node_modules/zod/v4/locales/el.d.ts +4 -0
  554. package/node_modules/zod/v4/locales/el.js +109 -0
  555. package/node_modules/zod/v4/locales/en.cjs +140 -0
  556. package/node_modules/zod/v4/locales/en.d.cts +5 -0
  557. package/node_modules/zod/v4/locales/en.d.ts +4 -0
  558. package/node_modules/zod/v4/locales/en.js +113 -0
  559. package/node_modules/zod/v4/locales/eo.cjs +136 -0
  560. package/node_modules/zod/v4/locales/eo.d.cts +5 -0
  561. package/node_modules/zod/v4/locales/eo.d.ts +4 -0
  562. package/node_modules/zod/v4/locales/eo.js +109 -0
  563. package/node_modules/zod/v4/locales/es.cjs +159 -0
  564. package/node_modules/zod/v4/locales/es.d.cts +5 -0
  565. package/node_modules/zod/v4/locales/es.d.ts +4 -0
  566. package/node_modules/zod/v4/locales/es.js +132 -0
  567. package/node_modules/zod/v4/locales/fa.cjs +141 -0
  568. package/node_modules/zod/v4/locales/fa.d.cts +5 -0
  569. package/node_modules/zod/v4/locales/fa.d.ts +4 -0
  570. package/node_modules/zod/v4/locales/fa.js +114 -0
  571. package/node_modules/zod/v4/locales/fi.cjs +139 -0
  572. package/node_modules/zod/v4/locales/fi.d.cts +5 -0
  573. package/node_modules/zod/v4/locales/fi.d.ts +4 -0
  574. package/node_modules/zod/v4/locales/fi.js +112 -0
  575. package/node_modules/zod/v4/locales/fr-CA.cjs +134 -0
  576. package/node_modules/zod/v4/locales/fr-CA.d.cts +5 -0
  577. package/node_modules/zod/v4/locales/fr-CA.d.ts +4 -0
  578. package/node_modules/zod/v4/locales/fr-CA.js +107 -0
  579. package/node_modules/zod/v4/locales/fr.cjs +152 -0
  580. package/node_modules/zod/v4/locales/fr.d.cts +5 -0
  581. package/node_modules/zod/v4/locales/fr.d.ts +4 -0
  582. package/node_modules/zod/v4/locales/fr.js +125 -0
  583. package/node_modules/zod/v4/locales/he.cjs +241 -0
  584. package/node_modules/zod/v4/locales/he.d.cts +5 -0
  585. package/node_modules/zod/v4/locales/he.d.ts +4 -0
  586. package/node_modules/zod/v4/locales/he.js +214 -0
  587. package/node_modules/zod/v4/locales/hr.cjs +149 -0
  588. package/node_modules/zod/v4/locales/hr.d.cts +5 -0
  589. package/node_modules/zod/v4/locales/hr.d.ts +4 -0
  590. package/node_modules/zod/v4/locales/hr.js +122 -0
  591. package/node_modules/zod/v4/locales/hu.cjs +135 -0
  592. package/node_modules/zod/v4/locales/hu.d.cts +5 -0
  593. package/node_modules/zod/v4/locales/hu.d.ts +4 -0
  594. package/node_modules/zod/v4/locales/hu.js +108 -0
  595. package/node_modules/zod/v4/locales/hy.cjs +174 -0
  596. package/node_modules/zod/v4/locales/hy.d.cts +5 -0
  597. package/node_modules/zod/v4/locales/hy.d.ts +4 -0
  598. package/node_modules/zod/v4/locales/hy.js +147 -0
  599. package/node_modules/zod/v4/locales/id.cjs +133 -0
  600. package/node_modules/zod/v4/locales/id.d.cts +5 -0
  601. package/node_modules/zod/v4/locales/id.d.ts +4 -0
  602. package/node_modules/zod/v4/locales/id.js +106 -0
  603. package/node_modules/zod/v4/locales/index.cjs +111 -0
  604. package/node_modules/zod/v4/locales/index.d.cts +52 -0
  605. package/node_modules/zod/v4/locales/index.d.ts +52 -0
  606. package/node_modules/zod/v4/locales/index.js +52 -0
  607. package/node_modules/zod/v4/locales/is.cjs +136 -0
  608. package/node_modules/zod/v4/locales/is.d.cts +5 -0
  609. package/node_modules/zod/v4/locales/is.d.ts +4 -0
  610. package/node_modules/zod/v4/locales/is.js +109 -0
  611. package/node_modules/zod/v4/locales/it.cjs +135 -0
  612. package/node_modules/zod/v4/locales/it.d.cts +5 -0
  613. package/node_modules/zod/v4/locales/it.d.ts +4 -0
  614. package/node_modules/zod/v4/locales/it.js +108 -0
  615. package/node_modules/zod/v4/locales/ja.cjs +134 -0
  616. package/node_modules/zod/v4/locales/ja.d.cts +5 -0
  617. package/node_modules/zod/v4/locales/ja.d.ts +4 -0
  618. package/node_modules/zod/v4/locales/ja.js +107 -0
  619. package/node_modules/zod/v4/locales/ka.cjs +139 -0
  620. package/node_modules/zod/v4/locales/ka.d.cts +5 -0
  621. package/node_modules/zod/v4/locales/ka.d.ts +4 -0
  622. package/node_modules/zod/v4/locales/ka.js +112 -0
  623. package/node_modules/zod/v4/locales/kh.cjs +12 -0
  624. package/node_modules/zod/v4/locales/kh.d.cts +5 -0
  625. package/node_modules/zod/v4/locales/kh.d.ts +5 -0
  626. package/node_modules/zod/v4/locales/kh.js +5 -0
  627. package/node_modules/zod/v4/locales/km.cjs +137 -0
  628. package/node_modules/zod/v4/locales/km.d.cts +5 -0
  629. package/node_modules/zod/v4/locales/km.d.ts +4 -0
  630. package/node_modules/zod/v4/locales/km.js +110 -0
  631. package/node_modules/zod/v4/locales/ko.cjs +138 -0
  632. package/node_modules/zod/v4/locales/ko.d.cts +5 -0
  633. package/node_modules/zod/v4/locales/ko.d.ts +4 -0
  634. package/node_modules/zod/v4/locales/ko.js +111 -0
  635. package/node_modules/zod/v4/locales/lt.cjs +230 -0
  636. package/node_modules/zod/v4/locales/lt.d.cts +5 -0
  637. package/node_modules/zod/v4/locales/lt.d.ts +4 -0
  638. package/node_modules/zod/v4/locales/lt.js +203 -0
  639. package/node_modules/zod/v4/locales/mk.cjs +136 -0
  640. package/node_modules/zod/v4/locales/mk.d.cts +5 -0
  641. package/node_modules/zod/v4/locales/mk.d.ts +4 -0
  642. package/node_modules/zod/v4/locales/mk.js +109 -0
  643. package/node_modules/zod/v4/locales/ms.cjs +134 -0
  644. package/node_modules/zod/v4/locales/ms.d.cts +5 -0
  645. package/node_modules/zod/v4/locales/ms.d.ts +4 -0
  646. package/node_modules/zod/v4/locales/ms.js +107 -0
  647. package/node_modules/zod/v4/locales/nl.cjs +137 -0
  648. package/node_modules/zod/v4/locales/nl.d.cts +5 -0
  649. package/node_modules/zod/v4/locales/nl.d.ts +4 -0
  650. package/node_modules/zod/v4/locales/nl.js +110 -0
  651. package/node_modules/zod/v4/locales/no.cjs +135 -0
  652. package/node_modules/zod/v4/locales/no.d.cts +5 -0
  653. package/node_modules/zod/v4/locales/no.d.ts +4 -0
  654. package/node_modules/zod/v4/locales/no.js +108 -0
  655. package/node_modules/zod/v4/locales/ota.cjs +136 -0
  656. package/node_modules/zod/v4/locales/ota.d.cts +5 -0
  657. package/node_modules/zod/v4/locales/ota.d.ts +4 -0
  658. package/node_modules/zod/v4/locales/ota.js +109 -0
  659. package/node_modules/zod/v4/locales/package.json +7 -0
  660. package/node_modules/zod/v4/locales/pl.cjs +136 -0
  661. package/node_modules/zod/v4/locales/pl.d.cts +5 -0
  662. package/node_modules/zod/v4/locales/pl.d.ts +4 -0
  663. package/node_modules/zod/v4/locales/pl.js +109 -0
  664. package/node_modules/zod/v4/locales/ps.cjs +141 -0
  665. package/node_modules/zod/v4/locales/ps.d.cts +5 -0
  666. package/node_modules/zod/v4/locales/ps.d.ts +4 -0
  667. package/node_modules/zod/v4/locales/ps.js +114 -0
  668. package/node_modules/zod/v4/locales/pt.cjs +135 -0
  669. package/node_modules/zod/v4/locales/pt.d.cts +5 -0
  670. package/node_modules/zod/v4/locales/pt.d.ts +4 -0
  671. package/node_modules/zod/v4/locales/pt.js +108 -0
  672. package/node_modules/zod/v4/locales/ro.cjs +146 -0
  673. package/node_modules/zod/v4/locales/ro.d.cts +5 -0
  674. package/node_modules/zod/v4/locales/ro.d.ts +4 -0
  675. package/node_modules/zod/v4/locales/ro.js +119 -0
  676. package/node_modules/zod/v4/locales/ru.cjs +183 -0
  677. package/node_modules/zod/v4/locales/ru.d.cts +5 -0
  678. package/node_modules/zod/v4/locales/ru.d.ts +4 -0
  679. package/node_modules/zod/v4/locales/ru.js +156 -0
  680. package/node_modules/zod/v4/locales/sl.cjs +136 -0
  681. package/node_modules/zod/v4/locales/sl.d.cts +5 -0
  682. package/node_modules/zod/v4/locales/sl.d.ts +4 -0
  683. package/node_modules/zod/v4/locales/sl.js +109 -0
  684. package/node_modules/zod/v4/locales/sv.cjs +137 -0
  685. package/node_modules/zod/v4/locales/sv.d.cts +5 -0
  686. package/node_modules/zod/v4/locales/sv.d.ts +4 -0
  687. package/node_modules/zod/v4/locales/sv.js +110 -0
  688. package/node_modules/zod/v4/locales/ta.cjs +137 -0
  689. package/node_modules/zod/v4/locales/ta.d.cts +5 -0
  690. package/node_modules/zod/v4/locales/ta.d.ts +4 -0
  691. package/node_modules/zod/v4/locales/ta.js +110 -0
  692. package/node_modules/zod/v4/locales/th.cjs +137 -0
  693. package/node_modules/zod/v4/locales/th.d.cts +5 -0
  694. package/node_modules/zod/v4/locales/th.d.ts +4 -0
  695. package/node_modules/zod/v4/locales/th.js +110 -0
  696. package/node_modules/zod/v4/locales/tr.cjs +132 -0
  697. package/node_modules/zod/v4/locales/tr.d.cts +5 -0
  698. package/node_modules/zod/v4/locales/tr.d.ts +4 -0
  699. package/node_modules/zod/v4/locales/tr.js +105 -0
  700. package/node_modules/zod/v4/locales/ua.cjs +12 -0
  701. package/node_modules/zod/v4/locales/ua.d.cts +5 -0
  702. package/node_modules/zod/v4/locales/ua.d.ts +5 -0
  703. package/node_modules/zod/v4/locales/ua.js +5 -0
  704. package/node_modules/zod/v4/locales/uk.cjs +135 -0
  705. package/node_modules/zod/v4/locales/uk.d.cts +5 -0
  706. package/node_modules/zod/v4/locales/uk.d.ts +4 -0
  707. package/node_modules/zod/v4/locales/uk.js +108 -0
  708. package/node_modules/zod/v4/locales/ur.cjs +137 -0
  709. package/node_modules/zod/v4/locales/ur.d.cts +5 -0
  710. package/node_modules/zod/v4/locales/ur.d.ts +4 -0
  711. package/node_modules/zod/v4/locales/ur.js +110 -0
  712. package/node_modules/zod/v4/locales/uz.cjs +137 -0
  713. package/node_modules/zod/v4/locales/uz.d.cts +5 -0
  714. package/node_modules/zod/v4/locales/uz.d.ts +4 -0
  715. package/node_modules/zod/v4/locales/uz.js +110 -0
  716. package/node_modules/zod/v4/locales/vi.cjs +135 -0
  717. package/node_modules/zod/v4/locales/vi.d.cts +5 -0
  718. package/node_modules/zod/v4/locales/vi.d.ts +4 -0
  719. package/node_modules/zod/v4/locales/vi.js +108 -0
  720. package/node_modules/zod/v4/locales/yo.cjs +134 -0
  721. package/node_modules/zod/v4/locales/yo.d.cts +5 -0
  722. package/node_modules/zod/v4/locales/yo.d.ts +4 -0
  723. package/node_modules/zod/v4/locales/yo.js +107 -0
  724. package/node_modules/zod/v4/locales/zh-CN.cjs +136 -0
  725. package/node_modules/zod/v4/locales/zh-CN.d.cts +5 -0
  726. package/node_modules/zod/v4/locales/zh-CN.d.ts +4 -0
  727. package/node_modules/zod/v4/locales/zh-CN.js +109 -0
  728. package/node_modules/zod/v4/locales/zh-TW.cjs +134 -0
  729. package/node_modules/zod/v4/locales/zh-TW.d.cts +5 -0
  730. package/node_modules/zod/v4/locales/zh-TW.d.ts +4 -0
  731. package/node_modules/zod/v4/locales/zh-TW.js +107 -0
  732. package/node_modules/zod/v4/mini/checks.cjs +34 -0
  733. package/node_modules/zod/v4/mini/checks.d.cts +1 -0
  734. package/node_modules/zod/v4/mini/checks.d.ts +1 -0
  735. package/node_modules/zod/v4/mini/checks.js +1 -0
  736. package/node_modules/zod/v4/mini/coerce.cjs +52 -0
  737. package/node_modules/zod/v4/mini/coerce.d.cts +7 -0
  738. package/node_modules/zod/v4/mini/coerce.d.ts +7 -0
  739. package/node_modules/zod/v4/mini/coerce.js +22 -0
  740. package/node_modules/zod/v4/mini/external.cjs +63 -0
  741. package/node_modules/zod/v4/mini/external.d.cts +13 -0
  742. package/node_modules/zod/v4/mini/external.d.ts +13 -0
  743. package/node_modules/zod/v4/mini/external.js +14 -0
  744. package/node_modules/zod/v4/mini/index.cjs +32 -0
  745. package/node_modules/zod/v4/mini/index.d.cts +3 -0
  746. package/node_modules/zod/v4/mini/index.d.ts +3 -0
  747. package/node_modules/zod/v4/mini/index.js +3 -0
  748. package/node_modules/zod/v4/mini/iso.cjs +64 -0
  749. package/node_modules/zod/v4/mini/iso.d.cts +22 -0
  750. package/node_modules/zod/v4/mini/iso.d.ts +22 -0
  751. package/node_modules/zod/v4/mini/iso.js +34 -0
  752. package/node_modules/zod/v4/mini/package.json +7 -0
  753. package/node_modules/zod/v4/mini/parse.cjs +16 -0
  754. package/node_modules/zod/v4/mini/parse.d.cts +1 -0
  755. package/node_modules/zod/v4/mini/parse.d.ts +1 -0
  756. package/node_modules/zod/v4/mini/parse.js +1 -0
  757. package/node_modules/zod/v4/mini/schemas.cjs +1083 -0
  758. package/node_modules/zod/v4/mini/schemas.d.cts +445 -0
  759. package/node_modules/zod/v4/mini/schemas.d.ts +445 -0
  760. package/node_modules/zod/v4/mini/schemas.js +961 -0
  761. package/node_modules/zod/v4/package.json +7 -0
  762. package/node_modules/zod/v4-mini/index.cjs +32 -0
  763. package/node_modules/zod/v4-mini/index.d.cts +3 -0
  764. package/node_modules/zod/v4-mini/index.d.ts +3 -0
  765. package/node_modules/zod/v4-mini/index.js +3 -0
  766. package/node_modules/zod/v4-mini/package.json +7 -0
  767. package/package.json +33 -6
package/README.md CHANGED
@@ -1,23 +1,44 @@
1
1
  # CareCompass SDK
2
2
 
3
- CareCompass is embeddable healthcare AI infrastructure for teams building AI-powered healthcare products.
3
+ CareCompass by Nexalink is an embeddable SDK for AI-assisted medical-coding review, built for behavioral-health EHR and RCM platforms.
4
4
 
5
- It gives healthcare companies a secure SDK and hosted runtime for adding LLM-powered experiences to their own applications without building the regulated AI stack from scratch: model routing, tenant-aware runtime APIs, browser-safe authentication, prompt controls, guardrails, origin validation, deployment checks, and healthcare-specific onboarding.
5
+ It brings coding suggestions, references from the payer policies your team supplies and approves, and missing-documentation flags into your existing product. A qualified human reviewer makes the final coding decision, and that decision is recorded.
6
6
 
7
- CareCompass is for teams that want to ship their own AI product experience while relying on Nexalink to operate the healthcare AI infrastructure layer underneath.
7
+ Your team can add coding review without building and maintaining the supporting AI runtime and policy-research tools itself. Your team remains responsible for approved policies, its integration, and qualified review. Pilot scope, goals, and pricing are agreed with your team before starting; real patient data requires security review and a signed BAA.
8
8
 
9
9
  The SDK gives teams two integration paths:
10
10
 
11
11
  - **Headless core** for product teams that want full control over their own UI, workflow, state management, and rendering.
12
- - **Optional UI kit** for teams that want a fast, branded AI chat experience they can drop into a web app and customize over time.
12
+ - **Optional UI kit** for teams that want embedded review components and a branded experience they can customize over time.
13
13
 
14
- CareCompass is not a diagnosis tool, autonomous treatment product, replacement for clinicians, or general-purpose LLM SDK. It is healthcare AI infrastructure for building compliance-oriented, embedded AI workflows.
14
+ CareCompass supports coding review; it does not submit claims, bill payers, diagnose, or replace qualified reviewers. Prior authorization and patient navigation are future directions, not the current product. Generic chat APIs described below are integration primitives, not a promise of those workflows.
15
+
16
+ See the [CareCompass product overview](https://www.nexalink.care/carecompass), [public developer documentation](https://www.nexalink.care/developer/documentation), and [pilot contact page](https://www.nexalink.care/enterprise/signup).
17
+
18
+ ## Customer Documentation
19
+
20
+ Customer engineering and operations teams should start with the
21
+ [customer quickstart](docs/quickstart.md), which walks through a
22
+ complete synthetic (non-production) integration using the runnable files
23
+ in [`examples/`](examples/). The examples are compiled and executed by
24
+ this package's CI test suite, so the copy-paste code cannot drift from
25
+ the SDK surface.
26
+
27
+ - [Quickstart: synthetic integration end to end](docs/quickstart.md)
28
+ - [CodingCase construction and field validation](docs/coding-case-guide.md)
29
+ - [Coding packs: discovery, authorization, version pinning, and migration](docs/packs.md)
30
+ - [Error handling: retries, timeouts, abstention, conflict, escalation](docs/error-handling.md)
31
+ - [Configuration and policy: what you control, what Nexalink controls](docs/configuration-and-policy.md)
32
+ - [Branding and accessibility guidance](docs/branding-and-accessibility.md)
33
+ - [Production readiness checklist](docs/production-readiness.md)
34
+ - [Version support and deprecation policy](docs/version-support.md)
35
+ - [Migrating from the RCM coding-assistance API](docs/migration-rcm.md)
15
36
 
16
37
  ## Why Teams Choose CareCompass
17
38
 
18
- Healthcare teams can already access foundation models. The hard part is turning those models into production-ready healthcare software.
39
+ Getting an AI prototype working is only the beginning. A coding-review feature also needs approved policy evidence, data handling, and a reliable human review process.
19
40
 
20
- CareCompass packages the healthcare-specific infrastructure layer that most teams would otherwise need to build themselves:
41
+ CareCompass supplies supporting components your team would otherwise need to build and maintain:
21
42
 
22
43
  - secure hosted runtime APIs
23
44
  - tenant and environment routing
@@ -29,22 +50,18 @@ CareCompass packages the healthcare-specific infrastructure layer that most team
29
50
  - white-label UI support
30
51
  - operational onboarding for healthcare use cases
31
52
 
32
- Instead of spending months building LLM infrastructure, product teams can use CareCompass to embed AI into their own application and focus on the workflow, customer experience, and clinical or operational use case they are trying to ship.
53
+ Product teams can focus on their own product while qualified reviewers assess suggestions alongside the approved evidence.
33
54
 
34
55
  ## What You Can Build
35
56
 
36
- CareCompass can power healthcare AI features inside products such as:
57
+ The current product supports a defined medical-coding review workflow inside your existing healthcare software:
37
58
 
38
- - clinical workflow copilots
39
- - patient engagement assistants
40
- - care navigation and resource guidance flows
41
- - benefits or plan guidance experiences
42
- - RCM and prior authorization support tools
43
- - onboarding and support flows for digital health products
44
- - internal operations copilots for healthcare teams
45
- - white-labeled AI assistants inside existing healthcare applications
59
+ - Submit structured encounter information for an authorized coding workflow.
60
+ - Show suggested codes with supporting policy references and documentation gaps.
61
+ - Route unsupported or uncertain cases for qualified review.
62
+ - Record a qualified reviewer's approval, edits, rejection, or escalation.
46
63
 
47
- CareCompass is intentionally workflow-agnostic at the infrastructure layer. The customer owns the product experience; CareCompass provides the SDK, runtime, guardrails, and deployment model needed to make healthcare AI usable in production.
64
+ Your team owns the product experience, supplies and approves the policies, and keeps the final coding decision with a qualified reviewer.
48
65
 
49
66
  ## What You Avoid Building
50
67
 
@@ -81,7 +98,7 @@ CareCompass AI runtime
81
98
 
82
99
  The browser receives only public embed configuration: tenant identifier, environment, public embed key, allowed origins, endpoint, model preferences, feature flags, branding, labels, theme, placement, compliance, and approved prompt settings.
83
100
 
84
- Secret API keys stay in CLI, server-side, or trusted setup workflows. The browser never receives model credentials or Nexalink API keys.
101
+ Secret API keys stay in CLI, server-side, or trusted setup workflows. The browser never receives model credentials or Nexalink API keys. Structured coding submissions additionally never carry prompt configuration, model preferences, feature flags, policy text, corpus identifiers, or runtime tokens; pack ids and cases are validated against the canonical contracts before they leave the SDK.
85
102
 
86
103
  ## Integration Options
87
104
 
@@ -180,10 +197,20 @@ headless core, compliance preflight, and metadata-only audit events. It returns
180
197
  candidate codes for qualified human review; it never makes a final coding,
181
198
  billing, claim-submission, diagnosis, or treatment decision.
182
199
 
200
+ > **Deprecated.** The `./rcm` convenience API (createRcmCodingWorkflow and
201
+ > RcmCodingAssistant) remains fully supported and tested for existing
202
+ > integrations, but new integrations should use the generic headless coding
203
+ > API and review UI described below. A one-time console warning is emitted
204
+ > when the RCM wrappers are used. See [Migrating from the RCM coding-assistance
205
+ > API](#migrating-from-the-rcm-coding-assistance-api).
206
+
183
207
  The SDK sends `workflow: "rcm-coding-assistance"` as an explicit top-level ask
184
- field. The hosted runtime authorizes the workflow from the issued embed key and
185
- server-side tenant entitlement. Values in user context do not authorize a
186
- workflow.
208
+ field. The workflow identifier, request/result payload contracts, and validation
209
+ rules come from the canonical `@nexalink/coding-contracts` package, which is
210
+ generated from one JSON Schema source shared with the portal and the hosted
211
+ runtime. The SDK validates every review response against the canonical
212
+ `rcm-coding-output` contract and fails closed with an escalation when the
213
+ response violates it.
187
214
 
188
215
  Development and staging RCM requests must include `claimContext.stage` set to
189
216
  the configured SDK environment (`"development"` or `"staging"`). Production
@@ -247,6 +274,314 @@ To evaluate the pilot, compare **manual research minutes per case** before and
247
274
  after assisted, human-reviewed use. The target is to measure a 25% or greater
248
275
  reduction, not to make or submit a coding decision.
249
276
 
277
+ ### Generic headless coding API
278
+
279
+ The generic coding API is a stable delivery layer for any authorized coding
280
+ pack. It is intentionally free of payer- or specialty-specific rules: pack
281
+ identity and required schemas come from the server-authorized pack catalog, and
282
+ the canonical CodingCase/CodingDecision contracts come from
283
+ `@nexalink/coding-contracts`.
284
+
285
+ The SDK can integrate headlessly without importing any bundled UI. Import from
286
+ the `./coding` subpath:
287
+
288
+ ```ts
289
+ import { createCodingFlow } from "@nexalink/carecompass-sdk/coding";
290
+ import config from "./carecompass/carecompass.config.json";
291
+
292
+ const flow = createCodingFlow(config, {
293
+ reviewerAuthProvider: () => getReviewerPortalTokens(),
294
+ });
295
+
296
+ // 1. Discover the packs the runtime authorizes for this tenant.
297
+ const packs = await flow.listAuthorizedPacks();
298
+
299
+ // 2. Obtain the pack descriptor and required JSON Schemas.
300
+ const packSchema = await flow.getPackSchema("rcm-coding-assistance");
301
+
302
+ // 3. Submit a structured coding case and poll/stream the job to a decision.
303
+ const snapshot = await flow.submit("rcm-coding-assistance", {
304
+ caseId: "ENC-1042",
305
+ codingIntent: "encounter_review",
306
+ servicePeriod: { startDate: "2026-07-01" },
307
+ context: { setting: "professional", placeOfService: "22" },
308
+ payer: { payerName: "Example Payer" },
309
+ clinical: {
310
+ diagnoses: [
311
+ {
312
+ diagnosisId: "dx-1",
313
+ code: "R05",
314
+ codeSystem: "ICD-10-CM",
315
+ description: "Documented cough",
316
+ diagnosisType: "principal",
317
+ },
318
+ ],
319
+ notes: [{ noteId: "n1", noteType: "clinical_narrative", note: "…" }],
320
+ },
321
+ });
322
+
323
+ // 4. Render or persist the canonical decision.
324
+ if (snapshot.phase === "complete" && snapshot.decision) {
325
+ const { disposition, lineDecisions, gaps, conflicts, provenance } =
326
+ snapshot.decision;
327
+ }
328
+
329
+ // 5. Record a reviewer disposition against the immutable decision.
330
+ await flow.recordReviewerAction(snapshot.decision.decisionId, {
331
+ reviewerId: authenticatedReviewerSub,
332
+ reviewerRole: "qualified_coder",
333
+ action: "approved",
334
+ occurredAt: new Date().toISOString(),
335
+ });
336
+ ```
337
+
338
+ Reviewer actions require a portal-authenticated owner, admin, or reviewer whose
339
+ verified user ID matches `reviewerId` and who has claimed the review in the
340
+ portal. `reviewerAuthProvider` returns that user's `{ accessToken, idToken }`;
341
+ embed credentials and runtime tokens alone cannot approve coding decisions.
342
+ Edits to recommendations must use the portal review disposition flow, which
343
+ validates per-code feedback and the edited evidence set.
344
+
345
+ ### Reviewer engagement events (RCM analytics)
346
+
347
+ `flow.reportReviewerEvent` records tenant-scoped, PHI-free reviewer engagement
348
+ facts (`decision_shown`, `evidence_opened`, `evidence_copied`,
349
+ `review_active_time`) in the operational event plane that powers tenant RCM
350
+ analytics. The built-in `CodingReview` surface reports `decision_shown`,
351
+ evidence engagement, and active review time automatically with a documented
352
+ 120-second idle pause. Delivery is best-effort: it returns `false` instead of
353
+ throwing and never blocks a review.
354
+
355
+ ```ts
356
+ // Hosts rendering a custom review UI report the same contract themselves.
357
+ await flow.reportReviewerEvent({
358
+ eventName: "decision_shown",
359
+ caseRef: decision.caseRef, // opaque case reference, never a patient id
360
+ workflowId: snapshot.packId ?? "rcm-coding-assistance",
361
+ });
362
+ ```
363
+
364
+ Hosts with custom UIs must supply the event name, the opaque `caseRef`, the
365
+ workflow id; the SDK supplies `occurredAt` when omitted. `evidenceId` and
366
+ `activeSeconds` are optional.
367
+ Never send prompts, document contents, patient or member identifiers, claim
368
+ identifiers, or free text. Events are accepted only for jobs owned by the
369
+ embed key's tenant and are validated against the published
370
+ `rcm-reviewer-event-v1` contract. See `TELEMETRY.md` for the boundary between
371
+ aggregate deployment telemetry and this tenant-scoped event plane.
372
+
373
+ ### Monthly PIN time aggregation pack
374
+
375
+ The `monthly-pin-time-aggregation` workflow runs through the exact same
376
+ methods with a structurally different case: structured monthly activity time
377
+ instead of a narrative encounter. The hosted runtime derives the time-based
378
+ codes deterministically from the pack's rule set (the model never computes
379
+ time); the SDK renders the same `CodingReview` surface and requires the same
380
+ qualified human review.
381
+
382
+ ```ts
383
+ import {
384
+ createCodingFlow,
385
+ PIN_TIME_WORKFLOW_ID,
386
+ } from "@nexalink/carecompass-sdk";
387
+
388
+ const flow = createCodingFlow(config);
389
+
390
+ // Discover the pack the runtime authorizes for this tenant.
391
+ const packs = await flow.listAuthorizedPacks();
392
+ const pinPack = packs.find((pack) => pack.packId === PIN_TIME_WORKFLOW_ID);
393
+ if (!pinPack) throw new Error("monthly-pin-time-aggregation is not authorized");
394
+
395
+ // Submit a monthly multi-activity time case.
396
+ const snapshot = await flow.submit(PIN_TIME_WORKFLOW_ID, {
397
+ caseId: "CCM-2026-07",
398
+ analyticsId: "anl-ccm-2026-07",
399
+ codingIntent: "monthly_time_aggregation",
400
+ servicePeriod: { startDate: "2026-07-01", endDate: "2026-07-31" },
401
+ context: {
402
+ setting: "professional",
403
+ placeOfService: "11",
404
+ jurisdiction: "Synthetic MAC-J15",
405
+ specialty: "internal_medicine",
406
+ },
407
+ clinical: {
408
+ timeUnits: [
409
+ {
410
+ timeId: "tu-1",
411
+ date: "2026-07-02",
412
+ durationMinutes: 45,
413
+ activityCode: "EM-MGMT",
414
+ },
415
+ {
416
+ timeId: "tu-2",
417
+ date: "2026-07-09",
418
+ durationMinutes: 50,
419
+ activityCode: "EM-MGMT",
420
+ },
421
+ ],
422
+ },
423
+ });
424
+
425
+ if (snapshot.phase === "complete" && snapshot.decision) {
426
+ // Deterministic code candidates appear as line decisions with rule provenance.
427
+ const { lineDecisions, provenance } = snapshot.decision;
428
+ if (
429
+ provenance.rules.some(
430
+ (rule) => rule.ruleId === "rcm.monthly-time-aggregation",
431
+ )
432
+ ) {
433
+ // The codes were derived by the pack's deterministic time-aggregation rule.
434
+ }
435
+ }
436
+ ```
437
+
438
+ Both packs share the same `createCodingFlow`, `CodingReview`, reviewer-action,
439
+ tenant isolation, evidence grounding, abstention/escalation, and audit
440
+ guarantees; pack-specific behavior lives in the manifests, rule sets, prompts,
441
+ and fixtures only.
442
+
443
+ For live progress, use the lifecycle generator instead of `submit`:
444
+
445
+ ```ts
446
+ for await (const event of flow.stream("rcm-coding-assistance", codingCase)) {
447
+ switch (event.type) {
448
+ case "case_submitted":
449
+ case "status":
450
+ // jobId + queued/running/complete/failed/cancelled
451
+ break;
452
+ case "decision_completed":
453
+ renderDecision(event.decision);
454
+ break;
455
+ case "error":
456
+ retryState(event.snapshot);
457
+ break;
458
+ case "cancelled":
459
+ break;
460
+ }
461
+ }
462
+ ```
463
+
464
+ Workflow/pack identifiers are **server-authorized**. `submit` sends only the
465
+ pack id, the canonical coding case, and routing metadata — never prompt
466
+ configuration, model preferences, feature flags, or policy text. The runtime
467
+ validates the pack against the tenant catalog before accepting work; an
468
+ unauthorized pack fails closed with an `unsupported_scope` error. Responses are
469
+ validated against the canonical `coding-decision` contract and fail closed with
470
+ an `invalid_decision` error instead of surfacing a malformed result.
471
+
472
+ Structured failure states are explicit: `missing_data` (schema validation),
473
+ `unsupported_scope` (pack/date/setting not applicable), `policy_conflict`,
474
+ `terminology_unavailable`, `abstained`, `escalated`, `request_timeout`, and
475
+ `cancelled`. Every failure keeps an error snapshot with `canRetry` metadata;
476
+ `retryLast()` reuses the original request identifier only when the submission
477
+ outcome was ambiguous, and issues a fresh one otherwise. `cancel()` stops
478
+ polling and requests server-side cancellation; after dispose, all in-flight
479
+ operations reject with a disposed error.
480
+
481
+ Browser payloads on this path never contain secret credentials or unrestricted
482
+ policy configuration. Production embeds still require a BFF
483
+ `runtimeTokenProvider`, exactly like the chat and RCM paths.
484
+
485
+ ### Coding review UI
486
+
487
+ For an approved default review experience with minimal configuration, use the
488
+ React `CodingReview` component or the framework-neutral web component. Both are
489
+ optional: headless integrations never import them.
490
+
491
+ ```tsx
492
+ import { CodingReview } from "@nexalink/carecompass-sdk/coding-ui";
493
+ import config from "./carecompass/carecompass.config.json";
494
+
495
+ <CodingReview
496
+ config={config}
497
+ packId="rcm-coding-assistance"
498
+ initialCase={codingCase}
499
+ reviewerId={authenticatedReviewerSub}
500
+ reviewerAuthProvider={() => getReviewerPortalTokens()}
501
+ onCodingDecision={(decision) => persistDecision(decision)}
502
+ renderGap={(gap) => <CustomGap gap={gap} />}
503
+ />;
504
+ ```
505
+
506
+ The default experience renders the human-review boundary (`role="alert"`),
507
+ disposition, line decisions (actions, codes, modifiers, units, linked
508
+ diagnoses), typed gaps (missing documentation, unsupported scope, insufficient
509
+ evidence, policy conflict, terminology unavailable), conflicts, and supporting
510
+ evidence, with retry and cancel controls and a reviewer-action recording form.
511
+ It is driven by `config.theme`, `config.branding`, and `config.labels`; label
512
+ overrides for the review copy are passed with the `labels` prop. UI
513
+ configuration can change presentation only — it can never redefine an
514
+ authorized workflow.
515
+
516
+ For a headless React controller, use `useCodingReview(config, options)`, which
517
+ returns `{ flow, snapshot, submit, retryLast, cancel, recordReviewerAction }`
518
+ and owns teardown. For framework-neutral pages:
519
+
520
+ ```ts
521
+ import { defineCodingReviewElement } from "@nexalink/carecompass-sdk/coding-element";
522
+
523
+ defineCodingReviewElement();
524
+ ```
525
+
526
+ ```html
527
+ <carecompass-coding-review></carecompass-coding-review>
528
+ <script>
529
+ const element = document.querySelector("carecompass-coding-review");
530
+ element.config = config;
531
+ element.packId = "rcm-coding-assistance";
532
+ element.initialCase = codingCase;
533
+ element.reviewerId = "user-coder-42";
534
+ element.reviewerRole = "qualified_coder";
535
+ element.reviewerAuthProvider = () => getReviewerPortalTokens();
536
+ element.addEventListener("carecompass-decision", (event) =>
537
+ console.log(event.detail),
538
+ );
539
+ element.addEventListener("carecompass-error", (event) =>
540
+ console.error(event.detail),
541
+ );
542
+ element.addEventListener("carecompass-cancelled", (event) =>
543
+ console.log("Cancelled", event.detail),
544
+ );
545
+ </script>
546
+ ```
547
+
548
+ Terminal `carecompass-decision`, `carecompass-error`, and
549
+ `carecompass-cancelled` events fire once per state transition. Successful
550
+ reviewer submissions emit `carecompass-reviewer-action`. Audit and safety
551
+ metadata continue to use `carecompass-audit` and `carecompass-safety`.
552
+
553
+ Schema-driven primitives (`createCodingDraft`, `decisionGaps`,
554
+ `decisionBlockingGaps`, `decisionConflicts`, `decisionPrimaryState`) are
555
+ exported from both the root package and the `./coding` subpath so forms and
556
+ result renderers stay contract-driven without embedding specialty logic.
557
+
558
+ ### Migrating from the RCM coding-assistance API
559
+
560
+ The RCM wrappers (`createRcmCodingWorkflow`, `RcmCodingAssistant`,
561
+ `CARECOMPASS_RCM_SYNTHETIC_DEMO`) remain available at `@nexalink/carecompass-sdk/rcm`
562
+ and keep their existing transport and result shapes, so existing integrations
563
+ do not need changes. They now emit a one-time deprecation warning.
564
+
565
+ To migrate:
566
+
567
+ 1. Replace the review call with `createCodingFlow(config, options).submit(packId, codingCase)`.
568
+ 2. Convert your `RcmCodingAssistanceInput` into the canonical `CodingCase`
569
+ envelope (encounter id, coding intent, service period, context, payer,
570
+ clinical narratives, and supporting references).
571
+ 3. Read the result from `snapshot.decision` (CodingDecision) instead of
572
+ `RcmCodingAssistanceResult`; map dispositions `review_required` /
573
+ `abstain` / `escalate` and render gaps and conflicts from the decision
574
+ primitives.
575
+ 4. Optionally replace the `RcmCodingAssistant` component with `CodingReview`.
576
+ 5. Record reviewer dispositions with `recordReviewerAction` instead of
577
+ host-side tracking.
578
+
579
+ The RCM and generic paths are equally auditable and safety-checked; both
580
+ forward structured context only and keep policy text out of the browser.
581
+ The full migration guide — field-by-field input mapping, result-shape
582
+ mapping, and a runnable before/after example — is in
583
+ [Migrating from the RCM coding-assistance API](docs/migration-rcm.md).
584
+
250
585
  ### 3. React Hook
251
586
 
252
587
  Use `useCareCompass` when your React app needs its own visual design but does
@@ -407,6 +742,36 @@ fail closed when the provider is absent, fails, or returns an empty token.
407
742
 
408
743
  Live regulated use requires Nexalink onboarding, issued credentials, and BAA coverage where PHI may be involved. The package is publicly installable for developer convenience, but runtime access is credentialed.
409
744
 
745
+ ### Input adapters (FHIR, CSV, JSON, X12)
746
+
747
+ Customers who already carry claims in their own formats can submit them
748
+ through the same coding packs without building a CodingCase by hand. SDK
749
+ helpers build the versioned `{adapter, sourcePayload}` envelope; the
750
+ hosted runtime normalizes it into the canonical CodingCase:
751
+
752
+ ```ts
753
+ import {
754
+ fhirR4ClaimPayload,
755
+ csvRowPayload,
756
+ jsonClaimPayload,
757
+ x12837Payload,
758
+ } from "@nexalink/carecompass-sdk/adapters";
759
+ import { createCareCompassClient } from "@nexalink/carecompass-sdk/client";
760
+
761
+ const client = createCareCompassClient(config, { runtimeTokenProvider });
762
+
763
+ await client.submitCodingCase({
764
+ packId: "rcm-coding-assistance",
765
+ caseSchemaVersion: "coding-case-v1",
766
+ ...fhirR4ClaimPayload(fhirClaimBundleOrResource), // or csvRowPayload / jsonClaimPayload / x12837Payload
767
+ });
768
+ ```
769
+
770
+ Supported adapters: `fhir-r4-claim-v1`, `csv-row-v1`, `json-claim-v1`,
771
+ `x12-837-claim-v1`. The resolved pack authorizes adapters; unknown or
772
+ undeclared adapters fail closed. The SDK never parses claims, fabricates
773
+ data, or bypasses tenant authorization — it only builds the envelope.
774
+
410
775
  ```bash
411
776
  npx @nexalink/carecompass-sdk init --account-type developer --api-key <nexalink-api-key> --payer-id acme-health --origin https://app.acme-health.com
412
777
  npx @nexalink/carecompass-sdk validate --config carecompass/carecompass.config.json
@@ -605,6 +970,7 @@ The SDK is designed to keep sensitive operational details out of the browser:
605
970
  - no model endpoint credentials in browser code
606
971
  - no customer-managed telemetry switches in runtime config
607
972
  - no prompt, response, chat history, user context, PHI/PII, payer, tenant, deployment, session, or user identifiers, credentials, raw errors, stack traces, CLI arguments, terminal input, or file paths in SDK telemetry
973
+ - structured coding submissions carry the pack id and canonical CodingCase only: no prompt configuration, model preferences, feature flags, policy text, corpus ids, or credentials
608
974
  - generated snippets escape serialized config
609
975
  - default React rendering escapes raw HTML
610
976
 
@@ -625,6 +991,8 @@ Requests still route through Nexalink-hosted APIs. The browser embed does not re
625
991
  - `Origin is not authorized`: add the exact website origin to the Nexalink SDK configuration.
626
992
  - `Prompt configuration violates CareCompass guardrails`: remove unsafe or unsupported instructions and re-run validation.
627
993
  - `CareCompass embed client is not authorized`: confirm `payerId`, `embedKey`, `environment`, and allowed origins match the key issued for the deployment.
994
+ - `Unsupported scope` on a coding submission: the pack, service date, setting, or jurisdiction is not authorized for this tenant on this runtime; authorize the pack in the tenant portal or submit an in-scope case.
995
+ - `Invalid decision` on a coding submission: the runtime returned a result that violated the canonical CodingDecision contract; the SDK failed closed and the case must go to a qualified coder.
628
996
 
629
997
  ## License
630
998
 
@@ -0,0 +1,54 @@
1
+ /**
2
+ * CareCompass coding input adapters (NEX-115).
3
+ *
4
+ * Adapters let customers submit their existing healthcare and operational
5
+ * formats through the hosted runtime without coupling the SDK to one
6
+ * transport or EHR. These helpers build the `{adapter, sourcePayload}`
7
+ * envelope the server-side registry normalizes into the canonical CodingCase.
8
+ *
9
+ * Client-side envelope construction only: the SDK never parses claim
10
+ * semantics itself, never fabricates data, and keeps the same validation and
11
+ * tenant-authorization guarantees as every other coding submission. Mapping
12
+ * versions are declared explicitly so a server that has not adopted a mapping
13
+ * can fail closed instead of guessing.
14
+ */
15
+ export declare const ADAPTER_IDS: {
16
+ readonly FHIR_R4_CLAIM: "fhir-r4-claim-v1";
17
+ readonly CSV_ROW: "csv-row-v1";
18
+ readonly JSON_CLAIM: "json-claim-v1";
19
+ readonly X12_837_CLAIM: "x12-837-claim-v1";
20
+ };
21
+ export type CareCompassAdapterId = (typeof ADAPTER_IDS)[keyof typeof ADAPTER_IDS];
22
+ export type CareCompassAdapterEnvelope = {
23
+ adapter: CareCompassAdapterId;
24
+ sourcePayload: NonNullable<unknown>;
25
+ };
26
+ /**
27
+ * Build a FHIR R4/R4B claim envelope from a Claim resource or a
28
+ * self-contained Bundle containing the Claim and its referenced resources.
29
+ */
30
+ export declare const fhirR4ClaimPayload: (source: Record<string, unknown>) => CareCompassAdapterEnvelope;
31
+ /**
32
+ * Build a validated CSV template envelope. Pass the single-row CSV text
33
+ * (header + one data row) directly, or a one-row JSON batch template as
34
+ * `{ rows: [{ ... }] }`.
35
+ */
36
+ export declare const csvRowPayload: (source: string | {
37
+ csv?: string;
38
+ rows?: Array<Record<string, unknown>>;
39
+ }) => CareCompassAdapterEnvelope;
40
+ /**
41
+ * Build a customer-native JSON claim template envelope.
42
+ */
43
+ export declare const jsonClaimPayload: (source: Record<string, unknown> | {
44
+ claims: Array<Record<string, unknown>>;
45
+ }) => CareCompassAdapterEnvelope;
46
+ /**
47
+ * Build a bounded X12 837 claim envelope from raw EDI text or a segment
48
+ * array. Import subset only: 835 export remains a documented boundary.
49
+ */
50
+ export declare const x12837Payload: (source: string | {
51
+ edi?: string;
52
+ segments?: string[][];
53
+ }) => CareCompassAdapterEnvelope;
54
+ export declare const careCompassAdapterIds: () => CareCompassAdapterId[];
@@ -0,0 +1,53 @@
1
+ /**
2
+ * CareCompass coding input adapters (NEX-115).
3
+ *
4
+ * Adapters let customers submit their existing healthcare and operational
5
+ * formats through the hosted runtime without coupling the SDK to one
6
+ * transport or EHR. These helpers build the `{adapter, sourcePayload}`
7
+ * envelope the server-side registry normalizes into the canonical CodingCase.
8
+ *
9
+ * Client-side envelope construction only: the SDK never parses claim
10
+ * semantics itself, never fabricates data, and keeps the same validation and
11
+ * tenant-authorization guarantees as every other coding submission. Mapping
12
+ * versions are declared explicitly so a server that has not adopted a mapping
13
+ * can fail closed instead of guessing.
14
+ */
15
+ export const ADAPTER_IDS = {
16
+ FHIR_R4_CLAIM: "fhir-r4-claim-v1",
17
+ CSV_ROW: "csv-row-v1",
18
+ JSON_CLAIM: "json-claim-v1",
19
+ X12_837_CLAIM: "x12-837-claim-v1",
20
+ };
21
+ /**
22
+ * Build a FHIR R4/R4B claim envelope from a Claim resource or a
23
+ * self-contained Bundle containing the Claim and its referenced resources.
24
+ */
25
+ export const fhirR4ClaimPayload = (source) => ({
26
+ adapter: ADAPTER_IDS.FHIR_R4_CLAIM,
27
+ sourcePayload: source,
28
+ });
29
+ /**
30
+ * Build a validated CSV template envelope. Pass the single-row CSV text
31
+ * (header + one data row) directly, or a one-row JSON batch template as
32
+ * `{ rows: [{ ... }] }`.
33
+ */
34
+ export const csvRowPayload = (source) => ({
35
+ adapter: ADAPTER_IDS.CSV_ROW,
36
+ sourcePayload: typeof source === "string" ? { csv: source } : source,
37
+ });
38
+ /**
39
+ * Build a customer-native JSON claim template envelope.
40
+ */
41
+ export const jsonClaimPayload = (source) => ({
42
+ adapter: ADAPTER_IDS.JSON_CLAIM,
43
+ sourcePayload: source,
44
+ });
45
+ /**
46
+ * Build a bounded X12 837 claim envelope from raw EDI text or a segment
47
+ * array. Import subset only: 835 export remains a documented boundary.
48
+ */
49
+ export const x12837Payload = (source) => ({
50
+ adapter: ADAPTER_IDS.X12_837_CLAIM,
51
+ sourcePayload: source,
52
+ });
53
+ export const careCompassAdapterIds = () => Object.values(ADAPTER_IDS);