@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,703 @@
1
+ /*
2
+ * Generated by @medplum/generator
3
+ * Do not edit manually.
4
+ */
5
+
6
+ import { Attachment } from './Attachment';
7
+ import { CodeableConcept } from './CodeableConcept';
8
+ import { Coding } from './Coding';
9
+ import { ContactDetail } from './ContactDetail';
10
+ import { Extension } from './Extension';
11
+ import { Identifier } from './Identifier';
12
+ import { Meta } from './Meta';
13
+ import { Narrative } from './Narrative';
14
+ import { Period } from './Period';
15
+ import { Quantity } from './Quantity';
16
+ import { Reference } from './Reference';
17
+ import { Resource } from './Resource';
18
+ import { UsageContext } from './UsageContext';
19
+
20
+ /**
21
+ * A structured set of questions intended to guide the collection of
22
+ * answers from end-users. Questionnaires provide detailed control over
23
+ * order, presentation, phraseology and grouping to allow coherent,
24
+ * consistent data collection.
25
+ */
26
+ export interface Questionnaire {
27
+
28
+ /**
29
+ * This is a Questionnaire resource
30
+ */
31
+ readonly resourceType: 'Questionnaire';
32
+
33
+ /**
34
+ * The logical id of the resource, as used in the URL for the resource.
35
+ * Once assigned, this value never changes.
36
+ */
37
+ readonly id?: string;
38
+
39
+ /**
40
+ * The metadata about the resource. This is content that is maintained by
41
+ * the infrastructure. Changes to the content might not always be
42
+ * associated with version changes to the resource.
43
+ */
44
+ readonly meta?: Meta;
45
+
46
+ /**
47
+ * A reference to a set of rules that were followed when the resource was
48
+ * constructed, and which must be understood when processing the content.
49
+ * Often, this is a reference to an implementation guide that defines the
50
+ * special rules along with other profiles etc.
51
+ */
52
+ readonly implicitRules?: string;
53
+
54
+ /**
55
+ * The base language in which the resource is written.
56
+ */
57
+ readonly language?: string;
58
+
59
+ /**
60
+ * A human-readable narrative that contains a summary of the resource and
61
+ * can be used to represent the content of the resource to a human. The
62
+ * narrative need not encode all the structured data, but is required to
63
+ * contain sufficient detail to make it "clinically safe" for a human to
64
+ * just read the narrative. Resource definitions may define what content
65
+ * should be represented in the narrative to ensure clinical safety.
66
+ */
67
+ readonly text?: Narrative;
68
+
69
+ /**
70
+ * These resources do not have an independent existence apart from the
71
+ * resource that contains them - they cannot be identified independently,
72
+ * and nor can they have their own independent transaction scope.
73
+ */
74
+ readonly contained?: Resource[];
75
+
76
+ /**
77
+ * May be used to represent additional information that is not part of
78
+ * the basic definition of the resource. To make the use of extensions
79
+ * safe and manageable, there is a strict set of governance applied to
80
+ * the definition and use of extensions. Though any implementer can
81
+ * define an extension, there is a set of requirements that SHALL be met
82
+ * as part of the definition of the extension.
83
+ */
84
+ readonly extension?: Extension[];
85
+
86
+ /**
87
+ * May be used to represent additional information that is not part of
88
+ * the basic definition of the resource and that modifies the
89
+ * understanding of the element that contains it and/or the understanding
90
+ * of the containing element's descendants. Usually modifier elements
91
+ * provide negation or qualification. To make the use of extensions safe
92
+ * and manageable, there is a strict set of governance applied to the
93
+ * definition and use of extensions. Though any implementer is allowed to
94
+ * define an extension, there is a set of requirements that SHALL be met
95
+ * as part of the definition of the extension. Applications processing a
96
+ * resource are required to check for modifier extensions.
97
+ *
98
+ * Modifier extensions SHALL NOT change the meaning of any elements on
99
+ * Resource or DomainResource (including cannot change the meaning of
100
+ * modifierExtension itself).
101
+ */
102
+ readonly modifierExtension?: Extension[];
103
+
104
+ /**
105
+ * An absolute URI that is used to identify this questionnaire when it is
106
+ * referenced in a specification, model, design or an instance; also
107
+ * called its canonical identifier. This SHOULD be globally unique and
108
+ * SHOULD be a literal address at which at which an authoritative
109
+ * instance of this questionnaire is (or will be) published. This URL can
110
+ * be the target of a canonical reference. It SHALL remain the same when
111
+ * the questionnaire is stored on different servers.
112
+ */
113
+ readonly url?: string;
114
+
115
+ /**
116
+ * A formal identifier that is used to identify this questionnaire when
117
+ * it is represented in other formats, or referenced in a specification,
118
+ * model, design or an instance.
119
+ */
120
+ readonly identifier?: Identifier[];
121
+
122
+ /**
123
+ * The identifier that is used to identify this version of the
124
+ * questionnaire when it is referenced in a specification, model, design
125
+ * or instance. This is an arbitrary value managed by the questionnaire
126
+ * author and is not expected to be globally unique. For example, it
127
+ * might be a timestamp (e.g. yyyymmdd) if a managed version is not
128
+ * available. There is also no expectation that versions can be placed in
129
+ * a lexicographical sequence.
130
+ */
131
+ readonly version?: string;
132
+
133
+ /**
134
+ * A natural language name identifying the questionnaire. This name
135
+ * should be usable as an identifier for the module by machine processing
136
+ * applications such as code generation.
137
+ */
138
+ readonly name?: string;
139
+
140
+ /**
141
+ * A short, descriptive, user-friendly title for the questionnaire.
142
+ */
143
+ readonly title?: string;
144
+
145
+ /**
146
+ * The URL of a Questionnaire that this Questionnaire is based on.
147
+ */
148
+ readonly derivedFrom?: string[];
149
+
150
+ /**
151
+ * The status of this questionnaire. Enables tracking the life-cycle of
152
+ * the content.
153
+ */
154
+ readonly status?: string;
155
+
156
+ /**
157
+ * A Boolean value to indicate that this questionnaire is authored for
158
+ * testing purposes (or education/evaluation/marketing) and is not
159
+ * intended to be used for genuine usage.
160
+ */
161
+ readonly experimental?: boolean;
162
+
163
+ /**
164
+ * The types of subjects that can be the subject of responses created for
165
+ * the questionnaire.
166
+ */
167
+ readonly subjectType?: string[];
168
+
169
+ /**
170
+ * The date (and optionally time) when the questionnaire was published.
171
+ * The date must change when the business version changes and it must
172
+ * change if the status code changes. In addition, it should change when
173
+ * the substantive content of the questionnaire changes.
174
+ */
175
+ readonly date?: string;
176
+
177
+ /**
178
+ * The name of the organization or individual that published the
179
+ * questionnaire.
180
+ */
181
+ readonly publisher?: string;
182
+
183
+ /**
184
+ * Contact details to assist a user in finding and communicating with the
185
+ * publisher.
186
+ */
187
+ readonly contact?: ContactDetail[];
188
+
189
+ /**
190
+ * A free text natural language description of the questionnaire from a
191
+ * consumer's perspective.
192
+ */
193
+ readonly description?: string;
194
+
195
+ /**
196
+ * The content was developed with a focus and intent of supporting the
197
+ * contexts that are listed. These contexts may be general categories
198
+ * (gender, age, ...) or may be references to specific programs
199
+ * (insurance plans, studies, ...) and may be used to assist with
200
+ * indexing and searching for appropriate questionnaire instances.
201
+ */
202
+ readonly useContext?: UsageContext[];
203
+
204
+ /**
205
+ * A legal or geographic region in which the questionnaire is intended to
206
+ * be used.
207
+ */
208
+ readonly jurisdiction?: CodeableConcept[];
209
+
210
+ /**
211
+ * Explanation of why this questionnaire is needed and why it has been
212
+ * designed as it has.
213
+ */
214
+ readonly purpose?: string;
215
+
216
+ /**
217
+ * A copyright statement relating to the questionnaire and/or its
218
+ * contents. Copyright statements are generally legal restrictions on the
219
+ * use and publishing of the questionnaire.
220
+ */
221
+ readonly copyright?: string;
222
+
223
+ /**
224
+ * The date on which the resource content was approved by the publisher.
225
+ * Approval happens once when the content is officially approved for
226
+ * usage.
227
+ */
228
+ readonly approvalDate?: string;
229
+
230
+ /**
231
+ * The date on which the resource content was last reviewed. Review
232
+ * happens periodically after approval but does not change the original
233
+ * approval date.
234
+ */
235
+ readonly lastReviewDate?: string;
236
+
237
+ /**
238
+ * The period during which the questionnaire content was or is planned to
239
+ * be in active use.
240
+ */
241
+ readonly effectivePeriod?: Period;
242
+
243
+ /**
244
+ * An identifier for this question or group of questions in a particular
245
+ * terminology such as LOINC.
246
+ */
247
+ readonly code?: Coding[];
248
+
249
+ /**
250
+ * A particular question, question grouping or display text that is part
251
+ * of the questionnaire.
252
+ */
253
+ readonly item?: QuestionnaireItem[];
254
+ }
255
+
256
+ /**
257
+ * A particular question, question grouping or display text that is part
258
+ * of the questionnaire.
259
+ */
260
+ export interface QuestionnaireItem {
261
+
262
+ /**
263
+ * Unique id for the element within a resource (for internal references).
264
+ * This may be any string value that does not contain spaces.
265
+ */
266
+ readonly id?: string;
267
+
268
+ /**
269
+ * May be used to represent additional information that is not part of
270
+ * the basic definition of the element. To make the use of extensions
271
+ * safe and manageable, there is a strict set of governance applied to
272
+ * the definition and use of extensions. Though any implementer can
273
+ * define an extension, there is a set of requirements that SHALL be met
274
+ * as part of the definition of the extension.
275
+ */
276
+ readonly extension?: Extension[];
277
+
278
+ /**
279
+ * May be used to represent additional information that is not part of
280
+ * the basic definition of the element and that modifies the
281
+ * understanding of the element in which it is contained and/or the
282
+ * understanding of the containing element's descendants. Usually
283
+ * modifier elements provide negation or qualification. To make the use
284
+ * of extensions safe and manageable, there is a strict set of governance
285
+ * applied to the definition and use of extensions. Though any
286
+ * implementer can define an extension, there is a set of requirements
287
+ * that SHALL be met as part of the definition of the extension.
288
+ * Applications processing a resource are required to check for modifier
289
+ * extensions.
290
+ *
291
+ * Modifier extensions SHALL NOT change the meaning of any elements on
292
+ * Resource or DomainResource (including cannot change the meaning of
293
+ * modifierExtension itself).
294
+ */
295
+ readonly modifierExtension?: Extension[];
296
+
297
+ /**
298
+ * An identifier that is unique within the Questionnaire allowing linkage
299
+ * to the equivalent item in a QuestionnaireResponse resource.
300
+ */
301
+ readonly linkId?: string;
302
+
303
+ /**
304
+ * This element is a URI that refers to an
305
+ * [ElementDefinition](elementdefinition.html) that provides information
306
+ * about this item, including information that might otherwise be
307
+ * included in the instance of the Questionnaire resource. A detailed
308
+ * description of the construction of the URI is shown in Comments,
309
+ * below. If this element is present then the following element values
310
+ * MAY be derived from the Element Definition if the corresponding
311
+ * elements of this Questionnaire resource instance have no value:
312
+ *
313
+ * * code (ElementDefinition.code)
314
+ * * type (ElementDefinition.type)
315
+ * * required (ElementDefinition.min)
316
+ * * repeats (ElementDefinition.max)
317
+ * * maxLength (ElementDefinition.maxLength)
318
+ * * answerValueSet (ElementDefinition.binding)
319
+ * * options (ElementDefinition.binding).
320
+ */
321
+ readonly definition?: string;
322
+
323
+ /**
324
+ * A terminology code that corresponds to this group or question (e.g. a
325
+ * code from LOINC, which defines many questions and answers).
326
+ */
327
+ readonly code?: Coding[];
328
+
329
+ /**
330
+ * A short label for a particular group, question or set of display text
331
+ * within the questionnaire used for reference by the individual
332
+ * completing the questionnaire.
333
+ */
334
+ readonly prefix?: string;
335
+
336
+ /**
337
+ * The name of a section, the text of a question or text content for a
338
+ * display item.
339
+ */
340
+ readonly text?: string;
341
+
342
+ /**
343
+ * The type of questionnaire item this is - whether text for display, a
344
+ * grouping of other items or a particular type of data to be captured
345
+ * (string, integer, coded choice, etc.).
346
+ */
347
+ readonly type?: string;
348
+
349
+ /**
350
+ * A constraint indicating that this item should only be enabled
351
+ * (displayed/allow answers to be captured) when the specified condition
352
+ * is true.
353
+ */
354
+ readonly enableWhen?: QuestionnaireItemEnableWhen[];
355
+
356
+ /**
357
+ * Controls how multiple enableWhen values are interpreted - whether all
358
+ * or any must be true.
359
+ */
360
+ readonly enableBehavior?: string;
361
+
362
+ /**
363
+ * An indication, if true, that the item must be present in a "completed"
364
+ * QuestionnaireResponse. If false, the item may be skipped when
365
+ * answering the questionnaire.
366
+ */
367
+ readonly required?: boolean;
368
+
369
+ /**
370
+ * An indication, if true, that the item may occur multiple times in the
371
+ * response, collecting multiple answers for questions or multiple sets
372
+ * of answers for groups.
373
+ */
374
+ readonly repeats?: boolean;
375
+
376
+ /**
377
+ * An indication, when true, that the value cannot be changed by a human
378
+ * respondent to the Questionnaire.
379
+ */
380
+ readonly readOnly?: boolean;
381
+
382
+ /**
383
+ * The maximum number of characters that are permitted in the answer to
384
+ * be considered a "valid" QuestionnaireResponse.
385
+ */
386
+ readonly maxLength?: number;
387
+
388
+ /**
389
+ * A reference to a value set containing a list of codes representing
390
+ * permitted answers for a "choice" or "open-choice" question.
391
+ */
392
+ readonly answerValueSet?: string;
393
+
394
+ /**
395
+ * One of the permitted answers for a "choice" or "open-choice" question.
396
+ */
397
+ readonly answerOption?: QuestionnaireItemAnswerOption[];
398
+
399
+ /**
400
+ * One or more values that should be pre-populated in the answer when
401
+ * initially rendering the questionnaire for user input.
402
+ */
403
+ readonly initial?: QuestionnaireItemInitial[];
404
+
405
+ /**
406
+ * Text, questions and other groups to be nested beneath a question or
407
+ * group.
408
+ */
409
+ readonly item?: QuestionnaireItem[];
410
+ }
411
+
412
+ /**
413
+ * One of the permitted answers for a "choice" or "open-choice" question.
414
+ */
415
+ export interface QuestionnaireItemAnswerOption {
416
+
417
+ /**
418
+ * Unique id for the element within a resource (for internal references).
419
+ * This may be any string value that does not contain spaces.
420
+ */
421
+ readonly id?: string;
422
+
423
+ /**
424
+ * May be used to represent additional information that is not part of
425
+ * the basic definition of the element. To make the use of extensions
426
+ * safe and manageable, there is a strict set of governance applied to
427
+ * the definition and use of extensions. Though any implementer can
428
+ * define an extension, there is a set of requirements that SHALL be met
429
+ * as part of the definition of the extension.
430
+ */
431
+ readonly extension?: Extension[];
432
+
433
+ /**
434
+ * May be used to represent additional information that is not part of
435
+ * the basic definition of the element and that modifies the
436
+ * understanding of the element in which it is contained and/or the
437
+ * understanding of the containing element's descendants. Usually
438
+ * modifier elements provide negation or qualification. To make the use
439
+ * of extensions safe and manageable, there is a strict set of governance
440
+ * applied to the definition and use of extensions. Though any
441
+ * implementer can define an extension, there is a set of requirements
442
+ * that SHALL be met as part of the definition of the extension.
443
+ * Applications processing a resource are required to check for modifier
444
+ * extensions.
445
+ *
446
+ * Modifier extensions SHALL NOT change the meaning of any elements on
447
+ * Resource or DomainResource (including cannot change the meaning of
448
+ * modifierExtension itself).
449
+ */
450
+ readonly modifierExtension?: Extension[];
451
+
452
+ /**
453
+ * A potential answer that's allowed as the answer to this question.
454
+ */
455
+ readonly valueInteger?: number;
456
+
457
+ /**
458
+ * A potential answer that's allowed as the answer to this question.
459
+ */
460
+ readonly valueDate?: string;
461
+
462
+ /**
463
+ * A potential answer that's allowed as the answer to this question.
464
+ */
465
+ readonly valueTime?: string;
466
+
467
+ /**
468
+ * A potential answer that's allowed as the answer to this question.
469
+ */
470
+ readonly valueString?: string;
471
+
472
+ /**
473
+ * A potential answer that's allowed as the answer to this question.
474
+ */
475
+ readonly valueCoding?: Coding;
476
+
477
+ /**
478
+ * A potential answer that's allowed as the answer to this question.
479
+ */
480
+ readonly valueReference?: Reference<Resource>;
481
+
482
+ /**
483
+ * Indicates whether the answer value is selected when the list of
484
+ * possible answers is initially shown.
485
+ */
486
+ readonly initialSelected?: boolean;
487
+ }
488
+
489
+ /**
490
+ * A constraint indicating that this item should only be enabled
491
+ * (displayed/allow answers to be captured) when the specified condition
492
+ * is true.
493
+ */
494
+ export interface QuestionnaireItemEnableWhen {
495
+
496
+ /**
497
+ * Unique id for the element within a resource (for internal references).
498
+ * This may be any string value that does not contain spaces.
499
+ */
500
+ readonly id?: string;
501
+
502
+ /**
503
+ * May be used to represent additional information that is not part of
504
+ * the basic definition of the element. To make the use of extensions
505
+ * safe and manageable, there is a strict set of governance applied to
506
+ * the definition and use of extensions. Though any implementer can
507
+ * define an extension, there is a set of requirements that SHALL be met
508
+ * as part of the definition of the extension.
509
+ */
510
+ readonly extension?: Extension[];
511
+
512
+ /**
513
+ * May be used to represent additional information that is not part of
514
+ * the basic definition of the element and that modifies the
515
+ * understanding of the element in which it is contained and/or the
516
+ * understanding of the containing element's descendants. Usually
517
+ * modifier elements provide negation or qualification. To make the use
518
+ * of extensions safe and manageable, there is a strict set of governance
519
+ * applied to the definition and use of extensions. Though any
520
+ * implementer can define an extension, there is a set of requirements
521
+ * that SHALL be met as part of the definition of the extension.
522
+ * Applications processing a resource are required to check for modifier
523
+ * extensions.
524
+ *
525
+ * Modifier extensions SHALL NOT change the meaning of any elements on
526
+ * Resource or DomainResource (including cannot change the meaning of
527
+ * modifierExtension itself).
528
+ */
529
+ readonly modifierExtension?: Extension[];
530
+
531
+ /**
532
+ * The linkId for the question whose answer (or lack of answer) governs
533
+ * whether this item is enabled.
534
+ */
535
+ readonly question?: string;
536
+
537
+ /**
538
+ * Specifies the criteria by which the question is enabled.
539
+ */
540
+ readonly operator?: string;
541
+
542
+ /**
543
+ * A value that the referenced question is tested using the specified
544
+ * operator in order for the item to be enabled.
545
+ */
546
+ readonly answerBoolean?: boolean;
547
+
548
+ /**
549
+ * A value that the referenced question is tested using the specified
550
+ * operator in order for the item to be enabled.
551
+ */
552
+ readonly answerDecimal?: number;
553
+
554
+ /**
555
+ * A value that the referenced question is tested using the specified
556
+ * operator in order for the item to be enabled.
557
+ */
558
+ readonly answerInteger?: number;
559
+
560
+ /**
561
+ * A value that the referenced question is tested using the specified
562
+ * operator in order for the item to be enabled.
563
+ */
564
+ readonly answerDate?: string;
565
+
566
+ /**
567
+ * A value that the referenced question is tested using the specified
568
+ * operator in order for the item to be enabled.
569
+ */
570
+ readonly answerDateTime?: string;
571
+
572
+ /**
573
+ * A value that the referenced question is tested using the specified
574
+ * operator in order for the item to be enabled.
575
+ */
576
+ readonly answerTime?: string;
577
+
578
+ /**
579
+ * A value that the referenced question is tested using the specified
580
+ * operator in order for the item to be enabled.
581
+ */
582
+ readonly answerString?: string;
583
+
584
+ /**
585
+ * A value that the referenced question is tested using the specified
586
+ * operator in order for the item to be enabled.
587
+ */
588
+ readonly answerCoding?: Coding;
589
+
590
+ /**
591
+ * A value that the referenced question is tested using the specified
592
+ * operator in order for the item to be enabled.
593
+ */
594
+ readonly answerQuantity?: Quantity;
595
+
596
+ /**
597
+ * A value that the referenced question is tested using the specified
598
+ * operator in order for the item to be enabled.
599
+ */
600
+ readonly answerReference?: Reference<Resource>;
601
+ }
602
+
603
+ /**
604
+ * One or more values that should be pre-populated in the answer when
605
+ * initially rendering the questionnaire for user input.
606
+ */
607
+ export interface QuestionnaireItemInitial {
608
+
609
+ /**
610
+ * Unique id for the element within a resource (for internal references).
611
+ * This may be any string value that does not contain spaces.
612
+ */
613
+ readonly id?: string;
614
+
615
+ /**
616
+ * May be used to represent additional information that is not part of
617
+ * the basic definition of the element. To make the use of extensions
618
+ * safe and manageable, there is a strict set of governance applied to
619
+ * the definition and use of extensions. Though any implementer can
620
+ * define an extension, there is a set of requirements that SHALL be met
621
+ * as part of the definition of the extension.
622
+ */
623
+ readonly extension?: Extension[];
624
+
625
+ /**
626
+ * May be used to represent additional information that is not part of
627
+ * the basic definition of the element and that modifies the
628
+ * understanding of the element in which it is contained and/or the
629
+ * understanding of the containing element's descendants. Usually
630
+ * modifier elements provide negation or qualification. To make the use
631
+ * of extensions safe and manageable, there is a strict set of governance
632
+ * applied to the definition and use of extensions. Though any
633
+ * implementer can define an extension, there is a set of requirements
634
+ * that SHALL be met as part of the definition of the extension.
635
+ * Applications processing a resource are required to check for modifier
636
+ * extensions.
637
+ *
638
+ * Modifier extensions SHALL NOT change the meaning of any elements on
639
+ * Resource or DomainResource (including cannot change the meaning of
640
+ * modifierExtension itself).
641
+ */
642
+ readonly modifierExtension?: Extension[];
643
+
644
+ /**
645
+ * The actual value to for an initial answer.
646
+ */
647
+ readonly valueBoolean?: boolean;
648
+
649
+ /**
650
+ * The actual value to for an initial answer.
651
+ */
652
+ readonly valueDecimal?: number;
653
+
654
+ /**
655
+ * The actual value to for an initial answer.
656
+ */
657
+ readonly valueInteger?: number;
658
+
659
+ /**
660
+ * The actual value to for an initial answer.
661
+ */
662
+ readonly valueDate?: string;
663
+
664
+ /**
665
+ * The actual value to for an initial answer.
666
+ */
667
+ readonly valueDateTime?: string;
668
+
669
+ /**
670
+ * The actual value to for an initial answer.
671
+ */
672
+ readonly valueTime?: string;
673
+
674
+ /**
675
+ * The actual value to for an initial answer.
676
+ */
677
+ readonly valueString?: string;
678
+
679
+ /**
680
+ * The actual value to for an initial answer.
681
+ */
682
+ readonly valueUri?: string;
683
+
684
+ /**
685
+ * The actual value to for an initial answer.
686
+ */
687
+ readonly valueAttachment?: Attachment;
688
+
689
+ /**
690
+ * The actual value to for an initial answer.
691
+ */
692
+ readonly valueCoding?: Coding;
693
+
694
+ /**
695
+ * The actual value to for an initial answer.
696
+ */
697
+ readonly valueQuantity?: Quantity;
698
+
699
+ /**
700
+ * The actual value to for an initial answer.
701
+ */
702
+ readonly valueReference?: Reference<Resource>;
703
+ }