import type { DeathCause } from "./death-cause" import { type Doctor, genDoctor } from "./doctor" import { genEmployee, type Employee } from "./employee" import type { EncounterDocument } from "./encounter-document" import type { InternalReference } from "./internal-reference" import { type Patient, genPatient } from "./patient" import type { Specialist } from "./specialist" import type { Subspecialist } from "./subspecialist" import { genUnit, type Unit } from "./unit" export interface Encounter { id: number patient_id: number patient: Patient registeredAt: string class_code: string unit_id: number unit: Unit specialist_id?: number specilist?: Specialist subspecialist_id?: number subspecialist?: Subspecialist visitDate: string adm_employee_id: number adm_employee: Employee appointment_doctor_id: number appointment_doctor: Doctor responsible_doctor_id?: number responsible_doctor?: Doctor refSource_name?: string appointment_id?: number earlyEducation?: string medicalDischargeEducation: string admDischargeEducation?: string discharge_method_code?: string discharge_reason?: string discharge_date?: string internalReferences?: InternalReference[] deathCause?: DeathCause status_code: string encounterDocuments: EncounterDocument[] } export function genEncounter(): Encounter { return { id: 0, patient_id: 0, patient: genPatient(), registeredAt: '', class_code: '', unit_id: 0, unit: genUnit(), visitDate: '', adm_employee_id: 0, adm_employee: genEmployee(), appointment_doctor_id: 0, appointment_doctor: genDoctor(), medicalDischargeEducation: '', status_code: '', encounterDocuments: [], } } export interface EncounterCheckInDto { responsible_doctor_id: number responsibleArea_employee_id: number }