@causalfoundry/js-sdk
Version:
Causal Foundry WEB SDK (JS/TS)
140 lines (121 loc) • 3.05 kB
text/typescript
import {Language, AddressObject, DiagnosisQuestionItem} from "../../core/commonTypes";
export enum EmergencyMgmtEventType {
Incident = "incident",
Ambulance = "ambulance"
}
export enum EmergencyMgmtCatalogType {
ERO = "user_ero",
Ambulance = "ambulance"
}
export enum EmergencyMgmtItemAction {
View = "view",
Add = "add",
Update = "update",
Remove = "remove",
Start = "start",
End = "end",
Pause = "pause",
Resume = "resume",
Attend = "attend",
Decline = "decline",
Terminate = "terminate",
Transfer = "transfer",
Skip = "skip",
Dispatch = "dispatch",
Denial = "denial",
Other = "other"
}
export enum IncidentType {
Emergency = "emergency",
Grievance = "grievance",
NonEmergency = "non_emergency",
Transfer = "transfer",
FollowUp = "follow_up",
ServiceOffering = "service_offering",
CustomerSupport = "customer_support",
Other = "other",
}
export enum AmbulanceStatus {
Available = "available",
Busy = "busy",
Maintenance = "maintenance",
Other = "other",
}
export interface IncidentDetailItem {
id: string,
contact_id?: string,
type: IncidentType,
sub_type?: string,
category?: string[],
language?: Language,
is_duplicate_incident?: boolean,
is_sms_set_location?: boolean,
severity?: string,
chief_complaints_list?: ChiefComplaintItem[],
}
export interface ChiefComplaintItem {
complaint: string,
questions_list?: DiagnosisQuestionItem[],
}
export interface EmergencyPatientItem {
id: string,
age?: number,
blood_group?: string,
gender?: string,
}
export interface AmbulanceItem {
id: string,
driver_id: string,
emso_id?: string,
type: string,
distance_from_incident?: number,
status: AmbulanceStatus,
eta?: number,
gps_datetime?: string,
location?: AddressObject,
}
export interface IncidentProperties {
action: EmergencyMgmtItemAction,
details: IncidentDetailItem,
patient_list?: EmergencyPatientItem[],
address?: AddressObject,
facility_id?: string,
ambulance_list?: AmbulanceItem[],
schedule_time?: number,
status?: string,
resolution?: string,
summary?: string,
remarks?: string,
meta?: any
}
export interface AmbulanceProperties {
incident_id?: string,
contact_id?: string,
action: EmergencyMgmtItemAction,
ambulance: AmbulanceItem,
pickup_address?: AddressObject,
destination_address?: AddressObject,
denial_details?: DenialDetailItem,
meta?: any
}
export interface DenialDetailItem {
author?: string,
reason: string,
remarks?: string
}
export interface EROCatalog {
id: string
joining_date?: string,
status: string,
employee_type?: string,
zone?: string,
site_id_list?: string[],
supervisor_id_list?: string[]
}
export interface AmbulanceCatalog {
id: string
type: string,
base_site_id?: string,
base_site_name?: string,
base_site_district?: string,
}