@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,460 @@
1
+ /*
2
+ * Generated by @medplum/generator
3
+ * Do not edit manually.
4
+ */
5
+
6
+ import { CodeableConcept } from './CodeableConcept';
7
+ import { ContactDetail } from './ContactDetail';
8
+ import { Device } from './Device';
9
+ import { Extension } from './Extension';
10
+ import { Identifier } from './Identifier';
11
+ import { Medication } from './Medication';
12
+ import { Meta } from './Meta';
13
+ import { Money } from './Money';
14
+ import { Narrative } from './Narrative';
15
+ import { Period } from './Period';
16
+ import { Reference } from './Reference';
17
+ import { Resource } from './Resource';
18
+ import { Substance } from './Substance';
19
+ import { UsageContext } from './UsageContext';
20
+
21
+ /**
22
+ * The ChargeItemDefinition resource provides the properties that apply
23
+ * to the (billing) codes necessary to calculate costs and prices. The
24
+ * properties may differ largely depending on type and realm, therefore
25
+ * this resource gives only a rough structure and requires profiling for
26
+ * each type of billing code system.
27
+ */
28
+ export interface ChargeItemDefinition {
29
+
30
+ /**
31
+ * This is a ChargeItemDefinition resource
32
+ */
33
+ readonly resourceType: 'ChargeItemDefinition';
34
+
35
+ /**
36
+ * The logical id of the resource, as used in the URL for the resource.
37
+ * Once assigned, this value never changes.
38
+ */
39
+ readonly id?: string;
40
+
41
+ /**
42
+ * The metadata about the resource. This is content that is maintained by
43
+ * the infrastructure. Changes to the content might not always be
44
+ * associated with version changes to the resource.
45
+ */
46
+ readonly meta?: Meta;
47
+
48
+ /**
49
+ * A reference to a set of rules that were followed when the resource was
50
+ * constructed, and which must be understood when processing the content.
51
+ * Often, this is a reference to an implementation guide that defines the
52
+ * special rules along with other profiles etc.
53
+ */
54
+ readonly implicitRules?: string;
55
+
56
+ /**
57
+ * The base language in which the resource is written.
58
+ */
59
+ readonly language?: string;
60
+
61
+ /**
62
+ * A human-readable narrative that contains a summary of the resource and
63
+ * can be used to represent the content of the resource to a human. The
64
+ * narrative need not encode all the structured data, but is required to
65
+ * contain sufficient detail to make it "clinically safe" for a human to
66
+ * just read the narrative. Resource definitions may define what content
67
+ * should be represented in the narrative to ensure clinical safety.
68
+ */
69
+ readonly text?: Narrative;
70
+
71
+ /**
72
+ * These resources do not have an independent existence apart from the
73
+ * resource that contains them - they cannot be identified independently,
74
+ * and nor can they have their own independent transaction scope.
75
+ */
76
+ readonly contained?: Resource[];
77
+
78
+ /**
79
+ * May be used to represent additional information that is not part of
80
+ * the basic definition of the resource. To make the use of extensions
81
+ * safe and manageable, there is a strict set of governance applied to
82
+ * the definition and use of extensions. Though any implementer can
83
+ * define an extension, there is a set of requirements that SHALL be met
84
+ * as part of the definition of the extension.
85
+ */
86
+ readonly extension?: Extension[];
87
+
88
+ /**
89
+ * May be used to represent additional information that is not part of
90
+ * the basic definition of the resource and that modifies the
91
+ * understanding of the element that contains it and/or the understanding
92
+ * of the containing element's descendants. Usually modifier elements
93
+ * provide negation or qualification. To make the use of extensions safe
94
+ * and manageable, there is a strict set of governance applied to the
95
+ * definition and use of extensions. Though any implementer is allowed to
96
+ * define an extension, there is a set of requirements that SHALL be met
97
+ * as part of the definition of the extension. Applications processing a
98
+ * resource are required to check for modifier extensions.
99
+ *
100
+ * Modifier extensions SHALL NOT change the meaning of any elements on
101
+ * Resource or DomainResource (including cannot change the meaning of
102
+ * modifierExtension itself).
103
+ */
104
+ readonly modifierExtension?: Extension[];
105
+
106
+ /**
107
+ * An absolute URI that is used to identify this charge item definition
108
+ * when it is referenced in a specification, model, design or an
109
+ * instance; also called its canonical identifier. This SHOULD be
110
+ * globally unique and SHOULD be a literal address at which at which an
111
+ * authoritative instance of this charge item definition is (or will be)
112
+ * published. This URL can be the target of a canonical reference. It
113
+ * SHALL remain the same when the charge item definition is stored on
114
+ * different servers.
115
+ */
116
+ readonly url?: string;
117
+
118
+ /**
119
+ * A formal identifier that is used to identify this charge item
120
+ * definition when it is represented in other formats, or referenced in a
121
+ * specification, model, design or an instance.
122
+ */
123
+ readonly identifier?: Identifier[];
124
+
125
+ /**
126
+ * The identifier that is used to identify this version of the charge
127
+ * item definition when it is referenced in a specification, model,
128
+ * design or instance. This is an arbitrary value managed by the charge
129
+ * item definition author and is not expected to be globally unique. For
130
+ * example, it might be a timestamp (e.g. yyyymmdd) if a managed version
131
+ * is not available. There is also no expectation that versions can be
132
+ * placed in a lexicographical sequence. To provide a version consistent
133
+ * with the Decision Support Service specification, use the format
134
+ * Major.Minor.Revision (e.g. 1.0.0). For more information on versioning
135
+ * knowledge assets, refer to the Decision Support Service specification.
136
+ * Note that a version is required for non-experimental active assets.
137
+ */
138
+ readonly version?: string;
139
+
140
+ /**
141
+ * A short, descriptive, user-friendly title for the charge item
142
+ * definition.
143
+ */
144
+ readonly title?: string;
145
+
146
+ /**
147
+ * The URL pointing to an externally-defined charge item definition that
148
+ * is adhered to in whole or in part by this definition.
149
+ */
150
+ readonly derivedFromUri?: string[];
151
+
152
+ /**
153
+ * A larger definition of which this particular definition is a component
154
+ * or step.
155
+ */
156
+ readonly partOf?: string[];
157
+
158
+ /**
159
+ * As new versions of a protocol or guideline are defined, allows
160
+ * identification of what versions are replaced by a new instance.
161
+ */
162
+ readonly replaces?: string[];
163
+
164
+ /**
165
+ * The current state of the ChargeItemDefinition.
166
+ */
167
+ readonly status?: string;
168
+
169
+ /**
170
+ * A Boolean value to indicate that this charge item definition is
171
+ * authored for testing purposes (or education/evaluation/marketing) and
172
+ * is not intended to be used for genuine usage.
173
+ */
174
+ readonly experimental?: boolean;
175
+
176
+ /**
177
+ * The date (and optionally time) when the charge item definition was
178
+ * published. The date must change when the business version changes and
179
+ * it must change if the status code changes. In addition, it should
180
+ * change when the substantive content of the charge item definition
181
+ * changes.
182
+ */
183
+ readonly date?: string;
184
+
185
+ /**
186
+ * The name of the organization or individual that published the charge
187
+ * item definition.
188
+ */
189
+ readonly publisher?: string;
190
+
191
+ /**
192
+ * Contact details to assist a user in finding and communicating with the
193
+ * publisher.
194
+ */
195
+ readonly contact?: ContactDetail[];
196
+
197
+ /**
198
+ * A free text natural language description of the charge item definition
199
+ * from a consumer's perspective.
200
+ */
201
+ readonly description?: string;
202
+
203
+ /**
204
+ * The content was developed with a focus and intent of supporting the
205
+ * contexts that are listed. These contexts may be general categories
206
+ * (gender, age, ...) or may be references to specific programs
207
+ * (insurance plans, studies, ...) and may be used to assist with
208
+ * indexing and searching for appropriate charge item definition
209
+ * instances.
210
+ */
211
+ readonly useContext?: UsageContext[];
212
+
213
+ /**
214
+ * A legal or geographic region in which the charge item definition is
215
+ * intended to be used.
216
+ */
217
+ readonly jurisdiction?: CodeableConcept[];
218
+
219
+ /**
220
+ * A copyright statement relating to the charge item definition and/or
221
+ * its contents. Copyright statements are generally legal restrictions on
222
+ * the use and publishing of the charge item definition.
223
+ */
224
+ readonly copyright?: string;
225
+
226
+ /**
227
+ * The date on which the resource content was approved by the publisher.
228
+ * Approval happens once when the content is officially approved for
229
+ * usage.
230
+ */
231
+ readonly approvalDate?: string;
232
+
233
+ /**
234
+ * The date on which the resource content was last reviewed. Review
235
+ * happens periodically after approval but does not change the original
236
+ * approval date.
237
+ */
238
+ readonly lastReviewDate?: string;
239
+
240
+ /**
241
+ * The period during which the charge item definition content was or is
242
+ * planned to be in active use.
243
+ */
244
+ readonly effectivePeriod?: Period;
245
+
246
+ /**
247
+ * The defined billing details in this resource pertain to the given
248
+ * billing code.
249
+ */
250
+ readonly code?: CodeableConcept;
251
+
252
+ /**
253
+ * The defined billing details in this resource pertain to the given
254
+ * product instance(s).
255
+ */
256
+ readonly instance?: Reference<Medication | Substance | Device>[];
257
+
258
+ /**
259
+ * Expressions that describe applicability criteria for the billing code.
260
+ */
261
+ readonly applicability?: ChargeItemDefinitionApplicability[];
262
+
263
+ /**
264
+ * Group of properties which are applicable under the same conditions. If
265
+ * no applicability rules are established for the group, then all
266
+ * properties always apply.
267
+ */
268
+ readonly propertyGroup?: ChargeItemDefinitionPropertyGroup[];
269
+ }
270
+
271
+ /**
272
+ * Expressions that describe applicability criteria for the billing code.
273
+ */
274
+ export interface ChargeItemDefinitionApplicability {
275
+
276
+ /**
277
+ * Unique id for the element within a resource (for internal references).
278
+ * This may be any string value that does not contain spaces.
279
+ */
280
+ readonly id?: string;
281
+
282
+ /**
283
+ * May be used to represent additional information that is not part of
284
+ * the basic definition of the element. To make the use of extensions
285
+ * safe and manageable, there is a strict set of governance applied to
286
+ * the definition and use of extensions. Though any implementer can
287
+ * define an extension, there is a set of requirements that SHALL be met
288
+ * as part of the definition of the extension.
289
+ */
290
+ readonly extension?: Extension[];
291
+
292
+ /**
293
+ * May be used to represent additional information that is not part of
294
+ * the basic definition of the element and that modifies the
295
+ * understanding of the element in which it is contained and/or the
296
+ * understanding of the containing element's descendants. Usually
297
+ * modifier elements provide negation or qualification. To make the use
298
+ * of extensions safe and manageable, there is a strict set of governance
299
+ * applied to the definition and use of extensions. Though any
300
+ * implementer can define an extension, there is a set of requirements
301
+ * that SHALL be met as part of the definition of the extension.
302
+ * Applications processing a resource are required to check for modifier
303
+ * extensions.
304
+ *
305
+ * Modifier extensions SHALL NOT change the meaning of any elements on
306
+ * Resource or DomainResource (including cannot change the meaning of
307
+ * modifierExtension itself).
308
+ */
309
+ readonly modifierExtension?: Extension[];
310
+
311
+ /**
312
+ * A brief, natural language description of the condition that
313
+ * effectively communicates the intended semantics.
314
+ */
315
+ readonly description?: string;
316
+
317
+ /**
318
+ * The media type of the language for the expression, e.g. &quot;text/cql&quot; for
319
+ * Clinical Query Language expressions or &quot;text/fhirpath&quot; for FHIRPath
320
+ * expressions.
321
+ */
322
+ readonly language?: string;
323
+
324
+ /**
325
+ * An expression that returns true or false, indicating whether the
326
+ * condition is satisfied. When using FHIRPath expressions, the %context
327
+ * environment variable must be replaced at runtime with the ChargeItem
328
+ * resource to which this definition is applied.
329
+ */
330
+ readonly expression?: string;
331
+ }
332
+
333
+ /**
334
+ * Group of properties which are applicable under the same conditions. If
335
+ * no applicability rules are established for the group, then all
336
+ * properties always apply.
337
+ */
338
+ export interface ChargeItemDefinitionPropertyGroup {
339
+
340
+ /**
341
+ * Unique id for the element within a resource (for internal references).
342
+ * This may be any string value that does not contain spaces.
343
+ */
344
+ readonly id?: string;
345
+
346
+ /**
347
+ * May be used to represent additional information that is not part of
348
+ * the basic definition of the element. To make the use of extensions
349
+ * safe and manageable, there is a strict set of governance applied to
350
+ * the definition and use of extensions. Though any implementer can
351
+ * define an extension, there is a set of requirements that SHALL be met
352
+ * as part of the definition of the extension.
353
+ */
354
+ readonly extension?: Extension[];
355
+
356
+ /**
357
+ * May be used to represent additional information that is not part of
358
+ * the basic definition of the element and that modifies the
359
+ * understanding of the element in which it is contained and/or the
360
+ * understanding of the containing element's descendants. Usually
361
+ * modifier elements provide negation or qualification. To make the use
362
+ * of extensions safe and manageable, there is a strict set of governance
363
+ * applied to the definition and use of extensions. Though any
364
+ * implementer can define an extension, there is a set of requirements
365
+ * that SHALL be met as part of the definition of the extension.
366
+ * Applications processing a resource are required to check for modifier
367
+ * extensions.
368
+ *
369
+ * Modifier extensions SHALL NOT change the meaning of any elements on
370
+ * Resource or DomainResource (including cannot change the meaning of
371
+ * modifierExtension itself).
372
+ */
373
+ readonly modifierExtension?: Extension[];
374
+
375
+ /**
376
+ * Expressions that describe applicability criteria for the
377
+ * priceComponent.
378
+ */
379
+ readonly applicability?: ChargeItemDefinitionApplicability[];
380
+
381
+ /**
382
+ * The price for a ChargeItem may be calculated as a base price with
383
+ * surcharges/deductions that apply in certain conditions. A
384
+ * ChargeItemDefinition resource that defines the prices, factors and
385
+ * conditions that apply to a billing code is currently under
386
+ * development. The priceComponent element can be used to offer
387
+ * transparency to the recipient of the Invoice of how the prices have
388
+ * been calculated.
389
+ */
390
+ readonly priceComponent?: ChargeItemDefinitionPropertyGroupPriceComponent[];
391
+ }
392
+
393
+ /**
394
+ * The price for a ChargeItem may be calculated as a base price with
395
+ * surcharges/deductions that apply in certain conditions. A
396
+ * ChargeItemDefinition resource that defines the prices, factors and
397
+ * conditions that apply to a billing code is currently under
398
+ * development. The priceComponent element can be used to offer
399
+ * transparency to the recipient of the Invoice of how the prices have
400
+ * been calculated.
401
+ */
402
+ export interface ChargeItemDefinitionPropertyGroupPriceComponent {
403
+
404
+ /**
405
+ * Unique id for the element within a resource (for internal references).
406
+ * This may be any string value that does not contain spaces.
407
+ */
408
+ readonly id?: string;
409
+
410
+ /**
411
+ * May be used to represent additional information that is not part of
412
+ * the basic definition of the element. To make the use of extensions
413
+ * safe and manageable, there is a strict set of governance applied to
414
+ * the definition and use of extensions. Though any implementer can
415
+ * define an extension, there is a set of requirements that SHALL be met
416
+ * as part of the definition of the extension.
417
+ */
418
+ readonly extension?: Extension[];
419
+
420
+ /**
421
+ * May be used to represent additional information that is not part of
422
+ * the basic definition of the element and that modifies the
423
+ * understanding of the element in which it is contained and/or the
424
+ * understanding of the containing element's descendants. Usually
425
+ * modifier elements provide negation or qualification. To make the use
426
+ * of extensions safe and manageable, there is a strict set of governance
427
+ * applied to the definition and use of extensions. Though any
428
+ * implementer can define an extension, there is a set of requirements
429
+ * that SHALL be met as part of the definition of the extension.
430
+ * Applications processing a resource are required to check for modifier
431
+ * extensions.
432
+ *
433
+ * Modifier extensions SHALL NOT change the meaning of any elements on
434
+ * Resource or DomainResource (including cannot change the meaning of
435
+ * modifierExtension itself).
436
+ */
437
+ readonly modifierExtension?: Extension[];
438
+
439
+ /**
440
+ * This code identifies the type of the component.
441
+ */
442
+ readonly type?: string;
443
+
444
+ /**
445
+ * A code that identifies the component. Codes may be used to
446
+ * differentiate between kinds of taxes, surcharges, discounts etc.
447
+ */
448
+ readonly code?: CodeableConcept;
449
+
450
+ /**
451
+ * The factor that has been applied on the base price for calculating
452
+ * this component.
453
+ */
454
+ readonly factor?: number;
455
+
456
+ /**
457
+ * The amount calculated for this component.
458
+ */
459
+ readonly amount?: Money;
460
+ }