import { CODEABLE_CONCEPT, MULTI_RESOURCE } from "../config";
import { ResourceMaster } from "../Interfaces";
import ResourceMain, { DOSAGE_INSTRUCTION } from "./ResourceMai";
export declare const MedicationStatementStatusArray: readonly ["active", "completed", "entered-in-error", "intended", "stopped", "on-hold", "unknown", "not-taken"];
declare type medicationStatementStatus = (typeof MedicationStatementStatusArray)[number];
interface informationSource extends MULTI_RESOURCE {
    resource: "Patient" | "Practitioner" | "PractitionerRole" | "RelatedPerson" | "Organization";
}
export interface MEDICATION_STATEMENT {
    id?: string;
    status: medicationStatementStatus;
    medicationCodeableConcept: CODEABLE_CONCEPT;
    informationSource?: informationSource;
    patientid: string;
    reasonCode?: CODEABLE_CONCEPT[];
    date: string;
    dosage?: DOSAGE_INSTRUCTION[];
}
export declare class MedicationStatement extends ResourceMain implements ResourceMaster {
    toHtml(): Promise<string>;
    getFHIR(options: MEDICATION_STATEMENT): {
        resourceType: string;
        id: string | undefined;
        meta: {
            profile: string[];
        };
        text: {
            status: string;
            div: string;
        };
        status: "entered-in-error" | "unknown" | "active" | "completed" | "on-hold" | "stopped" | "intended" | "not-taken";
        medicationCodeableConcept: CODEABLE_CONCEPT;
        informationSource: {
            reference: string;
        } | undefined;
        reasonCode: CODEABLE_CONCEPT[] | undefined;
        subject: {
            reference: string;
        };
        dateAsserted: string;
        dosage: any[];
    };
    convertFhirToObject(options: any): MEDICATION_STATEMENT;
    statusArray: () => medicationStatementStatus[];
}
export {};
//# sourceMappingURL=MedicationStatement.d.ts.map