import { Repository } from 'typeorm';
import { PatientService } from '../patient/patient.service';
import { ModelePublipostage } from '../publipostage_doc/entities/modele_publipostage.entity';
import { GenerateDocumentDto } from './dto/generate-document.dto';
import { Consultation } from '../consultation/entities/consultation.entity';
import { ConsultationMotifConsultation } from '../consultation/entities/consultation_motif_consultation.entity';
import { ConsultationMotif } from '../consultation/entities/consultation_motif.entity';
import { DataSource } from 'typeorm';
import { Ordonance } from '../consultation/entities/prescription.entity';
import { OrdonanceMedicament } from '../consultation/entities/prescription_medicament.entity';
import { Medicament } from '../consultation/entities/medicament.entity';
import { TraceDelivrance } from '../trace_delivrance/entities/trace-delivrance.entity';
import { ConsultationTypeConsultation } from '../consultation/entities/consultation_type_consultation.entity';
import { Bilan } from '../bilan/entities/bilan.entity';
import { BilanAnalyse } from '../bilan/entities/bilan_analyse.entity';
import { Analyse } from '../bilan/entities/analyse.entity';
export declare class GeneratedDocumentService {
    private readonly modeleRepository;
    private readonly consultationRepository;
    private readonly motifConsultationRepository;
    private readonly consultationMotifRepository;
    private readonly ordonnanceRepository;
    private readonly ordonnanceMedicamentRepository;
    private readonly medicamentRepository;
    private readonly traceDelivranceRepository;
    private readonly bilanRepository;
    private readonly bilanAnalyseRepository;
    private readonly analyseRepository;
    private readonly patientService;
    private readonly dataSource;
    private readonly consultationTypeConsultationRepository;
    constructor(modeleRepository: Repository<ModelePublipostage>, consultationRepository: Repository<Consultation>, motifConsultationRepository: Repository<ConsultationMotifConsultation>, consultationMotifRepository: Repository<ConsultationMotif>, ordonnanceRepository: Repository<Ordonance>, ordonnanceMedicamentRepository: Repository<OrdonanceMedicament>, medicamentRepository: Repository<Medicament>, traceDelivranceRepository: Repository<TraceDelivrance>, bilanRepository: Repository<Bilan>, bilanAnalyseRepository: Repository<BilanAnalyse>, analyseRepository: Repository<Analyse>, patientService: PatientService, dataSource: DataSource, consultationTypeConsultationRepository: Repository<ConsultationTypeConsultation>);
    private htmlToText;
    private getConsultationTypes;
    generateDocument(generateDocumentDto: GenerateDocumentDto, idCabinet: number): Promise<{
        success: boolean;
        filePath: string;
        filename: string;
        documentInfo: {
            id_patient: number;
            id_cabinet: number;
            id_modele: number;
            id_consultation: number;
            id_ordonnance: number;
            id_bilan: number;
            type_contexte: "patient" | "consultation" | "bilan" | "ordonnance";
        };
    }>;
    private getCabinetDoctor;
}
