import { CODEABLE_CONCEPT, IDENTTIFIER, MULTI_RESOURCE } from "../config";
import { ResourceMaster } from "../Interfaces";
import ResourceMain from "../resources/ResourceMai";
import { INSURANCE } from "./CoverageEligibilityRequest";
import { TO_HTML_HCX_OPTIONS } from "./interfaces";
declare const CoverageEligibilityResponcePurpose: readonly ["auth-requirements", "benefits", "discovery", "validation"];
declare type CoverageEligibilityResponcePurpose = (typeof CoverageEligibilityResponcePurpose)[number];
interface Patient extends MULTI_RESOURCE {
    resource: "Patient";
}
interface Requestor extends MULTI_RESOURCE {
    "resource": "Practitioner" | "PractitionerRole" | "Organization";
}
interface Request extends MULTI_RESOURCE {
    "resource": "CoverageEligibilityResponse";
}
interface Insurer extends MULTI_RESOURCE {
    "resource": "Organization";
}
export interface COVERAGE_ELIGIBILITY_RESPONSE {
    id?: string;
    hcx?: "nhcx" | "swasth";
    resourceType: "CoverageEligibilityResponse";
    patient: Patient;
    identifiers?: IDENTTIFIER[];
    text?: string;
    status: "active" | "cancelled" | "draft" | "entered-in-error";
    purpose: CoverageEligibilityResponcePurpose[];
    requestor: Requestor;
    createdDate: string;
    request: Request;
    insurer: Insurer;
    outcome: "queued" | "complete" | "error" | "partial";
    disposition?: string;
    insurance: INSURANCE[];
    error?: CODEABLE_CONCEPT[];
}
export interface TO_HTML_HCX_OPTIONS_COVERAGE_ELIGIBILITY_RESPONSE extends Omit<TO_HTML_HCX_OPTIONS, "body"> {
    body: any;
}
export declare class CoverageEligibiltyResponse extends ResourceMain implements ResourceMaster {
    toHtml(option: TO_HTML_HCX_OPTIONS_COVERAGE_ELIGIBILITY_RESPONSE): Promise<string>;
    getFHIR(options: COVERAGE_ELIGIBILITY_RESPONSE): {
        resourceType: string;
        id: string | undefined;
        meta: {
            profile: string[];
        };
        language: string;
        text: {
            status: string;
            div: string | undefined;
        };
        status: "cancelled" | "entered-in-error" | "active" | "draft";
        purpose: ("auth-requirements" | "benefits" | "discovery" | "validation")[];
        patient: {
            reference: string;
            display: string | undefined;
            identifier: IDENTTIFIER | undefined;
            type: string | undefined;
        };
        created: string;
        requestor: {
            reference: string;
            display: string | undefined;
            identifier: IDENTTIFIER | undefined;
            type: string | undefined;
        };
        request: {
            reference: string;
            display: string | undefined;
            identifier: IDENTTIFIER | undefined;
            type: string | undefined;
        };
        outcome: "partial" | "queued" | "complete" | "error";
        disposition: string | undefined;
        insurer: {
            reference: string;
            display: string | undefined;
            identifier: IDENTTIFIER | undefined;
            type: string | undefined;
        };
        insurance: INSURANCE[];
        error: CODEABLE_CONCEPT[] | undefined;
        identifier: IDENTTIFIER[] | undefined;
    };
    convertFhirToObject(options: any): COVERAGE_ELIGIBILITY_RESPONSE;
    statusArray?: Function | undefined;
}
export {};
//# sourceMappingURL=CoverageEligibilityResponse.d.ts.map