@medplum/fhirtypes 0.3.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 (199) hide show
  1. package/README.md +61 -0
  2. package/dist/AccessPolicy.d.ts +95 -0
  3. package/dist/Account.d.ts +286 -0
  4. package/dist/ActivityDefinition.d.ts +580 -0
  5. package/dist/Address.d.ts +93 -0
  6. package/dist/AdverseEvent.d.ts +353 -0
  7. package/dist/Age.d.ts +60 -0
  8. package/dist/AllergyIntolerance.d.ts +329 -0
  9. package/dist/Annotation.d.ts +54 -0
  10. package/dist/Appointment.d.ts +330 -0
  11. package/dist/AppointmentResponse.d.ts +154 -0
  12. package/dist/Attachment.d.ts +74 -0
  13. package/dist/AuditEvent.d.ts +532 -0
  14. package/dist/Basic.d.ts +130 -0
  15. package/dist/Binary.d.ts +78 -0
  16. package/dist/BiologicallyDerivedProduct.d.ts +416 -0
  17. package/dist/BodyStructure.d.ts +142 -0
  18. package/dist/Bot.d.ts +64 -0
  19. package/dist/Bundle.d.ts +438 -0
  20. package/dist/CapabilityStatement.d.ts +1193 -0
  21. package/dist/CarePlan.d.ts +518 -0
  22. package/dist/CareTeam.d.ts +247 -0
  23. package/dist/CatalogEntry.d.ts +230 -0
  24. package/dist/ChargeItem.d.ts +338 -0
  25. package/dist/ChargeItemDefinition.d.ts +460 -0
  26. package/dist/Claim.d.ts +1269 -0
  27. package/dist/ClaimResponse.d.ts +1204 -0
  28. package/dist/ClientApplication.d.ts +61 -0
  29. package/dist/ClinicalImpression.d.ts +355 -0
  30. package/dist/CodeSystem.d.ts +627 -0
  31. package/dist/CodeableConcept.d.ts +43 -0
  32. package/dist/Coding.d.ts +63 -0
  33. package/dist/Communication.d.ts +309 -0
  34. package/dist/CommunicationRequest.d.ts +306 -0
  35. package/dist/CompartmentDefinition.d.ts +253 -0
  36. package/dist/Composition.d.ts +494 -0
  37. package/dist/ConceptMap.d.ts +596 -0
  38. package/dist/Condition.d.ts +379 -0
  39. package/dist/Consent.d.ts +529 -0
  40. package/dist/ContactDetail.d.ts +41 -0
  41. package/dist/ContactPoint.d.ts +60 -0
  42. package/dist/Contract.d.ts +1676 -0
  43. package/dist/Contributor.d.ts +48 -0
  44. package/dist/Count.d.ts +62 -0
  45. package/dist/Coverage.d.ts +380 -0
  46. package/dist/CoverageEligibilityRequest.d.ts +468 -0
  47. package/dist/CoverageEligibilityResponse.d.ts +507 -0
  48. package/dist/DataRequirement.d.ts +276 -0
  49. package/dist/DetectedIssue.d.ts +293 -0
  50. package/dist/Device.d.ts +570 -0
  51. package/dist/DeviceDefinition.d.ts +563 -0
  52. package/dist/DeviceMetric.d.ts +231 -0
  53. package/dist/DeviceRequest.d.ts +347 -0
  54. package/dist/DeviceUseStatement.d.ts +198 -0
  55. package/dist/DiagnosticReport.d.ts +294 -0
  56. package/dist/Distance.d.ts +60 -0
  57. package/dist/DocumentManifest.d.ts +229 -0
  58. package/dist/DocumentReference.d.ts +403 -0
  59. package/dist/Dosage.d.ts +184 -0
  60. package/dist/Duration.d.ts +59 -0
  61. package/dist/EffectEvidenceSynthesis.d.ts +686 -0
  62. package/dist/Element.d.ts +29 -0
  63. package/dist/ElementDefinition.d.ts +3010 -0
  64. package/dist/Encounter.d.ts +643 -0
  65. package/dist/Endpoint.d.ts +166 -0
  66. package/dist/EnrollmentRequest.d.ts +135 -0
  67. package/dist/EnrollmentResponse.d.ts +140 -0
  68. package/dist/EpisodeOfCare.d.ts +286 -0
  69. package/dist/EventDefinition.d.ts +297 -0
  70. package/dist/Evidence.d.ts +295 -0
  71. package/dist/EvidenceVariable.d.ts +431 -0
  72. package/dist/ExampleScenario.d.ts +728 -0
  73. package/dist/ExplanationOfBenefit.d.ts +2140 -0
  74. package/dist/Expression.d.ts +58 -0
  75. package/dist/Extension.d.ts +365 -0
  76. package/dist/FamilyMemberHistory.d.ts +359 -0
  77. package/dist/Flag.d.ts +155 -0
  78. package/dist/Goal.d.ts +345 -0
  79. package/dist/GraphDefinition.d.ts +408 -0
  80. package/dist/Group.d.ts +315 -0
  81. package/dist/GuidanceResponse.d.ts +228 -0
  82. package/dist/HealthcareService.d.ts +415 -0
  83. package/dist/HumanName.d.ts +73 -0
  84. package/dist/Identifier.d.ts +67 -0
  85. package/dist/ImagingStudy.d.ts +472 -0
  86. package/dist/Immunization.d.ts +520 -0
  87. package/dist/ImmunizationEvaluation.d.ts +179 -0
  88. package/dist/ImmunizationRecommendation.d.ts +298 -0
  89. package/dist/ImplementationGuide.d.ts +944 -0
  90. package/dist/InsurancePlan.d.ts +719 -0
  91. package/dist/Invoice.d.ts +399 -0
  92. package/dist/JsonWebKey.d.ts +126 -0
  93. package/dist/Library.d.ts +324 -0
  94. package/dist/Linkage.d.ts +170 -0
  95. package/dist/List.d.ts +236 -0
  96. package/dist/Location.d.ts +324 -0
  97. package/dist/Login.d.ts +146 -0
  98. package/dist/MarketingStatus.d.ts +96 -0
  99. package/dist/Measure.d.ts +715 -0
  100. package/dist/MeasureReport.d.ts +531 -0
  101. package/dist/Media.d.ts +243 -0
  102. package/dist/Medication.d.ts +267 -0
  103. package/dist/MedicationAdministration.d.ts +403 -0
  104. package/dist/MedicationDispense.d.ts +398 -0
  105. package/dist/MedicationKnowledge.d.ts +1136 -0
  106. package/dist/MedicationRequest.d.ts +554 -0
  107. package/dist/MedicationStatement.d.ts +262 -0
  108. package/dist/MedicinalProduct.d.ts +530 -0
  109. package/dist/MedicinalProductAuthorization.d.ts +320 -0
  110. package/dist/MedicinalProductContraindication.d.ts +199 -0
  111. package/dist/MedicinalProductIndication.d.ts +210 -0
  112. package/dist/MedicinalProductIngredient.d.ts +391 -0
  113. package/dist/MedicinalProductInteraction.d.ts +186 -0
  114. package/dist/MedicinalProductManufactured.d.ts +135 -0
  115. package/dist/MedicinalProductPackaged.d.ts +305 -0
  116. package/dist/MedicinalProductPharmaceutical.d.ts +383 -0
  117. package/dist/MedicinalProductUndesirableEffect.d.ts +121 -0
  118. package/dist/MessageDefinition.d.ts +384 -0
  119. package/dist/MessageHeader.d.ts +374 -0
  120. package/dist/Meta.d.ts +92 -0
  121. package/dist/MolecularSequence.d.ts +875 -0
  122. package/dist/Money.d.ts +39 -0
  123. package/dist/NamingSystem.d.ts +255 -0
  124. package/dist/Narrative.d.ts +42 -0
  125. package/dist/NutritionOrder.d.ts +650 -0
  126. package/dist/Observation.d.ts +601 -0
  127. package/dist/ObservationDefinition.d.ts +326 -0
  128. package/dist/OperationDefinition.d.ts +542 -0
  129. package/dist/OperationOutcome.d.ts +186 -0
  130. package/dist/Organization.d.ts +217 -0
  131. package/dist/OrganizationAffiliation.d.ts +172 -0
  132. package/dist/ParameterDefinition.d.ts +72 -0
  133. package/dist/Parameters.d.ts +388 -0
  134. package/dist/PasswordChangeRequest.d.ts +66 -0
  135. package/dist/Patient.d.ts +398 -0
  136. package/dist/PaymentNotice.d.ts +162 -0
  137. package/dist/PaymentReconciliation.d.ts +330 -0
  138. package/dist/Period.d.ts +42 -0
  139. package/dist/Person.d.ts +206 -0
  140. package/dist/PlanDefinition.d.ts +968 -0
  141. package/dist/Population.d.ts +76 -0
  142. package/dist/Practitioner.d.ts +223 -0
  143. package/dist/PractitionerRole.d.ts +302 -0
  144. package/dist/Procedure.d.ts +432 -0
  145. package/dist/ProdCharacteristic.d.ts +132 -0
  146. package/dist/ProductShelfLife.d.ts +83 -0
  147. package/dist/Project.d.ts +57 -0
  148. package/dist/ProjectMembership.d.ts +83 -0
  149. package/dist/Provenance.d.ts +299 -0
  150. package/dist/Quantity.d.ts +59 -0
  151. package/dist/Questionnaire.d.ts +703 -0
  152. package/dist/QuestionnaireResponse.d.ts +365 -0
  153. package/dist/Range.d.ts +40 -0
  154. package/dist/Ratio.d.ts +40 -0
  155. package/dist/Reference.d.ts +80 -0
  156. package/dist/RelatedArtifact.d.ts +72 -0
  157. package/dist/RelatedPerson.d.ts +223 -0
  158. package/dist/RequestGroup.d.ts +509 -0
  159. package/dist/ResearchDefinition.d.ts +341 -0
  160. package/dist/ResearchElementDefinition.d.ts +505 -0
  161. package/dist/ResearchStudy.d.ts +370 -0
  162. package/dist/ResearchSubject.d.ts +142 -0
  163. package/dist/Resource.d.ts +316 -0
  164. package/dist/RiskAssessment.d.ts +291 -0
  165. package/dist/RiskEvidenceSynthesis.d.ts +616 -0
  166. package/dist/SampledData.d.ts +77 -0
  167. package/dist/Schedule.d.ts +152 -0
  168. package/dist/SearchParameter.d.ts +324 -0
  169. package/dist/ServiceRequest.d.ts +362 -0
  170. package/dist/Signature.d.ts +86 -0
  171. package/dist/Slot.d.ts +160 -0
  172. package/dist/Specimen.d.ts +427 -0
  173. package/dist/SpecimenDefinition.d.ts +423 -0
  174. package/dist/StructureDefinition.d.ts +504 -0
  175. package/dist/StructureMap.d.ts +1064 -0
  176. package/dist/Subscription.d.ts +202 -0
  177. package/dist/Substance.d.ts +249 -0
  178. package/dist/SubstanceAmount.d.ts +135 -0
  179. package/dist/SubstanceNucleicAcid.d.ts +356 -0
  180. package/dist/SubstancePolymer.d.ts +470 -0
  181. package/dist/SubstanceProtein.d.ts +249 -0
  182. package/dist/SubstanceReferenceInformation.d.ts +386 -0
  183. package/dist/SubstanceSourceMaterial.d.ts +596 -0
  184. package/dist/SubstanceSpecification.d.ts +965 -0
  185. package/dist/SupplyDelivery.d.ts +240 -0
  186. package/dist/SupplyRequest.d.ts +279 -0
  187. package/dist/Task.d.ts +970 -0
  188. package/dist/TerminologyCapabilities.d.ts +820 -0
  189. package/dist/TestReport.d.ts +631 -0
  190. package/dist/TestScript.d.ts +1364 -0
  191. package/dist/Timing.d.ts +210 -0
  192. package/dist/TriggerDefinition.d.ts +81 -0
  193. package/dist/UsageContext.d.ts +74 -0
  194. package/dist/User.d.ts +59 -0
  195. package/dist/ValueSet.d.ts +830 -0
  196. package/dist/VerificationResult.d.ts +399 -0
  197. package/dist/VisionPrescription.d.ts +311 -0
  198. package/dist/index.d.ts +201 -0
  199. package/package.json +36 -0
