@the-cascade-protocol/sdk 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (131) hide show
  1. package/LICENSE +190 -0
  2. package/README.md +164 -0
  3. package/dist/consent/consent-filter.d.ts +21 -0
  4. package/dist/consent/consent-filter.d.ts.map +1 -0
  5. package/dist/consent/consent-filter.js +71 -0
  6. package/dist/consent/consent-filter.js.map +1 -0
  7. package/dist/consent/index.d.ts +2 -0
  8. package/dist/consent/index.d.ts.map +1 -0
  9. package/dist/consent/index.js +2 -0
  10. package/dist/consent/index.js.map +1 -0
  11. package/dist/deserializer/index.d.ts +7 -0
  12. package/dist/deserializer/index.d.ts.map +1 -0
  13. package/dist/deserializer/index.js +7 -0
  14. package/dist/deserializer/index.js.map +1 -0
  15. package/dist/deserializer/turtle-parser.d.ts +47 -0
  16. package/dist/deserializer/turtle-parser.d.ts.map +1 -0
  17. package/dist/deserializer/turtle-parser.js +840 -0
  18. package/dist/deserializer/turtle-parser.js.map +1 -0
  19. package/dist/index.d.ts +42 -0
  20. package/dist/index.d.ts.map +1 -0
  21. package/dist/index.js +34 -0
  22. package/dist/index.js.map +1 -0
  23. package/dist/jsonld/context.d.ts +29 -0
  24. package/dist/jsonld/context.d.ts.map +1 -0
  25. package/dist/jsonld/context.js +95 -0
  26. package/dist/jsonld/context.js.map +1 -0
  27. package/dist/jsonld/converter.d.ts +50 -0
  28. package/dist/jsonld/converter.d.ts.map +1 -0
  29. package/dist/jsonld/converter.js +139 -0
  30. package/dist/jsonld/converter.js.map +1 -0
  31. package/dist/jsonld/index.d.ts +8 -0
  32. package/dist/jsonld/index.d.ts.map +1 -0
  33. package/dist/jsonld/index.js +8 -0
  34. package/dist/jsonld/index.js.map +1 -0
  35. package/dist/models/activity-snapshot.d.ts +49 -0
  36. package/dist/models/activity-snapshot.d.ts.map +1 -0
  37. package/dist/models/activity-snapshot.js +13 -0
  38. package/dist/models/activity-snapshot.js.map +1 -0
  39. package/dist/models/allergy.d.ts +49 -0
  40. package/dist/models/allergy.d.ts.map +1 -0
  41. package/dist/models/allergy.js +13 -0
  42. package/dist/models/allergy.js.map +1 -0
  43. package/dist/models/common.d.ts +174 -0
  44. package/dist/models/common.d.ts.map +1 -0
  45. package/dist/models/common.js +12 -0
  46. package/dist/models/common.js.map +1 -0
  47. package/dist/models/condition.d.ts +59 -0
  48. package/dist/models/condition.d.ts.map +1 -0
  49. package/dist/models/condition.js +13 -0
  50. package/dist/models/condition.js.map +1 -0
  51. package/dist/models/coverage.d.ts +117 -0
  52. package/dist/models/coverage.d.ts.map +1 -0
  53. package/dist/models/coverage.js +16 -0
  54. package/dist/models/coverage.js.map +1 -0
  55. package/dist/models/family-history.d.ts +38 -0
  56. package/dist/models/family-history.d.ts.map +1 -0
  57. package/dist/models/family-history.js +13 -0
  58. package/dist/models/family-history.js.map +1 -0
  59. package/dist/models/health-profile.d.ts +54 -0
  60. package/dist/models/health-profile.d.ts.map +1 -0
  61. package/dist/models/health-profile.js +11 -0
  62. package/dist/models/health-profile.js.map +1 -0
  63. package/dist/models/immunization.d.ts +78 -0
  64. package/dist/models/immunization.d.ts.map +1 -0
  65. package/dist/models/immunization.js +12 -0
  66. package/dist/models/immunization.js.map +1 -0
  67. package/dist/models/index.d.ts +20 -0
  68. package/dist/models/index.d.ts.map +1 -0
  69. package/dist/models/index.js +7 -0
  70. package/dist/models/index.js.map +1 -0
  71. package/dist/models/lab-result.d.ts +83 -0
  72. package/dist/models/lab-result.d.ts.map +1 -0
  73. package/dist/models/lab-result.js +12 -0
  74. package/dist/models/lab-result.js.map +1 -0
  75. package/dist/models/medication.d.ts +144 -0
  76. package/dist/models/medication.d.ts.map +1 -0
  77. package/dist/models/medication.js +13 -0
  78. package/dist/models/medication.js.map +1 -0
  79. package/dist/models/patient-profile.d.ts +171 -0
  80. package/dist/models/patient-profile.d.ts.map +1 -0
  81. package/dist/models/patient-profile.js +14 -0
  82. package/dist/models/patient-profile.js.map +1 -0
  83. package/dist/models/procedure.d.ts +53 -0
  84. package/dist/models/procedure.d.ts.map +1 -0
  85. package/dist/models/procedure.js +12 -0
  86. package/dist/models/procedure.js.map +1 -0
  87. package/dist/models/sleep-snapshot.d.ts +54 -0
  88. package/dist/models/sleep-snapshot.d.ts.map +1 -0
  89. package/dist/models/sleep-snapshot.js +13 -0
  90. package/dist/models/sleep-snapshot.js.map +1 -0
  91. package/dist/models/vital-sign.d.ts +74 -0
  92. package/dist/models/vital-sign.d.ts.map +1 -0
  93. package/dist/models/vital-sign.js +13 -0
  94. package/dist/models/vital-sign.js.map +1 -0
  95. package/dist/pod/index.d.ts +2 -0
  96. package/dist/pod/index.d.ts.map +1 -0
  97. package/dist/pod/index.js +2 -0
  98. package/dist/pod/index.js.map +1 -0
  99. package/dist/pod/pod-builder.d.ts +63 -0
  100. package/dist/pod/pod-builder.d.ts.map +1 -0
  101. package/dist/pod/pod-builder.js +245 -0
  102. package/dist/pod/pod-builder.js.map +1 -0
  103. package/dist/serializer/index.d.ts +8 -0
  104. package/dist/serializer/index.d.ts.map +1 -0
  105. package/dist/serializer/index.js +8 -0
  106. package/dist/serializer/index.js.map +1 -0
  107. package/dist/serializer/turtle-builder.d.ts +93 -0
  108. package/dist/serializer/turtle-builder.d.ts.map +1 -0
  109. package/dist/serializer/turtle-builder.js +204 -0
  110. package/dist/serializer/turtle-builder.js.map +1 -0
  111. package/dist/serializer/turtle-serializer.d.ts +66 -0
  112. package/dist/serializer/turtle-serializer.d.ts.map +1 -0
  113. package/dist/serializer/turtle-serializer.js +404 -0
  114. package/dist/serializer/turtle-serializer.js.map +1 -0
  115. package/dist/validator/index.d.ts +2 -0
  116. package/dist/validator/index.d.ts.map +1 -0
  117. package/dist/validator/index.js +2 -0
  118. package/dist/validator/index.js.map +1 -0
  119. package/dist/validator/validator.d.ts +16 -0
  120. package/dist/validator/validator.d.ts.map +1 -0
  121. package/dist/validator/validator.js +295 -0
  122. package/dist/validator/validator.js.map +1 -0
  123. package/dist/vocabularies/index.d.ts +8 -0
  124. package/dist/vocabularies/index.d.ts.map +1 -0
  125. package/dist/vocabularies/index.js +7 -0
  126. package/dist/vocabularies/index.js.map +1 -0
  127. package/dist/vocabularies/namespaces.d.ts +125 -0
  128. package/dist/vocabularies/namespaces.d.ts.map +1 -0
  129. package/dist/vocabularies/namespaces.js +361 -0
  130. package/dist/vocabularies/namespaces.js.map +1 -0
  131. package/package.json +48 -0
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Allergy data model for the Cascade Protocol.
3
+ *
4
+ * Represents an allergy or intolerance record, sourced from EHR imports
5
+ * or self-reported by the patient.
6
+ *
7
+ * RDF type: `health:AllergyRecord`
8
+ * Vocabulary: `https://ns.cascadeprotocol.org/health/v1#`
9
+ *
10
+ * @see https://cascadeprotocol.org/docs/cascade-protocol-schemas
11
+ */
12
+ export {};
13
+ //# sourceMappingURL=allergy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"allergy.js","sourceRoot":"","sources":["../../src/models/allergy.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG"}
@@ -0,0 +1,174 @@
1
+ /**
2
+ * Common types shared across all Cascade Protocol data models.
3
+ *
4
+ * These types map directly to the Cascade Protocol vocabularies:
5
+ * - cascade: https://ns.cascadeprotocol.org/core/v1#
6
+ * - health: https://ns.cascadeprotocol.org/health/v1#
7
+ * - clinical: https://ns.cascadeprotocol.org/clinical/v1#
8
+ *
9
+ * @see https://cascadeprotocol.org/docs/cascade-protocol-schemas
10
+ */
11
+ /**
12
+ * Data provenance classification indicating the source of a health record.
13
+ *
14
+ * Maps to `cascade:dataProvenance` in Turtle serialization.
15
+ *
16
+ * - `ClinicalGenerated` -- Data originating from clinical/EHR sources
17
+ * - `DeviceGenerated` -- Data from wearable or medical devices
18
+ * - `SelfReported` -- Patient-entered data
19
+ * - `AIExtracted` -- AI-extracted from existing clinical documents
20
+ * - `AIGenerated` -- AI-generated observations, analyses, or recommendations
21
+ * - `EHRVerified` -- Data verified against electronic health records
22
+ */
23
+ export type ProvenanceType = 'ClinicalGenerated' | 'DeviceGenerated' | 'SelfReported' | 'AIExtracted' | 'AIGenerated' | 'EHRVerified';
24
+ /**
25
+ * Provenance class indicating the specific import mechanism or tracking method.
26
+ *
27
+ * Maps to `clinical:provenanceClass` in Turtle serialization.
28
+ */
29
+ export type ProvenanceClass = 'healthKitFHIR' | 'userTracked' | 'manualEntry' | 'deviceSync';
30
+ /**
31
+ * Clinical status of a condition record.
32
+ *
33
+ * Maps to `health:status` in Turtle serialization.
34
+ */
35
+ export type ConditionStatus = 'active' | 'resolved' | 'remission' | 'inactive';
36
+ /**
37
+ * Severity of an allergic reaction.
38
+ *
39
+ * Maps to `health:allergySeverity` in Turtle serialization.
40
+ */
41
+ export type AllergySeverity = 'mild' | 'moderate' | 'severe' | 'life-threatening';
42
+ /**
43
+ * Category of allergen substance.
44
+ *
45
+ * Maps to `health:allergyCategory` in Turtle serialization.
46
+ */
47
+ export type AllergyCategory = 'medication' | 'food' | 'environmental' | 'biologic';
48
+ /**
49
+ * Interpretation of a lab result relative to reference ranges.
50
+ *
51
+ * Maps to `health:interpretation` in Turtle serialization.
52
+ */
53
+ export type LabInterpretation = 'normal' | 'abnormal' | 'critical' | 'elevated' | 'low';
54
+ /**
55
+ * Clinical intent for a medication record, indicating how the medication is used.
56
+ *
57
+ * Maps to `clinical:clinicalIntent` in Turtle serialization.
58
+ */
59
+ export type MedicationClinicalIntent = 'prescribed' | 'otc' | 'supplement' | 'prn' | 'reportedUse';
60
+ /**
61
+ * Course of therapy type for a medication.
62
+ *
63
+ * Maps to `clinical:courseOfTherapyType` in Turtle serialization.
64
+ */
65
+ export type CourseOfTherapyType = 'continuous' | 'acute' | 'seasonal';
66
+ /**
67
+ * Prescription category for a medication.
68
+ *
69
+ * Maps to `clinical:prescriptionCategory` in Turtle serialization.
70
+ */
71
+ export type PrescriptionCategory = 'community' | 'inpatient' | 'discharge';
72
+ /**
73
+ * Source FHIR resource type for EHR-imported records.
74
+ *
75
+ * Maps to `clinical:sourceFhirResourceType` in Turtle serialization.
76
+ */
77
+ export type SourceFhirResourceType = 'MedicationRequest' | 'MedicationStatement' | 'MedicationDispense';
78
+ /**
79
+ * Enumerated vital sign types supported by the Cascade Protocol.
80
+ *
81
+ * Maps to `clinical:vitalType` in Turtle serialization.
82
+ */
83
+ export type VitalType = 'heartRate' | 'bloodPressureSystolic' | 'bloodPressureDiastolic' | 'respiratoryRate' | 'temperature' | 'oxygenSaturation' | 'weight' | 'height' | 'bmi';
84
+ /**
85
+ * Interpretation of a vital sign value relative to reference ranges.
86
+ *
87
+ * Maps to `clinical:interpretation` in Turtle serialization.
88
+ */
89
+ export type VitalInterpretation = 'normal' | 'elevated' | 'low' | 'critical';
90
+ /**
91
+ * Status of an immunization administration.
92
+ *
93
+ * Maps to `health:status` in Turtle serialization.
94
+ */
95
+ export type ImmunizationStatus = 'completed' | 'entered-in-error' | 'not-done';
96
+ /**
97
+ * Type of insurance plan.
98
+ *
99
+ * Maps to `clinical:planType` or `coverage:planType` in Turtle serialization.
100
+ */
101
+ export type PlanType = 'ppo' | 'hmo' | 'pos' | 'epo' | 'hdhp' | 'medicare' | 'medicaid';
102
+ /**
103
+ * Coverage designation (primary or secondary).
104
+ *
105
+ * Maps to `clinical:coverageType` or `coverage:coverageType` in Turtle serialization.
106
+ */
107
+ export type CoverageType = 'primary' | 'secondary' | 'supplemental';
108
+ /**
109
+ * Subscriber relationship to the plan holder.
110
+ *
111
+ * Maps to `clinical:relationship` or `coverage:subscriberRelationship` in Turtle serialization.
112
+ */
113
+ export type SubscriberRelationship = 'self' | 'spouse' | 'child' | 'other';
114
+ /**
115
+ * Biological sex as used for clinical calculations.
116
+ *
117
+ * Maps to `cascade:biologicalSex` in Turtle serialization.
118
+ */
119
+ export type BiologicalSex = 'male' | 'female' | 'intersex';
120
+ /**
121
+ * Age group classification.
122
+ *
123
+ * Maps to `cascade:ageGroup` in Turtle serialization.
124
+ */
125
+ export type AgeGroup = 'infant' | 'child' | 'adolescent' | 'young_adult' | 'adult' | 'senior';
126
+ /**
127
+ * Blood type classification.
128
+ *
129
+ * Maps to `health:bloodType` in Turtle serialization.
130
+ */
131
+ export type BloodType = 'aPositive' | 'aNegative' | 'bPositive' | 'bNegative' | 'abPositive' | 'abNegative' | 'oPositive' | 'oNegative';
132
+ /**
133
+ * Status of a clinical procedure.
134
+ */
135
+ export type ProcedureStatus = 'completed' | 'in-progress' | 'not-done' | 'preparation' | 'stopped';
136
+ /**
137
+ * Base fields shared by all Cascade Protocol health records.
138
+ *
139
+ * Every record in the Cascade Protocol must include an `id`, `type`,
140
+ * `dataProvenance`, and `schemaVersion`. Additional optional metadata
141
+ * fields are available for traceability.
142
+ *
143
+ * - `id` maps to the RDF subject URI (e.g., `urn:uuid:...`)
144
+ * - `type` maps to `rdf:type` (e.g., `health:MedicationRecord`)
145
+ * - `dataProvenance` maps to `cascade:dataProvenance`
146
+ * - `schemaVersion` maps to `cascade:schemaVersion`
147
+ */
148
+ export interface CascadeRecord {
149
+ /** Unique identifier for this record (URN UUID format: `urn:uuid:...`). */
150
+ id: string;
151
+ /** RDF type of this record (e.g., `MedicationRecord`, `ConditionRecord`). */
152
+ type: string;
153
+ /**
154
+ * Data provenance classification indicating the source of this record.
155
+ * Maps to `cascade:dataProvenance` in Turtle serialization.
156
+ */
157
+ dataProvenance: ProvenanceType;
158
+ /**
159
+ * Schema version in major.minor format (e.g., `"1.3"`).
160
+ * Maps to `cascade:schemaVersion` in Turtle serialization.
161
+ */
162
+ schemaVersion: string;
163
+ /**
164
+ * Identifier linking back to the source record in the originating system.
165
+ * Maps to `health:sourceRecordId` in Turtle serialization.
166
+ */
167
+ sourceRecordId?: string;
168
+ /**
169
+ * Free-text notes associated with this record.
170
+ * Maps to `health:notes` in Turtle serialization.
171
+ */
172
+ notes?: string;
173
+ }
174
+ //# sourceMappingURL=common.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/models/common.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Common types shared across all Cascade Protocol data models.
3
+ *
4
+ * These types map directly to the Cascade Protocol vocabularies:
5
+ * - cascade: https://ns.cascadeprotocol.org/core/v1#
6
+ * - health: https://ns.cascadeprotocol.org/health/v1#
7
+ * - clinical: https://ns.cascadeprotocol.org/clinical/v1#
8
+ *
9
+ * @see https://cascadeprotocol.org/docs/cascade-protocol-schemas
10
+ */
11
+ export {};
12
+ //# sourceMappingURL=common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../src/models/common.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Condition data model for the Cascade Protocol.
3
+ *
4
+ * Represents a clinical condition or diagnosis, sourced from EHR imports
5
+ * or self-reported by the patient.
6
+ *
7
+ * RDF type: `health:ConditionRecord`
8
+ * Vocabulary: `https://ns.cascadeprotocol.org/health/v1#`
9
+ *
10
+ * @see https://cascadeprotocol.org/docs/cascade-protocol-schemas
11
+ */
12
+ import type { CascadeRecord, ConditionStatus } from './common.js';
13
+ /**
14
+ * A condition record in the Cascade Protocol.
15
+ *
16
+ * Required fields: `conditionName`, `status`, `dataProvenance`, `schemaVersion`.
17
+ * All date fields use ISO 8601 string format.
18
+ *
19
+ * Serializes as `health:ConditionRecord` in Turtle.
20
+ */
21
+ export interface Condition extends CascadeRecord {
22
+ type: 'ConditionRecord';
23
+ /**
24
+ * Name of the condition or diagnosis.
25
+ * Maps to `health:conditionName` in Turtle serialization.
26
+ */
27
+ conditionName: string;
28
+ /**
29
+ * Clinical status of the condition.
30
+ * Maps to `health:status` in Turtle serialization.
31
+ */
32
+ status: ConditionStatus;
33
+ /**
34
+ * Date of condition onset (ISO 8601).
35
+ * Maps to `health:onsetDate` in Turtle serialization.
36
+ */
37
+ onsetDate?: string;
38
+ /**
39
+ * ICD-10-CM code URI for this condition.
40
+ * Maps to `health:icd10Code` in Turtle serialization as a URI reference.
41
+ */
42
+ icd10Code?: string;
43
+ /**
44
+ * SNOMED CT code URI for this condition.
45
+ * Maps to `health:snomedCode` in Turtle serialization as a URI reference.
46
+ */
47
+ snomedCode?: string;
48
+ /**
49
+ * Clinical classification of the condition (e.g., `"cardiovascular"`, `"endocrine"`, `"respiratory"`).
50
+ * Maps to `health:conditionClass` in Turtle serialization.
51
+ */
52
+ conditionClass?: string;
53
+ /**
54
+ * List of vital sign types that should be monitored for this condition.
55
+ * Maps to `health:monitoredVitalSigns` as an RDF list in Turtle serialization.
56
+ */
57
+ monitoredVitalSigns?: string[];
58
+ }
59
+ //# sourceMappingURL=condition.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"condition.d.ts","sourceRoot":"","sources":["../../src/models/condition.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAElE;;;;;;;GAOG;AACH,MAAM,WAAW,SAAU,SAAQ,aAAa;IAC9C,IAAI,EAAE,iBAAiB,CAAC;IAExB;;;OAGG;IACH,aAAa,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,MAAM,EAAE,eAAe,CAAC;IAExB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAC;CAChC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Condition data model for the Cascade Protocol.
3
+ *
4
+ * Represents a clinical condition or diagnosis, sourced from EHR imports
5
+ * or self-reported by the patient.
6
+ *
7
+ * RDF type: `health:ConditionRecord`
8
+ * Vocabulary: `https://ns.cascadeprotocol.org/health/v1#`
9
+ *
10
+ * @see https://cascadeprotocol.org/docs/cascade-protocol-schemas
11
+ */
12
+ export {};
13
+ //# sourceMappingURL=condition.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"condition.js","sourceRoot":"","sources":["../../src/models/condition.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG"}
@@ -0,0 +1,117 @@
1
+ /**
2
+ * Coverage / Insurance data model for the Cascade Protocol.
3
+ *
4
+ * Represents an insurance coverage or plan record. Supports both the
5
+ * clinical vocabulary (`clinical:CoverageRecord`) and the dedicated
6
+ * coverage vocabulary (`coverage:InsurancePlan`).
7
+ *
8
+ * RDF types: `clinical:CoverageRecord` or `coverage:InsurancePlan`
9
+ * Vocabularies:
10
+ * - `https://ns.cascadeprotocol.org/clinical/v1#`
11
+ * - `https://ns.cascadeprotocol.org/coverage/v1#`
12
+ *
13
+ * @see https://cascadeprotocol.org/docs/cascade-protocol-schemas
14
+ */
15
+ import type { CascadeRecord, PlanType, CoverageType, SubscriberRelationship } from './common.js';
16
+ /**
17
+ * A coverage / insurance record in the Cascade Protocol.
18
+ *
19
+ * Required fields: `providerName`, `dataProvenance`, `schemaVersion`.
20
+ * All date fields use ISO 8601 string format.
21
+ *
22
+ * Serializes as `clinical:CoverageRecord` or `coverage:InsurancePlan` in Turtle.
23
+ */
24
+ export interface Coverage extends CascadeRecord {
25
+ type: 'CoverageRecord' | 'InsurancePlan';
26
+ /**
27
+ * Name of the insurance provider.
28
+ * Maps to `clinical:providerName` or `coverage:providerName` in Turtle serialization.
29
+ */
30
+ providerName: string;
31
+ /**
32
+ * Member identifier for the insured individual.
33
+ * Maps to `clinical:memberId` or `coverage:memberId` in Turtle serialization.
34
+ */
35
+ memberId?: string;
36
+ /**
37
+ * Group number for the insurance plan.
38
+ * Maps to `clinical:groupNumber` or `coverage:groupNumber` in Turtle serialization.
39
+ */
40
+ groupNumber?: string;
41
+ /**
42
+ * Name of the insurance plan.
43
+ * Maps to `clinical:planName` or `coverage:planName` in Turtle serialization.
44
+ */
45
+ planName?: string;
46
+ /**
47
+ * Type of insurance plan.
48
+ * Maps to `clinical:planType` or `coverage:planType` in Turtle serialization.
49
+ */
50
+ planType?: PlanType | string;
51
+ /**
52
+ * Coverage designation (primary, secondary, supplemental).
53
+ * Maps to `clinical:coverageType` or `coverage:coverageType` in Turtle serialization.
54
+ */
55
+ coverageType?: CoverageType | string;
56
+ /**
57
+ * Subscriber relationship to plan holder.
58
+ * Maps to `clinical:relationship` or `coverage:subscriberRelationship` in Turtle serialization.
59
+ */
60
+ relationship?: SubscriberRelationship | string;
61
+ /**
62
+ * Alias for `relationship` used in the coverage vocabulary.
63
+ * Maps to `coverage:subscriberRelationship` in Turtle serialization.
64
+ */
65
+ subscriberRelationship?: SubscriberRelationship | string;
66
+ /**
67
+ * Start date of the coverage period (ISO 8601).
68
+ * Maps to `clinical:effectivePeriodStart` in Turtle serialization.
69
+ */
70
+ effectivePeriodStart?: string;
71
+ /**
72
+ * End date of the coverage period (ISO 8601).
73
+ * Maps to `clinical:effectivePeriodEnd` in Turtle serialization.
74
+ */
75
+ effectivePeriodEnd?: string;
76
+ /**
77
+ * Start date of effectiveness (ISO 8601, coverage vocabulary).
78
+ * Maps to `coverage:effectiveStart` in Turtle serialization.
79
+ */
80
+ effectiveStart?: string;
81
+ /**
82
+ * End date of effectiveness (ISO 8601, coverage vocabulary).
83
+ * Maps to `coverage:effectiveEnd` in Turtle serialization.
84
+ */
85
+ effectiveEnd?: string;
86
+ /**
87
+ * Name of the payor organization.
88
+ * Maps to `clinical:payorName` in Turtle serialization.
89
+ */
90
+ payorName?: string;
91
+ /**
92
+ * Subscriber identifier for the plan holder.
93
+ * Maps to `clinical:subscriberId` or `coverage:subscriberId` in Turtle serialization.
94
+ */
95
+ subscriberId?: string;
96
+ /**
97
+ * Name of the primary subscriber on the plan.
98
+ * Maps to `coverage:subscriberName` in Turtle serialization.
99
+ */
100
+ subscriberName?: string;
101
+ /**
102
+ * Pharmacy BIN (Bank Identification Number) for prescription benefits.
103
+ * Maps to `coverage:rxBin` in Turtle serialization.
104
+ */
105
+ rxBin?: string;
106
+ /**
107
+ * Pharmacy PCN (Processor Control Number) for prescription benefits.
108
+ * Maps to `coverage:rxPcn` in Turtle serialization.
109
+ */
110
+ rxPcn?: string;
111
+ /**
112
+ * Pharmacy group number for prescription benefits.
113
+ * Maps to `coverage:rxGroup` in Turtle serialization.
114
+ */
115
+ rxGroup?: string;
116
+ }
117
+ //# sourceMappingURL=coverage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coverage.d.ts","sourceRoot":"","sources":["../../src/models/coverage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,QAAQ,EACR,YAAY,EACZ,sBAAsB,EACvB,MAAM,aAAa,CAAC;AAErB;;;;;;;GAOG;AACH,MAAM,WAAW,QAAS,SAAQ,aAAa;IAC7C,IAAI,EAAE,gBAAgB,GAAG,eAAe,CAAC;IAEzC;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,QAAQ,CAAC,EAAE,QAAQ,GAAG,MAAM,CAAC;IAE7B;;;OAGG;IACH,YAAY,CAAC,EAAE,YAAY,GAAG,MAAM,CAAC;IAErC;;;OAGG;IACH,YAAY,CAAC,EAAE,sBAAsB,GAAG,MAAM,CAAC;IAE/C;;;OAGG;IACH,sBAAsB,CAAC,EAAE,sBAAsB,GAAG,MAAM,CAAC;IAEzD;;;OAGG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAE9B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Coverage / Insurance data model for the Cascade Protocol.
3
+ *
4
+ * Represents an insurance coverage or plan record. Supports both the
5
+ * clinical vocabulary (`clinical:CoverageRecord`) and the dedicated
6
+ * coverage vocabulary (`coverage:InsurancePlan`).
7
+ *
8
+ * RDF types: `clinical:CoverageRecord` or `coverage:InsurancePlan`
9
+ * Vocabularies:
10
+ * - `https://ns.cascadeprotocol.org/clinical/v1#`
11
+ * - `https://ns.cascadeprotocol.org/coverage/v1#`
12
+ *
13
+ * @see https://cascadeprotocol.org/docs/cascade-protocol-schemas
14
+ */
15
+ export {};
16
+ //# sourceMappingURL=coverage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coverage.js","sourceRoot":"","sources":["../../src/models/coverage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * Family history data model for the Cascade Protocol.
3
+ *
4
+ * Represents a family health history entry recording medical conditions
5
+ * in the patient's relatives.
6
+ *
7
+ * RDF type: `health:FamilyHistoryRecord`
8
+ * Vocabulary: `https://ns.cascadeprotocol.org/health/v1#`
9
+ *
10
+ * @see https://cascadeprotocol.org/docs/cascade-protocol-schemas
11
+ */
12
+ import type { CascadeRecord } from './common.js';
13
+ /**
14
+ * A family history record in the Cascade Protocol.
15
+ *
16
+ * Required fields: `relationship`, `conditionName`, `dataProvenance`, `schemaVersion`.
17
+ *
18
+ * Serializes as `health:FamilyHistoryRecord` in Turtle.
19
+ */
20
+ export interface FamilyHistory extends CascadeRecord {
21
+ type: 'FamilyHistoryRecord';
22
+ /**
23
+ * Relationship of the family member to the patient (e.g., `"mother"`, `"father"`, `"sibling"`).
24
+ * Maps to `health:relationship` in Turtle serialization.
25
+ */
26
+ relationship: string;
27
+ /**
28
+ * Name of the condition reported in the family member.
29
+ * Maps to `health:conditionName` in Turtle serialization.
30
+ */
31
+ conditionName: string;
32
+ /**
33
+ * Age of onset for the family member's condition.
34
+ * Maps to `health:onsetAge` in Turtle serialization.
35
+ */
36
+ onsetAge?: number;
37
+ }
38
+ //# sourceMappingURL=family-history.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"family-history.d.ts","sourceRoot":"","sources":["../../src/models/family-history.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAEjD;;;;;;GAMG;AACH,MAAM,WAAW,aAAc,SAAQ,aAAa;IAClD,IAAI,EAAE,qBAAqB,CAAC;IAE5B;;;OAGG;IACH,YAAY,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,aAAa,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Family history data model for the Cascade Protocol.
3
+ *
4
+ * Represents a family health history entry recording medical conditions
5
+ * in the patient's relatives.
6
+ *
7
+ * RDF type: `health:FamilyHistoryRecord`
8
+ * Vocabulary: `https://ns.cascadeprotocol.org/health/v1#`
9
+ *
10
+ * @see https://cascadeprotocol.org/docs/cascade-protocol-schemas
11
+ */
12
+ export {};
13
+ //# sourceMappingURL=family-history.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"family-history.js","sourceRoot":"","sources":["../../src/models/family-history.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * Health profile aggregate data model for the Cascade Protocol.
3
+ *
4
+ * Represents a complete health profile containing arrays of all
5
+ * clinical and wellness record types. This is the top-level container
6
+ * corresponding to a Cascade Pod's data inventory.
7
+ *
8
+ * @see https://cascadeprotocol.org/docs/cascade-protocol-schemas
9
+ */
10
+ import type { Medication } from './medication.js';
11
+ import type { Condition } from './condition.js';
12
+ import type { Allergy } from './allergy.js';
13
+ import type { LabResult } from './lab-result.js';
14
+ import type { VitalSign } from './vital-sign.js';
15
+ import type { Immunization } from './immunization.js';
16
+ import type { Procedure } from './procedure.js';
17
+ import type { FamilyHistory } from './family-history.js';
18
+ import type { Coverage } from './coverage.js';
19
+ import type { PatientProfile } from './patient-profile.js';
20
+ import type { ActivitySnapshot } from './activity-snapshot.js';
21
+ import type { SleepSnapshot } from './sleep-snapshot.js';
22
+ /**
23
+ * A complete health profile aggregating all Cascade Protocol record types.
24
+ *
25
+ * This interface mirrors the structure of a Cascade Pod, providing
26
+ * typed access to all clinical and wellness data categories.
27
+ */
28
+ export interface HealthProfile {
29
+ /** Patient demographic and identification data. */
30
+ patientProfile?: PatientProfile;
31
+ /** Active and historical medication records. */
32
+ medications: Medication[];
33
+ /** Active and resolved medical conditions. */
34
+ conditions: Condition[];
35
+ /** Known allergies and intolerances. */
36
+ allergies: Allergy[];
37
+ /** Laboratory test results. */
38
+ labResults: LabResult[];
39
+ /** Clinical and device-generated vital sign measurements. */
40
+ vitalSigns: VitalSign[];
41
+ /** Vaccine administration records. */
42
+ immunizations: Immunization[];
43
+ /** Clinical procedure records. */
44
+ procedures: Procedure[];
45
+ /** Family health history entries. */
46
+ familyHistory: FamilyHistory[];
47
+ /** Insurance coverage and plan records. */
48
+ coverage: Coverage[];
49
+ /** Daily activity summaries from wearable devices. */
50
+ activitySnapshots: ActivitySnapshot[];
51
+ /** Nightly sleep summaries from wearable devices. */
52
+ sleepSnapshots: SleepSnapshot[];
53
+ }
54
+ //# sourceMappingURL=health-profile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"health-profile.d.ts","sourceRoot":"","sources":["../../src/models/health-profile.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD;;;;;GAKG;AACH,MAAM,WAAW,aAAa;IAC5B,mDAAmD;IACnD,cAAc,CAAC,EAAE,cAAc,CAAC;IAEhC,gDAAgD;IAChD,WAAW,EAAE,UAAU,EAAE,CAAC;IAE1B,8CAA8C;IAC9C,UAAU,EAAE,SAAS,EAAE,CAAC;IAExB,wCAAwC;IACxC,SAAS,EAAE,OAAO,EAAE,CAAC;IAErB,+BAA+B;IAC/B,UAAU,EAAE,SAAS,EAAE,CAAC;IAExB,6DAA6D;IAC7D,UAAU,EAAE,SAAS,EAAE,CAAC;IAExB,sCAAsC;IACtC,aAAa,EAAE,YAAY,EAAE,CAAC;IAE9B,kCAAkC;IAClC,UAAU,EAAE,SAAS,EAAE,CAAC;IAExB,qCAAqC;IACrC,aAAa,EAAE,aAAa,EAAE,CAAC;IAE/B,2CAA2C;IAC3C,QAAQ,EAAE,QAAQ,EAAE,CAAC;IAErB,sDAAsD;IACtD,iBAAiB,EAAE,gBAAgB,EAAE,CAAC;IAEtC,qDAAqD;IACrD,cAAc,EAAE,aAAa,EAAE,CAAC;CACjC"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Health profile aggregate data model for the Cascade Protocol.
3
+ *
4
+ * Represents a complete health profile containing arrays of all
5
+ * clinical and wellness record types. This is the top-level container
6
+ * corresponding to a Cascade Pod's data inventory.
7
+ *
8
+ * @see https://cascadeprotocol.org/docs/cascade-protocol-schemas
9
+ */
10
+ export {};
11
+ //# sourceMappingURL=health-profile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"health-profile.js","sourceRoot":"","sources":["../../src/models/health-profile.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG"}
@@ -0,0 +1,78 @@
1
+ /**
2
+ * Immunization data model for the Cascade Protocol.
3
+ *
4
+ * Represents a vaccine administration record, typically from EHR imports.
5
+ *
6
+ * RDF type: `health:ImmunizationRecord`
7
+ * Vocabulary: `https://ns.cascadeprotocol.org/health/v1#`
8
+ *
9
+ * @see https://cascadeprotocol.org/docs/cascade-protocol-schemas
10
+ */
11
+ import type { CascadeRecord, ImmunizationStatus } from './common.js';
12
+ /**
13
+ * An immunization record in the Cascade Protocol.
14
+ *
15
+ * Required fields: `vaccineName`, `dataProvenance`, `schemaVersion`.
16
+ * All date fields use ISO 8601 string format.
17
+ *
18
+ * Serializes as `health:ImmunizationRecord` in Turtle.
19
+ */
20
+ export interface Immunization extends CascadeRecord {
21
+ type: 'ImmunizationRecord';
22
+ /**
23
+ * Name of the vaccine administered.
24
+ * Maps to `health:vaccineName` in Turtle serialization.
25
+ */
26
+ vaccineName: string;
27
+ /**
28
+ * Date and time of vaccine administration (ISO 8601).
29
+ * Maps to `health:administrationDate` in Turtle serialization.
30
+ */
31
+ administrationDate?: string;
32
+ /**
33
+ * Status of the immunization.
34
+ * Maps to `health:status` in Turtle serialization.
35
+ */
36
+ status?: ImmunizationStatus;
37
+ /**
38
+ * Vaccine code identifier (e.g., `"CVX-308"`).
39
+ * Maps to `health:vaccineCode` in Turtle serialization.
40
+ */
41
+ vaccineCode?: string;
42
+ /**
43
+ * Vaccine manufacturer name.
44
+ * Maps to `health:manufacturer` in Turtle serialization.
45
+ */
46
+ manufacturer?: string;
47
+ /**
48
+ * Lot number of the vaccine.
49
+ * Maps to `health:lotNumber` in Turtle serialization.
50
+ */
51
+ lotNumber?: string;
52
+ /**
53
+ * Dose quantity administered (e.g., `"0.3 mL"`).
54
+ * Maps to `health:doseQuantity` in Turtle serialization.
55
+ */
56
+ doseQuantity?: string;
57
+ /**
58
+ * Route of administration (e.g., `"intramuscular"`).
59
+ * Maps to `health:route` in Turtle serialization.
60
+ */
61
+ route?: string;
62
+ /**
63
+ * Anatomical site of administration (e.g., `"Left deltoid"`).
64
+ * Maps to `health:site` in Turtle serialization.
65
+ */
66
+ site?: string;
67
+ /**
68
+ * Name of the healthcare provider who administered the vaccine.
69
+ * Maps to `health:administeringProvider` in Turtle serialization.
70
+ */
71
+ administeringProvider?: string;
72
+ /**
73
+ * Location where the vaccine was administered.
74
+ * Maps to `health:administeringLocation` in Turtle serialization.
75
+ */
76
+ administeringLocation?: string;
77
+ }
78
+ //# sourceMappingURL=immunization.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"immunization.d.ts","sourceRoot":"","sources":["../../src/models/immunization.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAErE;;;;;;;GAOG;AACH,MAAM,WAAW,YAAa,SAAQ,aAAa;IACjD,IAAI,EAAE,oBAAoB,CAAC;IAE3B;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;;OAGG;IACH,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAE5B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B;;;OAGG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC"}