import { APIService } from './api'; import { Uuid, Consult, ConsultRequest, MedicalStatus, ConsultTransmission, ClosedReasonType, TransmissionStatus, ConsultType } from '../models'; export declare class ConsultService { private api; private baseURL; constructor(api: APIService, baseURL: string); consultCreate(c: ConsultRequest): Promise; /** * This function returns the number of consults using parameters * @param uuidPractice the practice uuid * @param uuidRequester the requester uuid * @param statusesMedical an array containing MedicalStatus to include * @param statusesExclude an array containing MedicalStatus to exclude * @param shortId a shortId matcher (will match all consult with a shortId starting with this `shortId`) * @param columnToSortTo the list of columns separated by commas, to sort to (in order of sorting) * @param orderToSortTo the type of sorting to do ('asc' for ascending or 'desc' for descending) * @param perPage the number of item to retrieve per "page" * @param indexPage the actual index of the page to retrieve (0 based: 0 is the first items) * @param filterAssignedDoctor the uuid of the doctor for which to filter with * @param filterCurrentPractitioner the uuid of the current assistant assigned to filter with * @param filterIsoLocality the of isoLocality to filter with * @param filterAssignee array of practitioner uuids with which you want to filter the consultations * @returns a number of consult */ countConsults(uuidPractice?: Uuid, uuidRequester?: Uuid, statusesMedical?: MedicalStatus[], statusesExclude?: MedicalStatus[], shortId?: string, columnToSortTo?: string[], orderToSortTo?: string[], perPage?: number, indexPage?: number, filterAssignedDoctor?: string, filterCurrentPractitioner?: string, filterIsoLocality?: string[], filterAssignee?: string[], typesConsult?: ConsultType[], uuidParent?: Uuid): Promise; /** * This function get consults using parameters * @param uuidPractice the practice uuid * @param uuidRequester the requester uuid * @param statusesMedical an array containing MedicalStatus to include * @param statusesExclude an array containing MedicalStatus to exclude * @param shortId a shortId matcher (will match all consult with a shortId starting with this `shortId`) * @param columnToSortTo the list of columns separated by commas, to sort to (in order of sorting) * @param orderToSortTo the type of sorting to do ('asc' for ascending or 'desc' for descending) * @param perPage the number of item to retrieve per "page" * @param indexPage the actual index of the page to retrieve (0 based: 0 is the first items) * @param filterAssignedDoctor the uuid of the doctor for which to filter with * @param filterCurrentPractitioner the uuid of the current assistant assigned to filter with * @param filterIsoLocality the of isoLocality to filter with * @returns a list of consult */ getConsults(uuidPractice?: Uuid, uuidRequester?: Uuid, statusesMedical?: MedicalStatus[], statusesExclude?: MedicalStatus[], shortId?: string, columnToSortTo?: string[], orderToSortTo?: string[], perPage?: number, indexPage?: number, filterAssignedDoctor?: string, filterCurrentPractitioner?: string, filterIsoLocality?: string[], filterAssignee?: string[], uuidParent?: Uuid, typesConsult?: ConsultType[], filterOnlyWithoutTransmission?: boolean, filterAfterDate?: Date): Promise; getConsultByUUID(uuidConsult: Uuid, uuidPractice?: Uuid): Promise; getConsultByPracticePaymentID(idPracticePayment: Number, uuidPractice?: Uuid): Promise; updateConsultByUUID(uuidConsult: Uuid, consult: { statusMedical?: MedicalStatus; closedReasonType?: ClosedReasonType; closedReasonDescription?: string; uuidAssignedDoctor?: Uuid; neverExpires?: boolean; }, uuidPractice?: Uuid, uuidRequester?: Uuid): Promise; getConsultFaxStatuses(uuidConsult: string): Promise; postConsultTransmission(uuidConsult: string, nameDriver?: string, addressOrPhoneToSendTo?: string, file?: File, nameReceiver?: string, txtTransmissionTitle?: string, txtTransmissionNotes?: string, uuidPatient?: string): Promise; postConsultFax(uuidConsult: string, addressReceiver: string, file: File, uuidPatient?: string): Promise; postConsultEmail(uuidConsult: string, file: File, uuidPatient?: string): Promise; retryConsultFax(uuidConsult: string, transmissionId: string): Promise; updateConsultTransmissionStatus(transmissionId: string, uuidConsult: string, newStatus: TransmissionStatus): Promise; }