@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,944 @@
1
+ /*
2
+ * Generated by @medplum/generator
3
+ * Do not edit manually.
4
+ */
5
+
6
+ import { Binary } from './Binary';
7
+ import { CodeableConcept } from './CodeableConcept';
8
+ import { ContactDetail } from './ContactDetail';
9
+ import { Extension } from './Extension';
10
+ import { Meta } from './Meta';
11
+ import { Narrative } from './Narrative';
12
+ import { Reference } from './Reference';
13
+ import { Resource } from './Resource';
14
+ import { UsageContext } from './UsageContext';
15
+
16
+ /**
17
+ * A set of rules of how a particular interoperability or standards
18
+ * problem is solved - typically through the use of FHIR resources. This
19
+ * resource is used to gather all the parts of an implementation guide
20
+ * into a logical whole and to publish a computable definition of all the
21
+ * parts.
22
+ */
23
+ export interface ImplementationGuide {
24
+
25
+ /**
26
+ * This is a ImplementationGuide resource
27
+ */
28
+ readonly resourceType: 'ImplementationGuide';
29
+
30
+ /**
31
+ * The logical id of the resource, as used in the URL for the resource.
32
+ * Once assigned, this value never changes.
33
+ */
34
+ readonly id?: string;
35
+
36
+ /**
37
+ * The metadata about the resource. This is content that is maintained by
38
+ * the infrastructure. Changes to the content might not always be
39
+ * associated with version changes to the resource.
40
+ */
41
+ readonly meta?: Meta;
42
+
43
+ /**
44
+ * A reference to a set of rules that were followed when the resource was
45
+ * constructed, and which must be understood when processing the content.
46
+ * Often, this is a reference to an implementation guide that defines the
47
+ * special rules along with other profiles etc.
48
+ */
49
+ readonly implicitRules?: string;
50
+
51
+ /**
52
+ * The base language in which the resource is written.
53
+ */
54
+ readonly language?: string;
55
+
56
+ /**
57
+ * A human-readable narrative that contains a summary of the resource and
58
+ * can be used to represent the content of the resource to a human. The
59
+ * narrative need not encode all the structured data, but is required to
60
+ * contain sufficient detail to make it "clinically safe" for a human to
61
+ * just read the narrative. Resource definitions may define what content
62
+ * should be represented in the narrative to ensure clinical safety.
63
+ */
64
+ readonly text?: Narrative;
65
+
66
+ /**
67
+ * These resources do not have an independent existence apart from the
68
+ * resource that contains them - they cannot be identified independently,
69
+ * and nor can they have their own independent transaction scope.
70
+ */
71
+ readonly contained?: Resource[];
72
+
73
+ /**
74
+ * May be used to represent additional information that is not part of
75
+ * the basic definition of the resource. To make the use of extensions
76
+ * safe and manageable, there is a strict set of governance applied to
77
+ * the definition and use of extensions. Though any implementer can
78
+ * define an extension, there is a set of requirements that SHALL be met
79
+ * as part of the definition of the extension.
80
+ */
81
+ readonly extension?: Extension[];
82
+
83
+ /**
84
+ * May be used to represent additional information that is not part of
85
+ * the basic definition of the resource and that modifies the
86
+ * understanding of the element that contains it and/or the understanding
87
+ * of the containing element's descendants. Usually modifier elements
88
+ * provide negation or qualification. To make the use of extensions safe
89
+ * and manageable, there is a strict set of governance applied to the
90
+ * definition and use of extensions. Though any implementer is allowed to
91
+ * define an extension, there is a set of requirements that SHALL be met
92
+ * as part of the definition of the extension. Applications processing a
93
+ * resource are required to check for modifier extensions.
94
+ *
95
+ * Modifier extensions SHALL NOT change the meaning of any elements on
96
+ * Resource or DomainResource (including cannot change the meaning of
97
+ * modifierExtension itself).
98
+ */
99
+ readonly modifierExtension?: Extension[];
100
+
101
+ /**
102
+ * An absolute URI that is used to identify this implementation guide
103
+ * when it is referenced in a specification, model, design or an
104
+ * instance; also called its canonical identifier. This SHOULD be
105
+ * globally unique and SHOULD be a literal address at which at which an
106
+ * authoritative instance of this implementation guide is (or will be)
107
+ * published. This URL can be the target of a canonical reference. It
108
+ * SHALL remain the same when the implementation guide is stored on
109
+ * different servers.
110
+ */
111
+ readonly url?: string;
112
+
113
+ /**
114
+ * The identifier that is used to identify this version of the
115
+ * implementation guide when it is referenced in a specification, model,
116
+ * design or instance. This is an arbitrary value managed by the
117
+ * implementation guide author and is not expected to be globally unique.
118
+ * For example, it might be a timestamp (e.g. yyyymmdd) if a managed
119
+ * version is not available. There is also no expectation that versions
120
+ * can be placed in a lexicographical sequence.
121
+ */
122
+ readonly version?: string;
123
+
124
+ /**
125
+ * A natural language name identifying the implementation guide. This
126
+ * name should be usable as an identifier for the module by machine
127
+ * processing applications such as code generation.
128
+ */
129
+ readonly name?: string;
130
+
131
+ /**
132
+ * A short, descriptive, user-friendly title for the implementation
133
+ * guide.
134
+ */
135
+ readonly title?: string;
136
+
137
+ /**
138
+ * The status of this implementation guide. Enables tracking the
139
+ * life-cycle of the content.
140
+ */
141
+ readonly status?: string;
142
+
143
+ /**
144
+ * A Boolean value to indicate that this implementation guide is authored
145
+ * for testing purposes (or education/evaluation/marketing) and is not
146
+ * intended to be used for genuine usage.
147
+ */
148
+ readonly experimental?: boolean;
149
+
150
+ /**
151
+ * The date (and optionally time) when the implementation guide was
152
+ * published. The date must change when the business version changes and
153
+ * it must change if the status code changes. In addition, it should
154
+ * change when the substantive content of the implementation guide
155
+ * changes.
156
+ */
157
+ readonly date?: string;
158
+
159
+ /**
160
+ * The name of the organization or individual that published the
161
+ * implementation guide.
162
+ */
163
+ readonly publisher?: string;
164
+
165
+ /**
166
+ * Contact details to assist a user in finding and communicating with the
167
+ * publisher.
168
+ */
169
+ readonly contact?: ContactDetail[];
170
+
171
+ /**
172
+ * A free text natural language description of the implementation guide
173
+ * from a consumer's perspective.
174
+ */
175
+ readonly description?: string;
176
+
177
+ /**
178
+ * The content was developed with a focus and intent of supporting the
179
+ * contexts that are listed. These contexts may be general categories
180
+ * (gender, age, ...) or may be references to specific programs
181
+ * (insurance plans, studies, ...) and may be used to assist with
182
+ * indexing and searching for appropriate implementation guide instances.
183
+ */
184
+ readonly useContext?: UsageContext[];
185
+
186
+ /**
187
+ * A legal or geographic region in which the implementation guide is
188
+ * intended to be used.
189
+ */
190
+ readonly jurisdiction?: CodeableConcept[];
191
+
192
+ /**
193
+ * A copyright statement relating to the implementation guide and/or its
194
+ * contents. Copyright statements are generally legal restrictions on the
195
+ * use and publishing of the implementation guide.
196
+ */
197
+ readonly copyright?: string;
198
+
199
+ /**
200
+ * The NPM package name for this Implementation Guide, used in the NPM
201
+ * package distribution, which is the primary mechanism by which FHIR
202
+ * based tooling manages IG dependencies. This value must be globally
203
+ * unique, and should be assigned with care.
204
+ */
205
+ readonly packageId?: string;
206
+
207
+ /**
208
+ * The license that applies to this Implementation Guide, using an SPDX
209
+ * license code, or 'not-open-source'.
210
+ */
211
+ readonly license?: string;
212
+
213
+ /**
214
+ * The version(s) of the FHIR specification that this ImplementationGuide
215
+ * targets - e.g. describes how to use. The value of this element is the
216
+ * formal version of the specification, without the revision number, e.g.
217
+ * [publication].[major].[minor], which is 4.0.1. for this version.
218
+ */
219
+ readonly fhirVersion?: string[];
220
+
221
+ /**
222
+ * Another implementation guide that this implementation depends on.
223
+ * Typically, an implementation guide uses value sets, profiles
224
+ * etc.defined in other implementation guides.
225
+ */
226
+ readonly dependsOn?: ImplementationGuideDependsOn[];
227
+
228
+ /**
229
+ * A set of profiles that all resources covered by this implementation
230
+ * guide must conform to.
231
+ */
232
+ readonly global?: ImplementationGuideGlobal[];
233
+
234
+ /**
235
+ * The information needed by an IG publisher tool to publish the whole
236
+ * implementation guide.
237
+ */
238
+ readonly definition?: ImplementationGuideDefinition;
239
+
240
+ /**
241
+ * Information about an assembled implementation guide, created by the
242
+ * publication tooling.
243
+ */
244
+ readonly manifest?: ImplementationGuideManifest;
245
+ }
246
+
247
+ /**
248
+ * The information needed by an IG publisher tool to publish the whole
249
+ * implementation guide.
250
+ */
251
+ export interface ImplementationGuideDefinition {
252
+
253
+ /**
254
+ * Unique id for the element within a resource (for internal references).
255
+ * This may be any string value that does not contain spaces.
256
+ */
257
+ readonly id?: string;
258
+
259
+ /**
260
+ * May be used to represent additional information that is not part of
261
+ * the basic definition of the element. To make the use of extensions
262
+ * safe and manageable, there is a strict set of governance applied to
263
+ * the definition and use of extensions. Though any implementer can
264
+ * define an extension, there is a set of requirements that SHALL be met
265
+ * as part of the definition of the extension.
266
+ */
267
+ readonly extension?: Extension[];
268
+
269
+ /**
270
+ * May be used to represent additional information that is not part of
271
+ * the basic definition of the element and that modifies the
272
+ * understanding of the element in which it is contained and/or the
273
+ * understanding of the containing element's descendants. Usually
274
+ * modifier elements provide negation or qualification. To make the use
275
+ * of extensions safe and manageable, there is a strict set of governance
276
+ * applied to the definition and use of extensions. Though any
277
+ * implementer can define an extension, there is a set of requirements
278
+ * that SHALL be met as part of the definition of the extension.
279
+ * Applications processing a resource are required to check for modifier
280
+ * extensions.
281
+ *
282
+ * Modifier extensions SHALL NOT change the meaning of any elements on
283
+ * Resource or DomainResource (including cannot change the meaning of
284
+ * modifierExtension itself).
285
+ */
286
+ readonly modifierExtension?: Extension[];
287
+
288
+ /**
289
+ * A logical group of resources. Logical groups can be used when building
290
+ * pages.
291
+ */
292
+ readonly grouping?: ImplementationGuideDefinitionGrouping[];
293
+
294
+ /**
295
+ * A resource that is part of the implementation guide. Conformance
296
+ * resources (value set, structure definition, capability statements
297
+ * etc.) are obvious candidates for inclusion, but any kind of resource
298
+ * can be included as an example resource.
299
+ */
300
+ readonly resource?: ImplementationGuideDefinitionResource[];
301
+
302
+ /**
303
+ * A page / section in the implementation guide. The root page is the
304
+ * implementation guide home page.
305
+ */
306
+ readonly page?: ImplementationGuideDefinitionPage;
307
+
308
+ /**
309
+ * Defines how IG is built by tools.
310
+ */
311
+ readonly parameter?: ImplementationGuideDefinitionParameter[];
312
+
313
+ /**
314
+ * A template for building resources.
315
+ */
316
+ readonly template?: ImplementationGuideDefinitionTemplate[];
317
+ }
318
+
319
+ /**
320
+ * A logical group of resources. Logical groups can be used when building
321
+ * pages.
322
+ */
323
+ export interface ImplementationGuideDefinitionGrouping {
324
+
325
+ /**
326
+ * Unique id for the element within a resource (for internal references).
327
+ * This may be any string value that does not contain spaces.
328
+ */
329
+ readonly id?: string;
330
+
331
+ /**
332
+ * May be used to represent additional information that is not part of
333
+ * the basic definition of the element. To make the use of extensions
334
+ * safe and manageable, there is a strict set of governance applied to
335
+ * the definition and use of extensions. Though any implementer can
336
+ * define an extension, there is a set of requirements that SHALL be met
337
+ * as part of the definition of the extension.
338
+ */
339
+ readonly extension?: Extension[];
340
+
341
+ /**
342
+ * May be used to represent additional information that is not part of
343
+ * the basic definition of the element and that modifies the
344
+ * understanding of the element in which it is contained and/or the
345
+ * understanding of the containing element's descendants. Usually
346
+ * modifier elements provide negation or qualification. To make the use
347
+ * of extensions safe and manageable, there is a strict set of governance
348
+ * applied to the definition and use of extensions. Though any
349
+ * implementer can define an extension, there is a set of requirements
350
+ * that SHALL be met as part of the definition of the extension.
351
+ * Applications processing a resource are required to check for modifier
352
+ * extensions.
353
+ *
354
+ * Modifier extensions SHALL NOT change the meaning of any elements on
355
+ * Resource or DomainResource (including cannot change the meaning of
356
+ * modifierExtension itself).
357
+ */
358
+ readonly modifierExtension?: Extension[];
359
+
360
+ /**
361
+ * The human-readable title to display for the package of resources when
362
+ * rendering the implementation guide.
363
+ */
364
+ readonly name?: string;
365
+
366
+ /**
367
+ * Human readable text describing the package.
368
+ */
369
+ readonly description?: string;
370
+ }
371
+
372
+ /**
373
+ * A page / section in the implementation guide. The root page is the
374
+ * implementation guide home page.
375
+ */
376
+ export interface ImplementationGuideDefinitionPage {
377
+
378
+ /**
379
+ * Unique id for the element within a resource (for internal references).
380
+ * This may be any string value that does not contain spaces.
381
+ */
382
+ readonly id?: string;
383
+
384
+ /**
385
+ * May be used to represent additional information that is not part of
386
+ * the basic definition of the element. To make the use of extensions
387
+ * safe and manageable, there is a strict set of governance applied to
388
+ * the definition and use of extensions. Though any implementer can
389
+ * define an extension, there is a set of requirements that SHALL be met
390
+ * as part of the definition of the extension.
391
+ */
392
+ readonly extension?: Extension[];
393
+
394
+ /**
395
+ * May be used to represent additional information that is not part of
396
+ * the basic definition of the element and that modifies the
397
+ * understanding of the element in which it is contained and/or the
398
+ * understanding of the containing element's descendants. Usually
399
+ * modifier elements provide negation or qualification. To make the use
400
+ * of extensions safe and manageable, there is a strict set of governance
401
+ * applied to the definition and use of extensions. Though any
402
+ * implementer can define an extension, there is a set of requirements
403
+ * that SHALL be met as part of the definition of the extension.
404
+ * Applications processing a resource are required to check for modifier
405
+ * extensions.
406
+ *
407
+ * Modifier extensions SHALL NOT change the meaning of any elements on
408
+ * Resource or DomainResource (including cannot change the meaning of
409
+ * modifierExtension itself).
410
+ */
411
+ readonly modifierExtension?: Extension[];
412
+
413
+ /**
414
+ * The source address for the page.
415
+ */
416
+ readonly nameUrl?: string;
417
+
418
+ /**
419
+ * The source address for the page.
420
+ */
421
+ readonly nameReference?: Reference<Binary>;
422
+
423
+ /**
424
+ * A short title used to represent this page in navigational structures
425
+ * such as table of contents, bread crumbs, etc.
426
+ */
427
+ readonly title?: string;
428
+
429
+ /**
430
+ * A code that indicates how the page is generated.
431
+ */
432
+ readonly generation?: string;
433
+
434
+ /**
435
+ * Nested Pages/Sections under this page.
436
+ */
437
+ readonly page?: ImplementationGuideDefinitionPage[];
438
+ }
439
+
440
+ /**
441
+ * Defines how IG is built by tools.
442
+ */
443
+ export interface ImplementationGuideDefinitionParameter {
444
+
445
+ /**
446
+ * Unique id for the element within a resource (for internal references).
447
+ * This may be any string value that does not contain spaces.
448
+ */
449
+ readonly id?: string;
450
+
451
+ /**
452
+ * May be used to represent additional information that is not part of
453
+ * the basic definition of the element. To make the use of extensions
454
+ * safe and manageable, there is a strict set of governance applied to
455
+ * the definition and use of extensions. Though any implementer can
456
+ * define an extension, there is a set of requirements that SHALL be met
457
+ * as part of the definition of the extension.
458
+ */
459
+ readonly extension?: Extension[];
460
+
461
+ /**
462
+ * May be used to represent additional information that is not part of
463
+ * the basic definition of the element and that modifies the
464
+ * understanding of the element in which it is contained and/or the
465
+ * understanding of the containing element's descendants. Usually
466
+ * modifier elements provide negation or qualification. To make the use
467
+ * of extensions safe and manageable, there is a strict set of governance
468
+ * applied to the definition and use of extensions. Though any
469
+ * implementer can define an extension, there is a set of requirements
470
+ * that SHALL be met as part of the definition of the extension.
471
+ * Applications processing a resource are required to check for modifier
472
+ * extensions.
473
+ *
474
+ * Modifier extensions SHALL NOT change the meaning of any elements on
475
+ * Resource or DomainResource (including cannot change the meaning of
476
+ * modifierExtension itself).
477
+ */
478
+ readonly modifierExtension?: Extension[];
479
+
480
+ /**
481
+ * apply | path-resource | path-pages | path-tx-cache |
482
+ * expansion-parameter | rule-broken-links | generate-xml | generate-json
483
+ * | generate-turtle | html-template.
484
+ */
485
+ readonly code?: string;
486
+
487
+ /**
488
+ * Value for named type.
489
+ */
490
+ readonly value?: string;
491
+ }
492
+
493
+ /**
494
+ * A resource that is part of the implementation guide. Conformance
495
+ * resources (value set, structure definition, capability statements
496
+ * etc.) are obvious candidates for inclusion, but any kind of resource
497
+ * can be included as an example resource.
498
+ */
499
+ export interface ImplementationGuideDefinitionResource {
500
+
501
+ /**
502
+ * Unique id for the element within a resource (for internal references).
503
+ * This may be any string value that does not contain spaces.
504
+ */
505
+ readonly id?: string;
506
+
507
+ /**
508
+ * May be used to represent additional information that is not part of
509
+ * the basic definition of the element. To make the use of extensions
510
+ * safe and manageable, there is a strict set of governance applied to
511
+ * the definition and use of extensions. Though any implementer can
512
+ * define an extension, there is a set of requirements that SHALL be met
513
+ * as part of the definition of the extension.
514
+ */
515
+ readonly extension?: Extension[];
516
+
517
+ /**
518
+ * May be used to represent additional information that is not part of
519
+ * the basic definition of the element and that modifies the
520
+ * understanding of the element in which it is contained and/or the
521
+ * understanding of the containing element's descendants. Usually
522
+ * modifier elements provide negation or qualification. To make the use
523
+ * of extensions safe and manageable, there is a strict set of governance
524
+ * applied to the definition and use of extensions. Though any
525
+ * implementer can define an extension, there is a set of requirements
526
+ * that SHALL be met as part of the definition of the extension.
527
+ * Applications processing a resource are required to check for modifier
528
+ * extensions.
529
+ *
530
+ * Modifier extensions SHALL NOT change the meaning of any elements on
531
+ * Resource or DomainResource (including cannot change the meaning of
532
+ * modifierExtension itself).
533
+ */
534
+ readonly modifierExtension?: Extension[];
535
+
536
+ /**
537
+ * Where this resource is found.
538
+ */
539
+ readonly reference?: Reference<Resource>;
540
+
541
+ /**
542
+ * Indicates the FHIR Version(s) this artifact is intended to apply to.
543
+ * If no versions are specified, the resource is assumed to apply to all
544
+ * the versions stated in ImplementationGuide.fhirVersion.
545
+ */
546
+ readonly fhirVersion?: string[];
547
+
548
+ /**
549
+ * A human assigned name for the resource. All resources SHOULD have a
550
+ * name, but the name may be extracted from the resource (e.g.
551
+ * ValueSet.name).
552
+ */
553
+ readonly name?: string;
554
+
555
+ /**
556
+ * A description of the reason that a resource has been included in the
557
+ * implementation guide.
558
+ */
559
+ readonly description?: string;
560
+
561
+ /**
562
+ * If true or a reference, indicates the resource is an example instance.
563
+ * If a reference is present, indicates that the example is an example
564
+ * of the specified profile.
565
+ */
566
+ readonly exampleBoolean?: boolean;
567
+
568
+ /**
569
+ * If true or a reference, indicates the resource is an example instance.
570
+ * If a reference is present, indicates that the example is an example
571
+ * of the specified profile.
572
+ */
573
+ readonly exampleCanonical?: string;
574
+
575
+ /**
576
+ * Reference to the id of the grouping this resource appears in.
577
+ */
578
+ readonly groupingId?: string;
579
+ }
580
+
581
+ /**
582
+ * A template for building resources.
583
+ */
584
+ export interface ImplementationGuideDefinitionTemplate {
585
+
586
+ /**
587
+ * Unique id for the element within a resource (for internal references).
588
+ * This may be any string value that does not contain spaces.
589
+ */
590
+ readonly id?: string;
591
+
592
+ /**
593
+ * May be used to represent additional information that is not part of
594
+ * the basic definition of the element. To make the use of extensions
595
+ * safe and manageable, there is a strict set of governance applied to
596
+ * the definition and use of extensions. Though any implementer can
597
+ * define an extension, there is a set of requirements that SHALL be met
598
+ * as part of the definition of the extension.
599
+ */
600
+ readonly extension?: Extension[];
601
+
602
+ /**
603
+ * May be used to represent additional information that is not part of
604
+ * the basic definition of the element and that modifies the
605
+ * understanding of the element in which it is contained and/or the
606
+ * understanding of the containing element's descendants. Usually
607
+ * modifier elements provide negation or qualification. To make the use
608
+ * of extensions safe and manageable, there is a strict set of governance
609
+ * applied to the definition and use of extensions. Though any
610
+ * implementer can define an extension, there is a set of requirements
611
+ * that SHALL be met as part of the definition of the extension.
612
+ * Applications processing a resource are required to check for modifier
613
+ * extensions.
614
+ *
615
+ * Modifier extensions SHALL NOT change the meaning of any elements on
616
+ * Resource or DomainResource (including cannot change the meaning of
617
+ * modifierExtension itself).
618
+ */
619
+ readonly modifierExtension?: Extension[];
620
+
621
+ /**
622
+ * Type of template specified.
623
+ */
624
+ readonly code?: string;
625
+
626
+ /**
627
+ * The source location for the template.
628
+ */
629
+ readonly source?: string;
630
+
631
+ /**
632
+ * The scope in which the template applies.
633
+ */
634
+ readonly scope?: string;
635
+ }
636
+
637
+ /**
638
+ * Another implementation guide that this implementation depends on.
639
+ * Typically, an implementation guide uses value sets, profiles
640
+ * etc.defined in other implementation guides.
641
+ */
642
+ export interface ImplementationGuideDependsOn {
643
+
644
+ /**
645
+ * Unique id for the element within a resource (for internal references).
646
+ * This may be any string value that does not contain spaces.
647
+ */
648
+ readonly id?: string;
649
+
650
+ /**
651
+ * May be used to represent additional information that is not part of
652
+ * the basic definition of the element. To make the use of extensions
653
+ * safe and manageable, there is a strict set of governance applied to
654
+ * the definition and use of extensions. Though any implementer can
655
+ * define an extension, there is a set of requirements that SHALL be met
656
+ * as part of the definition of the extension.
657
+ */
658
+ readonly extension?: Extension[];
659
+
660
+ /**
661
+ * May be used to represent additional information that is not part of
662
+ * the basic definition of the element and that modifies the
663
+ * understanding of the element in which it is contained and/or the
664
+ * understanding of the containing element's descendants. Usually
665
+ * modifier elements provide negation or qualification. To make the use
666
+ * of extensions safe and manageable, there is a strict set of governance
667
+ * applied to the definition and use of extensions. Though any
668
+ * implementer can define an extension, there is a set of requirements
669
+ * that SHALL be met as part of the definition of the extension.
670
+ * Applications processing a resource are required to check for modifier
671
+ * extensions.
672
+ *
673
+ * Modifier extensions SHALL NOT change the meaning of any elements on
674
+ * Resource or DomainResource (including cannot change the meaning of
675
+ * modifierExtension itself).
676
+ */
677
+ readonly modifierExtension?: Extension[];
678
+
679
+ /**
680
+ * A canonical reference to the Implementation guide for the dependency.
681
+ */
682
+ readonly uri?: string;
683
+
684
+ /**
685
+ * The NPM package name for the Implementation Guide that this IG depends
686
+ * on.
687
+ */
688
+ readonly packageId?: string;
689
+
690
+ /**
691
+ * The version of the IG that is depended on, when the correct version is
692
+ * required to understand the IG correctly.
693
+ */
694
+ readonly version?: string;
695
+ }
696
+
697
+ /**
698
+ * A set of profiles that all resources covered by this implementation
699
+ * guide must conform to.
700
+ */
701
+ export interface ImplementationGuideGlobal {
702
+
703
+ /**
704
+ * Unique id for the element within a resource (for internal references).
705
+ * This may be any string value that does not contain spaces.
706
+ */
707
+ readonly id?: string;
708
+
709
+ /**
710
+ * May be used to represent additional information that is not part of
711
+ * the basic definition of the element. To make the use of extensions
712
+ * safe and manageable, there is a strict set of governance applied to
713
+ * the definition and use of extensions. Though any implementer can
714
+ * define an extension, there is a set of requirements that SHALL be met
715
+ * as part of the definition of the extension.
716
+ */
717
+ readonly extension?: Extension[];
718
+
719
+ /**
720
+ * May be used to represent additional information that is not part of
721
+ * the basic definition of the element and that modifies the
722
+ * understanding of the element in which it is contained and/or the
723
+ * understanding of the containing element's descendants. Usually
724
+ * modifier elements provide negation or qualification. To make the use
725
+ * of extensions safe and manageable, there is a strict set of governance
726
+ * applied to the definition and use of extensions. Though any
727
+ * implementer can define an extension, there is a set of requirements
728
+ * that SHALL be met as part of the definition of the extension.
729
+ * Applications processing a resource are required to check for modifier
730
+ * extensions.
731
+ *
732
+ * Modifier extensions SHALL NOT change the meaning of any elements on
733
+ * Resource or DomainResource (including cannot change the meaning of
734
+ * modifierExtension itself).
735
+ */
736
+ readonly modifierExtension?: Extension[];
737
+
738
+ /**
739
+ * The type of resource that all instances must conform to.
740
+ */
741
+ readonly type?: string;
742
+
743
+ /**
744
+ * A reference to the profile that all instances must conform to.
745
+ */
746
+ readonly profile?: string;
747
+ }
748
+
749
+ /**
750
+ * Information about an assembled implementation guide, created by the
751
+ * publication tooling.
752
+ */
753
+ export interface ImplementationGuideManifest {
754
+
755
+ /**
756
+ * Unique id for the element within a resource (for internal references).
757
+ * This may be any string value that does not contain spaces.
758
+ */
759
+ readonly id?: string;
760
+
761
+ /**
762
+ * May be used to represent additional information that is not part of
763
+ * the basic definition of the element. To make the use of extensions
764
+ * safe and manageable, there is a strict set of governance applied to
765
+ * the definition and use of extensions. Though any implementer can
766
+ * define an extension, there is a set of requirements that SHALL be met
767
+ * as part of the definition of the extension.
768
+ */
769
+ readonly extension?: Extension[];
770
+
771
+ /**
772
+ * May be used to represent additional information that is not part of
773
+ * the basic definition of the element and that modifies the
774
+ * understanding of the element in which it is contained and/or the
775
+ * understanding of the containing element's descendants. Usually
776
+ * modifier elements provide negation or qualification. To make the use
777
+ * of extensions safe and manageable, there is a strict set of governance
778
+ * applied to the definition and use of extensions. Though any
779
+ * implementer can define an extension, there is a set of requirements
780
+ * that SHALL be met as part of the definition of the extension.
781
+ * Applications processing a resource are required to check for modifier
782
+ * extensions.
783
+ *
784
+ * Modifier extensions SHALL NOT change the meaning of any elements on
785
+ * Resource or DomainResource (including cannot change the meaning of
786
+ * modifierExtension itself).
787
+ */
788
+ readonly modifierExtension?: Extension[];
789
+
790
+ /**
791
+ * A pointer to official web page, PDF or other rendering of the
792
+ * implementation guide.
793
+ */
794
+ readonly rendering?: string;
795
+
796
+ /**
797
+ * A resource that is part of the implementation guide. Conformance
798
+ * resources (value set, structure definition, capability statements
799
+ * etc.) are obvious candidates for inclusion, but any kind of resource
800
+ * can be included as an example resource.
801
+ */
802
+ readonly resource?: ImplementationGuideManifestResource[];
803
+
804
+ /**
805
+ * Information about a page within the IG.
806
+ */
807
+ readonly page?: ImplementationGuideManifestPage[];
808
+
809
+ /**
810
+ * Indicates a relative path to an image that exists within the IG.
811
+ */
812
+ readonly image?: string[];
813
+
814
+ /**
815
+ * Indicates the relative path of an additional non-page, non-image file
816
+ * that is part of the IG - e.g. zip, jar and similar files that could be
817
+ * the target of a hyperlink in a derived IG.
818
+ */
819
+ readonly other?: string[];
820
+ }
821
+
822
+ /**
823
+ * Information about a page within the IG.
824
+ */
825
+ export interface ImplementationGuideManifestPage {
826
+
827
+ /**
828
+ * Unique id for the element within a resource (for internal references).
829
+ * This may be any string value that does not contain spaces.
830
+ */
831
+ readonly id?: string;
832
+
833
+ /**
834
+ * May be used to represent additional information that is not part of
835
+ * the basic definition of the element. To make the use of extensions
836
+ * safe and manageable, there is a strict set of governance applied to
837
+ * the definition and use of extensions. Though any implementer can
838
+ * define an extension, there is a set of requirements that SHALL be met
839
+ * as part of the definition of the extension.
840
+ */
841
+ readonly extension?: Extension[];
842
+
843
+ /**
844
+ * May be used to represent additional information that is not part of
845
+ * the basic definition of the element and that modifies the
846
+ * understanding of the element in which it is contained and/or the
847
+ * understanding of the containing element's descendants. Usually
848
+ * modifier elements provide negation or qualification. To make the use
849
+ * of extensions safe and manageable, there is a strict set of governance
850
+ * applied to the definition and use of extensions. Though any
851
+ * implementer can define an extension, there is a set of requirements
852
+ * that SHALL be met as part of the definition of the extension.
853
+ * Applications processing a resource are required to check for modifier
854
+ * extensions.
855
+ *
856
+ * Modifier extensions SHALL NOT change the meaning of any elements on
857
+ * Resource or DomainResource (including cannot change the meaning of
858
+ * modifierExtension itself).
859
+ */
860
+ readonly modifierExtension?: Extension[];
861
+
862
+ /**
863
+ * Relative path to the page.
864
+ */
865
+ readonly name?: string;
866
+
867
+ /**
868
+ * Label for the page intended for human display.
869
+ */
870
+ readonly title?: string;
871
+
872
+ /**
873
+ * The name of an anchor available on the page.
874
+ */
875
+ readonly anchor?: string[];
876
+ }
877
+
878
+ /**
879
+ * A resource that is part of the implementation guide. Conformance
880
+ * resources (value set, structure definition, capability statements
881
+ * etc.) are obvious candidates for inclusion, but any kind of resource
882
+ * can be included as an example resource.
883
+ */
884
+ export interface ImplementationGuideManifestResource {
885
+
886
+ /**
887
+ * Unique id for the element within a resource (for internal references).
888
+ * This may be any string value that does not contain spaces.
889
+ */
890
+ readonly id?: string;
891
+
892
+ /**
893
+ * May be used to represent additional information that is not part of
894
+ * the basic definition of the element. To make the use of extensions
895
+ * safe and manageable, there is a strict set of governance applied to
896
+ * the definition and use of extensions. Though any implementer can
897
+ * define an extension, there is a set of requirements that SHALL be met
898
+ * as part of the definition of the extension.
899
+ */
900
+ readonly extension?: Extension[];
901
+
902
+ /**
903
+ * May be used to represent additional information that is not part of
904
+ * the basic definition of the element and that modifies the
905
+ * understanding of the element in which it is contained and/or the
906
+ * understanding of the containing element's descendants. Usually
907
+ * modifier elements provide negation or qualification. To make the use
908
+ * of extensions safe and manageable, there is a strict set of governance
909
+ * applied to the definition and use of extensions. Though any
910
+ * implementer can define an extension, there is a set of requirements
911
+ * that SHALL be met as part of the definition of the extension.
912
+ * Applications processing a resource are required to check for modifier
913
+ * extensions.
914
+ *
915
+ * Modifier extensions SHALL NOT change the meaning of any elements on
916
+ * Resource or DomainResource (including cannot change the meaning of
917
+ * modifierExtension itself).
918
+ */
919
+ readonly modifierExtension?: Extension[];
920
+
921
+ /**
922
+ * Where this resource is found.
923
+ */
924
+ readonly reference?: Reference<Resource>;
925
+
926
+ /**
927
+ * If true or a reference, indicates the resource is an example instance.
928
+ * If a reference is present, indicates that the example is an example
929
+ * of the specified profile.
930
+ */
931
+ readonly exampleBoolean?: boolean;
932
+
933
+ /**
934
+ * If true or a reference, indicates the resource is an example instance.
935
+ * If a reference is present, indicates that the example is an example
936
+ * of the specified profile.
937
+ */
938
+ readonly exampleCanonical?: string;
939
+
940
+ /**
941
+ * The relative path for primary page for this resource within the IG.
942
+ */
943
+ readonly relativePath?: string;
944
+ }