import { AuditEvent_Entity_Detail } from './AuditEvent_Entity_Detail.js';
import { CodeableConcept } from './CodeableConcept.js';
import { Extension } from './Extension.js';
import { FhirPrimitive } from './FhirPrimitive.js';
import { Reference } from './Reference.js';
import { Resource } from './Resource.js';
export interface AuditEvent_Entity {
    /**
     * @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 Identifies a specific instance of the entity. The reference should be version specific. This is allowed to be a Parameters resource.
     * @comment Use .what.display when all you have is a string (e.g. ParticipantObjectName).
     * @short Specific instance of resource
     */
    what?: Reference<Resource>;
    /**
     * @description Code representing the role the entity played in the event being audited.
     * @short What role the entity played
     */
    role?: CodeableConcept;
    /**
     * @description Security labels for the identified entity.
     * @comment Copied from entity meta security tags.
     * @short Security labels on the entity
     */
    securityLabel?: CodeableConcept[];
    /**
     * @description The query parameters for a query-type entities.
     * @comment The meaning and secondary-encoding of the content of base64 encoded blob is specific to the AuditEvent.type, AuditEvent.subtype, and AuditEvent.entity.role.  The base64 is a general-use and safe container for event specific data blobs regardless of the encoding used by the transaction being recorded.  An AuditEvent consuming application must understand the event it is consuming and the formats used by the event. For example, if auditing an Oracle network database access, the Oracle formats must be understood as they will be simply encoded in the base64binary blob.
  
  The DICOM AuditMessage schema does not support both .name and .query being populated.
     * @short Query parameters
     */
    query?: FhirPrimitive<string>;
    /**
     * @backbone Nested BackboneElement: detail [0..*]
     */
    detail?: AuditEvent_Entity_Detail[];
    /**
     * @description The entity is attributed to an agent to express the agent's responsibility for that entity in the activity. This is most used to indicate when persistence media (the entity) are used by an agent. For example when importing data from a device, the device would be described in an entity, and the user importing data from that media would be indicated as the entity.agent.
     * @comment A usecase where one AuditEvent.entity.agent is used where the Entity that was used in the creationupdating of a target resource, is not in the context of the same custodianship as the target resource, and thus the meaning of AuditEvent.entity.agent is to say that the entity referenced is managed elsewhere and that this Agent provided access to it.  This would be similar to where the Entity being referenced is managed outside FHIR, such as through HL7 V2, v3, or XDS. This might be where the Entity being referenced is managed in another FHIR resource server. Thus it explains the provenance of that Entity's use in the context of this AuditEvent activity.
     * @short Entity is attributed to this agent
     */
    agent?: any[];
}
//# sourceMappingURL=AuditEvent_Entity.d.ts.map