import { ConfigService } from '@nestjs/config';
import { Repository } from 'typeorm';
import { Advance } from '../advances/entities/advance.entity';
import { Attendance } from '../attendances/entities/attendance.entity';
import { AttendanceType } from '../attendances/entities/attendance-type.entity';
import { CalculationsService } from '../calculations/calculations.service';
import { Company } from '../companies/entities/company.entity';
import { Department } from '../departments/entities/department.entity';
import { JobTitle } from '../job-titles/entities/job-title.entity';
import { Period } from '../periods/entities/period.entity';
import { Site } from '../sites/entities/site.entity';
import { Worker } from '../workers/entities/worker.entity';
export declare class PdfExportService {
    private readonly workersRepository;
    private readonly periodsRepository;
    private readonly companiesRepository;
    private readonly sitesRepository;
    private readonly attendancesRepository;
    private readonly attendanceTypesRepository;
    private readonly advancesRepository;
    private readonly departmentsRepository;
    private readonly jobTitlesRepository;
    private readonly calculationsService;
    private readonly configService;
    private readonly printer;
    constructor(workersRepository: Repository<Worker>, periodsRepository: Repository<Period>, companiesRepository: Repository<Company>, sitesRepository: Repository<Site>, attendancesRepository: Repository<Attendance>, attendanceTypesRepository: Repository<AttendanceType>, advancesRepository: Repository<Advance>, departmentsRepository: Repository<Department>, jobTitlesRepository: Repository<JobTitle>, calculationsService: CalculationsService, configService: ConfigService);
    private get currency();
    private loadWorkedTypeIds;
    private filterWorked;
    buildWorkerBulletinForLabelMonth(workerId: number, labelYear: number, labelMonth: number): Promise<{
        buffer: Buffer;
        filename: string;
    }>;
    buildWorkerBulletin(periodId: number, workerId: number): Promise<{
        buffer: Buffer;
        filename: string;
    }>;
    buildPeriodReport(periodId: number): Promise<{
        buffer: Buffer;
        filename: string;
    }>;
    private buildHeaderForLabel;
    private buildAttendancePageLandscape;
    private formatDays;
    buildPeriodAttendancesReport(periodId: number): Promise<{
        buffer: Buffer;
        filename: string;
    }>;
    private weekendFill;
    private buildAggregatedSummaryTable;
    private buildPerSiteTable;
    private buildJobTitleBreakdownTable;
    private buildAbsencesSection;
    private buildAdvancesSection;
    private commonStyles;
    private get clientName();
    private get clientLogoPath();
    private commonFooter;
    private renderToBuffer;
    private formatAmount;
    private formatDate;
    private formatISODate;
}
