import { CODEABLE_CONCEPT, MULTI_RESOURCE } from "../config";
import { ResourceMaster } from "../Interfaces";
import ResourceMain from "./ResourceMai";
export interface PROVENANCE_AGENT {
    who: MULTI_RESOURCE;
    /**
     * participant type: author / attester / performer / verifier etc.
     * system: http://terminology.hl7.org/CodeSystem/provenance-participant-type
     */
    type?: CODEABLE_CONCEPT;
}
export interface PROVENANCE {
    id?: string;
    /** resource(s) being attested (Composition / Task / MedicationAdministration / ...) */
    target: MULTI_RESOURCE[];
    /** when the activity was recorded (ISO instant) */
    recorded: string;
    /** sign / amend / supersede / create / update */
    activity: CODEABLE_CONCEPT;
    agent: PROVENANCE_AGENT[];
    reason?: CODEABLE_CONCEPT[];
    policy?: string[];
}
export declare class Provenance extends ResourceMain implements ResourceMaster {
    toHtml(): Promise<string>;
    getFHIR(options: PROVENANCE): any;
    convertFhirToObject(options: any): PROVENANCE;
    statusArray?: Function | undefined;
}
//# sourceMappingURL=Provenance.d.ts.map