import type { Request, Response } from 'express';
import type { AuthenticatedUser } from '../../common/interfaces/authenticated-user.interface';
import { AuditService } from '../audit/audit.service';
import { CreateJobTitleDto } from './dto/create-job-title.dto';
import { UpdateJobTitleDto } from './dto/update-job-title.dto';
import { JobTitlesImportService } from './job-titles-import.service';
import { JobTitlesService } from './job-titles.service';
export declare class JobTitlesController {
    private readonly jobTitlesService;
    private readonly jobTitlesImportService;
    private readonly auditService;
    constructor(jobTitlesService: JobTitlesService, jobTitlesImportService: JobTitlesImportService, auditService: AuditService);
    list(companyId: number): Promise<import("./entities/job-title.entity").JobTitle[]>;
    getOne(companyId: number, id: number): Promise<import("./entities/job-title.entity").JobTitle>;
    create(companyId: number, dto: CreateJobTitleDto, user: AuthenticatedUser, req: Request): Promise<import("./entities/job-title.entity").JobTitle>;
    update(companyId: number, id: number, dto: UpdateJobTitleDto, user: AuthenticatedUser, req: Request): Promise<import("./entities/job-title.entity").JobTitle>;
    remove(companyId: number, id: number, user: AuthenticatedUser, req: Request): Promise<void>;
    getImportTemplate(res: Response): void;
    importJobTitles(companyId: number, file: Express.Multer.File | undefined, modeRaw: string | undefined, user: AuthenticatedUser, req: Request): Promise<import("./job-titles-import.service").JobTitleImportReport>;
}
