gdc-common-utils-ts 1.14.10 → 1.14.13
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/README.md +54 -1
- package/dist/claims/claim-list-helpers.d.ts +21 -0
- package/dist/claims/claim-list-helpers.js +50 -0
- package/dist/claims/claims-helpers-allergy-intolerance.d.ts +10 -0
- package/dist/claims/claims-helpers-allergy-intolerance.js +47 -0
- package/dist/claims/claims-helpers-appointment-response.d.ts +8 -0
- package/dist/claims/claims-helpers-appointment-response.js +20 -0
- package/dist/claims/claims-helpers-appointment.d.ts +10 -0
- package/dist/claims/claims-helpers-appointment.js +26 -0
- package/dist/claims/claims-helpers-care-plan.d.ts +8 -0
- package/dist/claims/claims-helpers-care-plan.js +20 -0
- package/dist/claims/claims-helpers-clinical-impression.d.ts +10 -0
- package/dist/claims/claims-helpers-clinical-impression.js +26 -0
- package/dist/claims/claims-helpers-communication.d.ts +17 -0
- package/dist/claims/claims-helpers-communication.js +57 -0
- package/dist/claims/claims-helpers-composition.d.ts +12 -0
- package/dist/claims/claims-helpers-composition.js +32 -0
- package/dist/claims/claims-helpers-condition.d.ts +10 -0
- package/dist/claims/claims-helpers-condition.js +47 -0
- package/dist/claims/claims-helpers-consent.d.ts +112 -0
- package/dist/claims/claims-helpers-consent.js +271 -0
- package/dist/claims/claims-helpers-coverage.d.ts +10 -0
- package/dist/claims/claims-helpers-coverage.js +26 -0
- package/dist/claims/claims-helpers-device-use-statement.d.ts +8 -0
- package/dist/claims/claims-helpers-device-use-statement.js +20 -0
- package/dist/claims/claims-helpers-device.d.ts +8 -0
- package/dist/claims/claims-helpers-device.js +20 -0
- package/dist/claims/claims-helpers-diagnostic-report.d.ts +12 -0
- package/dist/claims/claims-helpers-diagnostic-report.js +32 -0
- package/dist/claims/claims-helpers-document-reference.d.ts +8 -0
- package/dist/claims/claims-helpers-document-reference.js +20 -0
- package/dist/claims/claims-helpers-encounter.d.ts +10 -0
- package/dist/claims/claims-helpers-encounter.js +26 -0
- package/dist/claims/claims-helpers-flag.d.ts +8 -0
- package/dist/claims/claims-helpers-flag.js +20 -0
- package/dist/claims/claims-helpers-immunization.d.ts +8 -0
- package/dist/claims/claims-helpers-immunization.js +20 -0
- package/dist/claims/claims-helpers-location.d.ts +10 -0
- package/dist/claims/claims-helpers-location.js +26 -0
- package/dist/claims/claims-helpers-medication-statement.d.ts +88 -0
- package/dist/claims/claims-helpers-medication-statement.js +259 -0
- package/dist/claims/claims-helpers-observation.d.ts +8 -0
- package/dist/claims/claims-helpers-observation.js +20 -0
- package/dist/claims/claims-helpers-organization.d.ts +12 -0
- package/dist/claims/claims-helpers-organization.js +32 -0
- package/dist/claims/claims-helpers-procedure.d.ts +8 -0
- package/dist/claims/claims-helpers-procedure.js +20 -0
- package/dist/claims/claims-helpers-related-person.d.ts +8 -0
- package/dist/claims/claims-helpers-related-person.js +20 -0
- package/dist/claims/index.d.ts +24 -0
- package/dist/claims/index.js +24 -0
- package/dist/constants/fhir-resource-types.d.ts +16 -0
- package/dist/constants/fhir-resource-types.js +8 -0
- package/dist/convert/convert-allergy-intolerance.d.ts +3 -0
- package/dist/convert/convert-allergy-intolerance.js +34 -0
- package/dist/convert/convert-appointment-response.d.ts +3 -0
- package/dist/convert/convert-appointment-response.js +32 -0
- package/dist/convert/convert-appointment.d.ts +3 -0
- package/dist/convert/convert-appointment.js +61 -0
- package/dist/convert/convert-care-plan.d.ts +3 -0
- package/dist/convert/convert-care-plan.js +58 -0
- package/dist/convert/convert-clinical-impression.d.ts +3 -0
- package/dist/convert/convert-clinical-impression.js +42 -0
- package/dist/convert/convert-composition.d.ts +3 -0
- package/dist/convert/convert-composition.js +35 -0
- package/dist/convert/convert-condition.d.ts +3 -0
- package/dist/convert/convert-condition.js +24 -0
- package/dist/convert/convert-coverage.d.ts +3 -0
- package/dist/convert/convert-coverage.js +51 -0
- package/dist/convert/convert-device-use-statement.d.ts +3 -0
- package/dist/convert/convert-device-use-statement.js +28 -0
- package/dist/convert/convert-device.d.ts +3 -0
- package/dist/convert/convert-device.js +37 -0
- package/dist/convert/convert-diagnostic-report.d.ts +3 -0
- package/dist/convert/convert-diagnostic-report.js +55 -0
- package/dist/convert/convert-document-reference.d.ts +3 -0
- package/dist/convert/convert-document-reference.js +35 -0
- package/dist/convert/convert-encounter.d.ts +3 -0
- package/dist/convert/convert-encounter.js +68 -0
- package/dist/convert/convert-flag.d.ts +3 -0
- package/dist/convert/convert-flag.js +34 -0
- package/dist/convert/convert-immunization.d.ts +3 -0
- package/dist/convert/convert-immunization.js +56 -0
- package/dist/convert/convert-location.d.ts +3 -0
- package/dist/convert/convert-location.js +44 -0
- package/dist/convert/convert-medication-statement.d.ts +3 -0
- package/dist/convert/convert-medication-statement.js +64 -0
- package/dist/convert/convert-observation.d.ts +3 -0
- package/dist/convert/convert-observation.js +57 -0
- package/dist/convert/convert-organization.d.ts +3 -0
- package/dist/convert/convert-organization.js +39 -0
- package/dist/convert/convert-procedure.d.ts +3 -0
- package/dist/convert/convert-procedure.js +50 -0
- package/dist/convert/convert-related-person.d.ts +3 -0
- package/dist/convert/convert-related-person.js +31 -0
- package/dist/convert/convert-shared.d.ts +34 -0
- package/dist/convert/convert-shared.js +179 -0
- package/dist/convert/index.d.ts +22 -0
- package/dist/convert/index.js +22 -0
- package/dist/examples/communication-bundle-session.js +2 -2
- package/dist/examples/shared.d.ts +19 -0
- package/dist/examples/shared.js +73 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.js +2 -0
- package/dist/models/bundle.d.ts +13 -1
- package/dist/models/interoperable-claims/appointment-claims.d.ts +23 -1
- package/dist/models/interoperable-claims/appointment-claims.js +22 -1
- package/dist/models/interoperable-claims/appointment-response-claims.d.ts +14 -0
- package/dist/models/interoperable-claims/appointment-response-claims.js +13 -0
- package/dist/models/interoperable-claims/care-plan-claims.d.ts +24 -0
- package/dist/models/interoperable-claims/care-plan-claims.js +44 -0
- package/dist/models/interoperable-claims/clinical-impression-claims.d.ts +17 -0
- package/dist/models/interoperable-claims/clinical-impression-claims.js +30 -0
- package/dist/models/interoperable-claims/coverage-claims.d.ts +16 -0
- package/dist/models/interoperable-claims/coverage-claims.js +28 -0
- package/dist/models/interoperable-claims/device-claims.d.ts +18 -0
- package/dist/models/interoperable-claims/device-claims.js +32 -0
- package/dist/models/interoperable-claims/diagnostic-report-claims.d.ts +2 -2
- package/dist/models/interoperable-claims/diagnostic-report-claims.js +1 -1
- package/dist/models/interoperable-claims/encounter-claims.d.ts +18 -0
- package/dist/models/interoperable-claims/encounter-claims.js +32 -0
- package/dist/models/interoperable-claims/flag-claims.d.ts +16 -0
- package/dist/models/interoperable-claims/flag-claims.js +28 -0
- package/dist/models/interoperable-claims/immunization-claims.d.ts +23 -0
- package/dist/models/interoperable-claims/immunization-claims.js +42 -0
- package/dist/models/interoperable-claims/index.d.ts +12 -0
- package/dist/models/interoperable-claims/index.js +12 -0
- package/dist/models/interoperable-claims/location-claims.d.ts +22 -0
- package/dist/models/interoperable-claims/location-claims.js +34 -0
- package/dist/models/interoperable-claims/observation-claims.d.ts +26 -0
- package/dist/models/interoperable-claims/observation-claims.js +48 -0
- package/dist/models/interoperable-claims/organization-claims.d.ts +18 -0
- package/dist/models/interoperable-claims/organization-claims.js +27 -0
- package/dist/models/interoperable-claims/procedure-claims.d.ts +22 -0
- package/dist/models/interoperable-claims/procedure-claims.js +40 -0
- package/dist/models/interoperable-claims/related-person-claims.d.ts +14 -0
- package/dist/models/interoperable-claims/related-person-claims.js +24 -0
- package/dist/utils/appointment-claim-helpers.d.ts +10 -0
- package/dist/utils/appointment-claim-helpers.js +26 -0
- package/dist/utils/appointment-response-claim-helpers.d.ts +8 -0
- package/dist/utils/appointment-response-claim-helpers.js +20 -0
- package/dist/utils/bundle-document-builder.d.ts +36 -0
- package/dist/utils/bundle-document-builder.js +311 -0
- package/dist/utils/claims-helpers-allergy-intolerance.d.ts +1 -0
- package/dist/utils/claims-helpers-allergy-intolerance.js +1 -0
- package/dist/utils/claims-helpers-appointment-response.d.ts +1 -0
- package/dist/utils/claims-helpers-appointment-response.js +1 -0
- package/dist/utils/claims-helpers-appointment.d.ts +1 -0
- package/dist/utils/claims-helpers-appointment.js +1 -0
- package/dist/utils/claims-helpers-care-plan.d.ts +1 -0
- package/dist/utils/claims-helpers-care-plan.js +1 -0
- package/dist/utils/claims-helpers-clinical-impression.d.ts +1 -0
- package/dist/utils/claims-helpers-clinical-impression.js +1 -0
- package/dist/utils/claims-helpers-communication.d.ts +1 -0
- package/dist/utils/claims-helpers-communication.js +1 -0
- package/dist/utils/claims-helpers-composition.d.ts +1 -0
- package/dist/utils/claims-helpers-composition.js +1 -0
- package/dist/utils/claims-helpers-condition.d.ts +1 -0
- package/dist/utils/claims-helpers-condition.js +1 -0
- package/dist/utils/claims-helpers-consent.d.ts +1 -0
- package/dist/utils/claims-helpers-consent.js +1 -0
- package/dist/utils/claims-helpers-coverage.d.ts +1 -0
- package/dist/utils/claims-helpers-coverage.js +1 -0
- package/dist/utils/claims-helpers-device-use-statement.d.ts +1 -0
- package/dist/utils/claims-helpers-device-use-statement.js +1 -0
- package/dist/utils/claims-helpers-device.d.ts +1 -0
- package/dist/utils/claims-helpers-device.js +1 -0
- package/dist/utils/claims-helpers-diagnostic-report.d.ts +1 -0
- package/dist/utils/claims-helpers-diagnostic-report.js +1 -0
- package/dist/utils/claims-helpers-document-reference.d.ts +1 -0
- package/dist/utils/claims-helpers-document-reference.js +1 -0
- package/dist/utils/claims-helpers-encounter.d.ts +1 -0
- package/dist/utils/claims-helpers-encounter.js +1 -0
- package/dist/utils/claims-helpers-flag.d.ts +1 -0
- package/dist/utils/claims-helpers-flag.js +1 -0
- package/dist/utils/claims-helpers-immunization.d.ts +1 -0
- package/dist/utils/claims-helpers-immunization.js +1 -0
- package/dist/utils/claims-helpers-location.d.ts +1 -0
- package/dist/utils/claims-helpers-location.js +1 -0
- package/dist/utils/claims-helpers-medication-statement.d.ts +1 -0
- package/dist/utils/claims-helpers-medication-statement.js +1 -0
- package/dist/utils/claims-helpers-observation.d.ts +1 -0
- package/dist/utils/claims-helpers-observation.js +1 -0
- package/dist/utils/claims-helpers-organization.d.ts +1 -0
- package/dist/utils/claims-helpers-organization.js +1 -0
- package/dist/utils/claims-helpers-procedure.d.ts +1 -0
- package/dist/utils/claims-helpers-procedure.js +1 -0
- package/dist/utils/claims-helpers-related-person.d.ts +1 -0
- package/dist/utils/claims-helpers-related-person.js +1 -0
- package/dist/utils/clinical-impression-claim-helpers.d.ts +10 -0
- package/dist/utils/clinical-impression-claim-helpers.js +26 -0
- package/dist/utils/clinical-resource-converters.d.ts +91 -62
- package/dist/utils/clinical-resource-converters.js +135 -273
- package/dist/utils/communication-bundle-session.js +1 -1
- package/dist/utils/composition-claim-helpers.d.ts +12 -0
- package/dist/utils/composition-claim-helpers.js +32 -0
- package/dist/utils/consent-claim-helpers.d.ts +2 -2
- package/dist/utils/consent-claim-helpers.js +2 -2
- package/dist/utils/convert-allergy-intolerance.d.ts +3 -0
- package/dist/utils/convert-allergy-intolerance.js +34 -0
- package/dist/utils/convert-appointment-response.d.ts +3 -0
- package/dist/utils/convert-appointment-response.js +32 -0
- package/dist/utils/convert-appointment.d.ts +3 -0
- package/dist/utils/convert-appointment.js +61 -0
- package/dist/utils/convert-care-plan.d.ts +3 -0
- package/dist/utils/convert-care-plan.js +58 -0
- package/dist/utils/convert-clinical-impression.d.ts +3 -0
- package/dist/utils/convert-clinical-impression.js +42 -0
- package/dist/utils/convert-composition.d.ts +3 -0
- package/dist/utils/convert-composition.js +35 -0
- package/dist/utils/convert-condition.d.ts +3 -0
- package/dist/utils/convert-condition.js +24 -0
- package/dist/utils/convert-coverage.d.ts +3 -0
- package/dist/utils/convert-coverage.js +51 -0
- package/dist/utils/convert-device-use-statement.d.ts +3 -0
- package/dist/utils/convert-device-use-statement.js +28 -0
- package/dist/utils/convert-device.d.ts +3 -0
- package/dist/utils/convert-device.js +37 -0
- package/dist/utils/convert-diagnostic-report.d.ts +3 -0
- package/dist/utils/convert-diagnostic-report.js +55 -0
- package/dist/utils/convert-document-reference.d.ts +3 -0
- package/dist/utils/convert-document-reference.js +35 -0
- package/dist/utils/convert-encounter.d.ts +3 -0
- package/dist/utils/convert-encounter.js +68 -0
- package/dist/utils/convert-flag.d.ts +3 -0
- package/dist/utils/convert-flag.js +34 -0
- package/dist/utils/convert-immunization.d.ts +3 -0
- package/dist/utils/convert-immunization.js +56 -0
- package/dist/utils/convert-medication-statement.d.ts +3 -0
- package/dist/utils/convert-medication-statement.js +64 -0
- package/dist/utils/convert-observation.d.ts +3 -0
- package/dist/utils/convert-observation.js +57 -0
- package/dist/utils/convert-procedure.d.ts +3 -0
- package/dist/utils/convert-procedure.js +50 -0
- package/dist/utils/convert-related-person.d.ts +3 -0
- package/dist/utils/convert-related-person.js +31 -0
- package/dist/utils/convert-shared.d.ts +34 -0
- package/dist/utils/convert-shared.js +179 -0
- package/dist/utils/coverage-claim-helpers.d.ts +10 -0
- package/dist/utils/coverage-claim-helpers.js +26 -0
- package/dist/utils/diagnostic-report-claim-helpers.d.ts +12 -0
- package/dist/utils/diagnostic-report-claim-helpers.js +32 -0
- package/dist/utils/encounter-claim-helpers.d.ts +10 -0
- package/dist/utils/encounter-claim-helpers.js +26 -0
- package/dist/utils/fhir-cid.d.ts +49 -0
- package/dist/utils/fhir-cid.js +75 -0
- package/dist/utils/index.d.ts +4 -6
- package/dist/utils/index.js +4 -6
- package/dist/utils/ips-bundle-claims.d.ts +52 -0
- package/dist/utils/ips-bundle-claims.js +104 -0
- package/dist/utils/jwt.d.ts +16 -0
- package/dist/utils/jwt.js +21 -0
- package/dist/utils/related-person-claim-helpers.d.ts +8 -0
- package/dist/utils/related-person-claim-helpers.js +20 -0
- package/package.json +17 -1
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { ClaimSpec } from './types';
|
|
2
|
+
export declare const CoverageClaim: {
|
|
3
|
+
readonly Identifier: "Coverage.identifier";
|
|
4
|
+
readonly Status: "Coverage.status";
|
|
5
|
+
readonly Type: "Coverage.type";
|
|
6
|
+
readonly PolicyHolder: "Coverage.policy-holder";
|
|
7
|
+
readonly Subscriber: "Coverage.subscriber";
|
|
8
|
+
readonly Beneficiary: "Coverage.beneficiary";
|
|
9
|
+
readonly Relationship: "Coverage.relationship";
|
|
10
|
+
readonly PeriodStart: "Coverage.period-start";
|
|
11
|
+
readonly PeriodEnd: "Coverage.period-end";
|
|
12
|
+
readonly Payor: "Coverage.payor";
|
|
13
|
+
readonly Class: "Coverage.class";
|
|
14
|
+
};
|
|
15
|
+
export type CoverageClaimKey = typeof CoverageClaim[keyof typeof CoverageClaim];
|
|
16
|
+
export declare const CoverageClaimSpecs: ClaimSpec[];
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
// Copyright 2026 Conéctate Soluciones y Aplicaciones SL under the Apache License, Version 2.0.
|
|
2
|
+
// File: src/models/interoperable-claims/coverage-claims.ts
|
|
3
|
+
export const CoverageClaim = {
|
|
4
|
+
Identifier: 'Coverage.identifier',
|
|
5
|
+
Status: 'Coverage.status',
|
|
6
|
+
Type: 'Coverage.type',
|
|
7
|
+
PolicyHolder: 'Coverage.policy-holder',
|
|
8
|
+
Subscriber: 'Coverage.subscriber',
|
|
9
|
+
Beneficiary: 'Coverage.beneficiary',
|
|
10
|
+
Relationship: 'Coverage.relationship',
|
|
11
|
+
PeriodStart: 'Coverage.period-start',
|
|
12
|
+
PeriodEnd: 'Coverage.period-end',
|
|
13
|
+
Payor: 'Coverage.payor',
|
|
14
|
+
Class: 'Coverage.class',
|
|
15
|
+
};
|
|
16
|
+
export const CoverageClaimSpecs = [
|
|
17
|
+
{ key: CoverageClaim.Identifier, meaning: 'Business identifier.', example: 'cov-001' },
|
|
18
|
+
{ key: CoverageClaim.Status, meaning: 'Coverage status.', example: 'active' },
|
|
19
|
+
{ key: CoverageClaim.Type, meaning: 'Coverage type token.', example: 'http://terminology.hl7.org/CodeSystem/v3-ActCode|EHCPOL' },
|
|
20
|
+
{ key: CoverageClaim.PolicyHolder, meaning: 'Policy holder reference.', example: 'RelatedPerson/rel-1' },
|
|
21
|
+
{ key: CoverageClaim.Subscriber, meaning: 'Subscriber reference.', example: 'RelatedPerson/rel-1' },
|
|
22
|
+
{ key: CoverageClaim.Beneficiary, meaning: 'Beneficiary reference.', example: 'did:web:patient.example.org' },
|
|
23
|
+
{ key: CoverageClaim.Relationship, meaning: 'Relationship token.', example: 'http://terminology.hl7.org/CodeSystem/subscriber-relationship|self' },
|
|
24
|
+
{ key: CoverageClaim.PeriodStart, meaning: 'Coverage start.', example: '2026-01-01' },
|
|
25
|
+
{ key: CoverageClaim.PeriodEnd, meaning: 'Coverage end.', example: '2026-12-31' },
|
|
26
|
+
{ key: CoverageClaim.Payor, meaning: 'Payor references (CSV).', example: 'Organization/payer-1' },
|
|
27
|
+
{ key: CoverageClaim.Class, meaning: 'Coverage class values (CSV).', example: 'group|G-001,plan|P-001' },
|
|
28
|
+
];
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { ClaimSpec } from './types';
|
|
2
|
+
export declare const DeviceClaim: {
|
|
3
|
+
readonly DeviceName: "Device.device-name";
|
|
4
|
+
readonly Identifier: "Device.identifier";
|
|
5
|
+
readonly Location: "Device.location";
|
|
6
|
+
readonly Manufacturer: "Device.manufacturer";
|
|
7
|
+
readonly Model: "Device.model";
|
|
8
|
+
readonly Organization: "Device.organization";
|
|
9
|
+
readonly Patient: "Device.patient";
|
|
10
|
+
readonly SerialNumber: "Device.serial-number";
|
|
11
|
+
readonly Status: "Device.status";
|
|
12
|
+
readonly Type: "Device.type";
|
|
13
|
+
readonly UdiCarrier: "Device.udi-carrier";
|
|
14
|
+
readonly Url: "Device.url";
|
|
15
|
+
readonly Note: "Device.note";
|
|
16
|
+
};
|
|
17
|
+
export type DeviceClaimKey = typeof DeviceClaim[keyof typeof DeviceClaim];
|
|
18
|
+
export declare const DeviceClaimSpecs: ClaimSpec[];
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
// Copyright 2026 Conéctate Soluciones y Aplicaciones SL under the Apache License, Version 2.0.
|
|
2
|
+
// File: src/models/interoperable-claims/device-claims.ts
|
|
3
|
+
export const DeviceClaim = {
|
|
4
|
+
DeviceName: 'Device.device-name',
|
|
5
|
+
Identifier: 'Device.identifier',
|
|
6
|
+
Location: 'Device.location',
|
|
7
|
+
Manufacturer: 'Device.manufacturer',
|
|
8
|
+
Model: 'Device.model',
|
|
9
|
+
Organization: 'Device.organization',
|
|
10
|
+
Patient: 'Device.patient',
|
|
11
|
+
SerialNumber: 'Device.serial-number',
|
|
12
|
+
Status: 'Device.status',
|
|
13
|
+
Type: 'Device.type',
|
|
14
|
+
UdiCarrier: 'Device.udi-carrier',
|
|
15
|
+
Url: 'Device.url',
|
|
16
|
+
Note: 'Device.note',
|
|
17
|
+
};
|
|
18
|
+
export const DeviceClaimSpecs = [
|
|
19
|
+
{ key: DeviceClaim.DeviceName, meaning: 'Human-readable device name.', example: 'Insulin pump' },
|
|
20
|
+
{ key: DeviceClaim.Identifier, meaning: 'Business identifier.', example: 'device-001' },
|
|
21
|
+
{ key: DeviceClaim.Location, meaning: 'Location reference.', example: 'Location/loc-1' },
|
|
22
|
+
{ key: DeviceClaim.Manufacturer, meaning: 'Manufacturer name.', example: 'Medtronic' },
|
|
23
|
+
{ key: DeviceClaim.Model, meaning: 'Model number or name.', example: 'MiniMed 780G' },
|
|
24
|
+
{ key: DeviceClaim.Organization, meaning: 'Owning organization reference.', example: 'Organization/org-1' },
|
|
25
|
+
{ key: DeviceClaim.Patient, meaning: 'Patient reference.', example: 'did:web:patient.example.org' },
|
|
26
|
+
{ key: DeviceClaim.SerialNumber, meaning: 'Serial number.', example: 'SN-12345' },
|
|
27
|
+
{ key: DeviceClaim.Status, meaning: 'Device status.', example: 'active' },
|
|
28
|
+
{ key: DeviceClaim.Type, meaning: 'Device type token.', example: 'http://snomed.info/sct|706172005' },
|
|
29
|
+
{ key: DeviceClaim.UdiCarrier, meaning: 'UDI carrier string.', example: '(01)09504000059118(17)220101(10)ABCD1234' },
|
|
30
|
+
{ key: DeviceClaim.Url, meaning: 'Canonical URL.', example: 'https://device.example.org/catalogue/123' },
|
|
31
|
+
{ key: DeviceClaim.Note, meaning: 'Clinical note text.', example: 'Patient-owned continuous glucose monitor.' },
|
|
32
|
+
];
|
|
@@ -21,7 +21,7 @@ export declare const DiagnosticReportClaim: {
|
|
|
21
21
|
};
|
|
22
22
|
/**
|
|
23
23
|
* TODO(ips-next):
|
|
24
|
-
* Add resource-level claim helpers in `src/utils/diagnostic-report
|
|
24
|
+
* Add resource-level claim helpers in `src/utils/claims-helpers-diagnostic-report.ts`
|
|
25
25
|
* following the same contract already used by Consent/Medication/Condition/Allergy:
|
|
26
26
|
* - `getDiagnosticReportClaimList(...)`
|
|
27
27
|
* - `setDiagnosticReportClaimList(...)`
|
|
@@ -90,7 +90,7 @@ export declare const DiagnosticReportSearchParamToClaimKey: Record<DiagnosticRep
|
|
|
90
90
|
* `contained-documents`.
|
|
91
91
|
*
|
|
92
92
|
* Keep `DiagnosticReport` paused at the typing/mapping layer until:
|
|
93
|
-
* 1. `diagnostic-report
|
|
93
|
+
* 1. `claims-helpers-diagnostic-report.ts` exists
|
|
94
94
|
* 2. `CommunicationBundleSession.upsertActiveDiagnosticReportEntry(...)` exists
|
|
95
95
|
* 3. GW Core readers/tests consume the same shared claim keys
|
|
96
96
|
*/
|
|
@@ -99,7 +99,7 @@ export const DiagnosticReportSearchParamToClaimKey = {
|
|
|
99
99
|
* `contained-documents`.
|
|
100
100
|
*
|
|
101
101
|
* Keep `DiagnosticReport` paused at the typing/mapping layer until:
|
|
102
|
-
* 1. `diagnostic-report
|
|
102
|
+
* 1. `claims-helpers-diagnostic-report.ts` exists
|
|
103
103
|
* 2. `CommunicationBundleSession.upsertActiveDiagnosticReportEntry(...)` exists
|
|
104
104
|
* 3. GW Core readers/tests consume the same shared claim keys
|
|
105
105
|
*/
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { ClaimSpec } from './types';
|
|
2
|
+
export declare const EncounterClaim: {
|
|
3
|
+
readonly Identifier: "Encounter.identifier";
|
|
4
|
+
readonly Status: "Encounter.status";
|
|
5
|
+
readonly Class: "Encounter.class";
|
|
6
|
+
readonly Type: "Encounter.type";
|
|
7
|
+
readonly Subject: "Encounter.subject";
|
|
8
|
+
readonly Patient: "Encounter.patient";
|
|
9
|
+
readonly Participant: "Encounter.participant";
|
|
10
|
+
readonly ServiceProvider: "Encounter.service-provider";
|
|
11
|
+
readonly PeriodStart: "Encounter.period-start";
|
|
12
|
+
readonly PeriodEnd: "Encounter.period-end";
|
|
13
|
+
readonly ReasonCode: "Encounter.reason-code";
|
|
14
|
+
readonly Diagnosis: "Encounter.diagnosis";
|
|
15
|
+
readonly Location: "Encounter.location";
|
|
16
|
+
};
|
|
17
|
+
export type EncounterClaimKey = typeof EncounterClaim[keyof typeof EncounterClaim];
|
|
18
|
+
export declare const EncounterClaimSpecs: ClaimSpec[];
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
// Copyright 2026 Conéctate Soluciones y Aplicaciones SL under the Apache License, Version 2.0.
|
|
2
|
+
// File: src/models/interoperable-claims/encounter-claims.ts
|
|
3
|
+
export const EncounterClaim = {
|
|
4
|
+
Identifier: 'Encounter.identifier',
|
|
5
|
+
Status: 'Encounter.status',
|
|
6
|
+
Class: 'Encounter.class',
|
|
7
|
+
Type: 'Encounter.type',
|
|
8
|
+
Subject: 'Encounter.subject',
|
|
9
|
+
Patient: 'Encounter.patient',
|
|
10
|
+
Participant: 'Encounter.participant',
|
|
11
|
+
ServiceProvider: 'Encounter.service-provider',
|
|
12
|
+
PeriodStart: 'Encounter.period-start',
|
|
13
|
+
PeriodEnd: 'Encounter.period-end',
|
|
14
|
+
ReasonCode: 'Encounter.reason-code',
|
|
15
|
+
Diagnosis: 'Encounter.diagnosis',
|
|
16
|
+
Location: 'Encounter.location',
|
|
17
|
+
};
|
|
18
|
+
export const EncounterClaimSpecs = [
|
|
19
|
+
{ key: EncounterClaim.Identifier, meaning: 'Business identifier.', example: 'enc-001' },
|
|
20
|
+
{ key: EncounterClaim.Status, meaning: 'Encounter status.', example: 'finished' },
|
|
21
|
+
{ key: EncounterClaim.Class, meaning: 'Encounter class token.', example: 'http://terminology.hl7.org/CodeSystem/v3-ActCode|AMB' },
|
|
22
|
+
{ key: EncounterClaim.Type, meaning: 'Encounter type token.', example: 'http://snomed.info/sct|185349003' },
|
|
23
|
+
{ key: EncounterClaim.Subject, meaning: 'Canonical subject reference.', example: 'did:web:patient.example.org' },
|
|
24
|
+
{ key: EncounterClaim.Patient, meaning: 'Patient alias reference.', example: 'did:web:patient.example.org' },
|
|
25
|
+
{ key: EncounterClaim.Participant, meaning: 'Participant references (CSV).', example: 'Practitioner/prac-1' },
|
|
26
|
+
{ key: EncounterClaim.ServiceProvider, meaning: 'Service provider reference.', example: 'Organization/org-1' },
|
|
27
|
+
{ key: EncounterClaim.PeriodStart, meaning: 'Encounter start.', example: '2026-06-01T10:00:00Z' },
|
|
28
|
+
{ key: EncounterClaim.PeriodEnd, meaning: 'Encounter end.', example: '2026-06-01T10:30:00Z' },
|
|
29
|
+
{ key: EncounterClaim.ReasonCode, meaning: 'Reason code token.', example: 'http://snomed.info/sct|65363002' },
|
|
30
|
+
{ key: EncounterClaim.Diagnosis, meaning: 'Diagnosis references (CSV).', example: 'Condition/cond-1' },
|
|
31
|
+
{ key: EncounterClaim.Location, meaning: 'Location references (CSV).', example: 'Location/loc-1' },
|
|
32
|
+
];
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { ClaimSpec } from './types';
|
|
2
|
+
export declare const FlagClaim: {
|
|
3
|
+
readonly Author: "Flag.author";
|
|
4
|
+
readonly Date: "Flag.date";
|
|
5
|
+
readonly Encounter: "Flag.encounter";
|
|
6
|
+
readonly Identifier: "Flag.identifier";
|
|
7
|
+
readonly Patient: "Flag.patient";
|
|
8
|
+
readonly Subject: "Flag.subject";
|
|
9
|
+
readonly Status: "Flag.status";
|
|
10
|
+
readonly Category: "Flag.category";
|
|
11
|
+
readonly Code: "Flag.code";
|
|
12
|
+
readonly PeriodStart: "Flag.period-start";
|
|
13
|
+
readonly PeriodEnd: "Flag.period-end";
|
|
14
|
+
};
|
|
15
|
+
export type FlagClaimKey = typeof FlagClaim[keyof typeof FlagClaim];
|
|
16
|
+
export declare const FlagClaimSpecs: ClaimSpec[];
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
// Copyright 2026 Conéctate Soluciones y Aplicaciones SL under the Apache License, Version 2.0.
|
|
2
|
+
// File: src/models/interoperable-claims/flag-claims.ts
|
|
3
|
+
export const FlagClaim = {
|
|
4
|
+
Author: 'Flag.author',
|
|
5
|
+
Date: 'Flag.date',
|
|
6
|
+
Encounter: 'Flag.encounter',
|
|
7
|
+
Identifier: 'Flag.identifier',
|
|
8
|
+
Patient: 'Flag.patient',
|
|
9
|
+
Subject: 'Flag.subject',
|
|
10
|
+
Status: 'Flag.status',
|
|
11
|
+
Category: 'Flag.category',
|
|
12
|
+
Code: 'Flag.code',
|
|
13
|
+
PeriodStart: 'Flag.period-start',
|
|
14
|
+
PeriodEnd: 'Flag.period-end',
|
|
15
|
+
};
|
|
16
|
+
export const FlagClaimSpecs = [
|
|
17
|
+
{ key: FlagClaim.Author, meaning: 'Author reference.', example: 'Practitioner/prac-1' },
|
|
18
|
+
{ key: FlagClaim.Date, meaning: 'Flag issue date/time.', example: '2026-06-01T10:00:00Z' },
|
|
19
|
+
{ key: FlagClaim.Encounter, meaning: 'Encounter reference.', example: 'Encounter/enc-1' },
|
|
20
|
+
{ key: FlagClaim.Identifier, meaning: 'Business identifier.', example: 'flag-001' },
|
|
21
|
+
{ key: FlagClaim.Patient, meaning: 'Patient reference.', example: 'did:web:patient.example.org' },
|
|
22
|
+
{ key: FlagClaim.Subject, meaning: 'Canonical subject reference.', example: 'did:web:patient.example.org' },
|
|
23
|
+
{ key: FlagClaim.Status, meaning: 'Flag status.', example: 'active' },
|
|
24
|
+
{ key: FlagClaim.Category, meaning: 'Flag category token.', example: 'http://terminology.hl7.org/CodeSystem/flag-category|safety' },
|
|
25
|
+
{ key: FlagClaim.Code, meaning: 'Flag code token.', example: 'http://loinc.org|104605-1' },
|
|
26
|
+
{ key: FlagClaim.PeriodStart, meaning: 'Flag period start.', example: '2026-06-01T10:00:00Z' },
|
|
27
|
+
{ key: FlagClaim.PeriodEnd, meaning: 'Flag period end.', example: '2026-07-01T10:00:00Z' },
|
|
28
|
+
];
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { ClaimSpec } from './types';
|
|
2
|
+
export declare const ImmunizationClaim: {
|
|
3
|
+
readonly Date: "Immunization.date";
|
|
4
|
+
readonly Identifier: "Immunization.identifier";
|
|
5
|
+
readonly Location: "Immunization.location";
|
|
6
|
+
readonly LotNumber: "Immunization.lot-number";
|
|
7
|
+
readonly Manufacturer: "Immunization.manufacturer";
|
|
8
|
+
readonly Patient: "Immunization.patient";
|
|
9
|
+
readonly Performer: "Immunization.performer";
|
|
10
|
+
readonly ReactionDate: "Immunization.reaction-date";
|
|
11
|
+
readonly ReasonCode: "Immunization.reason-code";
|
|
12
|
+
readonly ReasonReference: "Immunization.reason-reference";
|
|
13
|
+
readonly Series: "Immunization.series";
|
|
14
|
+
readonly Status: "Immunization.status";
|
|
15
|
+
readonly StatusReason: "Immunization.status-reason";
|
|
16
|
+
readonly TargetDisease: "Immunization.target-disease";
|
|
17
|
+
readonly VaccineCode: "Immunization.vaccine-code";
|
|
18
|
+
readonly DoseSequence: "Immunization.dose-sequence";
|
|
19
|
+
readonly Subject: "Immunization.subject";
|
|
20
|
+
readonly Note: "Immunization.note";
|
|
21
|
+
};
|
|
22
|
+
export type ImmunizationClaimKey = typeof ImmunizationClaim[keyof typeof ImmunizationClaim];
|
|
23
|
+
export declare const ImmunizationClaimSpecs: ClaimSpec[];
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
// Copyright 2026 Conéctate Soluciones y Aplicaciones SL under the Apache License, Version 2.0.
|
|
2
|
+
// File: src/models/interoperable-claims/immunization-claims.ts
|
|
3
|
+
export const ImmunizationClaim = {
|
|
4
|
+
Date: 'Immunization.date',
|
|
5
|
+
Identifier: 'Immunization.identifier',
|
|
6
|
+
Location: 'Immunization.location',
|
|
7
|
+
LotNumber: 'Immunization.lot-number',
|
|
8
|
+
Manufacturer: 'Immunization.manufacturer',
|
|
9
|
+
Patient: 'Immunization.patient',
|
|
10
|
+
Performer: 'Immunization.performer',
|
|
11
|
+
ReactionDate: 'Immunization.reaction-date',
|
|
12
|
+
ReasonCode: 'Immunization.reason-code',
|
|
13
|
+
ReasonReference: 'Immunization.reason-reference',
|
|
14
|
+
Series: 'Immunization.series',
|
|
15
|
+
Status: 'Immunization.status',
|
|
16
|
+
StatusReason: 'Immunization.status-reason',
|
|
17
|
+
TargetDisease: 'Immunization.target-disease',
|
|
18
|
+
VaccineCode: 'Immunization.vaccine-code',
|
|
19
|
+
DoseSequence: 'Immunization.dose-sequence',
|
|
20
|
+
Subject: 'Immunization.subject',
|
|
21
|
+
Note: 'Immunization.note',
|
|
22
|
+
};
|
|
23
|
+
export const ImmunizationClaimSpecs = [
|
|
24
|
+
{ key: ImmunizationClaim.Date, meaning: 'Administration date/time.', example: '2026-06-01T10:00:00Z' },
|
|
25
|
+
{ key: ImmunizationClaim.Identifier, meaning: 'Business identifier.', example: 'imm-001' },
|
|
26
|
+
{ key: ImmunizationClaim.Location, meaning: 'Location reference.', example: 'Location/loc-1' },
|
|
27
|
+
{ key: ImmunizationClaim.LotNumber, meaning: 'Vaccine lot number.', example: 'LOT-2026-01' },
|
|
28
|
+
{ key: ImmunizationClaim.Manufacturer, meaning: 'Manufacturer reference.', example: 'Organization/org-vax' },
|
|
29
|
+
{ key: ImmunizationClaim.Patient, meaning: 'Patient reference.', example: 'did:web:patient.example.org' },
|
|
30
|
+
{ key: ImmunizationClaim.Performer, meaning: 'Performer references (CSV).', example: 'Practitioner/prac-1' },
|
|
31
|
+
{ key: ImmunizationClaim.ReactionDate, meaning: 'Reaction date/time.', example: '2026-06-02T08:00:00Z' },
|
|
32
|
+
{ key: ImmunizationClaim.ReasonCode, meaning: 'Reason code token.', example: 'http://snomed.info/sct|281647001' },
|
|
33
|
+
{ key: ImmunizationClaim.ReasonReference, meaning: 'Reason reference.', example: 'Condition/cond-1' },
|
|
34
|
+
{ key: ImmunizationClaim.Series, meaning: 'Vaccination series.', example: 'COVID primary series' },
|
|
35
|
+
{ key: ImmunizationClaim.Status, meaning: 'Immunization status.', example: 'completed' },
|
|
36
|
+
{ key: ImmunizationClaim.StatusReason, meaning: 'Status reason token.', example: 'http://terminology.hl7.org/CodeSystem/immunization-status-reason|expired' },
|
|
37
|
+
{ key: ImmunizationClaim.TargetDisease, meaning: 'Target disease token.', example: 'http://snomed.info/sct|840539006' },
|
|
38
|
+
{ key: ImmunizationClaim.VaccineCode, meaning: 'Vaccine code token.', example: 'http://hl7.org/fhir/sid/cvx|207' },
|
|
39
|
+
{ key: ImmunizationClaim.DoseSequence, meaning: 'Dose sequence string.', example: '2' },
|
|
40
|
+
{ key: ImmunizationClaim.Subject, meaning: 'Canonical subject reference.', example: 'did:web:patient.example.org' },
|
|
41
|
+
{ key: ImmunizationClaim.Note, meaning: 'Clinical note text.', example: 'No adverse reaction recorded.' },
|
|
42
|
+
];
|
|
@@ -3,10 +3,22 @@ export * from './composition-claims';
|
|
|
3
3
|
export * from './communication-claims';
|
|
4
4
|
export * from './document-reference-claims';
|
|
5
5
|
export * from './diagnostic-report-claims';
|
|
6
|
+
export * from './location-claims';
|
|
6
7
|
export * from './medication-statement-claims';
|
|
7
8
|
export * from './allergy-intolerance-claims';
|
|
8
9
|
export * from './condition-claims';
|
|
10
|
+
export * from './organization-claims';
|
|
9
11
|
export * from './device-use-statement-claims';
|
|
12
|
+
export * from './device-claims';
|
|
13
|
+
export * from './observation-claims';
|
|
14
|
+
export * from './immunization-claims';
|
|
15
|
+
export * from './procedure-claims';
|
|
16
|
+
export * from './care-plan-claims';
|
|
17
|
+
export * from './flag-claims';
|
|
10
18
|
export * from './appointment-claims';
|
|
11
19
|
export * from './appointment-response-claims';
|
|
20
|
+
export * from './encounter-claims';
|
|
21
|
+
export * from './related-person-claims';
|
|
22
|
+
export * from './coverage-claims';
|
|
23
|
+
export * from './clinical-impression-claims';
|
|
12
24
|
export * from './task-claims';
|
|
@@ -5,10 +5,22 @@ export * from './composition-claims.js';
|
|
|
5
5
|
export * from './communication-claims.js';
|
|
6
6
|
export * from './document-reference-claims.js';
|
|
7
7
|
export * from './diagnostic-report-claims.js';
|
|
8
|
+
export * from './location-claims.js';
|
|
8
9
|
export * from './medication-statement-claims.js';
|
|
9
10
|
export * from './allergy-intolerance-claims.js';
|
|
10
11
|
export * from './condition-claims.js';
|
|
12
|
+
export * from './organization-claims.js';
|
|
11
13
|
export * from './device-use-statement-claims.js';
|
|
14
|
+
export * from './device-claims.js';
|
|
15
|
+
export * from './observation-claims.js';
|
|
16
|
+
export * from './immunization-claims.js';
|
|
17
|
+
export * from './procedure-claims.js';
|
|
18
|
+
export * from './care-plan-claims.js';
|
|
19
|
+
export * from './flag-claims.js';
|
|
12
20
|
export * from './appointment-claims.js';
|
|
13
21
|
export * from './appointment-response-claims.js';
|
|
22
|
+
export * from './encounter-claims.js';
|
|
23
|
+
export * from './related-person-claims.js';
|
|
24
|
+
export * from './coverage-claims.js';
|
|
25
|
+
export * from './clinical-impression-claims.js';
|
|
14
26
|
export * from './task-claims.js';
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ClaimSpec } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Flat claim keys for `Location`.
|
|
4
|
+
*
|
|
5
|
+
* Use this resource for offices, consultation rooms, clinics, labs, or other
|
|
6
|
+
* service/physical locations.
|
|
7
|
+
*/
|
|
8
|
+
export declare const LocationClaim: {
|
|
9
|
+
readonly Identifier: "Location.identifier";
|
|
10
|
+
readonly Status: "Location.status";
|
|
11
|
+
readonly Name: "Location.name";
|
|
12
|
+
readonly Description: "Location.description";
|
|
13
|
+
readonly Type: "Location.type";
|
|
14
|
+
readonly Mode: "Location.mode";
|
|
15
|
+
readonly Telecom: "Location.telecom";
|
|
16
|
+
readonly Address: "Location.address";
|
|
17
|
+
readonly PhysicalType: "Location.physical-type";
|
|
18
|
+
readonly ManagingOrganization: "Location.managing-organization";
|
|
19
|
+
readonly PartOf: "Location.part-of";
|
|
20
|
+
};
|
|
21
|
+
export type LocationClaimKey = typeof LocationClaim[keyof typeof LocationClaim];
|
|
22
|
+
export declare const LocationClaimSpecs: ClaimSpec[];
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
// Copyright 2026 Conéctate Soluciones y Aplicaciones SL under the Apache License, Version 2.0.
|
|
2
|
+
// File: src/models/interoperable-claims/location-claims.ts
|
|
3
|
+
/**
|
|
4
|
+
* Flat claim keys for `Location`.
|
|
5
|
+
*
|
|
6
|
+
* Use this resource for offices, consultation rooms, clinics, labs, or other
|
|
7
|
+
* service/physical locations.
|
|
8
|
+
*/
|
|
9
|
+
export const LocationClaim = {
|
|
10
|
+
Identifier: 'Location.identifier',
|
|
11
|
+
Status: 'Location.status',
|
|
12
|
+
Name: 'Location.name',
|
|
13
|
+
Description: 'Location.description',
|
|
14
|
+
Type: 'Location.type',
|
|
15
|
+
Mode: 'Location.mode',
|
|
16
|
+
Telecom: 'Location.telecom',
|
|
17
|
+
Address: 'Location.address',
|
|
18
|
+
PhysicalType: 'Location.physical-type',
|
|
19
|
+
ManagingOrganization: 'Location.managing-organization',
|
|
20
|
+
PartOf: 'Location.part-of',
|
|
21
|
+
};
|
|
22
|
+
export const LocationClaimSpecs = [
|
|
23
|
+
{ key: LocationClaim.Identifier, meaning: 'Business identifier.', example: 'room-201' },
|
|
24
|
+
{ key: LocationClaim.Status, meaning: 'Location status.', example: 'active' },
|
|
25
|
+
{ key: LocationClaim.Name, meaning: 'Display name.', example: 'Consultation Room 201' },
|
|
26
|
+
{ key: LocationClaim.Description, meaning: 'Narrative description.', example: 'Second floor consultation room' },
|
|
27
|
+
{ key: LocationClaim.Type, meaning: 'Location type token.', example: 'http://terminology.hl7.org/CodeSystem/v3-RoleCode|OF' },
|
|
28
|
+
{ key: LocationClaim.Mode, meaning: 'Location mode.', example: 'instance' },
|
|
29
|
+
{ key: LocationClaim.Telecom, meaning: 'Contact values as CSV.', example: 'tel:+16045550102' },
|
|
30
|
+
{ key: LocationClaim.Address, meaning: 'Display address.', example: '123 Main St, Vancouver' },
|
|
31
|
+
{ key: LocationClaim.PhysicalType, meaning: 'Physical type token.', example: 'http://terminology.hl7.org/CodeSystem/location-physical-type|ro' },
|
|
32
|
+
{ key: LocationClaim.ManagingOrganization, meaning: 'Managing organization reference.', example: 'Organization/dept-cardiology-001' },
|
|
33
|
+
{ key: LocationClaim.PartOf, meaning: 'Parent location reference.', example: 'Location/building-a' },
|
|
34
|
+
];
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { ClaimSpec } from './types';
|
|
2
|
+
export declare const ObservationClaim: {
|
|
3
|
+
readonly BasedOn: "Observation.based-on";
|
|
4
|
+
readonly Category: "Observation.category";
|
|
5
|
+
readonly Code: "Observation.code";
|
|
6
|
+
readonly Date: "Observation.date";
|
|
7
|
+
readonly Device: "Observation.device";
|
|
8
|
+
readonly Encounter: "Observation.encounter";
|
|
9
|
+
readonly Focus: "Observation.focus";
|
|
10
|
+
readonly HasMember: "Observation.has-member";
|
|
11
|
+
readonly Identifier: "Observation.identifier";
|
|
12
|
+
readonly Method: "Observation.method";
|
|
13
|
+
readonly Patient: "Observation.patient";
|
|
14
|
+
readonly Performer: "Observation.performer";
|
|
15
|
+
readonly Specimen: "Observation.specimen";
|
|
16
|
+
readonly Status: "Observation.status";
|
|
17
|
+
readonly Subject: "Observation.subject";
|
|
18
|
+
readonly ValueConcept: "Observation.value-concept";
|
|
19
|
+
readonly ValueDate: "Observation.value-date";
|
|
20
|
+
readonly ValueString: "Observation.value-string";
|
|
21
|
+
readonly ComponentCode: "Observation.component-code";
|
|
22
|
+
readonly Note: "Observation.note";
|
|
23
|
+
readonly EffectiveDateTime: "Observation.effectiveDateTime";
|
|
24
|
+
};
|
|
25
|
+
export type ObservationClaimKey = typeof ObservationClaim[keyof typeof ObservationClaim];
|
|
26
|
+
export declare const ObservationClaimSpecs: ClaimSpec[];
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
// Copyright 2026 Conéctate Soluciones y Aplicaciones SL under the Apache License, Version 2.0.
|
|
2
|
+
// File: src/models/interoperable-claims/observation-claims.ts
|
|
3
|
+
export const ObservationClaim = {
|
|
4
|
+
BasedOn: 'Observation.based-on',
|
|
5
|
+
Category: 'Observation.category',
|
|
6
|
+
Code: 'Observation.code',
|
|
7
|
+
Date: 'Observation.date',
|
|
8
|
+
Device: 'Observation.device',
|
|
9
|
+
Encounter: 'Observation.encounter',
|
|
10
|
+
Focus: 'Observation.focus',
|
|
11
|
+
HasMember: 'Observation.has-member',
|
|
12
|
+
Identifier: 'Observation.identifier',
|
|
13
|
+
Method: 'Observation.method',
|
|
14
|
+
Patient: 'Observation.patient',
|
|
15
|
+
Performer: 'Observation.performer',
|
|
16
|
+
Specimen: 'Observation.specimen',
|
|
17
|
+
Status: 'Observation.status',
|
|
18
|
+
Subject: 'Observation.subject',
|
|
19
|
+
ValueConcept: 'Observation.value-concept',
|
|
20
|
+
ValueDate: 'Observation.value-date',
|
|
21
|
+
ValueString: 'Observation.value-string',
|
|
22
|
+
ComponentCode: 'Observation.component-code',
|
|
23
|
+
Note: 'Observation.note',
|
|
24
|
+
EffectiveDateTime: 'Observation.effectiveDateTime',
|
|
25
|
+
};
|
|
26
|
+
export const ObservationClaimSpecs = [
|
|
27
|
+
{ key: ObservationClaim.BasedOn, meaning: 'Order or request that originated the observation.', example: 'ServiceRequest/sr-1' },
|
|
28
|
+
{ key: ObservationClaim.Category, meaning: 'Observation category token.', example: 'http://terminology.hl7.org/CodeSystem/observation-category|vital-signs' },
|
|
29
|
+
{ key: ObservationClaim.Code, meaning: 'Observation code token.', example: 'http://loinc.org|8480-6' },
|
|
30
|
+
{ key: ObservationClaim.Date, meaning: 'Observation effective or issued date/time.', example: '2026-06-01T10:00:00Z' },
|
|
31
|
+
{ key: ObservationClaim.Device, meaning: 'Device reference.', example: 'Device/dev-1' },
|
|
32
|
+
{ key: ObservationClaim.Encounter, meaning: 'Encounter reference.', example: 'Encounter/enc-1' },
|
|
33
|
+
{ key: ObservationClaim.Focus, meaning: 'Focus reference.', example: 'Condition/cond-1' },
|
|
34
|
+
{ key: ObservationClaim.HasMember, meaning: 'Member observation references (CSV).', example: 'Observation/obs-2,Observation/obs-3' },
|
|
35
|
+
{ key: ObservationClaim.Identifier, meaning: 'Business identifier.', example: 'obs-001' },
|
|
36
|
+
{ key: ObservationClaim.Method, meaning: 'Observation method token.', example: 'http://snomed.info/sct|252465000' },
|
|
37
|
+
{ key: ObservationClaim.Patient, meaning: 'Patient reference.', example: 'did:web:patient.example.org' },
|
|
38
|
+
{ key: ObservationClaim.Performer, meaning: 'Performer references (CSV).', example: 'Practitioner/prac-1' },
|
|
39
|
+
{ key: ObservationClaim.Specimen, meaning: 'Specimen reference.', example: 'Specimen/spec-1' },
|
|
40
|
+
{ key: ObservationClaim.Status, meaning: 'Observation status.', example: 'final' },
|
|
41
|
+
{ key: ObservationClaim.Subject, meaning: 'Canonical subject reference.', example: 'did:web:patient.example.org' },
|
|
42
|
+
{ key: ObservationClaim.ValueConcept, meaning: 'Value concept token.', example: 'http://snomed.info/sct|373066001' },
|
|
43
|
+
{ key: ObservationClaim.ValueDate, meaning: 'Value date.', example: '2026-06-01' },
|
|
44
|
+
{ key: ObservationClaim.ValueString, meaning: 'Value string.', example: 'Former smoker' },
|
|
45
|
+
{ key: ObservationClaim.ComponentCode, meaning: 'Component code token.', example: 'http://loinc.org|8462-4' },
|
|
46
|
+
{ key: ObservationClaim.Note, meaning: 'Clinical note text.', example: 'Patient seated for 5 minutes before measurement.' },
|
|
47
|
+
{ key: ObservationClaim.EffectiveDateTime, meaning: 'FHIR-compatible effectiveDateTime fallback.', example: '2026-06-01T10:00:00Z' },
|
|
48
|
+
];
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { ClaimSpec } from './types';
|
|
2
|
+
/**
|
|
3
|
+
* Flat claim keys for `Organization`.
|
|
4
|
+
*
|
|
5
|
+
* Use this resource for departments, services, clinics, or legal entities.
|
|
6
|
+
*/
|
|
7
|
+
export declare const OrganizationClaim: {
|
|
8
|
+
readonly Identifier: "Organization.identifier";
|
|
9
|
+
readonly Active: "Organization.active";
|
|
10
|
+
readonly Type: "Organization.type";
|
|
11
|
+
readonly Name: "Organization.name";
|
|
12
|
+
readonly Alias: "Organization.alias";
|
|
13
|
+
readonly PartOf: "Organization.part-of";
|
|
14
|
+
readonly Telecom: "Organization.telecom";
|
|
15
|
+
readonly Address: "Organization.address";
|
|
16
|
+
};
|
|
17
|
+
export type OrganizationClaimKey = typeof OrganizationClaim[keyof typeof OrganizationClaim];
|
|
18
|
+
export declare const OrganizationClaimSpecs: ClaimSpec[];
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
// Copyright 2026 Conéctate Soluciones y Aplicaciones SL under the Apache License, Version 2.0.
|
|
2
|
+
// File: src/models/interoperable-claims/organization-claims.ts
|
|
3
|
+
/**
|
|
4
|
+
* Flat claim keys for `Organization`.
|
|
5
|
+
*
|
|
6
|
+
* Use this resource for departments, services, clinics, or legal entities.
|
|
7
|
+
*/
|
|
8
|
+
export const OrganizationClaim = {
|
|
9
|
+
Identifier: 'Organization.identifier',
|
|
10
|
+
Active: 'Organization.active',
|
|
11
|
+
Type: 'Organization.type',
|
|
12
|
+
Name: 'Organization.name',
|
|
13
|
+
Alias: 'Organization.alias',
|
|
14
|
+
PartOf: 'Organization.part-of',
|
|
15
|
+
Telecom: 'Organization.telecom',
|
|
16
|
+
Address: 'Organization.address',
|
|
17
|
+
};
|
|
18
|
+
export const OrganizationClaimSpecs = [
|
|
19
|
+
{ key: OrganizationClaim.Identifier, meaning: 'Business identifier.', example: 'dept-cardiology-001' },
|
|
20
|
+
{ key: OrganizationClaim.Active, meaning: 'Active flag.', example: 'true' },
|
|
21
|
+
{ key: OrganizationClaim.Type, meaning: 'Organization type token.', example: 'http://terminology.hl7.org/CodeSystem/organization-type|dept' },
|
|
22
|
+
{ key: OrganizationClaim.Name, meaning: 'Display name.', example: 'Cardiology Department' },
|
|
23
|
+
{ key: OrganizationClaim.Alias, meaning: 'Alternate names as CSV.', example: 'Cardiology,Heart Clinic' },
|
|
24
|
+
{ key: OrganizationClaim.PartOf, meaning: 'Parent organization reference.', example: 'Organization/hospital-1' },
|
|
25
|
+
{ key: OrganizationClaim.Telecom, meaning: 'Contact values as CSV.', example: 'tel:+16045550101,mailto:cardiology@example.org' },
|
|
26
|
+
{ key: OrganizationClaim.Address, meaning: 'Display address.', example: '123 Main St, Vancouver' },
|
|
27
|
+
];
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import type { ClaimSpec } from './types';
|
|
2
|
+
export declare const ProcedureClaim: {
|
|
3
|
+
readonly BasedOn: "Procedure.based-on";
|
|
4
|
+
readonly BodySite: "Procedure.body-site";
|
|
5
|
+
readonly Code: "Procedure.code";
|
|
6
|
+
readonly Date: "Procedure.date";
|
|
7
|
+
readonly Encounter: "Procedure.encounter";
|
|
8
|
+
readonly Identifier: "Procedure.identifier";
|
|
9
|
+
readonly InstantiatesCanonical: "Procedure.instantiates-canonical";
|
|
10
|
+
readonly InstantiatesUri: "Procedure.instantiates-uri";
|
|
11
|
+
readonly Location: "Procedure.location";
|
|
12
|
+
readonly PartOf: "Procedure.part-of";
|
|
13
|
+
readonly Patient: "Procedure.patient";
|
|
14
|
+
readonly Performer: "Procedure.performer";
|
|
15
|
+
readonly ReasonCode: "Procedure.reason-code";
|
|
16
|
+
readonly ReasonReference: "Procedure.reason-reference";
|
|
17
|
+
readonly Status: "Procedure.status";
|
|
18
|
+
readonly Subject: "Procedure.subject";
|
|
19
|
+
readonly Note: "Procedure.note";
|
|
20
|
+
};
|
|
21
|
+
export type ProcedureClaimKey = typeof ProcedureClaim[keyof typeof ProcedureClaim];
|
|
22
|
+
export declare const ProcedureClaimSpecs: ClaimSpec[];
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
// Copyright 2026 Conéctate Soluciones y Aplicaciones SL under the Apache License, Version 2.0.
|
|
2
|
+
// File: src/models/interoperable-claims/procedure-claims.ts
|
|
3
|
+
export const ProcedureClaim = {
|
|
4
|
+
BasedOn: 'Procedure.based-on',
|
|
5
|
+
BodySite: 'Procedure.body-site',
|
|
6
|
+
Code: 'Procedure.code',
|
|
7
|
+
Date: 'Procedure.date',
|
|
8
|
+
Encounter: 'Procedure.encounter',
|
|
9
|
+
Identifier: 'Procedure.identifier',
|
|
10
|
+
InstantiatesCanonical: 'Procedure.instantiates-canonical',
|
|
11
|
+
InstantiatesUri: 'Procedure.instantiates-uri',
|
|
12
|
+
Location: 'Procedure.location',
|
|
13
|
+
PartOf: 'Procedure.part-of',
|
|
14
|
+
Patient: 'Procedure.patient',
|
|
15
|
+
Performer: 'Procedure.performer',
|
|
16
|
+
ReasonCode: 'Procedure.reason-code',
|
|
17
|
+
ReasonReference: 'Procedure.reason-reference',
|
|
18
|
+
Status: 'Procedure.status',
|
|
19
|
+
Subject: 'Procedure.subject',
|
|
20
|
+
Note: 'Procedure.note',
|
|
21
|
+
};
|
|
22
|
+
export const ProcedureClaimSpecs = [
|
|
23
|
+
{ key: ProcedureClaim.BasedOn, meaning: 'Request or order reference.', example: 'ServiceRequest/sr-1' },
|
|
24
|
+
{ key: ProcedureClaim.BodySite, meaning: 'Body site token.', example: 'http://snomed.info/sct|66754008' },
|
|
25
|
+
{ key: ProcedureClaim.Code, meaning: 'Procedure code token.', example: 'http://snomed.info/sct|80146002' },
|
|
26
|
+
{ key: ProcedureClaim.Date, meaning: 'Performed date/time.', example: '2026-06-01T10:00:00Z' },
|
|
27
|
+
{ key: ProcedureClaim.Encounter, meaning: 'Encounter reference.', example: 'Encounter/enc-1' },
|
|
28
|
+
{ key: ProcedureClaim.Identifier, meaning: 'Business identifier.', example: 'procedure-001' },
|
|
29
|
+
{ key: ProcedureClaim.InstantiatesCanonical, meaning: 'Instantiated canonical plan/protocol.', example: 'http://example.org/PlanDefinition/appendectomy' },
|
|
30
|
+
{ key: ProcedureClaim.InstantiatesUri, meaning: 'Instantiated URI.', example: 'urn:procedure-protocol:appendectomy' },
|
|
31
|
+
{ key: ProcedureClaim.Location, meaning: 'Location reference.', example: 'Location/loc-1' },
|
|
32
|
+
{ key: ProcedureClaim.PartOf, meaning: 'Parent procedure reference.', example: 'Procedure/proc-parent' },
|
|
33
|
+
{ key: ProcedureClaim.Patient, meaning: 'Patient reference.', example: 'did:web:patient.example.org' },
|
|
34
|
+
{ key: ProcedureClaim.Performer, meaning: 'Performer references (CSV).', example: 'Practitioner/prac-1' },
|
|
35
|
+
{ key: ProcedureClaim.ReasonCode, meaning: 'Reason code token.', example: 'http://snomed.info/sct|233604007' },
|
|
36
|
+
{ key: ProcedureClaim.ReasonReference, meaning: 'Reason reference.', example: 'Condition/cond-1' },
|
|
37
|
+
{ key: ProcedureClaim.Status, meaning: 'Procedure status.', example: 'completed' },
|
|
38
|
+
{ key: ProcedureClaim.Subject, meaning: 'Canonical subject reference.', example: 'did:web:patient.example.org' },
|
|
39
|
+
{ key: ProcedureClaim.Note, meaning: 'Clinical note text.', example: 'Procedure tolerated well.' },
|
|
40
|
+
];
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ClaimSpec } from './types';
|
|
2
|
+
export declare const RelatedPersonClaim: {
|
|
3
|
+
readonly Identifier: "RelatedPerson.identifier";
|
|
4
|
+
readonly Active: "RelatedPerson.active";
|
|
5
|
+
readonly Patient: "RelatedPerson.patient";
|
|
6
|
+
readonly Relationship: "RelatedPerson.relationship";
|
|
7
|
+
readonly Name: "RelatedPerson.name";
|
|
8
|
+
readonly Telecom: "RelatedPerson.telecom";
|
|
9
|
+
readonly Gender: "RelatedPerson.gender";
|
|
10
|
+
readonly BirthDate: "RelatedPerson.birthdate";
|
|
11
|
+
readonly Address: "RelatedPerson.address";
|
|
12
|
+
};
|
|
13
|
+
export type RelatedPersonClaimKey = typeof RelatedPersonClaim[keyof typeof RelatedPersonClaim];
|
|
14
|
+
export declare const RelatedPersonClaimSpecs: ClaimSpec[];
|