@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,202 @@
1
+ /*
2
+ * Generated by @medplum/generator
3
+ * Do not edit manually.
4
+ */
5
+
6
+ import { ContactPoint } from './ContactPoint';
7
+ import { Extension } from './Extension';
8
+ import { Meta } from './Meta';
9
+ import { Narrative } from './Narrative';
10
+ import { Resource } from './Resource';
11
+
12
+ /**
13
+ * The subscription resource is used to define a push-based subscription
14
+ * from a server to another system. Once a subscription is registered
15
+ * with the server, the server checks every resource that is created or
16
+ * updated, and if the resource matches the given criteria, it sends a
17
+ * message on the defined "channel" so that another system can take an
18
+ * appropriate action.
19
+ */
20
+ export interface Subscription {
21
+
22
+ /**
23
+ * This is a Subscription resource
24
+ */
25
+ readonly resourceType: 'Subscription';
26
+
27
+ /**
28
+ * The logical id of the resource, as used in the URL for the resource.
29
+ * Once assigned, this value never changes.
30
+ */
31
+ readonly id?: string;
32
+
33
+ /**
34
+ * The metadata about the resource. This is content that is maintained by
35
+ * the infrastructure. Changes to the content might not always be
36
+ * associated with version changes to the resource.
37
+ */
38
+ readonly meta?: Meta;
39
+
40
+ /**
41
+ * A reference to a set of rules that were followed when the resource was
42
+ * constructed, and which must be understood when processing the content.
43
+ * Often, this is a reference to an implementation guide that defines the
44
+ * special rules along with other profiles etc.
45
+ */
46
+ readonly implicitRules?: string;
47
+
48
+ /**
49
+ * The base language in which the resource is written.
50
+ */
51
+ readonly language?: string;
52
+
53
+ /**
54
+ * A human-readable narrative that contains a summary of the resource and
55
+ * can be used to represent the content of the resource to a human. The
56
+ * narrative need not encode all the structured data, but is required to
57
+ * contain sufficient detail to make it "clinically safe" for a human to
58
+ * just read the narrative. Resource definitions may define what content
59
+ * should be represented in the narrative to ensure clinical safety.
60
+ */
61
+ readonly text?: Narrative;
62
+
63
+ /**
64
+ * These resources do not have an independent existence apart from the
65
+ * resource that contains them - they cannot be identified independently,
66
+ * and nor can they have their own independent transaction scope.
67
+ */
68
+ readonly contained?: Resource[];
69
+
70
+ /**
71
+ * May be used to represent additional information that is not part of
72
+ * the basic definition of the resource. To make the use of extensions
73
+ * safe and manageable, there is a strict set of governance applied to
74
+ * the definition and use of extensions. Though any implementer can
75
+ * define an extension, there is a set of requirements that SHALL be met
76
+ * as part of the definition of the extension.
77
+ */
78
+ readonly extension?: Extension[];
79
+
80
+ /**
81
+ * May be used to represent additional information that is not part of
82
+ * the basic definition of the resource and that modifies the
83
+ * understanding of the element that contains it and/or the understanding
84
+ * of the containing element's descendants. Usually modifier elements
85
+ * provide negation or qualification. To make the use of extensions safe
86
+ * and manageable, there is a strict set of governance applied to the
87
+ * definition and use of extensions. Though any implementer is allowed to
88
+ * define an extension, there is a set of requirements that SHALL be met
89
+ * as part of the definition of the extension. Applications processing a
90
+ * resource are required to check for modifier extensions.
91
+ *
92
+ * Modifier extensions SHALL NOT change the meaning of any elements on
93
+ * Resource or DomainResource (including cannot change the meaning of
94
+ * modifierExtension itself).
95
+ */
96
+ readonly modifierExtension?: Extension[];
97
+
98
+ /**
99
+ * The status of the subscription, which marks the server state for
100
+ * managing the subscription.
101
+ */
102
+ readonly status?: string;
103
+
104
+ /**
105
+ * Contact details for a human to contact about the subscription. The
106
+ * primary use of this for system administrator troubleshooting.
107
+ */
108
+ readonly contact?: ContactPoint[];
109
+
110
+ /**
111
+ * The time for the server to turn the subscription off.
112
+ */
113
+ readonly end?: string;
114
+
115
+ /**
116
+ * A description of why this subscription is defined.
117
+ */
118
+ readonly reason?: string;
119
+
120
+ /**
121
+ * The rules that the server should use to determine when to generate
122
+ * notifications for this subscription.
123
+ */
124
+ readonly criteria?: string;
125
+
126
+ /**
127
+ * A record of the last error that occurred when the server processed a
128
+ * notification.
129
+ */
130
+ readonly error?: string;
131
+
132
+ /**
133
+ * Details where to send notifications when resources are received that
134
+ * meet the criteria.
135
+ */
136
+ readonly channel?: SubscriptionChannel;
137
+ }
138
+
139
+ /**
140
+ * Details where to send notifications when resources are received that
141
+ * meet the criteria.
142
+ */
143
+ export interface SubscriptionChannel {
144
+
145
+ /**
146
+ * Unique id for the element within a resource (for internal references).
147
+ * This may be any string value that does not contain spaces.
148
+ */
149
+ readonly id?: string;
150
+
151
+ /**
152
+ * May be used to represent additional information that is not part of
153
+ * the basic definition of the element. To make the use of extensions
154
+ * safe and manageable, there is a strict set of governance applied to
155
+ * the definition and use of extensions. Though any implementer can
156
+ * define an extension, there is a set of requirements that SHALL be met
157
+ * as part of the definition of the extension.
158
+ */
159
+ readonly extension?: Extension[];
160
+
161
+ /**
162
+ * May be used to represent additional information that is not part of
163
+ * the basic definition of the element and that modifies the
164
+ * understanding of the element in which it is contained and/or the
165
+ * understanding of the containing element's descendants. Usually
166
+ * modifier elements provide negation or qualification. To make the use
167
+ * of extensions safe and manageable, there is a strict set of governance
168
+ * applied to the definition and use of extensions. Though any
169
+ * implementer can define an extension, there is a set of requirements
170
+ * that SHALL be met as part of the definition of the extension.
171
+ * Applications processing a resource are required to check for modifier
172
+ * extensions.
173
+ *
174
+ * Modifier extensions SHALL NOT change the meaning of any elements on
175
+ * Resource or DomainResource (including cannot change the meaning of
176
+ * modifierExtension itself).
177
+ */
178
+ readonly modifierExtension?: Extension[];
179
+
180
+ /**
181
+ * The type of channel to send notifications on.
182
+ */
183
+ readonly type?: string;
184
+
185
+ /**
186
+ * The url that describes the actual end-point to send messages to.
187
+ */
188
+ readonly endpoint?: string;
189
+
190
+ /**
191
+ * The mime type to send the payload in - either application/fhir+xml, or
192
+ * application/fhir+json. If the payload is not present, then there is no
193
+ * payload in the notification, just a notification. The mime type
194
+ * "text/plain" may also be used for Email and SMS subscriptions.
195
+ */
196
+ readonly payload?: string;
197
+
198
+ /**
199
+ * Additional headers / information to send as part of the notification.
200
+ */
201
+ readonly header?: string[];
202
+ }
@@ -0,0 +1,249 @@
1
+ /*
2
+ * Generated by @medplum/generator
3
+ * Do not edit manually.
4
+ */
5
+
6
+ import { CodeableConcept } from './CodeableConcept';
7
+ import { Extension } from './Extension';
8
+ import { Identifier } from './Identifier';
9
+ import { Meta } from './Meta';
10
+ import { Narrative } from './Narrative';
11
+ import { Quantity } from './Quantity';
12
+ import { Ratio } from './Ratio';
13
+ import { Reference } from './Reference';
14
+ import { Resource } from './Resource';
15
+
16
+ /**
17
+ * A homogeneous material with a definite composition.
18
+ */
19
+ export interface Substance {
20
+
21
+ /**
22
+ * This is a Substance resource
23
+ */
24
+ readonly resourceType: 'Substance';
25
+
26
+ /**
27
+ * The logical id of the resource, as used in the URL for the resource.
28
+ * Once assigned, this value never changes.
29
+ */
30
+ readonly id?: string;
31
+
32
+ /**
33
+ * The metadata about the resource. This is content that is maintained by
34
+ * the infrastructure. Changes to the content might not always be
35
+ * associated with version changes to the resource.
36
+ */
37
+ readonly meta?: Meta;
38
+
39
+ /**
40
+ * A reference to a set of rules that were followed when the resource was
41
+ * constructed, and which must be understood when processing the content.
42
+ * Often, this is a reference to an implementation guide that defines the
43
+ * special rules along with other profiles etc.
44
+ */
45
+ readonly implicitRules?: string;
46
+
47
+ /**
48
+ * The base language in which the resource is written.
49
+ */
50
+ readonly language?: string;
51
+
52
+ /**
53
+ * A human-readable narrative that contains a summary of the resource and
54
+ * can be used to represent the content of the resource to a human. The
55
+ * narrative need not encode all the structured data, but is required to
56
+ * contain sufficient detail to make it "clinically safe" for a human to
57
+ * just read the narrative. Resource definitions may define what content
58
+ * should be represented in the narrative to ensure clinical safety.
59
+ */
60
+ readonly text?: Narrative;
61
+
62
+ /**
63
+ * These resources do not have an independent existence apart from the
64
+ * resource that contains them - they cannot be identified independently,
65
+ * and nor can they have their own independent transaction scope.
66
+ */
67
+ readonly contained?: Resource[];
68
+
69
+ /**
70
+ * May be used to represent additional information that is not part of
71
+ * the basic definition of the resource. To make the use of extensions
72
+ * safe and manageable, there is a strict set of governance applied to
73
+ * the definition and use of extensions. Though any implementer can
74
+ * define an extension, there is a set of requirements that SHALL be met
75
+ * as part of the definition of the extension.
76
+ */
77
+ readonly extension?: Extension[];
78
+
79
+ /**
80
+ * May be used to represent additional information that is not part of
81
+ * the basic definition of the resource and that modifies the
82
+ * understanding of the element that contains it and/or the understanding
83
+ * of the containing element's descendants. Usually modifier elements
84
+ * provide negation or qualification. To make the use of extensions safe
85
+ * and manageable, there is a strict set of governance applied to the
86
+ * definition and use of extensions. Though any implementer is allowed to
87
+ * define an extension, there is a set of requirements that SHALL be met
88
+ * as part of the definition of the extension. Applications processing a
89
+ * resource are required to check for modifier extensions.
90
+ *
91
+ * Modifier extensions SHALL NOT change the meaning of any elements on
92
+ * Resource or DomainResource (including cannot change the meaning of
93
+ * modifierExtension itself).
94
+ */
95
+ readonly modifierExtension?: Extension[];
96
+
97
+ /**
98
+ * Unique identifier for the substance.
99
+ */
100
+ readonly identifier?: Identifier[];
101
+
102
+ /**
103
+ * A code to indicate if the substance is actively used.
104
+ */
105
+ readonly status?: string;
106
+
107
+ /**
108
+ * A code that classifies the general type of substance. This is used
109
+ * for searching, sorting and display purposes.
110
+ */
111
+ readonly category?: CodeableConcept[];
112
+
113
+ /**
114
+ * A code (or set of codes) that identify this substance.
115
+ */
116
+ readonly code?: CodeableConcept;
117
+
118
+ /**
119
+ * A description of the substance - its appearance, handling
120
+ * requirements, and other usage notes.
121
+ */
122
+ readonly description?: string;
123
+
124
+ /**
125
+ * Substance may be used to describe a kind of substance, or a specific
126
+ * package/container of the substance: an instance.
127
+ */
128
+ readonly instance?: SubstanceInstance[];
129
+
130
+ /**
131
+ * A substance can be composed of other substances.
132
+ */
133
+ readonly ingredient?: SubstanceIngredient[];
134
+ }
135
+
136
+ /**
137
+ * A substance can be composed of other substances.
138
+ */
139
+ export interface SubstanceIngredient {
140
+
141
+ /**
142
+ * Unique id for the element within a resource (for internal references).
143
+ * This may be any string value that does not contain spaces.
144
+ */
145
+ readonly id?: string;
146
+
147
+ /**
148
+ * May be used to represent additional information that is not part of
149
+ * the basic definition of the element. To make the use of extensions
150
+ * safe and manageable, there is a strict set of governance applied to
151
+ * the definition and use of extensions. Though any implementer can
152
+ * define an extension, there is a set of requirements that SHALL be met
153
+ * as part of the definition of the extension.
154
+ */
155
+ readonly extension?: Extension[];
156
+
157
+ /**
158
+ * May be used to represent additional information that is not part of
159
+ * the basic definition of the element and that modifies the
160
+ * understanding of the element in which it is contained and/or the
161
+ * understanding of the containing element's descendants. Usually
162
+ * modifier elements provide negation or qualification. To make the use
163
+ * of extensions safe and manageable, there is a strict set of governance
164
+ * applied to the definition and use of extensions. Though any
165
+ * implementer can define an extension, there is a set of requirements
166
+ * that SHALL be met as part of the definition of the extension.
167
+ * Applications processing a resource are required to check for modifier
168
+ * extensions.
169
+ *
170
+ * Modifier extensions SHALL NOT change the meaning of any elements on
171
+ * Resource or DomainResource (including cannot change the meaning of
172
+ * modifierExtension itself).
173
+ */
174
+ readonly modifierExtension?: Extension[];
175
+
176
+ /**
177
+ * The amount of the ingredient in the substance - a concentration ratio.
178
+ */
179
+ readonly quantity?: Ratio;
180
+
181
+ /**
182
+ * Another substance that is a component of this substance.
183
+ */
184
+ readonly substanceCodeableConcept?: CodeableConcept;
185
+
186
+ /**
187
+ * Another substance that is a component of this substance.
188
+ */
189
+ readonly substanceReference?: Reference<Substance>;
190
+ }
191
+
192
+ /**
193
+ * Substance may be used to describe a kind of substance, or a specific
194
+ * package/container of the substance: an instance.
195
+ */
196
+ export interface SubstanceInstance {
197
+
198
+ /**
199
+ * Unique id for the element within a resource (for internal references).
200
+ * This may be any string value that does not contain spaces.
201
+ */
202
+ readonly id?: string;
203
+
204
+ /**
205
+ * May be used to represent additional information that is not part of
206
+ * the basic definition of the element. To make the use of extensions
207
+ * safe and manageable, there is a strict set of governance applied to
208
+ * the definition and use of extensions. Though any implementer can
209
+ * define an extension, there is a set of requirements that SHALL be met
210
+ * as part of the definition of the extension.
211
+ */
212
+ readonly extension?: Extension[];
213
+
214
+ /**
215
+ * May be used to represent additional information that is not part of
216
+ * the basic definition of the element and that modifies the
217
+ * understanding of the element in which it is contained and/or the
218
+ * understanding of the containing element's descendants. Usually
219
+ * modifier elements provide negation or qualification. To make the use
220
+ * of extensions safe and manageable, there is a strict set of governance
221
+ * applied to the definition and use of extensions. Though any
222
+ * implementer can define an extension, there is a set of requirements
223
+ * that SHALL be met as part of the definition of the extension.
224
+ * Applications processing a resource are required to check for modifier
225
+ * extensions.
226
+ *
227
+ * Modifier extensions SHALL NOT change the meaning of any elements on
228
+ * Resource or DomainResource (including cannot change the meaning of
229
+ * modifierExtension itself).
230
+ */
231
+ readonly modifierExtension?: Extension[];
232
+
233
+ /**
234
+ * Identifier associated with the package/container (usually a label
235
+ * affixed directly).
236
+ */
237
+ readonly identifier?: Identifier;
238
+
239
+ /**
240
+ * When the substance is no longer valid to use. For some substances, a
241
+ * single arbitrary date is used for expiry.
242
+ */
243
+ readonly expiry?: string;
244
+
245
+ /**
246
+ * The amount of the substance.
247
+ */
248
+ readonly quantity?: Quantity;
249
+ }
@@ -0,0 +1,135 @@
1
+ /*
2
+ * Generated by @medplum/generator
3
+ * Do not edit manually.
4
+ */
5
+
6
+ import { CodeableConcept } from './CodeableConcept';
7
+ import { Extension } from './Extension';
8
+ import { Quantity } from './Quantity';
9
+ import { Range } from './Range';
10
+
11
+ /**
12
+ * Base StructureDefinition for SubstanceAmount Type: Chemical substances
13
+ * are a single substance type whose primary defining element is the
14
+ * molecular structure. Chemical substances shall be defined on the basis
15
+ * of their complete covalent molecular structure; the presence of a salt
16
+ * (counter-ion) and/or solvates (water, alcohols) is also captured.
17
+ * Purity, grade, physical form or particle size are not taken into
18
+ * account in the definition of a chemical substance or in the assignment
19
+ * of a Substance ID.
20
+ */
21
+ export interface SubstanceAmount {
22
+
23
+ /**
24
+ * Unique id for the element within a resource (for internal references).
25
+ * This may be any string value that does not contain spaces.
26
+ */
27
+ readonly id?: string;
28
+
29
+ /**
30
+ * May be used to represent additional information that is not part of
31
+ * the basic definition of the element. To make the use of extensions
32
+ * safe and manageable, there is a strict set of governance applied to
33
+ * the definition and use of extensions. Though any implementer can
34
+ * define an extension, there is a set of requirements that SHALL be met
35
+ * as part of the definition of the extension.
36
+ */
37
+ readonly extension?: Extension[];
38
+
39
+ /**
40
+ * May be used to represent additional information that is not part of
41
+ * the basic definition of the element and that modifies the
42
+ * understanding of the element in which it is contained and/or the
43
+ * understanding of the containing element's descendants. Usually
44
+ * modifier elements provide negation or qualification. To make the use
45
+ * of extensions safe and manageable, there is a strict set of governance
46
+ * applied to the definition and use of extensions. Though any
47
+ * implementer can define an extension, there is a set of requirements
48
+ * that SHALL be met as part of the definition of the extension.
49
+ * Applications processing a resource are required to check for modifier
50
+ * extensions.
51
+ *
52
+ * Modifier extensions SHALL NOT change the meaning of any elements on
53
+ * Resource or DomainResource (including cannot change the meaning of
54
+ * modifierExtension itself).
55
+ */
56
+ readonly modifierExtension?: Extension[];
57
+
58
+ /**
59
+ * Used to capture quantitative values for a variety of elements. If only
60
+ * limits are given, the arithmetic mean would be the average. If only a
61
+ * single definite value for a given element is given, it would be
62
+ * captured in this field.
63
+ */
64
+ readonly amountQuantity?: Quantity;
65
+
66
+ /**
67
+ * Used to capture quantitative values for a variety of elements. If only
68
+ * limits are given, the arithmetic mean would be the average. If only a
69
+ * single definite value for a given element is given, it would be
70
+ * captured in this field.
71
+ */
72
+ readonly amountRange?: Range;
73
+
74
+ /**
75
+ * Used to capture quantitative values for a variety of elements. If only
76
+ * limits are given, the arithmetic mean would be the average. If only a
77
+ * single definite value for a given element is given, it would be
78
+ * captured in this field.
79
+ */
80
+ readonly amountString?: string;
81
+
82
+ /**
83
+ * Most elements that require a quantitative value will also have a field
84
+ * called amount type. Amount type should always be specified because the
85
+ * actual value of the amount is often dependent on it. EXAMPLE: In
86
+ * capturing the actual relative amounts of substances or molecular
87
+ * fragments it is essential to indicate whether the amount refers to a
88
+ * mole ratio or weight ratio. For any given element an effort should be
89
+ * made to use same the amount type for all related definitional
90
+ * elements.
91
+ */
92
+ readonly amountType?: CodeableConcept;
93
+
94
+ /**
95
+ * A textual comment on a numeric value.
96
+ */
97
+ readonly amountText?: string;
98
+
99
+ /**
100
+ * Reference range of possible or expected values.
101
+ */
102
+ readonly referenceRange?: SubstanceAmountReferenceRange;
103
+ }
104
+
105
+ /**
106
+ * Reference range of possible or expected values.
107
+ */
108
+ export interface SubstanceAmountReferenceRange {
109
+
110
+ /**
111
+ * Unique id for the element within a resource (for internal references).
112
+ * This may be any string value that does not contain spaces.
113
+ */
114
+ readonly id?: string;
115
+
116
+ /**
117
+ * May be used to represent additional information that is not part of
118
+ * the basic definition of the element. To make the use of extensions
119
+ * safe and manageable, there is a strict set of governance applied to
120
+ * the definition and use of extensions. Though any implementer can
121
+ * define an extension, there is a set of requirements that SHALL be met
122
+ * as part of the definition of the extension.
123
+ */
124
+ readonly extension?: Extension[];
125
+
126
+ /**
127
+ * Lower limit possible or expected.
128
+ */
129
+ readonly lowLimit?: Quantity;
130
+
131
+ /**
132
+ * Upper limit possible or expected.
133
+ */
134
+ readonly highLimit?: Quantity;
135
+ }