@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,542 @@
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 { Extension } from './Extension';
9
+ import { Meta } from './Meta';
10
+ import { Narrative } from './Narrative';
11
+ import { Resource } from './Resource';
12
+ import { UsageContext } from './UsageContext';
13
+
14
+ /**
15
+ * A formal computable definition of an operation (on the RESTful
16
+ * interface) or a named query (using the search interaction).
17
+ */
18
+ export interface OperationDefinition {
19
+
20
+ /**
21
+ * This is a OperationDefinition resource
22
+ */
23
+ readonly resourceType: 'OperationDefinition';
24
+
25
+ /**
26
+ * The logical id of the resource, as used in the URL for the resource.
27
+ * Once assigned, this value never changes.
28
+ */
29
+ readonly id?: string;
30
+
31
+ /**
32
+ * The metadata about the resource. This is content that is maintained by
33
+ * the infrastructure. Changes to the content might not always be
34
+ * associated with version changes to the resource.
35
+ */
36
+ readonly meta?: Meta;
37
+
38
+ /**
39
+ * A reference to a set of rules that were followed when the resource was
40
+ * constructed, and which must be understood when processing the content.
41
+ * Often, this is a reference to an implementation guide that defines the
42
+ * special rules along with other profiles etc.
43
+ */
44
+ readonly implicitRules?: string;
45
+
46
+ /**
47
+ * The base language in which the resource is written.
48
+ */
49
+ readonly language?: string;
50
+
51
+ /**
52
+ * A human-readable narrative that contains a summary of the resource and
53
+ * can be used to represent the content of the resource to a human. The
54
+ * narrative need not encode all the structured data, but is required to
55
+ * contain sufficient detail to make it "clinically safe" for a human to
56
+ * just read the narrative. Resource definitions may define what content
57
+ * should be represented in the narrative to ensure clinical safety.
58
+ */
59
+ readonly text?: Narrative;
60
+
61
+ /**
62
+ * These resources do not have an independent existence apart from the
63
+ * resource that contains them - they cannot be identified independently,
64
+ * and nor can they have their own independent transaction scope.
65
+ */
66
+ readonly contained?: Resource[];
67
+
68
+ /**
69
+ * May be used to represent additional information that is not part of
70
+ * the basic definition of the resource. To make the use of extensions
71
+ * safe and manageable, there is a strict set of governance applied to
72
+ * the definition and use of extensions. Though any implementer can
73
+ * define an extension, there is a set of requirements that SHALL be met
74
+ * as part of the definition of the extension.
75
+ */
76
+ readonly extension?: Extension[];
77
+
78
+ /**
79
+ * May be used to represent additional information that is not part of
80
+ * the basic definition of the resource and that modifies the
81
+ * understanding of the element that contains it and/or the understanding
82
+ * of the containing element's descendants. Usually modifier elements
83
+ * provide negation or qualification. To make the use of extensions safe
84
+ * and manageable, there is a strict set of governance applied to the
85
+ * definition and use of extensions. Though any implementer is allowed to
86
+ * define an extension, there is a set of requirements that SHALL be met
87
+ * as part of the definition of the extension. Applications processing a
88
+ * resource are required to check for modifier extensions.
89
+ *
90
+ * Modifier extensions SHALL NOT change the meaning of any elements on
91
+ * Resource or DomainResource (including cannot change the meaning of
92
+ * modifierExtension itself).
93
+ */
94
+ readonly modifierExtension?: Extension[];
95
+
96
+ /**
97
+ * An absolute URI that is used to identify this operation definition
98
+ * when it is referenced in a specification, model, design or an
99
+ * instance; also called its canonical identifier. This SHOULD be
100
+ * globally unique and SHOULD be a literal address at which at which an
101
+ * authoritative instance of this operation definition is (or will be)
102
+ * published. This URL can be the target of a canonical reference. It
103
+ * SHALL remain the same when the operation definition is stored on
104
+ * different servers.
105
+ */
106
+ readonly url?: string;
107
+
108
+ /**
109
+ * The identifier that is used to identify this version of the operation
110
+ * definition when it is referenced in a specification, model, design or
111
+ * instance. This is an arbitrary value managed by the operation
112
+ * definition author and is not expected to be globally unique. For
113
+ * example, it might be a timestamp (e.g. yyyymmdd) if a managed version
114
+ * is not available. There is also no expectation that versions can be
115
+ * placed in a lexicographical sequence.
116
+ */
117
+ readonly version?: string;
118
+
119
+ /**
120
+ * A natural language name identifying the operation definition. This
121
+ * name should be usable as an identifier for the module by machine
122
+ * processing applications such as code generation.
123
+ */
124
+ readonly name?: string;
125
+
126
+ /**
127
+ * A short, descriptive, user-friendly title for the operation
128
+ * definition.
129
+ */
130
+ readonly title?: string;
131
+
132
+ /**
133
+ * The status of this operation definition. Enables tracking the
134
+ * life-cycle of the content.
135
+ */
136
+ readonly status?: string;
137
+
138
+ /**
139
+ * Whether this is an operation or a named query.
140
+ */
141
+ readonly kind?: string;
142
+
143
+ /**
144
+ * A Boolean value to indicate that this operation definition is authored
145
+ * for testing purposes (or education/evaluation/marketing) and is not
146
+ * intended to be used for genuine usage.
147
+ */
148
+ readonly experimental?: boolean;
149
+
150
+ /**
151
+ * The date (and optionally time) when the operation definition was
152
+ * published. The date must change when the business version changes and
153
+ * it must change if the status code changes. In addition, it should
154
+ * change when the substantive content of the operation definition
155
+ * changes.
156
+ */
157
+ readonly date?: string;
158
+
159
+ /**
160
+ * The name of the organization or individual that published the
161
+ * operation definition.
162
+ */
163
+ readonly publisher?: string;
164
+
165
+ /**
166
+ * Contact details to assist a user in finding and communicating with the
167
+ * publisher.
168
+ */
169
+ readonly contact?: ContactDetail[];
170
+
171
+ /**
172
+ * A free text natural language description of the operation definition
173
+ * from a consumer's perspective.
174
+ */
175
+ readonly description?: string;
176
+
177
+ /**
178
+ * The content was developed with a focus and intent of supporting the
179
+ * contexts that are listed. These contexts may be general categories
180
+ * (gender, age, ...) or may be references to specific programs
181
+ * (insurance plans, studies, ...) and may be used to assist with
182
+ * indexing and searching for appropriate operation definition instances.
183
+ */
184
+ readonly useContext?: UsageContext[];
185
+
186
+ /**
187
+ * A legal or geographic region in which the operation definition is
188
+ * intended to be used.
189
+ */
190
+ readonly jurisdiction?: CodeableConcept[];
191
+
192
+ /**
193
+ * Explanation of why this operation definition is needed and why it has
194
+ * been designed as it has.
195
+ */
196
+ readonly purpose?: string;
197
+
198
+ /**
199
+ * Whether the operation affects state. Side effects such as producing
200
+ * audit trail entries do not count as 'affecting state'.
201
+ */
202
+ readonly affectsState?: boolean;
203
+
204
+ /**
205
+ * The name used to invoke the operation.
206
+ */
207
+ readonly code?: string;
208
+
209
+ /**
210
+ * Additional information about how to use this operation or named query.
211
+ */
212
+ readonly comment?: string;
213
+
214
+ /**
215
+ * Indicates that this operation definition is a constraining profile on
216
+ * the base.
217
+ */
218
+ readonly base?: string;
219
+
220
+ /**
221
+ * The types on which this operation can be executed.
222
+ */
223
+ readonly resource?: string[];
224
+
225
+ /**
226
+ * Indicates whether this operation or named query can be invoked at the
227
+ * system level (e.g. without needing to choose a resource type for the
228
+ * context).
229
+ */
230
+ readonly system?: boolean;
231
+
232
+ /**
233
+ * Indicates whether this operation or named query can be invoked at the
234
+ * resource type level for any given resource type level (e.g. without
235
+ * needing to choose a specific resource id for the context).
236
+ */
237
+ readonly type?: boolean;
238
+
239
+ /**
240
+ * Indicates whether this operation can be invoked on a particular
241
+ * instance of one of the given types.
242
+ */
243
+ readonly instance?: boolean;
244
+
245
+ /**
246
+ * Additional validation information for the in parameters - a single
247
+ * profile that covers all the parameters. The profile is a constraint on
248
+ * the parameters resource as a whole.
249
+ */
250
+ readonly inputProfile?: string;
251
+
252
+ /**
253
+ * Additional validation information for the out parameters - a single
254
+ * profile that covers all the parameters. The profile is a constraint on
255
+ * the parameters resource.
256
+ */
257
+ readonly outputProfile?: string;
258
+
259
+ /**
260
+ * The parameters for the operation/query.
261
+ */
262
+ readonly parameter?: OperationDefinitionParameter[];
263
+
264
+ /**
265
+ * Defines an appropriate combination of parameters to use when invoking
266
+ * this operation, to help code generators when generating overloaded
267
+ * parameter sets for this operation.
268
+ */
269
+ readonly overload?: OperationDefinitionOverload[];
270
+ }
271
+
272
+ /**
273
+ * Defines an appropriate combination of parameters to use when invoking
274
+ * this operation, to help code generators when generating overloaded
275
+ * parameter sets for this operation.
276
+ */
277
+ export interface OperationDefinitionOverload {
278
+
279
+ /**
280
+ * Unique id for the element within a resource (for internal references).
281
+ * This may be any string value that does not contain spaces.
282
+ */
283
+ readonly id?: string;
284
+
285
+ /**
286
+ * May be used to represent additional information that is not part of
287
+ * the basic definition of the element. To make the use of extensions
288
+ * safe and manageable, there is a strict set of governance applied to
289
+ * the definition and use of extensions. Though any implementer can
290
+ * define an extension, there is a set of requirements that SHALL be met
291
+ * as part of the definition of the extension.
292
+ */
293
+ readonly extension?: Extension[];
294
+
295
+ /**
296
+ * May be used to represent additional information that is not part of
297
+ * the basic definition of the element and that modifies the
298
+ * understanding of the element in which it is contained and/or the
299
+ * understanding of the containing element's descendants. Usually
300
+ * modifier elements provide negation or qualification. To make the use
301
+ * of extensions safe and manageable, there is a strict set of governance
302
+ * applied to the definition and use of extensions. Though any
303
+ * implementer can define an extension, there is a set of requirements
304
+ * that SHALL be met as part of the definition of the extension.
305
+ * Applications processing a resource are required to check for modifier
306
+ * extensions.
307
+ *
308
+ * Modifier extensions SHALL NOT change the meaning of any elements on
309
+ * Resource or DomainResource (including cannot change the meaning of
310
+ * modifierExtension itself).
311
+ */
312
+ readonly modifierExtension?: Extension[];
313
+
314
+ /**
315
+ * Name of parameter to include in overload.
316
+ */
317
+ readonly parameterName?: string[];
318
+
319
+ /**
320
+ * Comments to go on overload.
321
+ */
322
+ readonly comment?: string;
323
+ }
324
+
325
+ /**
326
+ * The parameters for the operation/query.
327
+ */
328
+ export interface OperationDefinitionParameter {
329
+
330
+ /**
331
+ * Unique id for the element within a resource (for internal references).
332
+ * This may be any string value that does not contain spaces.
333
+ */
334
+ readonly id?: string;
335
+
336
+ /**
337
+ * May be used to represent additional information that is not part of
338
+ * the basic definition of the element. To make the use of extensions
339
+ * safe and manageable, there is a strict set of governance applied to
340
+ * the definition and use of extensions. Though any implementer can
341
+ * define an extension, there is a set of requirements that SHALL be met
342
+ * as part of the definition of the extension.
343
+ */
344
+ readonly extension?: Extension[];
345
+
346
+ /**
347
+ * May be used to represent additional information that is not part of
348
+ * the basic definition of the element and that modifies the
349
+ * understanding of the element in which it is contained and/or the
350
+ * understanding of the containing element's descendants. Usually
351
+ * modifier elements provide negation or qualification. To make the use
352
+ * of extensions safe and manageable, there is a strict set of governance
353
+ * applied to the definition and use of extensions. Though any
354
+ * implementer can define an extension, there is a set of requirements
355
+ * that SHALL be met as part of the definition of the extension.
356
+ * Applications processing a resource are required to check for modifier
357
+ * extensions.
358
+ *
359
+ * Modifier extensions SHALL NOT change the meaning of any elements on
360
+ * Resource or DomainResource (including cannot change the meaning of
361
+ * modifierExtension itself).
362
+ */
363
+ readonly modifierExtension?: Extension[];
364
+
365
+ /**
366
+ * The name of used to identify the parameter.
367
+ */
368
+ readonly name?: string;
369
+
370
+ /**
371
+ * Whether this is an input or an output parameter.
372
+ */
373
+ readonly use?: string;
374
+
375
+ /**
376
+ * The minimum number of times this parameter SHALL appear in the request
377
+ * or response.
378
+ */
379
+ readonly min?: number;
380
+
381
+ /**
382
+ * The maximum number of times this element is permitted to appear in the
383
+ * request or response.
384
+ */
385
+ readonly max?: string;
386
+
387
+ /**
388
+ * Describes the meaning or use of this parameter.
389
+ */
390
+ readonly documentation?: string;
391
+
392
+ /**
393
+ * The type for this parameter.
394
+ */
395
+ readonly type?: string;
396
+
397
+ /**
398
+ * Used when the type is "Reference" or "canonical", and identifies a
399
+ * profile structure or implementation Guide that applies to the target
400
+ * of the reference this parameter refers to. If any profiles are
401
+ * specified, then the content must conform to at least one of them. The
402
+ * URL can be a local reference - to a contained StructureDefinition, or
403
+ * a reference to another StructureDefinition or Implementation Guide by
404
+ * a canonical URL. When an implementation guide is specified, the target
405
+ * resource SHALL conform to at least one profile defined in the
406
+ * implementation guide.
407
+ */
408
+ readonly targetProfile?: string[];
409
+
410
+ /**
411
+ * How the parameter is understood as a search parameter. This is only
412
+ * used if the parameter type is 'string'.
413
+ */
414
+ readonly searchType?: string;
415
+
416
+ /**
417
+ * Binds to a value set if this parameter is coded (code, Coding,
418
+ * CodeableConcept).
419
+ */
420
+ readonly binding?: OperationDefinitionParameterBinding;
421
+
422
+ /**
423
+ * Identifies other resource parameters within the operation invocation
424
+ * that are expected to resolve to this resource.
425
+ */
426
+ readonly referencedFrom?: OperationDefinitionParameterReferencedFrom[];
427
+
428
+ /**
429
+ * The parts of a nested Parameter.
430
+ */
431
+ readonly part?: OperationDefinitionParameter[];
432
+ }
433
+
434
+ /**
435
+ * Binds to a value set if this parameter is coded (code, Coding,
436
+ * CodeableConcept).
437
+ */
438
+ export interface OperationDefinitionParameterBinding {
439
+
440
+ /**
441
+ * Unique id for the element within a resource (for internal references).
442
+ * This may be any string value that does not contain spaces.
443
+ */
444
+ readonly id?: string;
445
+
446
+ /**
447
+ * May be used to represent additional information that is not part of
448
+ * the basic definition of the element. To make the use of extensions
449
+ * safe and manageable, there is a strict set of governance applied to
450
+ * the definition and use of extensions. Though any implementer can
451
+ * define an extension, there is a set of requirements that SHALL be met
452
+ * as part of the definition of the extension.
453
+ */
454
+ readonly extension?: Extension[];
455
+
456
+ /**
457
+ * May be used to represent additional information that is not part of
458
+ * the basic definition of the element and that modifies the
459
+ * understanding of the element in which it is contained and/or the
460
+ * understanding of the containing element's descendants. Usually
461
+ * modifier elements provide negation or qualification. To make the use
462
+ * of extensions safe and manageable, there is a strict set of governance
463
+ * applied to the definition and use of extensions. Though any
464
+ * implementer can define an extension, there is a set of requirements
465
+ * that SHALL be met as part of the definition of the extension.
466
+ * Applications processing a resource are required to check for modifier
467
+ * extensions.
468
+ *
469
+ * Modifier extensions SHALL NOT change the meaning of any elements on
470
+ * Resource or DomainResource (including cannot change the meaning of
471
+ * modifierExtension itself).
472
+ */
473
+ readonly modifierExtension?: Extension[];
474
+
475
+ /**
476
+ * Indicates the degree of conformance expectations associated with this
477
+ * binding - that is, the degree to which the provided value set must be
478
+ * adhered to in the instances.
479
+ */
480
+ readonly strength?: string;
481
+
482
+ /**
483
+ * Points to the value set or external definition (e.g. implicit value
484
+ * set) that identifies the set of codes to be used.
485
+ */
486
+ readonly valueSet?: string;
487
+ }
488
+
489
+ /**
490
+ * Identifies other resource parameters within the operation invocation
491
+ * that are expected to resolve to this resource.
492
+ */
493
+ export interface OperationDefinitionParameterReferencedFrom {
494
+
495
+ /**
496
+ * Unique id for the element within a resource (for internal references).
497
+ * This may be any string value that does not contain spaces.
498
+ */
499
+ readonly id?: string;
500
+
501
+ /**
502
+ * May be used to represent additional information that is not part of
503
+ * the basic definition of the element. To make the use of extensions
504
+ * safe and manageable, there is a strict set of governance applied to
505
+ * the definition and use of extensions. Though any implementer can
506
+ * define an extension, there is a set of requirements that SHALL be met
507
+ * as part of the definition of the extension.
508
+ */
509
+ readonly extension?: Extension[];
510
+
511
+ /**
512
+ * May be used to represent additional information that is not part of
513
+ * the basic definition of the element and that modifies the
514
+ * understanding of the element in which it is contained and/or the
515
+ * understanding of the containing element's descendants. Usually
516
+ * modifier elements provide negation or qualification. To make the use
517
+ * of extensions safe and manageable, there is a strict set of governance
518
+ * applied to the definition and use of extensions. Though any
519
+ * implementer can define an extension, there is a set of requirements
520
+ * that SHALL be met as part of the definition of the extension.
521
+ * Applications processing a resource are required to check for modifier
522
+ * extensions.
523
+ *
524
+ * Modifier extensions SHALL NOT change the meaning of any elements on
525
+ * Resource or DomainResource (including cannot change the meaning of
526
+ * modifierExtension itself).
527
+ */
528
+ readonly modifierExtension?: Extension[];
529
+
530
+ /**
531
+ * The name of the parameter or dot-separated path of parameter names
532
+ * pointing to the resource parameter that is expected to contain a
533
+ * reference to this resource.
534
+ */
535
+ readonly source?: string;
536
+
537
+ /**
538
+ * The id of the element in the referencing resource that is expected to
539
+ * resolve to this resource.
540
+ */
541
+ readonly sourceId?: string;
542
+ }