gcp-nrces-fhir
Version:
Google cloud healthcare api NRCES FHIR implimenataion
178 lines • 5.81 kB
TypeScript
import { CODEABLE_CONCEPT, EXTENSION, IDENTTIFIER, MULTI_RESOURCE } from "../config";
import { ResourceMaster } from "../Interfaces";
import { PRACTITIONER } from "./Practitioner";
import ResourceMain from "./ResourceMai";
declare const EncounterStatusArray: readonly ["planned", "arrived", "triaged", "in-progress", "onleave", "finished", "cancelled", "entered-in-error", "unknown"];
declare const EncounterClassArray: readonly [{
readonly code: "AMB";
readonly display: "ambulatory";
}, {
readonly code: "FLD";
readonly display: "Field";
}, {
readonly code: "HH";
readonly display: "Home Health";
}, {
readonly code: "IMP";
readonly display: "in-patient";
}, {
readonly code: "EMER";
readonly display: "emergency";
}, {
readonly code: "ACUTE";
readonly display: "inpatient acute";
}, {
readonly code: "NONAC";
readonly display: "inpatient non-acute";
}, {
readonly code: "OBSENC";
readonly display: "observation encounter";
}, {
readonly code: "PRENC";
readonly display: "pre-admission";
}, {
readonly code: "VR";
readonly display: "virtual";
}];
declare const EncounterHospitalizationDischargeDispositionArray: readonly [{
readonly code: "home";
readonly display: "home";
}, {
readonly code: "alt-home";
readonly display: "Alternative home";
}, {
readonly code: "other-hcf";
readonly display: "Other healthcare facility";
}, {
readonly code: "hosp";
readonly display: "Hospice";
}, {
readonly code: "long";
readonly display: "Long-term care";
}, {
readonly code: "aadvice";
readonly display: "Left against advice";
}, {
readonly code: "exp";
readonly display: "Expired";
}, {
readonly code: "psy";
readonly display: "Psychiatric hospital";
}, {
readonly code: "rehab";
readonly display: "Rehabilitation";
}, {
readonly code: "smf";
readonly display: "Skilled nursing facility";
}, {
readonly code: "oth";
readonly display: "Other";
}];
declare type EncounterStatus = typeof EncounterStatusArray[number];
declare type EncounterClass = typeof EncounterClassArray[number];
declare type EncounterHospitalizationDischargeDisposition = typeof EncounterHospitalizationDischargeDispositionArray[number];
interface ENCOUNTER_PARTICIPANT {
type: CODEABLE_CONCEPT[];
individual: {
reference: string;
type: "RelatedPerson" | "Practitioner" | "PractitionerRole";
};
}
interface BASED_ON extends MULTI_RESOURCE {
resource: "CarePlan" | "DeviceRequest" | "MedicationRequest" | "ServiceRequest";
}
interface ENCOUNTER {
id?: string;
text: string;
extension?: EXTENSION[];
status: EncounterStatus;
careContext?: string;
organizationId?: string;
intrimOrFinal?: "Intrim" | "Final";
estimatedDateDischarge?: string;
class: EncounterClass;
type?: CODEABLE_CONCEPT[];
patientId: string;
startDate: string;
endDate?: string;
appointment?: {
reference: string;
type: "Appointment";
}[];
reasonReference?: {
reference: string;
type: "ImmunizationRecommendation" | "Condition" | "Procedure" | "Observation";
}[];
reasonCode?: CODEABLE_CONCEPT[];
hospitalization?: {
dischargeDisposition?: CODEABLE_CONCEPT;
id?: string;
origin?: {
reference: string;
type: "Location" | "Organization";
};
admitSource?: CODEABLE_CONCEPT;
reAdmission?: CODEABLE_CONCEPT;
dietPreference?: CODEABLE_CONCEPT;
destination?: {
reference: string;
type: "Location" | "Organization";
};
};
diagnosis?: {
condition: {
reference?: string;
identifier?: IDENTTIFIER;
display?: string;
type?: "Condition" | "Procedure";
};
use?: CODEABLE_CONCEPT;
rank?: number;
}[];
participant?: ENCOUNTER_PARTICIPANT[];
account?: {
reference: string;
type: "Account";
}[];
basedOn?: BASED_ON[];
location?: {
location: {
reference: string;
};
period?: {
start: string;
end?: string;
};
status?: "planned" | "active" | "reserved" | "completed";
physicalType: CODEABLE_CONCEPT;
}[];
}
export declare class Encounter extends ResourceMain implements ResourceMaster {
toHtml(): Promise<string>;
statusArray?: Function | undefined;
getFHIR(options: ENCOUNTER): any;
convertFhirToObject(options: any): ENCOUNTER;
rearrangeParticipants(participant: ENCOUNTER_PARTICIPANT[]): ENCOUNTER_PARTICIPANT[];
/**
*
* @param particpants particpants of encounters
* @param allPractioners supply array of practioners for filtering
* @returns array of practioners
*/
getPractionersFromParticipants: (particpants: ENCOUNTER_PARTICIPANT[], allPractioners: PRACTITIONER[]) => PRACTITIONER[];
/**
* This converts Practioners to encounter particpants
* @param practioners PRACTINIORS
* @returns
*/
convertPractionersToParticpants: (practioners: PRACTITIONER[]) => ENCOUNTER["participant"];
}
/**
* @deprecated
* @param options
* @returns
*/
declare const EncounterResource: (options: ENCOUNTER) => any;
export { ENCOUNTER, ENCOUNTER_PARTICIPANT, EncounterResource, EncounterHospitalizationDischargeDispositionArray, EncounterStatusArray, EncounterClassArray, };
export type { EncounterClass, EncounterStatus, EncounterHospitalizationDischargeDisposition, };
//# sourceMappingURL=Encounter.d.ts.map