fhir-data-utils-ts 0.2.4 → 0.3.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.
- package/.codex/skills/govern-fhir-data-utilities/SKILL.md +58 -0
- package/.codex/skills/govern-fhir-data-utilities/agents/openai.yaml +4 -0
- package/.codex/skills/govern-fhir-observation-components/SKILL.md +18 -0
- package/CHANGELOG.md +30 -0
- package/README.md +39 -0
- package/dist/builders/immunization-graph.d.ts +36 -0
- package/dist/builders/immunization-graph.js +115 -0
- package/dist/builders/immunization-reminders.d.ts +35 -0
- package/dist/builders/immunization-reminders.js +104 -0
- package/dist/builders/index.d.ts +2 -0
- package/dist/builders/index.js +2 -0
- package/dist/claim-helpers/claim-list-helpers.d.ts +21 -0
- package/dist/claim-helpers/claim-list-helpers.js +54 -0
- package/dist/claim-helpers/claims-helpers-allergy-intolerance.d.ts +18 -0
- package/dist/claim-helpers/claims-helpers-allergy-intolerance.js +65 -0
- package/dist/claim-helpers/claims-helpers-appointment-response.d.ts +8 -0
- package/dist/claim-helpers/claims-helpers-appointment-response.js +20 -0
- package/dist/claim-helpers/claims-helpers-appointment.d.ts +10 -0
- package/dist/claim-helpers/claims-helpers-appointment.js +26 -0
- package/dist/claim-helpers/claims-helpers-care-plan.d.ts +8 -0
- package/dist/claim-helpers/claims-helpers-care-plan.js +20 -0
- package/dist/claim-helpers/claims-helpers-clinical-impression.d.ts +10 -0
- package/dist/claim-helpers/claims-helpers-clinical-impression.js +26 -0
- package/dist/claim-helpers/claims-helpers-communication.d.ts +19 -0
- package/dist/claim-helpers/claims-helpers-communication.js +63 -0
- package/dist/claim-helpers/claims-helpers-composition.d.ts +12 -0
- package/dist/claim-helpers/claims-helpers-composition.js +32 -0
- package/dist/claim-helpers/claims-helpers-condition.d.ts +18 -0
- package/dist/claim-helpers/claims-helpers-condition.js +65 -0
- package/dist/claim-helpers/claims-helpers-coverage.d.ts +10 -0
- package/dist/claim-helpers/claims-helpers-coverage.js +26 -0
- package/dist/claim-helpers/claims-helpers-device-use-statement.d.ts +8 -0
- package/dist/claim-helpers/claims-helpers-device-use-statement.js +20 -0
- package/dist/claim-helpers/claims-helpers-device.d.ts +8 -0
- package/dist/claim-helpers/claims-helpers-device.js +20 -0
- package/dist/claim-helpers/claims-helpers-diagnostic-report.d.ts +16 -0
- package/dist/claim-helpers/claims-helpers-diagnostic-report.js +47 -0
- package/dist/claim-helpers/claims-helpers-document-reference.d.ts +8 -0
- package/dist/claim-helpers/claims-helpers-document-reference.js +20 -0
- package/dist/claim-helpers/claims-helpers-encounter.d.ts +10 -0
- package/dist/claim-helpers/claims-helpers-encounter.js +26 -0
- package/dist/claim-helpers/claims-helpers-flag.d.ts +8 -0
- package/dist/claim-helpers/claims-helpers-flag.js +20 -0
- package/dist/claim-helpers/claims-helpers-immunization.d.ts +8 -0
- package/dist/claim-helpers/claims-helpers-immunization.js +20 -0
- package/dist/claim-helpers/claims-helpers-location.d.ts +10 -0
- package/dist/claim-helpers/claims-helpers-location.js +26 -0
- package/dist/claim-helpers/claims-helpers-medication-statement.d.ts +96 -0
- package/dist/claim-helpers/claims-helpers-medication-statement.js +278 -0
- package/dist/claim-helpers/claims-helpers-observation.d.ts +8 -0
- package/dist/claim-helpers/claims-helpers-observation.js +20 -0
- package/dist/claim-helpers/claims-helpers-organization.d.ts +12 -0
- package/dist/claim-helpers/claims-helpers-organization.js +32 -0
- package/dist/claim-helpers/claims-helpers-procedure.d.ts +8 -0
- package/dist/claim-helpers/claims-helpers-procedure.js +20 -0
- package/dist/claim-helpers/claims-helpers-related-person.d.ts +22 -0
- package/dist/claim-helpers/claims-helpers-related-person.js +53 -0
- package/dist/claim-helpers/index.d.ts +23 -0
- package/dist/claim-helpers/index.js +23 -0
- package/dist/claims/allergy-intolerance-claims.d.ts +153 -0
- package/dist/claims/allergy-intolerance-claims.js +194 -0
- package/dist/claims/appointment-claims.d.ts +226 -0
- package/dist/claims/appointment-claims.js +218 -0
- package/dist/claims/appointment-response-claims.d.ts +63 -0
- package/dist/claims/appointment-response-claims.js +58 -0
- package/dist/claims/care-plan-claims.d.ts +37 -0
- package/dist/claims/care-plan-claims.js +59 -0
- package/dist/claims/claim-types.d.ts +9 -0
- package/dist/claims/claim-types.js +3 -0
- package/dist/claims/clinical-impression-claims.d.ts +17 -0
- package/dist/claims/clinical-impression-claims.js +30 -0
- package/dist/claims/communication-claims.d.ts +55 -0
- package/dist/claims/communication-claims.js +57 -0
- package/dist/claims/composition-claims.d.ts +27 -0
- package/dist/claims/composition-claims.js +27 -0
- package/dist/claims/condition-claims.d.ts +79 -0
- package/dist/claims/condition-claims.js +104 -0
- package/dist/claims/consent-claims.d.ts +195 -0
- package/dist/claims/consent-claims.js +74 -0
- package/dist/claims/coverage-claims.d.ts +16 -0
- package/dist/claims/coverage-claims.js +28 -0
- package/dist/claims/device-claims.d.ts +20 -0
- package/dist/claims/device-claims.js +36 -0
- package/dist/claims/device-use-statement-claims.d.ts +17 -0
- package/dist/claims/device-use-statement-claims.js +28 -0
- package/dist/claims/diagnostic-report-claims.d.ts +109 -0
- package/dist/claims/diagnostic-report-claims.js +120 -0
- package/dist/claims/document-reference-claims.d.ts +39 -0
- package/dist/claims/document-reference-claims.js +96 -0
- package/dist/claims/encounter-claims.d.ts +18 -0
- package/dist/claims/encounter-claims.js +32 -0
- package/dist/claims/flag-claims.d.ts +19 -0
- package/dist/claims/flag-claims.js +33 -0
- package/dist/claims/immunization-claims.d.ts +31 -0
- package/dist/claims/immunization-claims.js +54 -0
- package/dist/claims/immunization-recommendation-claims.d.ts +19 -0
- package/dist/claims/immunization-recommendation-claims.js +26 -0
- package/dist/claims/index.d.ts +29 -0
- package/dist/claims/index.js +29 -0
- package/dist/claims/invoice-claims.d.ts +277 -0
- package/dist/claims/invoice-claims.js +357 -0
- package/dist/claims/location-claims.d.ts +22 -0
- package/dist/claims/location-claims.js +34 -0
- package/dist/claims/medication-claims.d.ts +15 -0
- package/dist/claims/medication-claims.js +23 -0
- package/dist/claims/medication-statement-claims.d.ts +539 -0
- package/dist/claims/medication-statement-claims.js +469 -0
- package/dist/claims/organization-claims.d.ts +18 -0
- package/dist/claims/organization-claims.js +27 -0
- package/dist/claims/practitioner-role-claims.d.ts +18 -0
- package/dist/claims/practitioner-role-claims.js +33 -0
- package/dist/claims/procedure-claims.d.ts +24 -0
- package/dist/claims/procedure-claims.js +44 -0
- package/dist/claims/related-person-claims.d.ts +30 -0
- package/dist/claims/related-person-claims.js +44 -0
- package/dist/claims/research-subject-claims.d.ts +4 -0
- package/dist/claims/research-subject-claims.js +4 -0
- package/dist/claims/task-claims.d.ts +61 -0
- package/dist/claims/task-claims.js +64 -0
- package/dist/clinical-terminology.d.ts +73 -0
- package/dist/clinical-terminology.js +77 -0
- package/dist/constants/clinical-statuses.d.ts +102 -0
- package/dist/constants/clinical-statuses.js +93 -0
- package/dist/constants/fhir-code-systems.d.ts +15 -0
- package/dist/constants/fhir-code-systems.js +15 -0
- package/dist/constants/fhir-resource-types.d.ts +162 -0
- package/dist/constants/fhir-resource-types.js +70 -0
- package/dist/constants/fhir-versions.d.ts +10 -0
- package/dist/constants/fhir-versions.js +10 -0
- package/dist/constants/index.d.ts +4 -0
- package/dist/constants/index.js +4 -0
- package/dist/converters/convert-allergy-intolerance.d.ts +3 -0
- package/dist/converters/convert-allergy-intolerance.js +85 -0
- package/dist/converters/convert-appointment-response.d.ts +3 -0
- package/dist/converters/convert-appointment-response.js +32 -0
- package/dist/converters/convert-appointment.d.ts +3 -0
- package/dist/converters/convert-appointment.js +61 -0
- package/dist/converters/convert-care-plan.d.ts +3 -0
- package/dist/converters/convert-care-plan.js +93 -0
- package/dist/converters/convert-clinical-impression.d.ts +3 -0
- package/dist/converters/convert-clinical-impression.js +42 -0
- package/dist/converters/convert-composition.d.ts +3 -0
- package/dist/converters/convert-composition.js +70 -0
- package/dist/converters/convert-condition.d.ts +3 -0
- package/dist/converters/convert-condition.js +51 -0
- package/dist/converters/convert-consent.d.ts +9 -0
- package/dist/converters/convert-consent.js +174 -0
- package/dist/converters/convert-coverage.d.ts +3 -0
- package/dist/converters/convert-coverage.js +51 -0
- package/dist/converters/convert-device-use-statement.d.ts +3 -0
- package/dist/converters/convert-device-use-statement.js +36 -0
- package/dist/converters/convert-device.d.ts +3 -0
- package/dist/converters/convert-device.js +48 -0
- package/dist/converters/convert-diagnostic-report.d.ts +3 -0
- package/dist/converters/convert-diagnostic-report.js +63 -0
- package/dist/converters/convert-document-reference.d.ts +3 -0
- package/dist/converters/convert-document-reference.js +54 -0
- package/dist/converters/convert-encounter.d.ts +3 -0
- package/dist/converters/convert-encounter.js +68 -0
- package/dist/converters/convert-flag.d.ts +3 -0
- package/dist/converters/convert-flag.js +42 -0
- package/dist/converters/convert-immunization.d.ts +3 -0
- package/dist/converters/convert-immunization.js +80 -0
- package/dist/converters/convert-location.d.ts +3 -0
- package/dist/converters/convert-location.js +44 -0
- package/dist/converters/convert-medication-statement.d.ts +3 -0
- package/dist/converters/convert-medication-statement.js +130 -0
- package/dist/converters/convert-observation.d.ts +33 -0
- package/dist/converters/convert-observation.js +246 -0
- package/dist/converters/convert-organization.d.ts +3 -0
- package/dist/converters/convert-organization.js +39 -0
- package/dist/converters/convert-practitioner-role.d.ts +3 -0
- package/dist/converters/convert-practitioner-role.js +62 -0
- package/dist/converters/convert-procedure.d.ts +3 -0
- package/dist/converters/convert-procedure.js +64 -0
- package/dist/converters/convert-related-person.d.ts +3 -0
- package/dist/converters/convert-related-person.js +31 -0
- package/dist/converters/convert-shared.d.ts +33 -0
- package/dist/converters/convert-shared.js +181 -0
- package/dist/converters/index.d.ts +24 -0
- package/dist/converters/index.js +24 -0
- package/dist/fhir-bundle.d.ts +9 -0
- package/dist/fhir-bundle.js +43 -0
- package/dist/fhir-search-parameters.d.ts +18 -0
- package/dist/fhir-search-parameters.js +52 -0
- package/dist/fhir-tokens.d.ts +11 -0
- package/dist/fhir-tokens.js +26 -0
- package/dist/fhir-types.d.ts +77 -0
- package/dist/fhir-types.js +1 -0
- package/dist/fhir-values.d.ts +13 -0
- package/dist/fhir-values.js +53 -0
- package/dist/group-r5.d.ts +121 -0
- package/dist/group-r5.js +301 -0
- package/dist/imaging-types.d.ts +30 -0
- package/dist/imaging-types.js +1 -0
- package/dist/immunization-flat-claims.d.ts +2 -0
- package/dist/immunization-flat-claims.js +2 -0
- package/dist/immunization-reminder-plan.d.ts +2 -0
- package/dist/immunization-reminder-plan.js +2 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.js +19 -0
- package/dist/observation-claims.d.ts +170 -0
- package/dist/observation-claims.js +184 -0
- package/dist/related-person.d.ts +16 -0
- package/dist/related-person.js +14 -0
- package/dist/research-study-r5.d.ts +163 -0
- package/dist/research-study-r5.js +490 -0
- package/dist/search-models/index.d.ts +7 -0
- package/dist/search-models/index.js +7 -0
- package/dist/search-models/params/AdverseEvent.params.model.d.ts +14 -0
- package/dist/search-models/params/AdverseEvent.params.model.js +16 -0
- package/dist/search-models/params/AllergyIntolerance.params.model.d.ts +24 -0
- package/dist/search-models/params/AllergyIntolerance.params.model.js +27 -0
- package/dist/search-models/params/Appointment.params.model.d.ts +12 -0
- package/dist/search-models/params/Appointment.params.model.js +14 -0
- package/dist/search-models/params/ClinicalImpression.params.model.d.ts +14 -0
- package/dist/search-models/params/ClinicalImpression.params.model.js +15 -0
- package/dist/search-models/params/Condition.params.model.d.ts +16 -0
- package/dist/search-models/params/Condition.params.model.js +17 -0
- package/dist/search-models/params/DetectedIssue.params.model.d.ts +9 -0
- package/dist/search-models/params/DetectedIssue.params.model.js +11 -0
- package/dist/search-models/params/DiagnosticReport.params.model.d.ts +13 -0
- package/dist/search-models/params/DiagnosticReport.params.model.js +14 -0
- package/dist/search-models/params/Encounter.params.model.d.ts +15 -0
- package/dist/search-models/params/Encounter.params.model.js +17 -0
- package/dist/search-models/params/Immunization.params.model.d.ts +14 -0
- package/dist/search-models/params/Immunization.params.model.js +16 -0
- package/dist/search-models/params/Medication.params.model.d.ts +35 -0
- package/dist/search-models/params/Medication.params.model.js +45 -0
- package/dist/search-models/params/Observation.params.model.d.ts +326 -0
- package/dist/search-models/params/Observation.params.model.js +244 -0
- package/dist/search-models/params/Procedure.params.model.d.ts +15 -0
- package/dist/search-models/params/Procedure.params.model.js +17 -0
- package/dist/search-models/params/Search.params.model.d.ts +75 -0
- package/dist/search-models/params/Search.params.model.js +69 -0
- package/dist/search-models/params/ServiceRequest.params.model.d.ts +14 -0
- package/dist/search-models/params/ServiceRequest.params.model.js +16 -0
- package/dist/search-models/params/Specimen.params.model.d.ts +10 -0
- package/dist/search-models/params/Specimen.params.model.js +12 -0
- package/dist/search-models/params/index.d.ts +15 -0
- package/dist/search-models/params/index.js +15 -0
- package/dist/search-models/templates/AdverseEvent.template.model.d.ts +16 -0
- package/dist/search-models/templates/AdverseEvent.template.model.js +2 -0
- package/dist/search-models/templates/AllergyIntolerance.template.model.d.ts +24 -0
- package/dist/search-models/templates/AllergyIntolerance.template.model.js +1 -0
- package/dist/search-models/templates/Appointment.template.model.d.ts +13 -0
- package/dist/search-models/templates/Appointment.template.model.js +1 -0
- package/dist/search-models/templates/ClinicalImpression.template.model.d.ts +16 -0
- package/dist/search-models/templates/ClinicalImpression.template.model.js +1 -0
- package/dist/search-models/templates/Condition.template.model.d.ts +18 -0
- package/dist/search-models/templates/Condition.template.model.js +1 -0
- package/dist/search-models/templates/DetectedIssue.template.model.d.ts +11 -0
- package/dist/search-models/templates/DetectedIssue.template.model.js +1 -0
- package/dist/search-models/templates/DiagnosticReport.template.model.d.ts +15 -0
- package/dist/search-models/templates/DiagnosticReport.template.model.js +1 -0
- package/dist/search-models/templates/Encounter.template.model.d.ts +17 -0
- package/dist/search-models/templates/Encounter.template.model.js +1 -0
- package/dist/search-models/templates/Immunization.template.model.d.ts +18 -0
- package/dist/search-models/templates/Immunization.template.model.js +2 -0
- package/dist/search-models/templates/Medication.template.model.d.ts +37 -0
- package/dist/search-models/templates/Medication.template.model.js +1 -0
- package/dist/search-models/templates/Observation.template.model.d.ts +18 -0
- package/dist/search-models/templates/Observation.template.model.js +1 -0
- package/dist/search-models/templates/Procedure.template.model.d.ts +17 -0
- package/dist/search-models/templates/Procedure.template.model.js +1 -0
- package/dist/search-models/templates/ServiceRequest.template.model.d.ts +16 -0
- package/dist/search-models/templates/ServiceRequest.template.model.js +1 -0
- package/dist/search-models/templates/Specimen.template.model.d.ts +12 -0
- package/dist/search-models/templates/Specimen.template.model.js +1 -0
- package/dist/search-models/templates/index.d.ts +14 -0
- package/dist/search-models/templates/index.js +14 -0
- package/dist/terminology-models/AtcModel.d.ts +15 -0
- package/dist/terminology-models/AtcModel.js +2 -0
- package/dist/terminology-models/CommonModels.d.ts +70 -0
- package/dist/terminology-models/CommonModels.js +55 -0
- package/dist/terminology-models/FhirModels.d.ts +60 -0
- package/dist/terminology-models/FhirModels.js +34 -0
- package/dist/terminology-models/LoincModels.d.ts +24 -0
- package/dist/terminology-models/LoincModels.js +2 -0
- package/dist/terminology-models/SnomedModels.d.ts +13 -0
- package/dist/terminology-models/SnomedModels.js +2 -0
- package/dist/terminology-models/index.d.ts +6 -0
- package/dist/terminology-models/index.js +6 -0
- package/docs/UHC_FHIR_UTILS_MIGRATION.md +51 -8
- package/package.json +83 -2
|
@@ -0,0 +1,244 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* # Personal Observations (org.hl7.fhir.api) — Flat Claims Contract
|
|
3
|
+
*
|
|
4
|
+
* This file defines the canonical and contextualized flat-claim keys for collecting **self-reported**
|
|
5
|
+
* Observations (non-clinical/personal data) using `@context = "org.hl7.fhir.api"`.
|
|
6
|
+
*
|
|
7
|
+
* ## 1) Contextualized vs Canonical keys
|
|
8
|
+
*
|
|
9
|
+
* When a claims object includes:
|
|
10
|
+
*
|
|
11
|
+
* ```json
|
|
12
|
+
* { "@context": "org.hl7.fhir.api", ... }
|
|
13
|
+
* ```
|
|
14
|
+
*
|
|
15
|
+
* clients MAY send **contextualized** keys like:
|
|
16
|
+
* - `"Observation.code"`
|
|
17
|
+
* - `"Observation.value-quantity"`
|
|
18
|
+
*
|
|
19
|
+
* The SDK/gateway MUST normalize them to **canonical** keys before storage/matching/hashing:
|
|
20
|
+
* - `"org.hl7.fhir.api.Observation.code"`
|
|
21
|
+
* - `"org.hl7.fhir.api.Observation.value-quantity"`
|
|
22
|
+
*
|
|
23
|
+
* Interoperable keys from other namespaces (e.g., `org.ilo.isco.*`) MUST NOT be prefixed.
|
|
24
|
+
*
|
|
25
|
+
* ## 2) Naming convention: FHIR Search Parameters style
|
|
26
|
+
*
|
|
27
|
+
* For values, we follow the **FHIR Search Parameters** naming whenever possible:
|
|
28
|
+
* - `Observation.value-string` (string)
|
|
29
|
+
* - `Observation.value-concept` (token "system|code")
|
|
30
|
+
* - `Observation.value-date` (date/dateTime/period expressed as ISO strings)
|
|
31
|
+
* - `Observation.value-quantity` (quantity search syntax)
|
|
32
|
+
*
|
|
33
|
+
* This makes the contract familiar and easy to map to FHIR R4/R5/R6 resources later.
|
|
34
|
+
*
|
|
35
|
+
* ## 3) Quantity encoding (FHIR search syntax)
|
|
36
|
+
*
|
|
37
|
+
* `Observation.value-quantity` uses the FHIR `quantity` parameter syntax:
|
|
38
|
+
*
|
|
39
|
+
* - `{prefix}{number}`
|
|
40
|
+
* - `{prefix}{number}|{system}|{code}`
|
|
41
|
+
* - `{prefix}{number}||{code}`
|
|
42
|
+
*
|
|
43
|
+
* Where:
|
|
44
|
+
* - `prefix` is optional: `eq, ne, gt, lt, ge, le, sa, eb, ap`
|
|
45
|
+
* - `system|code` is typically UCUM (`http://unitsofmeasure.org`)
|
|
46
|
+
*
|
|
47
|
+
* ### Repeated parameters (ranges) in flat-claims
|
|
48
|
+
*
|
|
49
|
+
* In URLs, FHIR often repeats a parameter for ranges, e.g.:
|
|
50
|
+
* `?value-quantity=ge60|...|kg&value-quantity=le90|...|kg`
|
|
51
|
+
*
|
|
52
|
+
* In flat-claims (JSON), we represent repetition as a **comma-separated list**:
|
|
53
|
+
*
|
|
54
|
+
* ```json
|
|
55
|
+
* "Observation.value-quantity": "ge60|http://unitsofmeasure.org|kg,le90|http://unitsofmeasure.org|kg"
|
|
56
|
+
* ```
|
|
57
|
+
*
|
|
58
|
+
* Each comma-separated item MUST be a valid FHIR quantity expression.
|
|
59
|
+
*
|
|
60
|
+
* ### UCUM defaulting rule (platform-specific)
|
|
61
|
+
*
|
|
62
|
+
* This platform MAY treat missing `system` (`||kg`) as UCUM for common UCUM units:
|
|
63
|
+
*
|
|
64
|
+
* ```json
|
|
65
|
+
* "Observation.value-quantity": "ge60|http://unitsofmeasure.org|kg,le90||kg"
|
|
66
|
+
* ```
|
|
67
|
+
*
|
|
68
|
+
* IMPORTANT:
|
|
69
|
+
* - In pure FHIR, `||kg` does NOT strictly mean UCUM; it means "match by code (or human unit)".
|
|
70
|
+
* - Here, we **optionally default to UCUM** for developer convenience and interoperability.
|
|
71
|
+
*
|
|
72
|
+
* ## 4) Time semantics: issued vs effective (date*)
|
|
73
|
+
*
|
|
74
|
+
* - `Observation.issued` = when the app recorded/captured the observation (ISO dateTime).
|
|
75
|
+
* - `Observation.date*` fields describe when the finding applies (effective[x]):
|
|
76
|
+
* - `Observation.date` = generic effective date/dateTime (ISO string)
|
|
77
|
+
* - `Observation.date-period` = ISO 8601 interval `start/end` (string)
|
|
78
|
+
* - `Observation.date-when` = EventTiming bucket: `MORN|AFT|EVE|NIGHT`
|
|
79
|
+
* - optional advanced schedule controls are exposed via `Observation.date-*` keys.
|
|
80
|
+
*
|
|
81
|
+
* ## 5) meta-tag convention (UI/AI routing)
|
|
82
|
+
*
|
|
83
|
+
* `Observation.meta-tag` is a comma-separated list of **short English labels** for grouping/routing:
|
|
84
|
+
* - Example: `"Anxiety,Night"`
|
|
85
|
+
*
|
|
86
|
+
* Do NOT place numeric quantities in `meta-tag`. Use `value-*` instead.
|
|
87
|
+
*
|
|
88
|
+
* ## 6) Examples (contextualized claims)
|
|
89
|
+
*
|
|
90
|
+
* ### Example A: "Anxiety at night" (string value + tags)
|
|
91
|
+
* ```json
|
|
92
|
+
* {
|
|
93
|
+
* "@context": "org.hl7.fhir.api",
|
|
94
|
+
* "@type": "Observation:SelfReported",
|
|
95
|
+
* "Observation.subject": "did:web:api.acme.org:individual:<unified-health-identifier>",
|
|
96
|
+
* "Observation.category": "http://terminology.hl7.org/CodeSystem/observation-category|social-history",
|
|
97
|
+
* "Observation.code": "SNOMED|48694002",
|
|
98
|
+
* "Observation.code-userselected": true,
|
|
99
|
+
* "Observation.issued": "2025-11-27T10:00:00Z",
|
|
100
|
+
* "Observation.date-when": "NIGHT",
|
|
101
|
+
* "Observation.value-string": "Feels anxious at night.",
|
|
102
|
+
* "Observation.meta-tag": "Anxiety,Night"
|
|
103
|
+
* }
|
|
104
|
+
* ```
|
|
105
|
+
*
|
|
106
|
+
* ### Example B: "Body weight between 60 and 90 kg" (quantity list)
|
|
107
|
+
* ```json
|
|
108
|
+
* {
|
|
109
|
+
* "@context": "org.hl7.fhir.api",
|
|
110
|
+
* "@type": "Observation:SelfReported",
|
|
111
|
+
* "Observation.subject": "did:web:api.acme.org:individual:<unified-health-identifier>",
|
|
112
|
+
* "Observation.category": "http://terminology.hl7.org/CodeSystem/observation-category|vital-signs",
|
|
113
|
+
* "Observation.code": "LOINC|29463-7",
|
|
114
|
+
* "Observation.value-quantity": "ge60|http://unitsofmeasure.org|kg,le90||kg",
|
|
115
|
+
* "Observation.meta-tag": "Weight"
|
|
116
|
+
* }
|
|
117
|
+
* ```
|
|
118
|
+
*/
|
|
119
|
+
export var ObservationParameters;
|
|
120
|
+
(function (ObservationParameters) {
|
|
121
|
+
ObservationParameters["BasedOn"] = "org.hl7.fhir.api.Observation.based-on";
|
|
122
|
+
ObservationParameters["Subject"] = "org.hl7.fhir.api.Observation.subject";
|
|
123
|
+
ObservationParameters["Patient"] = "org.hl7.fhir.api.Observation.patient";
|
|
124
|
+
ObservationParameters["Category"] = "org.hl7.fhir.api.Observation.category";
|
|
125
|
+
ObservationParameters["Identifier"] = "org.hl7.fhir.api.Observation.identifier";
|
|
126
|
+
ObservationParameters["Encounter"] = "org.hl7.fhir.api.Observation.encounter";
|
|
127
|
+
ObservationParameters["Code"] = "org.hl7.fhir.api.Observation.code";
|
|
128
|
+
ObservationParameters["CodeUserSelected"] = "org.hl7.fhir.api.Observation.code-userselected";
|
|
129
|
+
ObservationParameters["Method"] = "org.hl7.fhir.api.Observation.method";
|
|
130
|
+
ObservationParameters["Performer"] = "org.hl7.fhir.api.Observation.performer";
|
|
131
|
+
ObservationParameters["Status"] = "org.hl7.fhir.api.Observation.status";
|
|
132
|
+
ObservationParameters["Issued"] = "org.hl7.fhir.api.Observation.issued";
|
|
133
|
+
ObservationParameters["Date"] = "org.hl7.fhir.api.Observation.date";
|
|
134
|
+
ObservationParameters["DatePeriod"] = "org.hl7.fhir.api.Observation.date-period";
|
|
135
|
+
ObservationParameters["DateWhen"] = "org.hl7.fhir.api.Observation.date-when";
|
|
136
|
+
ObservationParameters["DateTimeOfDay"] = "org.hl7.fhir.api.Observation.date-time-of-day";
|
|
137
|
+
ObservationParameters["DateDayOfWeek"] = "org.hl7.fhir.api.Observation.date-day-of-week";
|
|
138
|
+
ObservationParameters["DateBoundsPeriod"] = "org.hl7.fhir.api.Observation.date-bounds-period";
|
|
139
|
+
ObservationParameters["DateBoundsDuration"] = "org.hl7.fhir.api.Observation.date-bounds-duration";
|
|
140
|
+
ObservationParameters["DateBoundsRange"] = "org.hl7.fhir.api.Observation.date-bounds-range";
|
|
141
|
+
ObservationParameters["DateCount"] = "org.hl7.fhir.api.Observation.date-count";
|
|
142
|
+
ObservationParameters["DateCountMax"] = "org.hl7.fhir.api.Observation.date-count-max";
|
|
143
|
+
ObservationParameters["DateDuration"] = "org.hl7.fhir.api.Observation.date-duration";
|
|
144
|
+
ObservationParameters["DateDurationMax"] = "org.hl7.fhir.api.Observation.date-duration-max";
|
|
145
|
+
ObservationParameters["DateDurationUnit"] = "org.hl7.fhir.api.Observation.date-duration-unit";
|
|
146
|
+
ObservationParameters["DateFrequency"] = "org.hl7.fhir.api.Observation.date-frequency";
|
|
147
|
+
ObservationParameters["DateFrequencyMax"] = "org.hl7.fhir.api.Observation.date-frequency-max";
|
|
148
|
+
ObservationParameters["DatePeriodValue"] = "org.hl7.fhir.api.Observation.date-period-value";
|
|
149
|
+
ObservationParameters["DatePeriodMax"] = "org.hl7.fhir.api.Observation.date-period-max";
|
|
150
|
+
ObservationParameters["DatePeriodUnit"] = "org.hl7.fhir.api.Observation.date-period-unit";
|
|
151
|
+
ObservationParameters["DateOffset"] = "org.hl7.fhir.api.Observation.date-offset";
|
|
152
|
+
ObservationParameters["ValueConcept"] = "org.hl7.fhir.api.Observation.value-concept";
|
|
153
|
+
ObservationParameters["ValueDate"] = "org.hl7.fhir.api.Observation.value-date";
|
|
154
|
+
ObservationParameters["ValueQuantity"] = "org.hl7.fhir.api.Observation.value-quantity";
|
|
155
|
+
ObservationParameters["ValueString"] = "org.hl7.fhir.api.Observation.value-string";
|
|
156
|
+
ObservationParameters["MetaTag"] = "org.hl7.fhir.api.Observation.meta-tag";
|
|
157
|
+
})(ObservationParameters || (ObservationParameters = {}));
|
|
158
|
+
/**
|
|
159
|
+
* When `@context` is set to `"org.hl7.fhir.api"`, claim keys MAY be sent in contextualized form
|
|
160
|
+
* (e.g., `"Observation.code"`) by omitting the `@context` namespace prefix.
|
|
161
|
+
* The gateway/SDK MUST normalize them to canonical form (e.g., `"org.hl7.fhir.api.Observation.code"`)
|
|
162
|
+
* before storage, matching, and hashing.
|
|
163
|
+
*/
|
|
164
|
+
export var ClaimsObservationContext;
|
|
165
|
+
(function (ClaimsObservationContext) {
|
|
166
|
+
/** FHIR claims namespace. Must be "org.hl7.fhir.api". */
|
|
167
|
+
ClaimsObservationContext["Context"] = "@context";
|
|
168
|
+
/** Optional discriminator. Example: "Observation:SelfReported". */
|
|
169
|
+
ClaimsObservationContext["Type"] = "@type";
|
|
170
|
+
/** Subject DID (the individual the observation is about). */
|
|
171
|
+
ClaimsObservationContext["Subject"] = "Observation.subject";
|
|
172
|
+
/** Category token. Example: "http://terminology.hl7.org/CodeSystem/observation-category|social-history". */
|
|
173
|
+
ClaimsObservationContext["Category"] = "Observation.category";
|
|
174
|
+
/** Observation identifier (URN). Example: "urn:uuid:11b2c3d4-e5f6-7890-1234-567890abcdef". */
|
|
175
|
+
ClaimsObservationContext["Identifier"] = "Observation.identifier";
|
|
176
|
+
/** Observation code token. Example: "SNOMED|48694002" or "LOINC|54728-1". */
|
|
177
|
+
ClaimsObservationContext["Code"] = "Observation.code";
|
|
178
|
+
/** True if user explicitly selected the code (picker). */
|
|
179
|
+
ClaimsObservationContext["CodeUserSelected"] = "Observation.code-userselected";
|
|
180
|
+
/** Capture timestamp (ISO 8601 dateTime). */
|
|
181
|
+
ClaimsObservationContext["Issued"] = "Observation.issued";
|
|
182
|
+
/** Generic effective[x] date filter (ISO date/dateTime). */
|
|
183
|
+
ClaimsObservationContext["Date"] = "Observation.date";
|
|
184
|
+
/**
|
|
185
|
+
* ISO 8601 interval "<start>/<end>" where each side is an ISO date or dateTime.
|
|
186
|
+
* Examples:
|
|
187
|
+
* - "2025-01-01/2025-12-31"
|
|
188
|
+
* - "2025-11-27T20:00:00Z/2025-12-27T20:00:00Z"
|
|
189
|
+
*/
|
|
190
|
+
ClaimsObservationContext["DatePeriod"] = "Observation.date-period";
|
|
191
|
+
/** Time-of-day bucket (FHIR EventTiming). Allowed: MORN|AFT|EVE|NIGHT. */
|
|
192
|
+
ClaimsObservationContext["DateWhen"] = "Observation.date-when";
|
|
193
|
+
/** Specific time of day. Format: "HH:MM" or "HH:MM:SS". */
|
|
194
|
+
ClaimsObservationContext["DateTimeOfDay"] = "Observation.date-time-of-day";
|
|
195
|
+
/** Comma-separated weekdays: "mon,tue,wed,thu,fri,sat,sun". */
|
|
196
|
+
ClaimsObservationContext["DateDayOfWeek"] = "Observation.date-day-of-week";
|
|
197
|
+
/**
|
|
198
|
+
* ISO 8601 interval "<start>/<end>" where each side is an ISO date or dateTime.
|
|
199
|
+
* Examples:
|
|
200
|
+
* - "2025-01-01/2025-12-31"
|
|
201
|
+
* - "2025-11-27T20:00:00Z/2025-12-27T20:00:00Z"
|
|
202
|
+
*/
|
|
203
|
+
ClaimsObservationContext["DateBoundsPeriod"] = "Observation.date-bounds-period";
|
|
204
|
+
/** Timing.repeat.boundsDuration (Duration). Encode as FHIR quantity string. Example: "30|http://unitsofmeasure.org|d" */
|
|
205
|
+
ClaimsObservationContext["DateBoundsDuration"] = "Observation.date-bounds-duration";
|
|
206
|
+
/** Timing.repeat.boundsRange (Range). Encode as comma-separated quantity expressions. Example: "ge10|http://unitsofmeasure.org|mg,le20||mg" */
|
|
207
|
+
ClaimsObservationContext["DateBoundsRange"] = "Observation.date-bounds-range";
|
|
208
|
+
/** Repeat count. */
|
|
209
|
+
ClaimsObservationContext["DateCount"] = "Observation.date-count";
|
|
210
|
+
/** Repeat count max. */
|
|
211
|
+
ClaimsObservationContext["DateCountMax"] = "Observation.date-count-max";
|
|
212
|
+
/** Repeat duration (number). */
|
|
213
|
+
ClaimsObservationContext["DateDuration"] = "Observation.date-duration";
|
|
214
|
+
/** Repeat duration max (number). */
|
|
215
|
+
ClaimsObservationContext["DateDurationMax"] = "Observation.date-duration-max";
|
|
216
|
+
/** Repeat duration unit. Allowed: s|min|h|d|wk|mo|a. */
|
|
217
|
+
ClaimsObservationContext["DateDurationUnit"] = "Observation.date-duration-unit";
|
|
218
|
+
/** Repeat frequency (number of events per period). */
|
|
219
|
+
ClaimsObservationContext["DateFrequency"] = "Observation.date-frequency";
|
|
220
|
+
/** Repeat frequency max. */
|
|
221
|
+
ClaimsObservationContext["DateFrequencyMax"] = "Observation.date-frequency-max";
|
|
222
|
+
/** Repeat period value. */
|
|
223
|
+
ClaimsObservationContext["DatePeriodValue"] = "Observation.date-period-value";
|
|
224
|
+
/** Repeat period max. */
|
|
225
|
+
ClaimsObservationContext["DatePeriodMax"] = "Observation.date-period-max";
|
|
226
|
+
/** Repeat period unit. Allowed: s|min|h|d|wk|mo|a. */
|
|
227
|
+
ClaimsObservationContext["DatePeriodUnit"] = "Observation.date-period-unit";
|
|
228
|
+
/** Repeat offset in minutes. */
|
|
229
|
+
ClaimsObservationContext["DateOffset"] = "Observation.date-offset";
|
|
230
|
+
/**
|
|
231
|
+
* Quantity value using FHIR quantity search syntax:
|
|
232
|
+
* "{prefix}{number}|{system}|{code}".
|
|
233
|
+
* Example: "le5.4|http://unitsofmeasure.org|mg".
|
|
234
|
+
*/
|
|
235
|
+
ClaimsObservationContext["ValueQuantity"] = "Observation.value-quantity";
|
|
236
|
+
/** String value. Example: "Feels anxious at night." */
|
|
237
|
+
ClaimsObservationContext["ValueString"] = "Observation.value-string";
|
|
238
|
+
/** Date/dateTime/period value as ISO string (or "<start>/<end>" if period). */
|
|
239
|
+
ClaimsObservationContext["ValueDate"] = "Observation.value-date";
|
|
240
|
+
/** Coded value token "system|code". Example yes/no: "http://terminology.hl7.org/CodeSystem/v2-0136|Y". */
|
|
241
|
+
ClaimsObservationContext["ValueConcept"] = "Observation.value-concept";
|
|
242
|
+
/** Short English classifier tags, comma-separated. Example: "Anxiety,Night". */
|
|
243
|
+
ClaimsObservationContext["MetaTag"] = "Observation.meta-tag";
|
|
244
|
+
})(ClaimsObservationContext || (ClaimsObservationContext = {}));
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare enum ProcedureParameters {
|
|
2
|
+
BasedOn = "org.hl7.fhir.api.Procedure.based-on",
|
|
3
|
+
Category = "org.hl7.fhir.api.Procedure.category",
|
|
4
|
+
Code = "org.hl7.fhir.api.Procedure.code",
|
|
5
|
+
Date = "org.hl7.fhir.api.Procedure.date",
|
|
6
|
+
Encounter = "org.hl7.fhir.api.Procedure.encounter",
|
|
7
|
+
Identifier = "org.hl7.fhir.api.Procedure.identifier",
|
|
8
|
+
Location = "org.hl7.fhir.api.Procedure.location",
|
|
9
|
+
Patient = "org.hl7.fhir.api.Procedure.patient",
|
|
10
|
+
Performer = "org.hl7.fhir.api.Procedure.performer",
|
|
11
|
+
ReasonCode = "org.hl7.fhir.api.Procedure.reason-code",
|
|
12
|
+
ReasonReference = "org.hl7.fhir.api.Procedure.reason-reference",
|
|
13
|
+
Status = "org.hl7.fhir.api.Procedure.status",
|
|
14
|
+
Subject = "org.hl7.fhir.api.Procedure.subject"
|
|
15
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
// Procedure Parameters
|
|
2
|
+
export var ProcedureParameters;
|
|
3
|
+
(function (ProcedureParameters) {
|
|
4
|
+
ProcedureParameters["BasedOn"] = "org.hl7.fhir.api.Procedure.based-on";
|
|
5
|
+
ProcedureParameters["Category"] = "org.hl7.fhir.api.Procedure.category";
|
|
6
|
+
ProcedureParameters["Code"] = "org.hl7.fhir.api.Procedure.code";
|
|
7
|
+
ProcedureParameters["Date"] = "org.hl7.fhir.api.Procedure.date";
|
|
8
|
+
ProcedureParameters["Encounter"] = "org.hl7.fhir.api.Procedure.encounter";
|
|
9
|
+
ProcedureParameters["Identifier"] = "org.hl7.fhir.api.Procedure.identifier";
|
|
10
|
+
ProcedureParameters["Location"] = "org.hl7.fhir.api.Procedure.location";
|
|
11
|
+
ProcedureParameters["Patient"] = "org.hl7.fhir.api.Procedure.patient";
|
|
12
|
+
ProcedureParameters["Performer"] = "org.hl7.fhir.api.Procedure.performer";
|
|
13
|
+
ProcedureParameters["ReasonCode"] = "org.hl7.fhir.api.Procedure.reason-code";
|
|
14
|
+
ProcedureParameters["ReasonReference"] = "org.hl7.fhir.api.Procedure.reason-reference";
|
|
15
|
+
ProcedureParameters["Status"] = "org.hl7.fhir.api.Procedure.status";
|
|
16
|
+
ProcedureParameters["Subject"] = "org.hl7.fhir.api.Procedure.subject";
|
|
17
|
+
})(ProcedureParameters || (ProcedureParameters = {}));
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
/** ConceptReferencedDM for Data Minimization is a FHIR CodeableReference element
|
|
2
|
+
* but simplified with only a single "code" in a coding "system" and a "reference" string.
|
|
3
|
+
* (Note: SearchParameter extends ConceptReferencedDM)
|
|
4
|
+
*/
|
|
5
|
+
export interface ConceptReferencedDM {
|
|
6
|
+
code?: string;
|
|
7
|
+
system?: string;
|
|
8
|
+
reference?: string;
|
|
9
|
+
}
|
|
10
|
+
export type ParameterType = 'number' | 'date' | 'string' | 'token' | 'reference' | 'composite' | 'quantity' | 'uri' | 'period';
|
|
11
|
+
export interface ParameterData {
|
|
12
|
+
name: string;
|
|
13
|
+
type: ParameterType;
|
|
14
|
+
value: any;
|
|
15
|
+
system?: string;
|
|
16
|
+
unit?: string;
|
|
17
|
+
period?: boolean;
|
|
18
|
+
end?: string;
|
|
19
|
+
hint?: string;
|
|
20
|
+
appliesTo?: string[];
|
|
21
|
+
localizedText?: string;
|
|
22
|
+
intDisplay?: string;
|
|
23
|
+
prefix?: string;
|
|
24
|
+
}
|
|
25
|
+
export interface NumberSearchParameter extends ParameterData {
|
|
26
|
+
value: number;
|
|
27
|
+
}
|
|
28
|
+
export interface DateSearchParameter extends ParameterData {
|
|
29
|
+
value: string;
|
|
30
|
+
end?: string;
|
|
31
|
+
period?: boolean;
|
|
32
|
+
}
|
|
33
|
+
export interface StringSearchParameter extends ParameterData {
|
|
34
|
+
type: 'string';
|
|
35
|
+
value: string;
|
|
36
|
+
}
|
|
37
|
+
export interface TokenSearchParameter extends ParameterData {
|
|
38
|
+
type: 'token';
|
|
39
|
+
value: string;
|
|
40
|
+
system: string;
|
|
41
|
+
}
|
|
42
|
+
export interface ReferenceSearchParameter extends ParameterData {
|
|
43
|
+
type: 'reference';
|
|
44
|
+
reference: string;
|
|
45
|
+
}
|
|
46
|
+
export interface CompositeSearchParameter extends ParameterData {
|
|
47
|
+
type: 'composite';
|
|
48
|
+
components: ParameterData[];
|
|
49
|
+
}
|
|
50
|
+
export interface QuantitySearchParameter extends ParameterData {
|
|
51
|
+
type: 'quantity';
|
|
52
|
+
value: number;
|
|
53
|
+
system: string;
|
|
54
|
+
unit: string;
|
|
55
|
+
}
|
|
56
|
+
export interface URISearchParameter extends ParameterData {
|
|
57
|
+
type: 'uri';
|
|
58
|
+
value: string;
|
|
59
|
+
}
|
|
60
|
+
export type FHIRSearchParameter = NumberSearchParameter | DateSearchParameter | StringSearchParameter | TokenSearchParameter | ReferenceSearchParameter | CompositeSearchParameter | QuantitySearchParameter | URISearchParameter;
|
|
61
|
+
export interface Reaction {
|
|
62
|
+
substance: StringSearchParameter;
|
|
63
|
+
manifestation: StringSearchParameter[];
|
|
64
|
+
severity: string;
|
|
65
|
+
exposureRoute: StringSearchParameter;
|
|
66
|
+
note: StringSearchParameter[];
|
|
67
|
+
quantity: {
|
|
68
|
+
value: number;
|
|
69
|
+
system: string;
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
export declare function parseTokenParameter(inputValue: string): TokenSearchParameter;
|
|
73
|
+
export declare function parseReferenceParameter(inputValue: string): ReferenceSearchParameter;
|
|
74
|
+
export declare function parseDateParameter(inputValue: string): DateSearchParameter;
|
|
75
|
+
export declare function parseQuantityParameter(inputValue: string): QuantitySearchParameter;
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
export function parseTokenParameter(inputValue) {
|
|
2
|
+
const parts = inputValue.split('|');
|
|
3
|
+
const parameter = {
|
|
4
|
+
type: 'token',
|
|
5
|
+
name: '',
|
|
6
|
+
value: '',
|
|
7
|
+
system: '',
|
|
8
|
+
};
|
|
9
|
+
if (parts.length === 2) {
|
|
10
|
+
parameter.system = parts[0];
|
|
11
|
+
parameter.value = parts[1];
|
|
12
|
+
}
|
|
13
|
+
else if (parts.length === 1) {
|
|
14
|
+
parameter.value = parts[0];
|
|
15
|
+
}
|
|
16
|
+
return parameter;
|
|
17
|
+
}
|
|
18
|
+
export function parseReferenceParameter(inputValue) {
|
|
19
|
+
return {
|
|
20
|
+
type: 'reference',
|
|
21
|
+
name: '',
|
|
22
|
+
reference: inputValue,
|
|
23
|
+
value: '',
|
|
24
|
+
system: '',
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
export function parseDateParameter(inputValue) {
|
|
28
|
+
const parameter = {
|
|
29
|
+
type: 'date',
|
|
30
|
+
name: '',
|
|
31
|
+
value: '',
|
|
32
|
+
prefix: '',
|
|
33
|
+
system: '',
|
|
34
|
+
};
|
|
35
|
+
if (inputValue.match(/^(eq|ne|gt|lt|ge|le|sa|eb|ap)/)) {
|
|
36
|
+
parameter.prefix = inputValue.slice(0, 2);
|
|
37
|
+
parameter.value = inputValue.slice(2);
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
parameter.value = inputValue;
|
|
41
|
+
}
|
|
42
|
+
return parameter;
|
|
43
|
+
}
|
|
44
|
+
export function parseQuantityParameter(inputValue) {
|
|
45
|
+
const parts = inputValue.split('|');
|
|
46
|
+
const parameter = {
|
|
47
|
+
type: 'quantity',
|
|
48
|
+
name: '',
|
|
49
|
+
value: 2,
|
|
50
|
+
system: '',
|
|
51
|
+
prefix: '',
|
|
52
|
+
unit: '',
|
|
53
|
+
};
|
|
54
|
+
if (parts.length === 3) {
|
|
55
|
+
parameter.prefix = parts[0];
|
|
56
|
+
parameter.value = parseInt(parts[1]);
|
|
57
|
+
parameter.system = parts[2];
|
|
58
|
+
parameter.unit = parts[2];
|
|
59
|
+
}
|
|
60
|
+
else if (parts.length === 2) {
|
|
61
|
+
parameter.value = parseInt(parts[0]);
|
|
62
|
+
parameter.system = parts[1];
|
|
63
|
+
}
|
|
64
|
+
else if (parts.length === 1) {
|
|
65
|
+
parameter.value = parseInt(parts[0]);
|
|
66
|
+
}
|
|
67
|
+
return parameter;
|
|
68
|
+
}
|
|
69
|
+
// Continue with other parameter types if needed...
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare enum ServiceRequestParameters {
|
|
2
|
+
AuthoredOn = "org.hl7.fhir.api.ServiceRequest.authored-on",
|
|
3
|
+
Category = "org.hl7.fhir.api.ServiceRequest.category",
|
|
4
|
+
Code = "org.hl7.fhir.api.ServiceRequest.code",
|
|
5
|
+
Encounter = "org.hl7.fhir.api.ServiceRequest.encounter",
|
|
6
|
+
Identifier = "org.hl7.fhir.api.ServiceRequest.identifier",
|
|
7
|
+
OccurrenceDate = "org.hl7.fhir.api.ServiceRequest.occurrence-date",
|
|
8
|
+
Patient = "org.hl7.fhir.api.ServiceRequest.patient",
|
|
9
|
+
Performer = "org.hl7.fhir.api.ServiceRequest.performer",
|
|
10
|
+
ReasonCode = "org.hl7.fhir.api.ServiceRequest.reason-code",
|
|
11
|
+
ReasonReference = "org.hl7.fhir.api.ServiceRequest.reason-reference",
|
|
12
|
+
Status = "org.hl7.fhir.api.ServiceRequest.status",
|
|
13
|
+
Subject = "org.hl7.fhir.api.ServiceRequest.subject"
|
|
14
|
+
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
// ServiceRequest Parameters
|
|
2
|
+
export var ServiceRequestParameters;
|
|
3
|
+
(function (ServiceRequestParameters) {
|
|
4
|
+
ServiceRequestParameters["AuthoredOn"] = "org.hl7.fhir.api.ServiceRequest.authored-on";
|
|
5
|
+
ServiceRequestParameters["Category"] = "org.hl7.fhir.api.ServiceRequest.category";
|
|
6
|
+
ServiceRequestParameters["Code"] = "org.hl7.fhir.api.ServiceRequest.code";
|
|
7
|
+
ServiceRequestParameters["Encounter"] = "org.hl7.fhir.api.ServiceRequest.encounter";
|
|
8
|
+
ServiceRequestParameters["Identifier"] = "org.hl7.fhir.api.ServiceRequest.identifier";
|
|
9
|
+
ServiceRequestParameters["OccurrenceDate"] = "org.hl7.fhir.api.ServiceRequest.occurrence-date";
|
|
10
|
+
ServiceRequestParameters["Patient"] = "org.hl7.fhir.api.ServiceRequest.patient";
|
|
11
|
+
ServiceRequestParameters["Performer"] = "org.hl7.fhir.api.ServiceRequest.performer";
|
|
12
|
+
ServiceRequestParameters["ReasonCode"] = "org.hl7.fhir.api.ServiceRequest.reason-code";
|
|
13
|
+
ServiceRequestParameters["ReasonReference"] = "org.hl7.fhir.api.ServiceRequest.reason-reference";
|
|
14
|
+
ServiceRequestParameters["Status"] = "org.hl7.fhir.api.ServiceRequest.status";
|
|
15
|
+
ServiceRequestParameters["Subject"] = "org.hl7.fhir.api.ServiceRequest.subject";
|
|
16
|
+
})(ServiceRequestParameters || (ServiceRequestParameters = {}));
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare enum SpecimenParameters {
|
|
2
|
+
AccessionIdentifier = "org.hl7.fhir.api.Specimen.accession-identifier",
|
|
3
|
+
CollectionDate = "org.hl7.fhir.api.Specimen.collection-date",
|
|
4
|
+
ContainerIdentifier = "org.hl7.fhir.api.Specimen.container-identifier",
|
|
5
|
+
Identifier = "org.hl7.fhir.api.Specimen.identifier",
|
|
6
|
+
Parent = "org.hl7.fhir.api.Specimen.parent",
|
|
7
|
+
Patient = "org.hl7.fhir.api.Specimen.patient",
|
|
8
|
+
Status = "org.hl7.fhir.api.Specimen.status",
|
|
9
|
+
Type = "org.hl7.fhir.api.Specimen.type"
|
|
10
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// Specimen Parameters
|
|
2
|
+
export var SpecimenParameters;
|
|
3
|
+
(function (SpecimenParameters) {
|
|
4
|
+
SpecimenParameters["AccessionIdentifier"] = "org.hl7.fhir.api.Specimen.accession-identifier";
|
|
5
|
+
SpecimenParameters["CollectionDate"] = "org.hl7.fhir.api.Specimen.collection-date";
|
|
6
|
+
SpecimenParameters["ContainerIdentifier"] = "org.hl7.fhir.api.Specimen.container-identifier";
|
|
7
|
+
SpecimenParameters["Identifier"] = "org.hl7.fhir.api.Specimen.identifier";
|
|
8
|
+
SpecimenParameters["Parent"] = "org.hl7.fhir.api.Specimen.parent";
|
|
9
|
+
SpecimenParameters["Patient"] = "org.hl7.fhir.api.Specimen.patient";
|
|
10
|
+
SpecimenParameters["Status"] = "org.hl7.fhir.api.Specimen.status";
|
|
11
|
+
SpecimenParameters["Type"] = "org.hl7.fhir.api.Specimen.type";
|
|
12
|
+
})(SpecimenParameters || (SpecimenParameters = {}));
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export * from './AdverseEvent.params.model.js';
|
|
2
|
+
export * from './AllergyIntolerance.params.model.js';
|
|
3
|
+
export * from './Appointment.params.model.js';
|
|
4
|
+
export * from './ClinicalImpression.params.model.js';
|
|
5
|
+
export * from './Condition.params.model.js';
|
|
6
|
+
export * from './DetectedIssue.params.model.js';
|
|
7
|
+
export * from './DiagnosticReport.params.model.js';
|
|
8
|
+
export * from './Encounter.params.model.js';
|
|
9
|
+
export * from './Immunization.params.model.js';
|
|
10
|
+
export * from './Observation.params.model.js';
|
|
11
|
+
export * from './Procedure.params.model.js';
|
|
12
|
+
export * from './ServiceRequest.params.model.js';
|
|
13
|
+
export * from './Specimen.params.model.js';
|
|
14
|
+
export * from './Medication.params.model.js';
|
|
15
|
+
export * from './Search.params.model.js';
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export * from './AdverseEvent.params.model.js';
|
|
2
|
+
export * from './AllergyIntolerance.params.model.js';
|
|
3
|
+
export * from './Appointment.params.model.js';
|
|
4
|
+
export * from './ClinicalImpression.params.model.js';
|
|
5
|
+
export * from './Condition.params.model.js';
|
|
6
|
+
export * from './DetectedIssue.params.model.js';
|
|
7
|
+
export * from './DiagnosticReport.params.model.js';
|
|
8
|
+
export * from './Encounter.params.model.js';
|
|
9
|
+
export * from './Immunization.params.model.js';
|
|
10
|
+
export * from './Observation.params.model.js';
|
|
11
|
+
export * from './Procedure.params.model.js';
|
|
12
|
+
export * from './ServiceRequest.params.model.js';
|
|
13
|
+
export * from './Specimen.params.model.js';
|
|
14
|
+
export * from './Medication.params.model.js';
|
|
15
|
+
export * from './Search.params.model.js';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { AdverseEventParameters } from '../params/index.js';
|
|
2
|
+
import { TokenSearchParameter, DateSearchParameter, ReferenceSearchParameter } from '../params/Search.params.model.js';
|
|
3
|
+
export interface AdverseEventTemplateFHIR {
|
|
4
|
+
[AdverseEventParameters.Category]?: TokenSearchParameter;
|
|
5
|
+
[AdverseEventParameters.Date]?: DateSearchParameter;
|
|
6
|
+
[AdverseEventParameters.Identifier]?: TokenSearchParameter;
|
|
7
|
+
[AdverseEventParameters.Location]?: ReferenceSearchParameter;
|
|
8
|
+
[AdverseEventParameters.Reaction]?: ReferenceSearchParameter;
|
|
9
|
+
[AdverseEventParameters.Recorder]?: ReferenceSearchParameter;
|
|
10
|
+
[AdverseEventParameters.Seriousness]?: TokenSearchParameter;
|
|
11
|
+
[AdverseEventParameters.Study]?: ReferenceSearchParameter;
|
|
12
|
+
[AdverseEventParameters.Subject]?: ReferenceSearchParameter;
|
|
13
|
+
[AdverseEventParameters.Substance]?: ReferenceSearchParameter;
|
|
14
|
+
[AdverseEventParameters.RecordedDate]?: DateSearchParameter;
|
|
15
|
+
[AdverseEventParameters.ReferenceDocument]?: ReferenceSearchParameter;
|
|
16
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { AllergyIntoleranceParameters } from '../params/index.js';
|
|
2
|
+
import { TokenSearchParameter, StringSearchParameter, DateSearchParameter, ReferenceSearchParameter } from '../params/Search.params.model.js';
|
|
3
|
+
export interface AllergyIntoleranceTemplateFHIR {
|
|
4
|
+
[AllergyIntoleranceParameters.Category]?: TokenSearchParameter;
|
|
5
|
+
[AllergyIntoleranceParameters.ClinicalStatus]?: TokenSearchParameter;
|
|
6
|
+
[AllergyIntoleranceParameters.Code]?: TokenSearchParameter;
|
|
7
|
+
[AllergyIntoleranceParameters.Criticality]?: TokenSearchParameter;
|
|
8
|
+
[AllergyIntoleranceParameters.Date]?: DateSearchParameter;
|
|
9
|
+
[AllergyIntoleranceParameters.Identifier]?: TokenSearchParameter;
|
|
10
|
+
[AllergyIntoleranceParameters.LastDate]?: DateSearchParameter;
|
|
11
|
+
[AllergyIntoleranceParameters.Manifestation]?: TokenSearchParameter;
|
|
12
|
+
[AllergyIntoleranceParameters.Onset]?: DateSearchParameter;
|
|
13
|
+
[AllergyIntoleranceParameters.Patient]?: ReferenceSearchParameter;
|
|
14
|
+
[AllergyIntoleranceParameters.Recorder]?: ReferenceSearchParameter;
|
|
15
|
+
[AllergyIntoleranceParameters.Reporter]?: ReferenceSearchParameter;
|
|
16
|
+
[AllergyIntoleranceParameters.Severity]?: TokenSearchParameter;
|
|
17
|
+
[AllergyIntoleranceParameters.Type]?: TokenSearchParameter;
|
|
18
|
+
[AllergyIntoleranceParameters.VerificationStatus]?: TokenSearchParameter;
|
|
19
|
+
[AllergyIntoleranceParameters.Note]?: StringSearchParameter;
|
|
20
|
+
[AllergyIntoleranceParameters.Substance]?: TokenSearchParameter;
|
|
21
|
+
[AllergyIntoleranceParameters.ReactionDescription]?: StringSearchParameter;
|
|
22
|
+
[AllergyIntoleranceParameters.ExposureRoute]?: TokenSearchParameter;
|
|
23
|
+
[AllergyIntoleranceParameters.ReactionNote]?: StringSearchParameter;
|
|
24
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import { AllergyIntoleranceParameters } from '../params/index.js';
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { AppointmentParameters } from '../params/index.js';
|
|
2
|
+
import { ReferenceSearchParameter, DateSearchParameter, TokenSearchParameter } from '../params/Search.params.model.js';
|
|
3
|
+
export interface AppointmentTemplateFHIR {
|
|
4
|
+
[AppointmentParameters.Actor]?: ReferenceSearchParameter;
|
|
5
|
+
[AppointmentParameters.Date]?: DateSearchParameter;
|
|
6
|
+
[AppointmentParameters.Identifier]?: TokenSearchParameter;
|
|
7
|
+
[AppointmentParameters.Location]?: ReferenceSearchParameter;
|
|
8
|
+
[AppointmentParameters.PartStatus]?: TokenSearchParameter;
|
|
9
|
+
[AppointmentParameters.Patient]?: ReferenceSearchParameter;
|
|
10
|
+
[AppointmentParameters.Practitioner]?: ReferenceSearchParameter;
|
|
11
|
+
[AppointmentParameters.ServiceType]?: TokenSearchParameter;
|
|
12
|
+
[AppointmentParameters.Status]?: TokenSearchParameter;
|
|
13
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import { AppointmentParameters } from '../params/index.js';
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { ClinicalImpressionParameters } from '../params/index.js';
|
|
2
|
+
import { ReferenceSearchParameter, DateSearchParameter, TokenSearchParameter } from '../params/Search.params.model.js';
|
|
3
|
+
export interface ClinicalImpressionTemplateFHIR {
|
|
4
|
+
[ClinicalImpressionParameters.Assessor]?: ReferenceSearchParameter;
|
|
5
|
+
[ClinicalImpressionParameters.Date]?: DateSearchParameter;
|
|
6
|
+
[ClinicalImpressionParameters.FindingCode]?: TokenSearchParameter;
|
|
7
|
+
[ClinicalImpressionParameters.FindingRef]?: ReferenceSearchParameter;
|
|
8
|
+
[ClinicalImpressionParameters.Identifier]?: TokenSearchParameter;
|
|
9
|
+
[ClinicalImpressionParameters.Investigation]?: TokenSearchParameter;
|
|
10
|
+
[ClinicalImpressionParameters.Patient]?: ReferenceSearchParameter;
|
|
11
|
+
[ClinicalImpressionParameters.Previous]?: ReferenceSearchParameter;
|
|
12
|
+
[ClinicalImpressionParameters.Problem]?: ReferenceSearchParameter;
|
|
13
|
+
[ClinicalImpressionParameters.Status]?: TokenSearchParameter;
|
|
14
|
+
[ClinicalImpressionParameters.Support]?: ReferenceSearchParameter;
|
|
15
|
+
[ClinicalImpressionParameters.Subject]?: ReferenceSearchParameter;
|
|
16
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import { ClinicalImpressionParameters } from '../params/index.js';
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ConditionParameters } from '../params/index.js';
|
|
2
|
+
import { TokenSearchParameter, DateSearchParameter, StringSearchParameter, ReferenceSearchParameter } from '../params/Search.params.model.js';
|
|
3
|
+
export interface ConditionTemplateFHIR {
|
|
4
|
+
[ConditionParameters.AbatementBoolean]?: TokenSearchParameter;
|
|
5
|
+
[ConditionParameters.AbatementDate]?: DateSearchParameter;
|
|
6
|
+
[ConditionParameters.AbatementString]?: StringSearchParameter;
|
|
7
|
+
[ConditionParameters.AssertedDate]?: DateSearchParameter;
|
|
8
|
+
[ConditionParameters.BodySite]?: TokenSearchParameter;
|
|
9
|
+
[ConditionParameters.Category]?: TokenSearchParameter;
|
|
10
|
+
[ConditionParameters.ClinicalStatus]?: TokenSearchParameter;
|
|
11
|
+
[ConditionParameters.Code]?: TokenSearchParameter;
|
|
12
|
+
[ConditionParameters.Identifier]?: TokenSearchParameter;
|
|
13
|
+
[ConditionParameters.OnsetDate]?: DateSearchParameter;
|
|
14
|
+
[ConditionParameters.Severity]?: TokenSearchParameter;
|
|
15
|
+
[ConditionParameters.Stage]?: TokenSearchParameter;
|
|
16
|
+
[ConditionParameters.Subject]?: ReferenceSearchParameter;
|
|
17
|
+
[ConditionParameters.VerificationStatus]?: TokenSearchParameter;
|
|
18
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import { ConditionParameters } from '../params/index.js';
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { DetectedIssueParameters } from '../params/index.js';
|
|
2
|
+
import { ReferenceSearchParameter, TokenSearchParameter, DateSearchParameter } from '../params/Search.params.model.js';
|
|
3
|
+
export interface DetectedIssueTemplateFHIR {
|
|
4
|
+
[DetectedIssueParameters.Author]?: ReferenceSearchParameter;
|
|
5
|
+
[DetectedIssueParameters.Code]?: TokenSearchParameter;
|
|
6
|
+
[DetectedIssueParameters.Identified]?: DateSearchParameter;
|
|
7
|
+
[DetectedIssueParameters.Identifier]?: TokenSearchParameter;
|
|
8
|
+
[DetectedIssueParameters.Implicated]?: ReferenceSearchParameter;
|
|
9
|
+
[DetectedIssueParameters.Patient]?: ReferenceSearchParameter;
|
|
10
|
+
[DetectedIssueParameters.Status]?: TokenSearchParameter;
|
|
11
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import { DetectedIssueParameters } from '../params/index.js';
|