import { Drug, TreatmentAssociatedConsultData, TreatmentPlan, TreatmentPlans, TreatmentPlansRequest, TreatmentPlansResponse, Uuid } from '..'; import { Diagnosis, Treatment, DiagnosisRequest, TreatmentAndDrugPrescriptionUpdateRequest, TreatmentRequest, PlanStatus } from '../models/diagnosis'; import { APIService } from './api'; export declare class DiagnosisService { private api; private baseURL; constructor(api: APIService, baseURL: string); getDiagnoses(): Promise; /** * Get a diagnosis by uuid that belongs to your practice * @param uuidDiagnosis the uuid of the diagnosis * @returns a diagnosis */ getDiagnosisByUuid(uuidDiagnosis: Uuid): Promise; createDiagnosis(diagnosis: DiagnosisRequest): Promise; updateDiagnosis(uuid: string, diagnosis: DiagnosisRequest): Promise; getTreatmentByUuid(uuidDiagnosis: Uuid, uuidTreatment: Uuid): Promise; getTreatmentsFromDiagnosisUuid(diagnosisUuid: Uuid): Promise; /** * This function returns treatment plans associated to a consult * @param uuidConsult the consult uuid to fetch * @returns an array of TreatmentPlan */ getTreatmentPlansFromConsultUuid(uuidConsult: Uuid): Promise; /** * creates a new treatment for the specified diagnosis * @param diagnosisUuid uuid of the diagnosis that the treatment is linked to * @param treatmentRequest the treatment to be inserted */ createTreatment(diagnosisUuid: string, treatmentRequest: TreatmentRequest): Promise; /** * This function returns populated treatment plans associated to a consult * @param uuidConsult the consult uuid to fetch * @returns a TreatmentPlans object */ getTreatmentPlansPopulatedFromConsultUuid(uuidConsult: Uuid): Promise; /** * This function returns populated treatment plans associated consults in a list * @param arrUuidsConsults the list of consult uuid to fetch the treatments for * @param arrStatusesToInclude the PlanStatus to include * @param dateDecidedAfter the date after which the treatment must have been decided * @param dateDecidedBefore the date before which the treatment must have been decided * @returns a TreatmentPlans object */ getTreatmentPlansWithStatusDecidedAfterDateForConsultsUuids(arrUuidsConsults: string[], arrStatusesToInclude?: PlanStatus[], dateDecidedAfter?: Date, dateDecidedBefore?: Date): Promise; postPlans(plans: TreatmentPlansRequest): Promise; updateTreatmentPlan(uuidPlan: string, uuidConsult: string, diagnosisRequest: DiagnosisRequest, plan: TreatmentAndDrugPrescriptionUpdateRequest, refill?: boolean): Promise; setAssociatedConsultsToTreatment(diagnosisUuid: string, treatmentUuid: string, arrAssociatedConsults: TreatmentAssociatedConsultData[]): Promise; updateAssociatedConsultsToTreatment(diagnosisUuid: string, treatmentUuid: string, arrAssociatedConsults: TreatmentAssociatedConsultData[]): Promise; getAssociatedConsultsOfTreatment(diagnosisUuid: string, treatmentUuid: string): Promise; acceptTreatmentPlan(uuidPlan: string, uuidConsult: string): Promise; updateTreatmentPlanStatusOnly(uuidPlan: string, uuidConsult: string, newStatus: PlanStatus): Promise; updateTreatmentPlanNotesOnly(uuidPlan: string, uuidConsult: string, newNotes: string): Promise; /** * retrieves all the drugs of the specified practice * @param uuidPractice */ getAllDrugs(uuidPractice: string): Promise; }