import { Annotation } from './Annotation.js';
import { CareTeam } from './CareTeam.js';
import { CodeableConcept } from './CodeableConcept.js';
import { CodeableReference } from './CodeableReference.js';
import { Condition } from './Condition.js';
import { Contract_Term_Action_Subject } from './Contract_Term_Action_Subject.js';
import { Device } from './Device.js';
import { DiagnosticReport } from './DiagnosticReport.js';
import { DocumentReference } from './DocumentReference.js';
import { Encounter } from './Encounter.js';
import { EpisodeOfCare } from './EpisodeOfCare.js';
import { Extension } from './Extension.js';
import { FhirPrimitive } from './FhirPrimitive.js';
import { Group } from './Group.js';
import { Location } from './Location.js';
import { Observation } from './Observation.js';
import { Organization } from './Organization.js';
import { Patient } from './Patient.js';
import { Period } from './Period.js';
import { Practitioner } from './Practitioner.js';
import { PractitionerRole } from './PractitionerRole.js';
import { Questionnaire } from './Questionnaire.js';
import { QuestionnaireResponse } from './QuestionnaireResponse.js';
import { Reference } from './Reference.js';
import { RelatedPerson } from './RelatedPerson.js';
import { Substance } from './Substance.js';
import { Timing } from './Timing.js';
export interface Contract_Term_Action {
    /**
     * @description Unique id for the element within a resource (for internal references). This may be any string value that does not contain spaces.
     * @short Unique id for inter-element referencing
     */
    id?: string;
    /**
     * @description May be used to represent additional information that is not part of the basic definition of the element. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension.
     * @comment There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
     * @short Additional content defined by implementations
     */
    extension?: Extension[];
    /**
     * @description May be used to represent additional information that is not part of the basic definition of the element and that modifies the understanding of the element in which it is contained andor the understanding of the containing element's descendants. Usually modifier elements provide negation or qualification. To make the use of extensions safe and managable, there is a strict set of governance applied to the definition and use of extensions. Though any implementer can define an extension, there is a set of requirements that SHALL be met as part of the definition of the extension. Applications processing a resource are required to check for modifier extensions.
  
  Modifier extensions SHALL NOT change the meaning of any elements on Resource or DomainResource (including cannot change the meaning of modifierExtension itself).
     * @comment There can be no stigma associated with the use of extensions by any application, project, or standard - regardless of the institution or jurisdiction that uses or defines the extensions.  The use of extensions is what allows the FHIR specification to retain a core level of simplicity for everyone.
     * @short Extensions that cannot be ignored even if unrecognized
     */
    modifierExtension?: Extension[];
    /**
     * @description True if the term prohibits the  action.
     * @short True if the term prohibits the  action
     */
    doNotPerform?: FhirPrimitive<boolean>;
    /**
     * @description Activity or service obligation to be done or not done, performed or not performed, effectuated or not by this Contract term.
     * @short Type or form of the action
     */
    type: CodeableConcept;
    /**
     * @backbone Nested BackboneElement: subject [0..*]
     */
    subject?: Contract_Term_Action_Subject[];
    /**
     * @description Reason or purpose for the action stipulated by this Contract Provision.
     * @short Purpose for the Contract Term Action
     */
    intent: CodeableConcept;
    /**
     * @description Id [identifier??] of the clause or question text related to this action in the referenced form or QuestionnaireResponse.
     * @short Pointer to specific item
     */
    linkId?: FhirPrimitive<string>[];
    /**
     * @description Current state of the term action.
     * @short State of the action
     */
    status: CodeableConcept;
    /**
     * @description Encounter or Episode with primary association to the specified term activity.
     * @short Episode associated with action
     */
    context?: Reference<Encounter | EpisodeOfCare>;
    /**
     * @description Id [identifier??] of the clause or question text related to the requester of this action in the referenced form or QuestionnaireResponse.
     * @short Pointer to specific item
     */
    contextLinkId?: FhirPrimitive<string>[];
    /**
     * @choice This is part of the occurrence[x] choice.
     * @oneOf occurrenceDateTime, occurrencePeriod, occurrenceTiming
     */
    occurrenceDateTime?: FhirPrimitive<string>;
    /**
     * @choice This is part of the occurrence[x] choice.
     * @oneOf occurrenceDateTime, occurrencePeriod, occurrenceTiming
     */
    occurrencePeriod?: Period;
    /**
     * @choice This is part of the occurrence[x] choice.
     * @oneOf occurrenceDateTime, occurrencePeriod, occurrenceTiming
     */
    occurrenceTiming?: Timing;
    /**
     * @description Who or what initiated the action and has responsibility for its activation.
     * @short Who asked for action
     */
    requester?: Reference<Patient | RelatedPerson | Practitioner | PractitionerRole | Device | Group | Organization>[];
    /**
     * @description Id [identifier??] of the clause or question text related to the requester of this action in the referenced form or QuestionnaireResponse.
     * @short Pointer to specific item
     */
    requesterLinkId?: FhirPrimitive<string>[];
    /**
     * @description The type of individual that is desired or required to perform or not perform the action.
     * @short Kind of service performer
     */
    performerType?: CodeableConcept[];
    /**
     * @description The type of role or competency of an individual desired or required to perform or not perform the action.
     * @short Competency of the performer
     */
    performerRole?: CodeableConcept;
    /**
     * @description Indicates who or what is being asked to perform (or not perform) the ction.
     * @short Actor that wil execute (or not) the action
     */
    performer?: Reference<RelatedPerson | Patient | Practitioner | PractitionerRole | CareTeam | Device | Substance | Organization | Location>;
    /**
     * @description Id [identifier??] of the clause or question text related to the reason type or reference of this  action in the referenced form or QuestionnaireResponse.
     * @short Pointer to specific item
     */
    performerLinkId?: FhirPrimitive<string>[];
    /**
     * @description Rationale for the action to be performed or not performed. Describes why the action is permitted or prohibited. Either a coded concept, or another resource whose existence justifies permitting or not permitting this action.
     * @short Why is action (not) needed?
     */
    reason?: CodeableReference<Condition | Observation | DiagnosticReport | DocumentReference | Questionnaire | QuestionnaireResponse>[];
    /**
     * @description Id [identifier??] of the clause or question text related to the reason type or reference of this  action in the referenced form or QuestionnaireResponse.
     * @short Pointer to specific item
     */
    reasonLinkId?: FhirPrimitive<string>[];
    /**
     * @description Comments made about the term action made by the requester, performer, subject or other participants.
     * @short Comments about the action
     */
    note?: Annotation[];
    /**
     * @description Security labels that protects the action.
     * @short Action restriction numbers
     */
    securityLabelNumber?: FhirPrimitive<number>[];
}
//# sourceMappingURL=Contract_Term_Action.d.ts.map