@@ -0,0 +1,830 @@
1
+ /*
2
+ * Generated by @medplum/generator
3
+ * Do not edit manually.
4
+ */
5
+
6
+ import { CodeableConcept } from './CodeableConcept';
7
+ import { Coding } from './Coding';
8
+ import { ContactDetail } from './ContactDetail';
9
+ import { Extension } from './Extension';
10
+ import { Identifier } from './Identifier';
11
+ import { Meta } from './Meta';
12
+ import { Narrative } from './Narrative';
13
+ import { Resource } from './Resource';
14
+ import { UsageContext } from './UsageContext';
15
+
16
+ /**
17
+ * A ValueSet resource instance specifies a set of codes drawn from one
18
+ * or more code systems, intended for use in a particular context. Value
19
+ * sets link between [[[CodeSystem]]] definitions and their use in [coded
20
+ * elements](terminologies.html).
21
+ */
22
+ export interface ValueSet {
23
+
24
+ /**
25
+ * This is a ValueSet resource
26
+ */
27
+ readonly resourceType: 'ValueSet';
28
+
29
+ /**
30
+ * The logical id of the resource, as used in the URL for the resource.
31
+ * Once assigned, this value never changes.
32
+ */
33
+ readonly id?: string;
34
+
35
+ /**
36
+ * The metadata about the resource. This is content that is maintained by
37
+ * the infrastructure. Changes to the content might not always be
38
+ * associated with version changes to the resource.
39
+ */
40
+ readonly meta?: Meta;
41
+
42
+ /**
43
+ * A reference to a set of rules that were followed when the resource was
44
+ * constructed, and which must be understood when processing the content.
45
+ * Often, this is a reference to an implementation guide that defines the
46
+ * special rules along with other profiles etc.
47
+ */
48
+ readonly implicitRules?: string;
49
+
50
+ /**
51
+ * The base language in which the resource is written.
52
+ */
53
+ readonly language?: string;
54
+
55
+ /**
56
+ * A human-readable narrative that contains a summary of the resource and
57
+ * can be used to represent the content of the resource to a human. The
58
+ * narrative need not encode all the structured data, but is required to
59
+ * contain sufficient detail to make it "clinically safe" for a human to
60
+ * just read the narrative. Resource definitions may define what content
61
+ * should be represented in the narrative to ensure clinical safety.
62
+ */
63
+ readonly text?: Narrative;
64
+
65
+ /**
66
+ * These resources do not have an independent existence apart from the
67
+ * resource that contains them - they cannot be identified independently,
68
+ * and nor can they have their own independent transaction scope.
69
+ */
70
+ readonly contained?: Resource[];
71
+
72
+ /**
73
+ * May be used to represent additional information that is not part of
74
+ * the basic definition of the resource. To make the use of extensions
75
+ * safe and manageable, there is a strict set of governance applied to
76
+ * the definition and use of extensions. Though any implementer can
77
+ * define an extension, there is a set of requirements that SHALL be met
78
+ * as part of the definition of the extension.
79
+ */
80
+ readonly extension?: Extension[];
81
+
82
+ /**
83
+ * May be used to represent additional information that is not part of
84
+ * the basic definition of the resource and that modifies the
85
+ * understanding of the element that contains it and/or the understanding
86
+ * of the containing element's descendants. Usually modifier elements
87
+ * provide negation or qualification. To make the use of extensions safe
88
+ * and manageable, there is a strict set of governance applied to the
89
+ * definition and use of extensions. Though any implementer is allowed to
90
+ * define an extension, there is a set of requirements that SHALL be met
91
+ * as part of the definition of the extension. Applications processing a
92
+ * resource are required to check for modifier extensions.
93
+ *
94
+ * Modifier extensions SHALL NOT change the meaning of any elements on
95
+ * Resource or DomainResource (including cannot change the meaning of
96
+ * modifierExtension itself).
97
+ */
98
+ readonly modifierExtension?: Extension[];
99
+
100
+ /**
101
+ * An absolute URI that is used to identify this value set when it is
102
+ * referenced in a specification, model, design or an instance; also
103
+ * called its canonical identifier. This SHOULD be globally unique and
104
+ * SHOULD be a literal address at which at which an authoritative
105
+ * instance of this value set is (or will be) published. This URL can be
106
+ * the target of a canonical reference. It SHALL remain the same when the
107
+ * value set is stored on different servers.
108
+ */
109
+ readonly url?: string;
110
+
111
+ /**
112
+ * A formal identifier that is used to identify this value set when it is
113
+ * represented in other formats, or referenced in a specification, model,
114
+ * design or an instance.
115
+ */
116
+ readonly identifier?: Identifier[];
117
+
118
+ /**
119
+ * The identifier that is used to identify this version of the value set
120
+ * when it is referenced in a specification, model, design or instance.
121
+ * This is an arbitrary value managed by the value set author and is not
122
+ * expected to be globally unique. For example, it might be a timestamp
123
+ * (e.g. yyyymmdd) if a managed version is not available. There is also
124
+ * no expectation that versions can be placed in a lexicographical
125
+ * sequence.
126
+ */
127
+ readonly version?: string;
128
+
129
+ /**
130
+ * A natural language name identifying the value set. This name should be
131
+ * usable as an identifier for the module by machine processing
132
+ * applications such as code generation.
133
+ */
134
+ readonly name?: string;
135
+
136
+ /**
137
+ * A short, descriptive, user-friendly title for the value set.
138
+ */
139
+ readonly title?: string;
140
+
141
+ /**
142
+ * The status of this value set. Enables tracking the life-cycle of the
143
+ * content. The status of the value set applies to the value set
144
+ * definition (ValueSet.compose) and the associated ValueSet metadata.
145
+ * Expansions do not have a state.
146
+ */
147
+ readonly status?: string;
148
+
149
+ /**
150
+ * A Boolean value to indicate that this value set is authored for
151
+ * testing purposes (or education/evaluation/marketing) and is not
152
+ * intended to be used for genuine usage.
153
+ */
154
+ readonly experimental?: boolean;
155
+
156
+ /**
157
+ * The date (and optionally time) when the value set was created or
158
+ * revised (e.g. the 'content logical definition').
159
+ */
160
+ readonly date?: string;
161
+
162
+ /**
163
+ * The name of the organization or individual that published the value
164
+ * set.
165
+ */
166
+ readonly publisher?: string;
167
+
168
+ /**
169
+ * Contact details to assist a user in finding and communicating with the
170
+ * publisher.
171
+ */
172
+ readonly contact?: ContactDetail[];
173
+
174
+ /**
175
+ * A free text natural language description of the value set from a
176
+ * consumer's perspective. The textual description specifies the span of
177
+ * meanings for concepts to be included within the Value Set Expansion,
178
+ * and also may specify the intended use and limitations of the Value
179
+ * Set.
180
+ */
181
+ readonly description?: string;
182
+
183
+ /**
184
+ * The content was developed with a focus and intent of supporting the
185
+ * contexts that are listed. These contexts may be general categories
186
+ * (gender, age, ...) or may be references to specific programs
187
+ * (insurance plans, studies, ...) and may be used to assist with
188
+ * indexing and searching for appropriate value set instances.
189
+ */
190
+ readonly useContext?: UsageContext[];
191
+
192
+ /**
193
+ * A legal or geographic region in which the value set is intended to be
194
+ * used.
195
+ */
196
+ readonly jurisdiction?: CodeableConcept[];
197
+
198
+ /**
199
+ * If this is set to 'true', then no new versions of the content logical
200
+ * definition can be created. Note: Other metadata might still change.
201
+ */
202
+ readonly immutable?: boolean;
203
+
204
+ /**
205
+ * Explanation of why this value set is needed and why it has been
206
+ * designed as it has.
207
+ */
208
+ readonly purpose?: string;
209
+
210
+ /**
211
+ * A copyright statement relating to the value set and/or its contents.
212
+ * Copyright statements are generally legal restrictions on the use and
213
+ * publishing of the value set.
214
+ */
215
+ readonly copyright?: string;
216
+
217
+ /**
218
+ * A set of criteria that define the contents of the value set by
219
+ * including or excluding codes selected from the specified code
220
+ * system(s) that the value set draws from. This is also known as the
221
+ * Content Logical Definition (CLD).
222
+ */
223
+ readonly compose?: ValueSetCompose;
224
+
225
+ /**
226
+ * A value set can also be "expanded", where the value set is turned into
227
+ * a simple collection of enumerated codes. This element holds the
228
+ * expansion, if it has been performed.
229
+ */
230
+ readonly expansion?: ValueSetExpansion;
231
+ }
232
+
233
+ /**
234
+ * A set of criteria that define the contents of the value set by
235
+ * including or excluding codes selected from the specified code
236
+ * system(s) that the value set draws from. This is also known as the
237
+ * Content Logical Definition (CLD).
238
+ */
239
+ export interface ValueSetCompose {
240
+
241
+ /**
242
+ * Unique id for the element within a resource (for internal references).
243
+ * This may be any string value that does not contain spaces.
244
+ */
245
+ readonly id?: string;
246
+
247
+ /**
248
+ * May be used to represent additional information that is not part of
249
+ * the basic definition of the element. To make the use of extensions
250
+ * safe and manageable, there is a strict set of governance applied to
251
+ * the definition and use of extensions. Though any implementer can
252
+ * define an extension, there is a set of requirements that SHALL be met
253
+ * as part of the definition of the extension.
254
+ */
255
+ readonly extension?: Extension[];
256
+
257
+ /**
258
+ * May be used to represent additional information that is not part of
259
+ * the basic definition of the element and that modifies the
260
+ * understanding of the element in which it is contained and/or the
261
+ * understanding of the containing element's descendants. Usually
262
+ * modifier elements provide negation or qualification. To make the use
263
+ * of extensions safe and manageable, there is a strict set of governance
264
+ * applied to the definition and use of extensions. Though any
265
+ * implementer can define an extension, there is a set of requirements
266
+ * that SHALL be met as part of the definition of the extension.
267
+ * Applications processing a resource are required to check for modifier
268
+ * extensions.
269
+ *
270
+ * Modifier extensions SHALL NOT change the meaning of any elements on
271
+ * Resource or DomainResource (including cannot change the meaning of
272
+ * modifierExtension itself).
273
+ */
274
+ readonly modifierExtension?: Extension[];
275
+
276
+ /**
277
+ * The Locked Date is the effective date that is used to determine the
278
+ * version of all referenced Code Systems and Value Set Definitions
279
+ * included in the compose that are not already tied to a specific
280
+ * version.
281
+ */
282
+ readonly lockedDate?: string;
283
+
284
+ /**
285
+ * Whether inactive codes - codes that are not approved for current use -
286
+ * are in the value set. If inactive = true, inactive codes are to be
287
+ * included in the expansion, if inactive = false, the inactive codes
288
+ * will not be included in the expansion. If absent, the behavior is
289
+ * determined by the implementation, or by the applicable $expand
290
+ * parameters (but generally, inactive codes would be expected to be
291
+ * included).
292
+ */
293
+ readonly inactive?: boolean;
294
+
295
+ /**
296
+ * Include one or more codes from a code system or other value set(s).
297
+ */
298
+ readonly include?: ValueSetComposeInclude[];
299
+
300
+ /**
301
+ * Exclude one or more codes from the value set based on code system
302
+ * filters and/or other value sets.
303
+ */
304
+ readonly exclude?: ValueSetComposeInclude[];
305
+ }
306
+
307
+ /**
308
+ * Include one or more codes from a code system or other value set(s).
309
+ */
310
+ export interface ValueSetComposeInclude {
311
+
312
+ /**
313
+ * Unique id for the element within a resource (for internal references).
314
+ * This may be any string value that does not contain spaces.
315
+ */
316
+ readonly id?: string;
317
+
318
+ /**
319
+ * May be used to represent additional information that is not part of
320
+ * the basic definition of the element. To make the use of extensions
321
+ * safe and manageable, there is a strict set of governance applied to
322
+ * the definition and use of extensions. Though any implementer can
323
+ * define an extension, there is a set of requirements that SHALL be met
324
+ * as part of the definition of the extension.
325
+ */
326
+ readonly extension?: Extension[];
327
+
328
+ /**
329
+ * May be used to represent additional information that is not part of
330
+ * the basic definition of the element and that modifies the
331
+ * understanding of the element in which it is contained and/or the
332
+ * understanding of the containing element's descendants. Usually
333
+ * modifier elements provide negation or qualification. To make the use
334
+ * of extensions safe and manageable, there is a strict set of governance
335
+ * applied to the definition and use of extensions. Though any
336
+ * implementer can define an extension, there is a set of requirements
337
+ * that SHALL be met as part of the definition of the extension.
338
+ * Applications processing a resource are required to check for modifier
339
+ * extensions.
340
+ *
341
+ * Modifier extensions SHALL NOT change the meaning of any elements on
342
+ * Resource or DomainResource (including cannot change the meaning of
343
+ * modifierExtension itself).
344
+ */
345
+ readonly modifierExtension?: Extension[];
346
+
347
+ /**
348
+ * An absolute URI which is the code system from which the selected codes
349
+ * come from.
350
+ */
351
+ readonly system?: string;
352
+
353
+ /**
354
+ * The version of the code system that the codes are selected from, or
355
+ * the special version '*' for all versions.
356
+ */
357
+ readonly version?: string;
358
+
359
+ /**
360
+ * Specifies a concept to be included or excluded.
361
+ */
362
+ readonly concept?: ValueSetComposeIncludeConcept[];
363
+
364
+ /**
365
+ * Select concepts by specify a matching criterion based on the
366
+ * properties (including relationships) defined by the system, or on
367
+ * filters defined by the system. If multiple filters are specified, they
368
+ * SHALL all be true.
369
+ */
370
+ readonly filter?: ValueSetComposeIncludeFilter[];
371
+
372
+ /**
373
+ * Selects the concepts found in this value set (based on its value set
374
+ * definition). This is an absolute URI that is a reference to
375
+ * ValueSet.url. If multiple value sets are specified this includes the
376
+ * union of the contents of all of the referenced value sets.
377
+ */
378
+ readonly valueSet?: string[];
379
+ }
380
+
381
+ /**
382
+ * Specifies a concept to be included or excluded.
383
+ */
384
+ export interface ValueSetComposeIncludeConcept {
385
+
386
+ /**
387
+ * Unique id for the element within a resource (for internal references).
388
+ * This may be any string value that does not contain spaces.
389
+ */
390
+ readonly id?: string;
391
+
392
+ /**
393
+ * May be used to represent additional information that is not part of
394
+ * the basic definition of the element. To make the use of extensions
395
+ * safe and manageable, there is a strict set of governance applied to
396
+ * the definition and use of extensions. Though any implementer can
397
+ * define an extension, there is a set of requirements that SHALL be met
398
+ * as part of the definition of the extension.
399
+ */
400
+ readonly extension?: Extension[];
401
+
402
+ /**
403
+ * May be used to represent additional information that is not part of
404
+ * the basic definition of the element and that modifies the
405
+ * understanding of the element in which it is contained and/or the
406
+ * understanding of the containing element's descendants. Usually
407
+ * modifier elements provide negation or qualification. To make the use
408
+ * of extensions safe and manageable, there is a strict set of governance
409
+ * applied to the definition and use of extensions. Though any
410
+ * implementer can define an extension, there is a set of requirements
411
+ * that SHALL be met as part of the definition of the extension.
412
+ * Applications processing a resource are required to check for modifier
413
+ * extensions.
414
+ *
415
+ * Modifier extensions SHALL NOT change the meaning of any elements on
416
+ * Resource or DomainResource (including cannot change the meaning of
417
+ * modifierExtension itself).
418
+ */
419
+ readonly modifierExtension?: Extension[];
420
+
421
+ /**
422
+ * Specifies a code for the concept to be included or excluded.
423
+ */
424
+ readonly code?: string;
425
+
426
+ /**
427
+ * The text to display to the user for this concept in the context of
428
+ * this valueset. If no display is provided, then applications using the
429
+ * value set use the display specified for the code by the system.
430
+ */
431
+ readonly display?: string;
432
+
433
+ /**
434
+ * Additional representations for this concept when used in this value
435
+ * set - other languages, aliases, specialized purposes, used for
436
+ * particular purposes, etc.
437
+ */
438
+ readonly designation?: ValueSetComposeIncludeConceptDesignation[];
439
+ }
440
+
441
+ /**
442
+ * Additional representations for this concept when used in this value
443
+ * set - other languages, aliases, specialized purposes, used for
444
+ * particular purposes, etc.
445
+ */
446
+ export interface ValueSetComposeIncludeConceptDesignation {
447
+
448
+ /**
449
+ * Unique id for the element within a resource (for internal references).
450
+ * This may be any string value that does not contain spaces.
451
+ */
452
+ readonly id?: string;
453
+
454
+ /**
455
+ * May be used to represent additional information that is not part of
456
+ * the basic definition of the element. To make the use of extensions
457
+ * safe and manageable, there is a strict set of governance applied to
458
+ * the definition and use of extensions. Though any implementer can
459
+ * define an extension, there is a set of requirements that SHALL be met
460
+ * as part of the definition of the extension.
461
+ */
462
+ readonly extension?: Extension[];
463
+
464
+ /**
465
+ * May be used to represent additional information that is not part of
466
+ * the basic definition of the element and that modifies the
467
+ * understanding of the element in which it is contained and/or the
468
+ * understanding of the containing element's descendants. Usually
469
+ * modifier elements provide negation or qualification. To make the use
470
+ * of extensions safe and manageable, there is a strict set of governance
471
+ * applied to the definition and use of extensions. Though any
472
+ * implementer can define an extension, there is a set of requirements
473
+ * that SHALL be met as part of the definition of the extension.
474
+ * Applications processing a resource are required to check for modifier
475
+ * extensions.
476
+ *
477
+ * Modifier extensions SHALL NOT change the meaning of any elements on
478
+ * Resource or DomainResource (including cannot change the meaning of
479
+ * modifierExtension itself).
480
+ */
481
+ readonly modifierExtension?: Extension[];
482
+
483
+ /**
484
+ * The language this designation is defined for.
485
+ */
486
+ readonly language?: string;
487
+
488
+ /**
489
+ * A code that represents types of uses of designations.
490
+ */
491
+ readonly use?: Coding;
492
+
493
+ /**
494
+ * The text value for this designation.
495
+ */
496
+ readonly value?: string;
497
+ }
498
+
499
+ /**
500
+ * Select concepts by specify a matching criterion based on the
501
+ * properties (including relationships) defined by the system, or on
502
+ * filters defined by the system. If multiple filters are specified, they
503
+ * SHALL all be true.
504
+ */
505
+ export interface ValueSetComposeIncludeFilter {
506
+
507
+ /**
508
+ * Unique id for the element within a resource (for internal references).
509
+ * This may be any string value that does not contain spaces.
510
+ */
511
+ readonly id?: string;
512
+
513
+ /**
514
+ * May be used to represent additional information that is not part of
515
+ * the basic definition of the element. To make the use of extensions
516
+ * safe and manageable, there is a strict set of governance applied to
517
+ * the definition and use of extensions. Though any implementer can
518
+ * define an extension, there is a set of requirements that SHALL be met
519
+ * as part of the definition of the extension.
520
+ */
521
+ readonly extension?: Extension[];
522
+
523
+ /**
524
+ * May be used to represent additional information that is not part of
525
+ * the basic definition of the element and that modifies the
526
+ * understanding of the element in which it is contained and/or the
527
+ * understanding of the containing element's descendants. Usually
528
+ * modifier elements provide negation or qualification. To make the use
529
+ * of extensions safe and manageable, there is a strict set of governance
530
+ * applied to the definition and use of extensions. Though any
531
+ * implementer can define an extension, there is a set of requirements
532
+ * that SHALL be met as part of the definition of the extension.
533
+ * Applications processing a resource are required to check for modifier
534
+ * extensions.
535
+ *
536
+ * Modifier extensions SHALL NOT change the meaning of any elements on
537
+ * Resource or DomainResource (including cannot change the meaning of
538
+ * modifierExtension itself).
539
+ */
540
+ readonly modifierExtension?: Extension[];
541
+
542
+ /**
543
+ * A code that identifies a property or a filter defined in the code
544
+ * system.
545
+ */
546
+ readonly property?: string;
547
+
548
+ /**
549
+ * The kind of operation to perform as a part of the filter criteria.
550
+ */
551
+ readonly op?: string;
552
+
553
+ /**
554
+ * The match value may be either a code defined by the system, or a
555
+ * string value, which is a regex match on the literal string of the
556
+ * property value (if the filter represents a property defined in
557
+ * CodeSystem) or of the system filter value (if the filter represents a
558
+ * filter defined in CodeSystem) when the operation is 'regex', or one of
559
+ * the values (true and false), when the operation is 'exists'.
560
+ */
561
+ readonly value?: string;
562
+ }
563
+
564
+ /**
565
+ * A value set can also be "expanded", where the value set is turned into
566
+ * a simple collection of enumerated codes. This element holds the
567
+ * expansion, if it has been performed.
568
+ */
569
+ export interface ValueSetExpansion {
570
+
571
+ /**
572
+ * Unique id for the element within a resource (for internal references).
573
+ * This may be any string value that does not contain spaces.
574
+ */
575
+ readonly id?: string;
576
+
577
+ /**
578
+ * May be used to represent additional information that is not part of
579
+ * the basic definition of the element. To make the use of extensions
580
+ * safe and manageable, there is a strict set of governance applied to
581
+ * the definition and use of extensions. Though any implementer can
582
+ * define an extension, there is a set of requirements that SHALL be met
583
+ * as part of the definition of the extension.
584
+ */
585
+ readonly extension?: Extension[];
586
+
587
+ /**
588
+ * May be used to represent additional information that is not part of
589
+ * the basic definition of the element and that modifies the
590
+ * understanding of the element in which it is contained and/or the
591
+ * understanding of the containing element's descendants. Usually
592
+ * modifier elements provide negation or qualification. To make the use
593
+ * of extensions safe and manageable, there is a strict set of governance
594
+ * applied to the definition and use of extensions. Though any
595
+ * implementer can define an extension, there is a set of requirements
596
+ * that SHALL be met as part of the definition of the extension.
597
+ * Applications processing a resource are required to check for modifier
598
+ * extensions.
599
+ *
600
+ * Modifier extensions SHALL NOT change the meaning of any elements on
601
+ * Resource or DomainResource (including cannot change the meaning of
602
+ * modifierExtension itself).
603
+ */
604
+ readonly modifierExtension?: Extension[];
605
+
606
+ /**
607
+ * An identifier that uniquely identifies this expansion of the valueset,
608
+ * based on a unique combination of the provided parameters, the system
609
+ * default parameters, and the underlying system code system versions
610
+ * etc. Systems may re-use the same identifier as long as those factors
611
+ * remain the same, and the expansion is the same, but are not required
612
+ * to do so. This is a business identifier.
613
+ */
614
+ readonly identifier?: string;
615
+
616
+ /**
617
+ * The time at which the expansion was produced by the expanding system.
618
+ */
619
+ readonly timestamp?: string;
620
+
621
+ /**
622
+ * The total number of concepts in the expansion. If the number of
623
+ * concept nodes in this resource is less than the stated number, then
624
+ * the server can return more using the offset parameter.
625
+ */
626
+ readonly total?: number;
627
+
628
+ /**
629
+ * If paging is being used, the offset at which this resource starts.
630
+ * I.e. this resource is a partial view into the expansion. If paging is
631
+ * not being used, this element SHALL NOT be present.
632
+ */
633
+ readonly offset?: number;
634
+
635
+ /**
636
+ * A parameter that controlled the expansion process. These parameters
637
+ * may be used by users of expanded value sets to check whether the
638
+ * expansion is suitable for a particular purpose, or to pick the correct
639
+ * expansion.
640
+ */
641
+ readonly parameter?: ValueSetExpansionParameter[];
642
+
643
+ /**
644
+ * The codes that are contained in the value set expansion.
645
+ */
646
+ readonly contains?: ValueSetExpansionContains[];
647
+ }
648
+
649
+ /**
650
+ * The codes that are contained in the value set expansion.
651
+ */
652
+ export interface ValueSetExpansionContains {
653
+
654
+ /**
655
+ * Unique id for the element within a resource (for internal references).
656
+ * This may be any string value that does not contain spaces.
657
+ */
658
+ readonly id?: string;
659
+
660
+ /**
661
+ * May be used to represent additional information that is not part of
662
+ * the basic definition of the element. To make the use of extensions
663
+ * safe and manageable, there is a strict set of governance applied to
664
+ * the definition and use of extensions. Though any implementer can
665
+ * define an extension, there is a set of requirements that SHALL be met
666
+ * as part of the definition of the extension.
667
+ */
668
+ readonly extension?: Extension[];
669
+
670
+ /**
671
+ * May be used to represent additional information that is not part of
672
+ * the basic definition of the element and that modifies the
673
+ * understanding of the element in which it is contained and/or the
674
+ * understanding of the containing element's descendants. Usually
675
+ * modifier elements provide negation or qualification. To make the use
676
+ * of extensions safe and manageable, there is a strict set of governance
677
+ * applied to the definition and use of extensions. Though any
678
+ * implementer can define an extension, there is a set of requirements
679
+ * that SHALL be met as part of the definition of the extension.
680
+ * Applications processing a resource are required to check for modifier
681
+ * extensions.
682
+ *
683
+ * Modifier extensions SHALL NOT change the meaning of any elements on
684
+ * Resource or DomainResource (including cannot change the meaning of
685
+ * modifierExtension itself).
686
+ */
687
+ readonly modifierExtension?: Extension[];
688
+
689
+ /**
690
+ * An absolute URI which is the code system in which the code for this
691
+ * item in the expansion is defined.
692
+ */
693
+ readonly system?: string;
694
+
695
+ /**
696
+ * If true, this entry is included in the expansion for navigational
697
+ * purposes, and the user cannot select the code directly as a proper
698
+ * value.
699
+ */
700
+ readonly abstract?: boolean;
701
+
702
+ /**
703
+ * If the concept is inactive in the code system that defines it.
704
+ * Inactive codes are those that are no longer to be used, but are
705
+ * maintained by the code system for understanding legacy data. It might
706
+ * not be known or specified whether an concept is inactive (and it may
707
+ * depend on the context of use).
708
+ */
709
+ readonly inactive?: boolean;
710
+
711
+ /**
712
+ * The version of the code system from this code was taken. Note that a
713
+ * well-maintained code system does not need the version reported,
714
+ * because the meaning of codes is consistent across versions. However
715
+ * this cannot consistently be assured, and when the meaning is not
716
+ * guaranteed to be consistent, the version SHOULD be exchanged.
717
+ */
718
+ readonly version?: string;
719
+
720
+ /**
721
+ * The code for this item in the expansion hierarchy. If this code is
722
+ * missing the entry in the hierarchy is a place holder (abstract) and
723
+ * does not represent a valid code in the value set.
724
+ */
725
+ readonly code?: string;
726
+
727
+ /**
728
+ * The recommended display for this item in the expansion.
729
+ */
730
+ readonly display?: string;
731
+
732
+ /**
733
+ * Additional representations for this item - other languages, aliases,
734
+ * specialized purposes, used for particular purposes, etc. These are
735
+ * relevant when the conditions of the expansion do not fix to a single
736
+ * correct representation.
737
+ */
738
+ readonly designation?: ValueSetComposeIncludeConceptDesignation[];
739
+
740
+ /**
741
+ * Other codes and entries contained under this entry in the hierarchy.
742
+ */
743
+ readonly contains?: ValueSetExpansionContains[];
744
+ }
745
+
746
+ /**
747
+ * A parameter that controlled the expansion process. These parameters
748
+ * may be used by users of expanded value sets to check whether the
749
+ * expansion is suitable for a particular purpose, or to pick the correct
750
+ * expansion.
751
+ */
752
+ export interface ValueSetExpansionParameter {
753
+
754
+ /**
755
+ * Unique id for the element within a resource (for internal references).
756
+ * This may be any string value that does not contain spaces.
757
+ */
758
+ readonly id?: string;
759
+
760
+ /**
761
+ * May be used to represent additional information that is not part of
762
+ * the basic definition of the element. To make the use of extensions
763
+ * safe and manageable, there is a strict set of governance applied to
764
+ * the definition and use of extensions. Though any implementer can
765
+ * define an extension, there is a set of requirements that SHALL be met
766
+ * as part of the definition of the extension.
767
+ */
768
+ readonly extension?: Extension[];
769
+
770
+ /**
771
+ * May be used to represent additional information that is not part of
772
+ * the basic definition of the element and that modifies the
773
+ * understanding of the element in which it is contained and/or the
774
+ * understanding of the containing element's descendants. Usually
775
+ * modifier elements provide negation or qualification. To make the use
776
+ * of extensions safe and manageable, there is a strict set of governance
777
+ * applied to the definition and use of extensions. Though any
778
+ * implementer can define an extension, there is a set of requirements
779
+ * that SHALL be met as part of the definition of the extension.
780
+ * Applications processing a resource are required to check for modifier
781
+ * extensions.
782
+ *
783
+ * Modifier extensions SHALL NOT change the meaning of any elements on
784
+ * Resource or DomainResource (including cannot change the meaning of
785
+ * modifierExtension itself).
786
+ */
787
+ readonly modifierExtension?: Extension[];
788
+
789
+ /**
790
+ * Name of the input parameter to the $expand operation; may be a
791
+ * server-assigned name for additional default or other server-supplied
792
+ * parameters used to control the expansion process.
793
+ */
794
+ readonly name?: string;
795
+
796
+ /**
797
+ * The value of the parameter.
798
+ */
799
+ readonly valueString?: string;
800
+
801
+ /**
802
+ * The value of the parameter.
803
+ */
804
+ readonly valueBoolean?: boolean;
805
+
806
+ /**
807
+ * The value of the parameter.
808
+ */
809
+ readonly valueInteger?: number;
810
+
811
+ /**
812
+ * The value of the parameter.
813
+ */
814
+ readonly valueDecimal?: number;
815
+
816
+ /**
817
+ * The value of the parameter.
818
+ */
819
+ readonly valueUri?: string;
820
+
821
+ /**
822
+ * The value of the parameter.
823
+ */
824
+ readonly valueCode?: string;
825
+
826
+ /**
827
+ * The value of the parameter.
828
+ */
829
+ readonly valueDateTime?: string;
830
+ }