@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,965 @@
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 { DocumentReference } from './DocumentReference';
9
+ import { Extension } from './Extension';
10
+ import { Identifier } from './Identifier';
11
+ import { Meta } from './Meta';
12
+ import { Narrative } from './Narrative';
13
+ import { Quantity } from './Quantity';
14
+ import { Range } from './Range';
15
+ import { Ratio } from './Ratio';
16
+ import { Reference } from './Reference';
17
+ import { Resource } from './Resource';
18
+ import { Substance } from './Substance';
19
+ import { SubstanceNucleicAcid } from './SubstanceNucleicAcid';
20
+ import { SubstancePolymer } from './SubstancePolymer';
21
+ import { SubstanceProtein } from './SubstanceProtein';
22
+ import { SubstanceReferenceInformation } from './SubstanceReferenceInformation';
23
+ import { SubstanceSourceMaterial } from './SubstanceSourceMaterial';
24
+
25
+ /**
26
+ * The detailed description of a substance, typically at a level beyond
27
+ * what is used for prescribing.
28
+ */
29
+ export interface SubstanceSpecification {
30
+
31
+ /**
32
+ * This is a SubstanceSpecification resource
33
+ */
34
+ readonly resourceType: 'SubstanceSpecification';
35
+
36
+ /**
37
+ * The logical id of the resource, as used in the URL for the resource.
38
+ * Once assigned, this value never changes.
39
+ */
40
+ readonly id?: string;
41
+
42
+ /**
43
+ * The metadata about the resource. This is content that is maintained by
44
+ * the infrastructure. Changes to the content might not always be
45
+ * associated with version changes to the resource.
46
+ */
47
+ readonly meta?: Meta;
48
+
49
+ /**
50
+ * A reference to a set of rules that were followed when the resource was
51
+ * constructed, and which must be understood when processing the content.
52
+ * Often, this is a reference to an implementation guide that defines the
53
+ * special rules along with other profiles etc.
54
+ */
55
+ readonly implicitRules?: string;
56
+
57
+ /**
58
+ * The base language in which the resource is written.
59
+ */
60
+ readonly language?: string;
61
+
62
+ /**
63
+ * A human-readable narrative that contains a summary of the resource and
64
+ * can be used to represent the content of the resource to a human. The
65
+ * narrative need not encode all the structured data, but is required to
66
+ * contain sufficient detail to make it "clinically safe" for a human to
67
+ * just read the narrative. Resource definitions may define what content
68
+ * should be represented in the narrative to ensure clinical safety.
69
+ */
70
+ readonly text?: Narrative;
71
+
72
+ /**
73
+ * These resources do not have an independent existence apart from the
74
+ * resource that contains them - they cannot be identified independently,
75
+ * and nor can they have their own independent transaction scope.
76
+ */
77
+ readonly contained?: Resource[];
78
+
79
+ /**
80
+ * May be used to represent additional information that is not part of
81
+ * the basic definition of the resource. To make the use of extensions
82
+ * safe and manageable, there is a strict set of governance applied to
83
+ * the definition and use of extensions. Though any implementer can
84
+ * define an extension, there is a set of requirements that SHALL be met
85
+ * as part of the definition of the extension.
86
+ */
87
+ readonly extension?: Extension[];
88
+
89
+ /**
90
+ * May be used to represent additional information that is not part of
91
+ * the basic definition of the resource and that modifies the
92
+ * understanding of the element that contains it and/or the understanding
93
+ * of the containing element's descendants. Usually modifier elements
94
+ * provide negation or qualification. To make the use of extensions safe
95
+ * and manageable, there is a strict set of governance applied to the
96
+ * definition and use of extensions. Though any implementer is allowed to
97
+ * define an extension, there is a set of requirements that SHALL be met
98
+ * as part of the definition of the extension. Applications processing a
99
+ * resource are required to check for modifier extensions.
100
+ *
101
+ * Modifier extensions SHALL NOT change the meaning of any elements on
102
+ * Resource or DomainResource (including cannot change the meaning of
103
+ * modifierExtension itself).
104
+ */
105
+ readonly modifierExtension?: Extension[];
106
+
107
+ /**
108
+ * Identifier by which this substance is known.
109
+ */
110
+ readonly identifier?: Identifier;
111
+
112
+ /**
113
+ * High level categorization, e.g. polymer or nucleic acid.
114
+ */
115
+ readonly type?: CodeableConcept;
116
+
117
+ /**
118
+ * Status of substance within the catalogue e.g. approved.
119
+ */
120
+ readonly status?: CodeableConcept;
121
+
122
+ /**
123
+ * If the substance applies to only human or veterinary use.
124
+ */
125
+ readonly domain?: CodeableConcept;
126
+
127
+ /**
128
+ * Textual description of the substance.
129
+ */
130
+ readonly description?: string;
131
+
132
+ /**
133
+ * Supporting literature.
134
+ */
135
+ readonly source?: Reference<DocumentReference>[];
136
+
137
+ /**
138
+ * Textual comment about this record of a substance.
139
+ */
140
+ readonly comment?: string;
141
+
142
+ /**
143
+ * Moiety, for structural modifications.
144
+ */
145
+ readonly moiety?: SubstanceSpecificationMoiety[];
146
+
147
+ /**
148
+ * General specifications for this substance, including how it is related
149
+ * to other substances.
150
+ */
151
+ readonly property?: SubstanceSpecificationProperty[];
152
+
153
+ /**
154
+ * General information detailing this substance.
155
+ */
156
+ readonly referenceInformation?: Reference<SubstanceReferenceInformation>;
157
+
158
+ /**
159
+ * Structural information.
160
+ */
161
+ readonly structure?: SubstanceSpecificationStructure;
162
+
163
+ /**
164
+ * Codes associated with the substance.
165
+ */
166
+ readonly code?: SubstanceSpecificationCode[];
167
+
168
+ /**
169
+ * Names applicable to this substance.
170
+ */
171
+ readonly name?: SubstanceSpecificationName[];
172
+
173
+ /**
174
+ * The molecular weight or weight range (for proteins, polymers or
175
+ * nucleic acids).
176
+ */
177
+ readonly molecularWeight?: SubstanceSpecificationStructureIsotopeMolecularWeight[];
178
+
179
+ /**
180
+ * A link between this substance and another, with details of the
181
+ * relationship.
182
+ */
183
+ readonly relationship?: SubstanceSpecificationRelationship[];
184
+
185
+ /**
186
+ * Data items specific to nucleic acids.
187
+ */
188
+ readonly nucleicAcid?: Reference<SubstanceNucleicAcid>;
189
+
190
+ /**
191
+ * Data items specific to polymers.
192
+ */
193
+ readonly polymer?: Reference<SubstancePolymer>;
194
+
195
+ /**
196
+ * Data items specific to proteins.
197
+ */
198
+ readonly protein?: Reference<SubstanceProtein>;
199
+
200
+ /**
201
+ * Material or taxonomic/anatomical source for the substance.
202
+ */
203
+ readonly sourceMaterial?: Reference<SubstanceSourceMaterial>;
204
+ }
205
+
206
+ /**
207
+ * Codes associated with the substance.
208
+ */
209
+ export interface SubstanceSpecificationCode {
210
+
211
+ /**
212
+ * Unique id for the element within a resource (for internal references).
213
+ * This may be any string value that does not contain spaces.
214
+ */
215
+ readonly id?: string;
216
+
217
+ /**
218
+ * May be used to represent additional information that is not part of
219
+ * the basic definition of the element. To make the use of extensions
220
+ * safe and manageable, there is a strict set of governance applied to
221
+ * the definition and use of extensions. Though any implementer can
222
+ * define an extension, there is a set of requirements that SHALL be met
223
+ * as part of the definition of the extension.
224
+ */
225
+ readonly extension?: Extension[];
226
+
227
+ /**
228
+ * May be used to represent additional information that is not part of
229
+ * the basic definition of the element and that modifies the
230
+ * understanding of the element in which it is contained and/or the
231
+ * understanding of the containing element's descendants. Usually
232
+ * modifier elements provide negation or qualification. To make the use
233
+ * of extensions safe and manageable, there is a strict set of governance
234
+ * applied to the definition and use of extensions. Though any
235
+ * implementer can define an extension, there is a set of requirements
236
+ * that SHALL be met as part of the definition of the extension.
237
+ * Applications processing a resource are required to check for modifier
238
+ * extensions.
239
+ *
240
+ * Modifier extensions SHALL NOT change the meaning of any elements on
241
+ * Resource or DomainResource (including cannot change the meaning of
242
+ * modifierExtension itself).
243
+ */
244
+ readonly modifierExtension?: Extension[];
245
+
246
+ /**
247
+ * The specific code.
248
+ */
249
+ readonly code?: CodeableConcept;
250
+
251
+ /**
252
+ * Status of the code assignment.
253
+ */
254
+ readonly status?: CodeableConcept;
255
+
256
+ /**
257
+ * The date at which the code status is changed as part of the
258
+ * terminology maintenance.
259
+ */
260
+ readonly statusDate?: string;
261
+
262
+ /**
263
+ * Any comment can be provided in this field, if necessary.
264
+ */
265
+ readonly comment?: string;
266
+
267
+ /**
268
+ * Supporting literature.
269
+ */
270
+ readonly source?: Reference<DocumentReference>[];
271
+ }
272
+
273
+ /**
274
+ * Moiety, for structural modifications.
275
+ */
276
+ export interface SubstanceSpecificationMoiety {
277
+
278
+ /**
279
+ * Unique id for the element within a resource (for internal references).
280
+ * This may be any string value that does not contain spaces.
281
+ */
282
+ readonly id?: string;
283
+
284
+ /**
285
+ * May be used to represent additional information that is not part of
286
+ * the basic definition of the element. To make the use of extensions
287
+ * safe and manageable, there is a strict set of governance applied to
288
+ * the definition and use of extensions. Though any implementer can
289
+ * define an extension, there is a set of requirements that SHALL be met
290
+ * as part of the definition of the extension.
291
+ */
292
+ readonly extension?: Extension[];
293
+
294
+ /**
295
+ * May be used to represent additional information that is not part of
296
+ * the basic definition of the element and that modifies the
297
+ * understanding of the element in which it is contained and/or the
298
+ * understanding of the containing element's descendants. Usually
299
+ * modifier elements provide negation or qualification. To make the use
300
+ * of extensions safe and manageable, there is a strict set of governance
301
+ * applied to the definition and use of extensions. Though any
302
+ * implementer can define an extension, there is a set of requirements
303
+ * that SHALL be met as part of the definition of the extension.
304
+ * Applications processing a resource are required to check for modifier
305
+ * extensions.
306
+ *
307
+ * Modifier extensions SHALL NOT change the meaning of any elements on
308
+ * Resource or DomainResource (including cannot change the meaning of
309
+ * modifierExtension itself).
310
+ */
311
+ readonly modifierExtension?: Extension[];
312
+
313
+ /**
314
+ * Role that the moiety is playing.
315
+ */
316
+ readonly role?: CodeableConcept;
317
+
318
+ /**
319
+ * Identifier by which this moiety substance is known.
320
+ */
321
+ readonly identifier?: Identifier;
322
+
323
+ /**
324
+ * Textual name for this moiety substance.
325
+ */
326
+ readonly name?: string;
327
+
328
+ /**
329
+ * Stereochemistry type.
330
+ */
331
+ readonly stereochemistry?: CodeableConcept;
332
+
333
+ /**
334
+ * Optical activity type.
335
+ */
336
+ readonly opticalActivity?: CodeableConcept;
337
+
338
+ /**
339
+ * Molecular formula.
340
+ */
341
+ readonly molecularFormula?: string;
342
+
343
+ /**
344
+ * Quantitative value for this moiety.
345
+ */
346
+ readonly amountQuantity?: Quantity;
347
+
348
+ /**
349
+ * Quantitative value for this moiety.
350
+ */
351
+ readonly amountString?: string;
352
+ }
353
+
354
+ /**
355
+ * Names applicable to this substance.
356
+ */
357
+ export interface SubstanceSpecificationName {
358
+
359
+ /**
360
+ * Unique id for the element within a resource (for internal references).
361
+ * This may be any string value that does not contain spaces.
362
+ */
363
+ readonly id?: string;
364
+
365
+ /**
366
+ * May be used to represent additional information that is not part of
367
+ * the basic definition of the element. To make the use of extensions
368
+ * safe and manageable, there is a strict set of governance applied to
369
+ * the definition and use of extensions. Though any implementer can
370
+ * define an extension, there is a set of requirements that SHALL be met
371
+ * as part of the definition of the extension.
372
+ */
373
+ readonly extension?: Extension[];
374
+
375
+ /**
376
+ * May be used to represent additional information that is not part of
377
+ * the basic definition of the element and that modifies the
378
+ * understanding of the element in which it is contained and/or the
379
+ * understanding of the containing element's descendants. Usually
380
+ * modifier elements provide negation or qualification. To make the use
381
+ * of extensions safe and manageable, there is a strict set of governance
382
+ * applied to the definition and use of extensions. Though any
383
+ * implementer can define an extension, there is a set of requirements
384
+ * that SHALL be met as part of the definition of the extension.
385
+ * Applications processing a resource are required to check for modifier
386
+ * extensions.
387
+ *
388
+ * Modifier extensions SHALL NOT change the meaning of any elements on
389
+ * Resource or DomainResource (including cannot change the meaning of
390
+ * modifierExtension itself).
391
+ */
392
+ readonly modifierExtension?: Extension[];
393
+
394
+ /**
395
+ * The actual name.
396
+ */
397
+ readonly name?: string;
398
+
399
+ /**
400
+ * Name type.
401
+ */
402
+ readonly type?: CodeableConcept;
403
+
404
+ /**
405
+ * The status of the name.
406
+ */
407
+ readonly status?: CodeableConcept;
408
+
409
+ /**
410
+ * If this is the preferred name for this substance.
411
+ */
412
+ readonly preferred?: boolean;
413
+
414
+ /**
415
+ * Language of the name.
416
+ */
417
+ readonly language?: CodeableConcept[];
418
+
419
+ /**
420
+ * The use context of this name for example if there is a different name
421
+ * a drug active ingredient as opposed to a food colour additive.
422
+ */
423
+ readonly domain?: CodeableConcept[];
424
+
425
+ /**
426
+ * The jurisdiction where this name applies.
427
+ */
428
+ readonly jurisdiction?: CodeableConcept[];
429
+
430
+ /**
431
+ * A synonym of this name.
432
+ */
433
+ readonly synonym?: SubstanceSpecificationName[];
434
+
435
+ /**
436
+ * A translation for this name.
437
+ */
438
+ readonly translation?: SubstanceSpecificationName[];
439
+
440
+ /**
441
+ * Details of the official nature of this name.
442
+ */
443
+ readonly official?: SubstanceSpecificationNameOfficial[];
444
+
445
+ /**
446
+ * Supporting literature.
447
+ */
448
+ readonly source?: Reference<DocumentReference>[];
449
+ }
450
+
451
+ /**
452
+ * Details of the official nature of this name.
453
+ */
454
+ export interface SubstanceSpecificationNameOfficial {
455
+
456
+ /**
457
+ * Unique id for the element within a resource (for internal references).
458
+ * This may be any string value that does not contain spaces.
459
+ */
460
+ readonly id?: string;
461
+
462
+ /**
463
+ * May be used to represent additional information that is not part of
464
+ * the basic definition of the element. To make the use of extensions
465
+ * safe and manageable, there is a strict set of governance applied to
466
+ * the definition and use of extensions. Though any implementer can
467
+ * define an extension, there is a set of requirements that SHALL be met
468
+ * as part of the definition of the extension.
469
+ */
470
+ readonly extension?: Extension[];
471
+
472
+ /**
473
+ * May be used to represent additional information that is not part of
474
+ * the basic definition of the element and that modifies the
475
+ * understanding of the element in which it is contained and/or the
476
+ * understanding of the containing element's descendants. Usually
477
+ * modifier elements provide negation or qualification. To make the use
478
+ * of extensions safe and manageable, there is a strict set of governance
479
+ * applied to the definition and use of extensions. Though any
480
+ * implementer can define an extension, there is a set of requirements
481
+ * that SHALL be met as part of the definition of the extension.
482
+ * Applications processing a resource are required to check for modifier
483
+ * extensions.
484
+ *
485
+ * Modifier extensions SHALL NOT change the meaning of any elements on
486
+ * Resource or DomainResource (including cannot change the meaning of
487
+ * modifierExtension itself).
488
+ */
489
+ readonly modifierExtension?: Extension[];
490
+
491
+ /**
492
+ * Which authority uses this official name.
493
+ */
494
+ readonly authority?: CodeableConcept;
495
+
496
+ /**
497
+ * The status of the official name.
498
+ */
499
+ readonly status?: CodeableConcept;
500
+
501
+ /**
502
+ * Date of official name change.
503
+ */
504
+ readonly date?: string;
505
+ }
506
+
507
+ /**
508
+ * General specifications for this substance, including how it is related
509
+ * to other substances.
510
+ */
511
+ export interface SubstanceSpecificationProperty {
512
+
513
+ /**
514
+ * Unique id for the element within a resource (for internal references).
515
+ * This may be any string value that does not contain spaces.
516
+ */
517
+ readonly id?: string;
518
+
519
+ /**
520
+ * May be used to represent additional information that is not part of
521
+ * the basic definition of the element. To make the use of extensions
522
+ * safe and manageable, there is a strict set of governance applied to
523
+ * the definition and use of extensions. Though any implementer can
524
+ * define an extension, there is a set of requirements that SHALL be met
525
+ * as part of the definition of the extension.
526
+ */
527
+ readonly extension?: Extension[];
528
+
529
+ /**
530
+ * May be used to represent additional information that is not part of
531
+ * the basic definition of the element and that modifies the
532
+ * understanding of the element in which it is contained and/or the
533
+ * understanding of the containing element's descendants. Usually
534
+ * modifier elements provide negation or qualification. To make the use
535
+ * of extensions safe and manageable, there is a strict set of governance
536
+ * applied to the definition and use of extensions. Though any
537
+ * implementer can define an extension, there is a set of requirements
538
+ * that SHALL be met as part of the definition of the extension.
539
+ * Applications processing a resource are required to check for modifier
540
+ * extensions.
541
+ *
542
+ * Modifier extensions SHALL NOT change the meaning of any elements on
543
+ * Resource or DomainResource (including cannot change the meaning of
544
+ * modifierExtension itself).
545
+ */
546
+ readonly modifierExtension?: Extension[];
547
+
548
+ /**
549
+ * A category for this property, e.g. Physical, Chemical, Enzymatic.
550
+ */
551
+ readonly category?: CodeableConcept;
552
+
553
+ /**
554
+ * Property type e.g. viscosity, pH, isoelectric point.
555
+ */
556
+ readonly code?: CodeableConcept;
557
+
558
+ /**
559
+ * Parameters that were used in the measurement of a property (e.g. for
560
+ * viscosity: measured at 20C with a pH of 7.1).
561
+ */
562
+ readonly parameters?: string;
563
+
564
+ /**
565
+ * A substance upon which a defining property depends (e.g. for
566
+ * solubility: in water, in alcohol).
567
+ */
568
+ readonly definingSubstanceReference?: Reference<SubstanceSpecification | Substance>;
569
+
570
+ /**
571
+ * A substance upon which a defining property depends (e.g. for
572
+ * solubility: in water, in alcohol).
573
+ */
574
+ readonly definingSubstanceCodeableConcept?: CodeableConcept;
575
+
576
+ /**
577
+ * Quantitative value for this property.
578
+ */
579
+ readonly amountQuantity?: Quantity;
580
+
581
+ /**
582
+ * Quantitative value for this property.
583
+ */
584
+ readonly amountString?: string;
585
+ }
586
+
587
+ /**
588
+ * A link between this substance and another, with details of the
589
+ * relationship.
590
+ */
591
+ export interface SubstanceSpecificationRelationship {
592
+
593
+ /**
594
+ * Unique id for the element within a resource (for internal references).
595
+ * This may be any string value that does not contain spaces.
596
+ */
597
+ readonly id?: string;
598
+
599
+ /**
600
+ * May be used to represent additional information that is not part of
601
+ * the basic definition of the element. To make the use of extensions
602
+ * safe and manageable, there is a strict set of governance applied to
603
+ * the definition and use of extensions. Though any implementer can
604
+ * define an extension, there is a set of requirements that SHALL be met
605
+ * as part of the definition of the extension.
606
+ */
607
+ readonly extension?: Extension[];
608
+
609
+ /**
610
+ * May be used to represent additional information that is not part of
611
+ * the basic definition of the element and that modifies the
612
+ * understanding of the element in which it is contained and/or the
613
+ * understanding of the containing element's descendants. Usually
614
+ * modifier elements provide negation or qualification. To make the use
615
+ * of extensions safe and manageable, there is a strict set of governance
616
+ * applied to the definition and use of extensions. Though any
617
+ * implementer can define an extension, there is a set of requirements
618
+ * that SHALL be met as part of the definition of the extension.
619
+ * Applications processing a resource are required to check for modifier
620
+ * extensions.
621
+ *
622
+ * Modifier extensions SHALL NOT change the meaning of any elements on
623
+ * Resource or DomainResource (including cannot change the meaning of
624
+ * modifierExtension itself).
625
+ */
626
+ readonly modifierExtension?: Extension[];
627
+
628
+ /**
629
+ * A pointer to another substance, as a resource or just a
630
+ * representational code.
631
+ */
632
+ readonly substanceReference?: Reference<SubstanceSpecification>;
633
+
634
+ /**
635
+ * A pointer to another substance, as a resource or just a
636
+ * representational code.
637
+ */
638
+ readonly substanceCodeableConcept?: CodeableConcept;
639
+
640
+ /**
641
+ * For example &quot;salt to parent&quot;, &quot;active moiety&quot;, &quot;starting material&quot;.
642
+ */
643
+ readonly relationship?: CodeableConcept;
644
+
645
+ /**
646
+ * For example where an enzyme strongly bonds with a particular
647
+ * substance, this is a defining relationship for that enzyme, out of
648
+ * several possible substance relationships.
649
+ */
650
+ readonly isDefining?: boolean;
651
+
652
+ /**
653
+ * A numeric factor for the relationship, for instance to express that
654
+ * the salt of a substance has some percentage of the active substance in
655
+ * relation to some other.
656
+ */
657
+ readonly amountQuantity?: Quantity;
658
+
659
+ /**
660
+ * A numeric factor for the relationship, for instance to express that
661
+ * the salt of a substance has some percentage of the active substance in
662
+ * relation to some other.
663
+ */
664
+ readonly amountRange?: Range;
665
+
666
+ /**
667
+ * A numeric factor for the relationship, for instance to express that
668
+ * the salt of a substance has some percentage of the active substance in
669
+ * relation to some other.
670
+ */
671
+ readonly amountRatio?: Ratio;
672
+
673
+ /**
674
+ * A numeric factor for the relationship, for instance to express that
675
+ * the salt of a substance has some percentage of the active substance in
676
+ * relation to some other.
677
+ */
678
+ readonly amountString?: string;
679
+
680
+ /**
681
+ * For use when the numeric.
682
+ */
683
+ readonly amountRatioLowLimit?: Ratio;
684
+
685
+ /**
686
+ * An operator for the amount, for example &quot;average&quot;, &quot;approximately&quot;,
687
+ * &quot;less than&quot;.
688
+ */
689
+ readonly amountType?: CodeableConcept;
690
+
691
+ /**
692
+ * Supporting literature.
693
+ */
694
+ readonly source?: Reference<DocumentReference>[];
695
+ }
696
+
697
+ /**
698
+ * Structural information.
699
+ */
700
+ export interface SubstanceSpecificationStructure {
701
+
702
+ /**
703
+ * Unique id for the element within a resource (for internal references).
704
+ * This may be any string value that does not contain spaces.
705
+ */
706
+ readonly id?: string;
707
+
708
+ /**
709
+ * May be used to represent additional information that is not part of
710
+ * the basic definition of the element. To make the use of extensions
711
+ * safe and manageable, there is a strict set of governance applied to
712
+ * the definition and use of extensions. Though any implementer can
713
+ * define an extension, there is a set of requirements that SHALL be met
714
+ * as part of the definition of the extension.
715
+ */
716
+ readonly extension?: Extension[];
717
+
718
+ /**
719
+ * May be used to represent additional information that is not part of
720
+ * the basic definition of the element and that modifies the
721
+ * understanding of the element in which it is contained and/or the
722
+ * understanding of the containing element's descendants. Usually
723
+ * modifier elements provide negation or qualification. To make the use
724
+ * of extensions safe and manageable, there is a strict set of governance
725
+ * applied to the definition and use of extensions. Though any
726
+ * implementer can define an extension, there is a set of requirements
727
+ * that SHALL be met as part of the definition of the extension.
728
+ * Applications processing a resource are required to check for modifier
729
+ * extensions.
730
+ *
731
+ * Modifier extensions SHALL NOT change the meaning of any elements on
732
+ * Resource or DomainResource (including cannot change the meaning of
733
+ * modifierExtension itself).
734
+ */
735
+ readonly modifierExtension?: Extension[];
736
+
737
+ /**
738
+ * Stereochemistry type.
739
+ */
740
+ readonly stereochemistry?: CodeableConcept;
741
+
742
+ /**
743
+ * Optical activity type.
744
+ */
745
+ readonly opticalActivity?: CodeableConcept;
746
+
747
+ /**
748
+ * Molecular formula.
749
+ */
750
+ readonly molecularFormula?: string;
751
+
752
+ /**
753
+ * Specified per moiety according to the Hill system, i.e. first C, then
754
+ * H, then alphabetical, each moiety separated by a dot.
755
+ */
756
+ readonly molecularFormulaByMoiety?: string;
757
+
758
+ /**
759
+ * Applicable for single substances that contain a radionuclide or a
760
+ * non-natural isotopic ratio.
761
+ */
762
+ readonly isotope?: SubstanceSpecificationStructureIsotope[];
763
+
764
+ /**
765
+ * The molecular weight or weight range (for proteins, polymers or
766
+ * nucleic acids).
767
+ */
768
+ readonly molecularWeight?: SubstanceSpecificationStructureIsotopeMolecularWeight;
769
+
770
+ /**
771
+ * Supporting literature.
772
+ */
773
+ readonly source?: Reference<DocumentReference>[];
774
+
775
+ /**
776
+ * Molecular structural representation.
777
+ */
778
+ readonly representation?: SubstanceSpecificationStructureRepresentation[];
779
+ }
780
+
781
+ /**
782
+ * Applicable for single substances that contain a radionuclide or a
783
+ * non-natural isotopic ratio.
784
+ */
785
+ export interface SubstanceSpecificationStructureIsotope {
786
+
787
+ /**
788
+ * Unique id for the element within a resource (for internal references).
789
+ * This may be any string value that does not contain spaces.
790
+ */
791
+ readonly id?: string;
792
+
793
+ /**
794
+ * May be used to represent additional information that is not part of
795
+ * the basic definition of the element. To make the use of extensions
796
+ * safe and manageable, there is a strict set of governance applied to
797
+ * the definition and use of extensions. Though any implementer can
798
+ * define an extension, there is a set of requirements that SHALL be met
799
+ * as part of the definition of the extension.
800
+ */
801
+ readonly extension?: Extension[];
802
+
803
+ /**
804
+ * May be used to represent additional information that is not part of
805
+ * the basic definition of the element and that modifies the
806
+ * understanding of the element in which it is contained and/or the
807
+ * understanding of the containing element's descendants. Usually
808
+ * modifier elements provide negation or qualification. To make the use
809
+ * of extensions safe and manageable, there is a strict set of governance
810
+ * applied to the definition and use of extensions. Though any
811
+ * implementer can define an extension, there is a set of requirements
812
+ * that SHALL be met as part of the definition of the extension.
813
+ * Applications processing a resource are required to check for modifier
814
+ * extensions.
815
+ *
816
+ * Modifier extensions SHALL NOT change the meaning of any elements on
817
+ * Resource or DomainResource (including cannot change the meaning of
818
+ * modifierExtension itself).
819
+ */
820
+ readonly modifierExtension?: Extension[];
821
+
822
+ /**
823
+ * Substance identifier for each non-natural or radioisotope.
824
+ */
825
+ readonly identifier?: Identifier;
826
+
827
+ /**
828
+ * Substance name for each non-natural or radioisotope.
829
+ */
830
+ readonly name?: CodeableConcept;
831
+
832
+ /**
833
+ * The type of isotopic substitution present in a single substance.
834
+ */
835
+ readonly substitution?: CodeableConcept;
836
+
837
+ /**
838
+ * Half life - for a non-natural nuclide.
839
+ */
840
+ readonly halfLife?: Quantity;
841
+
842
+ /**
843
+ * The molecular weight or weight range (for proteins, polymers or
844
+ * nucleic acids).
845
+ */
846
+ readonly molecularWeight?: SubstanceSpecificationStructureIsotopeMolecularWeight;
847
+ }
848
+
849
+ /**
850
+ * The molecular weight or weight range (for proteins, polymers or
851
+ * nucleic acids).
852
+ */
853
+ export interface SubstanceSpecificationStructureIsotopeMolecularWeight {
854
+
855
+ /**
856
+ * Unique id for the element within a resource (for internal references).
857
+ * This may be any string value that does not contain spaces.
858
+ */
859
+ readonly id?: string;
860
+
861
+ /**
862
+ * May be used to represent additional information that is not part of
863
+ * the basic definition of the element. To make the use of extensions
864
+ * safe and manageable, there is a strict set of governance applied to
865
+ * the definition and use of extensions. Though any implementer can
866
+ * define an extension, there is a set of requirements that SHALL be met
867
+ * as part of the definition of the extension.
868
+ */
869
+ readonly extension?: Extension[];
870
+
871
+ /**
872
+ * May be used to represent additional information that is not part of
873
+ * the basic definition of the element and that modifies the
874
+ * understanding of the element in which it is contained and/or the
875
+ * understanding of the containing element's descendants. Usually
876
+ * modifier elements provide negation or qualification. To make the use
877
+ * of extensions safe and manageable, there is a strict set of governance
878
+ * applied to the definition and use of extensions. Though any
879
+ * implementer can define an extension, there is a set of requirements
880
+ * that SHALL be met as part of the definition of the extension.
881
+ * Applications processing a resource are required to check for modifier
882
+ * extensions.
883
+ *
884
+ * Modifier extensions SHALL NOT change the meaning of any elements on
885
+ * Resource or DomainResource (including cannot change the meaning of
886
+ * modifierExtension itself).
887
+ */
888
+ readonly modifierExtension?: Extension[];
889
+
890
+ /**
891
+ * The method by which the molecular weight was determined.
892
+ */
893
+ readonly method?: CodeableConcept;
894
+
895
+ /**
896
+ * Type of molecular weight such as exact, average (also known as. number
897
+ * average), weight average.
898
+ */
899
+ readonly type?: CodeableConcept;
900
+
901
+ /**
902
+ * Used to capture quantitative values for a variety of elements. If only
903
+ * limits are given, the arithmetic mean would be the average. If only a
904
+ * single definite value for a given element is given, it would be
905
+ * captured in this field.
906
+ */
907
+ readonly amount?: Quantity;
908
+ }
909
+
910
+ /**
911
+ * Molecular structural representation.
912
+ */
913
+ export interface SubstanceSpecificationStructureRepresentation {
914
+
915
+ /**
916
+ * Unique id for the element within a resource (for internal references).
917
+ * This may be any string value that does not contain spaces.
918
+ */
919
+ readonly id?: string;
920
+
921
+ /**
922
+ * May be used to represent additional information that is not part of
923
+ * the basic definition of the element. To make the use of extensions
924
+ * safe and manageable, there is a strict set of governance applied to
925
+ * the definition and use of extensions. Though any implementer can
926
+ * define an extension, there is a set of requirements that SHALL be met
927
+ * as part of the definition of the extension.
928
+ */
929
+ readonly extension?: Extension[];
930
+
931
+ /**
932
+ * May be used to represent additional information that is not part of
933
+ * the basic definition of the element and that modifies the
934
+ * understanding of the element in which it is contained and/or the
935
+ * understanding of the containing element's descendants. Usually
936
+ * modifier elements provide negation or qualification. To make the use
937
+ * of extensions safe and manageable, there is a strict set of governance
938
+ * applied to the definition and use of extensions. Though any
939
+ * implementer can define an extension, there is a set of requirements
940
+ * that SHALL be met as part of the definition of the extension.
941
+ * Applications processing a resource are required to check for modifier
942
+ * extensions.
943
+ *
944
+ * Modifier extensions SHALL NOT change the meaning of any elements on
945
+ * Resource or DomainResource (including cannot change the meaning of
946
+ * modifierExtension itself).
947
+ */
948
+ readonly modifierExtension?: Extension[];
949
+
950
+ /**
951
+ * The type of structure (e.g. Full, Partial, Representative).
952
+ */
953
+ readonly type?: CodeableConcept;
954
+
955
+ /**
956
+ * The structural representation as text string in a format e.g. InChI,
957
+ * SMILES, MOLFILE, CDX.
958
+ */
959
+ readonly representation?: string;
960
+
961
+ /**
962
+ * An attached file with the structural representation.
963
+ */
964
+ readonly attachment?: Attachment;
965
+ }