import { ResourceMaster } from "../Interfaces";
import { CODEABLE_CONCEPT, MULTI_RESOURCE } from "../config/index";
import ResourceMain from "./ResourceMai";
export declare const allergyClinicalStatusArray: readonly ["active", "inactive", "resolved"];
type AllergyClinicalStatus = typeof allergyClinicalStatusArray[number];
export declare const allergyVerificationStatusArray: readonly ["unconfirmed", "confirmed", "refuted", "entered-in-error"];
type AllergyVerificationStatus = typeof allergyVerificationStatusArray[number];
interface RECORDER extends MULTI_RESOURCE {
    "resource": "Practitioner" | "PractitionerRole" | "Patient" | "RelatedPerson";
}
export interface ALLERGY_INTOLERANCE {
    id?: string;
    clinicalStatus: AllergyClinicalStatus;
    verificationStatus: AllergyVerificationStatus;
    code: CODEABLE_CONCEPT;
    text?: string;
    patientId: string;
    date: string;
    recorder?: RECORDER;
    note?: {
        text: string;
    }[];
    encounterId?: string;
}
export declare class AllergyIntolerance extends ResourceMain implements ResourceMaster {
    toHtml(): Promise<string>;
    statusArray?: Function | undefined;
    getFHIR(options: ALLERGY_INTOLERANCE): any;
    convertFhirToObject(options: any): ALLERGY_INTOLERANCE;
    getClinicalStatusArray: () => AllergyClinicalStatus[];
    getVerificationStatus: () => AllergyVerificationStatus[];
    getPatientPerEncounterAllergyIntolerances: (patientId: string, encounterId: string) => Promise<ALLERGY_INTOLERANCE[]>;
    gettAllergyIntolerancesText: (allergyIntolerances: ALLERGY_INTOLERANCE[]) => string;
}
export {};
//# sourceMappingURL=AllergyIntolerance.d.ts.map