@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,152 @@
1
+ /*
2
+ * Generated by @medplum/generator
3
+ * Do not edit manually.
4
+ */
5
+
6
+ import { CodeableConcept } from './CodeableConcept';
7
+ import { Device } from './Device';
8
+ import { Extension } from './Extension';
9
+ import { HealthcareService } from './HealthcareService';
10
+ import { Identifier } from './Identifier';
11
+ import { Location } from './Location';
12
+ import { Meta } from './Meta';
13
+ import { Narrative } from './Narrative';
14
+ import { Patient } from './Patient';
15
+ import { Period } from './Period';
16
+ import { Practitioner } from './Practitioner';
17
+ import { PractitionerRole } from './PractitionerRole';
18
+ import { Reference } from './Reference';
19
+ import { RelatedPerson } from './RelatedPerson';
20
+ import { Resource } from './Resource';
21
+
22
+ /**
23
+ * A container for slots of time that may be available for booking
24
+ * appointments.
25
+ */
26
+ export interface Schedule {
27
+
28
+ /**
29
+ * This is a Schedule resource
30
+ */
31
+ readonly resourceType: 'Schedule';
32
+
33
+ /**
34
+ * The logical id of the resource, as used in the URL for the resource.
35
+ * Once assigned, this value never changes.
36
+ */
37
+ readonly id?: string;
38
+
39
+ /**
40
+ * The metadata about the resource. This is content that is maintained by
41
+ * the infrastructure. Changes to the content might not always be
42
+ * associated with version changes to the resource.
43
+ */
44
+ readonly meta?: Meta;
45
+
46
+ /**
47
+ * A reference to a set of rules that were followed when the resource was
48
+ * constructed, and which must be understood when processing the content.
49
+ * Often, this is a reference to an implementation guide that defines the
50
+ * special rules along with other profiles etc.
51
+ */
52
+ readonly implicitRules?: string;
53
+
54
+ /**
55
+ * The base language in which the resource is written.
56
+ */
57
+ readonly language?: string;
58
+
59
+ /**
60
+ * A human-readable narrative that contains a summary of the resource and
61
+ * can be used to represent the content of the resource to a human. The
62
+ * narrative need not encode all the structured data, but is required to
63
+ * contain sufficient detail to make it "clinically safe" for a human to
64
+ * just read the narrative. Resource definitions may define what content
65
+ * should be represented in the narrative to ensure clinical safety.
66
+ */
67
+ readonly text?: Narrative;
68
+
69
+ /**
70
+ * These resources do not have an independent existence apart from the
71
+ * resource that contains them - they cannot be identified independently,
72
+ * and nor can they have their own independent transaction scope.
73
+ */
74
+ readonly contained?: Resource[];
75
+
76
+ /**
77
+ * May be used to represent additional information that is not part of
78
+ * the basic definition of the resource. To make the use of extensions
79
+ * safe and manageable, there is a strict set of governance applied to
80
+ * the definition and use of extensions. Though any implementer can
81
+ * define an extension, there is a set of requirements that SHALL be met
82
+ * as part of the definition of the extension.
83
+ */
84
+ readonly extension?: Extension[];
85
+
86
+ /**
87
+ * May be used to represent additional information that is not part of
88
+ * the basic definition of the resource and that modifies the
89
+ * understanding of the element that contains it and/or the understanding
90
+ * of the containing element's descendants. Usually modifier elements
91
+ * provide negation or qualification. To make the use of extensions safe
92
+ * and manageable, there is a strict set of governance applied to the
93
+ * definition and use of extensions. Though any implementer is allowed to
94
+ * define an extension, there is a set of requirements that SHALL be met
95
+ * as part of the definition of the extension. Applications processing a
96
+ * resource are required to check for modifier extensions.
97
+ *
98
+ * Modifier extensions SHALL NOT change the meaning of any elements on
99
+ * Resource or DomainResource (including cannot change the meaning of
100
+ * modifierExtension itself).
101
+ */
102
+ readonly modifierExtension?: Extension[];
103
+
104
+ /**
105
+ * External Ids for this item.
106
+ */
107
+ readonly identifier?: Identifier[];
108
+
109
+ /**
110
+ * Whether this schedule record is in active use or should not be used
111
+ * (such as was entered in error).
112
+ */
113
+ readonly active?: boolean;
114
+
115
+ /**
116
+ * A broad categorization of the service that is to be performed during
117
+ * this appointment.
118
+ */
119
+ readonly serviceCategory?: CodeableConcept[];
120
+
121
+ /**
122
+ * The specific service that is to be performed during this appointment.
123
+ */
124
+ readonly serviceType?: CodeableConcept[];
125
+
126
+ /**
127
+ * The specialty of a practitioner that would be required to perform the
128
+ * service requested in this appointment.
129
+ */
130
+ readonly specialty?: CodeableConcept[];
131
+
132
+ /**
133
+ * Slots that reference this schedule resource provide the availability
134
+ * details to these referenced resource(s).
135
+ */
136
+ readonly actor?: Reference<Patient | Practitioner | PractitionerRole | RelatedPerson | Device | HealthcareService | Location>[];
137
+
138
+ /**
139
+ * The period of time that the slots that reference this Schedule
140
+ * resource cover (even if none exist). These cover the amount of time
141
+ * that an organization's planning horizon; the interval for which they
142
+ * are currently accepting appointments. This does not define a
143
+ * &quot;template&quot; for planning outside these dates.
144
+ */
145
+ readonly planningHorizon?: Period;
146
+
147
+ /**
148
+ * Comments on the availability to describe any extended information.
149
+ * Such as custom constraints on the slots that may be associated.
150
+ */
151
+ readonly comment?: string;
152
+ }
@@ -0,0 +1,324 @@
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 search parameter that defines a named search item that can be used
16
+ * to search/filter on a resource.
17
+ */
18
+ export interface SearchParameter {
19
+
20
+ /**
21
+ * This is a SearchParameter resource
22
+ */
23
+ readonly resourceType: 'SearchParameter';
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 &quot;clinically safe&quot; 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 search parameter when it
98
+ * is referenced in a specification, model, design or an instance; also
99
+ * called its canonical identifier. This SHOULD be globally unique and
100
+ * SHOULD be a literal address at which at which an authoritative
101
+ * instance of this search parameter is (or will be) published. This URL
102
+ * can be the target of a canonical reference. It SHALL remain the same
103
+ * when the search parameter is stored on different servers.
104
+ */
105
+ readonly url?: string;
106
+
107
+ /**
108
+ * The identifier that is used to identify this version of the search
109
+ * parameter when it is referenced in a specification, model, design or
110
+ * instance. This is an arbitrary value managed by the search parameter
111
+ * author and is not expected to be globally unique. For example, it
112
+ * might be a timestamp (e.g. yyyymmdd) if a managed version is not
113
+ * available. There is also no expectation that versions can be placed in
114
+ * a lexicographical sequence.
115
+ */
116
+ readonly version?: string;
117
+
118
+ /**
119
+ * A natural language name identifying the search parameter. This name
120
+ * should be usable as an identifier for the module by machine processing
121
+ * applications such as code generation.
122
+ */
123
+ readonly name?: string;
124
+
125
+ /**
126
+ * Where this search parameter is originally defined. If a derivedFrom is
127
+ * provided, then the details in the search parameter must be consistent
128
+ * with the definition from which it is defined. i.e. the parameter
129
+ * should have the same meaning, and (usually) the functionality should
130
+ * be a proper subset of the underlying search parameter.
131
+ */
132
+ readonly derivedFrom?: string;
133
+
134
+ /**
135
+ * The status of this search parameter. Enables tracking the life-cycle
136
+ * of the content.
137
+ */
138
+ readonly status?: string;
139
+
140
+ /**
141
+ * A Boolean value to indicate that this search parameter is authored for
142
+ * testing purposes (or education/evaluation/marketing) and is not
143
+ * intended to be used for genuine usage.
144
+ */
145
+ readonly experimental?: boolean;
146
+
147
+ /**
148
+ * The date (and optionally time) when the search parameter was
149
+ * published. The date must change when the business version changes and
150
+ * it must change if the status code changes. In addition, it should
151
+ * change when the substantive content of the search parameter changes.
152
+ */
153
+ readonly date?: string;
154
+
155
+ /**
156
+ * The name of the organization or individual that published the search
157
+ * parameter.
158
+ */
159
+ readonly publisher?: string;
160
+
161
+ /**
162
+ * Contact details to assist a user in finding and communicating with the
163
+ * publisher.
164
+ */
165
+ readonly contact?: ContactDetail[];
166
+
167
+ /**
168
+ * And how it used.
169
+ */
170
+ readonly description?: string;
171
+
172
+ /**
173
+ * The content was developed with a focus and intent of supporting the
174
+ * contexts that are listed. These contexts may be general categories
175
+ * (gender, age, ...) or may be references to specific programs
176
+ * (insurance plans, studies, ...) and may be used to assist with
177
+ * indexing and searching for appropriate search parameter instances.
178
+ */
179
+ readonly useContext?: UsageContext[];
180
+
181
+ /**
182
+ * A legal or geographic region in which the search parameter is intended
183
+ * to be used.
184
+ */
185
+ readonly jurisdiction?: CodeableConcept[];
186
+
187
+ /**
188
+ * Explanation of why this search parameter is needed and why it has been
189
+ * designed as it has.
190
+ */
191
+ readonly purpose?: string;
192
+
193
+ /**
194
+ * The code used in the URL or the parameter name in a parameters
195
+ * resource for this search parameter.
196
+ */
197
+ readonly code?: string;
198
+
199
+ /**
200
+ * The base resource type(s) that this search parameter can be used
201
+ * against.
202
+ */
203
+ readonly base?: string[];
204
+
205
+ /**
206
+ * The type of value that a search parameter may contain, and how the
207
+ * content is interpreted.
208
+ */
209
+ readonly type?: string;
210
+
211
+ /**
212
+ * A FHIRPath expression that returns a set of elements for the search
213
+ * parameter.
214
+ */
215
+ readonly expression?: string;
216
+
217
+ /**
218
+ * An XPath expression that returns a set of elements for the search
219
+ * parameter.
220
+ */
221
+ readonly xpath?: string;
222
+
223
+ /**
224
+ * How the search parameter relates to the set of elements returned by
225
+ * evaluating the xpath query.
226
+ */
227
+ readonly xpathUsage?: string;
228
+
229
+ /**
230
+ * Types of resource (if a resource is referenced).
231
+ */
232
+ readonly target?: string[];
233
+
234
+ /**
235
+ * Whether multiple values are allowed for each time the parameter
236
+ * exists. Values are separated by commas, and the parameter matches if
237
+ * any of the values match.
238
+ */
239
+ readonly multipleOr?: boolean;
240
+
241
+ /**
242
+ * Whether multiple parameters are allowed - e.g. more than one parameter
243
+ * with the same name. The search matches if all the parameters match.
244
+ */
245
+ readonly multipleAnd?: boolean;
246
+
247
+ /**
248
+ * Comparators supported for the search parameter.
249
+ */
250
+ readonly comparator?: string[];
251
+
252
+ /**
253
+ * A modifier supported for the search parameter.
254
+ */
255
+ readonly modifier?: string[];
256
+
257
+ /**
258
+ * Contains the names of any search parameters which may be chained to
259
+ * the containing search parameter. Chained parameters may be added to
260
+ * search parameters of type reference and specify that resources will
261
+ * only be returned if they contain a reference to a resource which
262
+ * matches the chained parameter value. Values for this field should be
263
+ * drawn from SearchParameter.code for a parameter on the target resource
264
+ * type.
265
+ */
266
+ readonly chain?: string[];
267
+
268
+ /**
269
+ * Used to define the parts of a composite search parameter.
270
+ */
271
+ readonly component?: SearchParameterComponent[];
272
+ }
273
+
274
+ /**
275
+ * Used to define the parts of a composite search parameter.
276
+ */
277
+ export interface SearchParameterComponent {
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
+ * The definition of the search parameter that describes this part.
316
+ */
317
+ readonly definition?: string;
318
+
319
+ /**
320
+ * A sub-expression that defines how to extract values for this component
321
+ * from the output of the main SearchParameter.expression.
322
+ */
323
+ readonly expression?: string;
324
+ }