import { EmployeesService } from './employees.service.js';
import { AttendanceService } from '../attendance/attendance.service.js';
import { CatalogsService } from '../catalogs/catalogs.service.js';
export declare class EmployeesController {
    private readonly employeesService;
    private readonly attendanceService;
    private readonly catalogsService;
    constructor(employeesService: EmployeesService, attendanceService: AttendanceService, catalogsService: CatalogsService);
    findAll(status?: string): import("../shared/domain.js").Employee[];
    checkExists(employeeNumber: string, stationId?: string): Promise<{
        exists: boolean;
        employeeNumber: string;
        fullName: string;
        status: import("../shared/domain.js").EmployeeStatus;
        hasPendingEntry: boolean;
        pendingEntryDate: string | null;
        belongsToZone: boolean;
        zoneIds: number[] | undefined;
    } | {
        exists: boolean;
        employeeNumber: string;
        fullName?: undefined;
        status?: undefined;
        hasPendingEntry?: undefined;
        pendingEntryDate?: undefined;
        belongsToZone?: undefined;
        zoneIds?: undefined;
    }>;
    create(body: unknown): Promise<import("../shared/domain.js").Employee>;
    createFromMobile(req: {
        user: {
            type?: string;
            isMobileSupervisor?: boolean;
        };
    }, body: unknown): Promise<import("../shared/domain.js").Employee>;
    enrollFromMobile(req: {
        user: {
            type?: string;
            isMobileSupervisor?: boolean;
        };
    }, employeeNumber: string, file?: Express.Multer.File): Promise<import("../shared/domain.js").Employee>;
    enrollWithPhoto(employeeNumber: string, file?: Express.Multer.File): Promise<import("../shared/domain.js").Employee>;
    enrollLegacy(employeeNumber: string): Promise<import("../shared/domain.js").Employee>;
    updateStatus(employeeNumber: string, body: unknown): Promise<import("../shared/domain.js").Employee>;
    update(employeeNumber: string, body: unknown): Promise<import("../shared/domain.js").Employee>;
    remove(employeeNumber: string): Promise<{
        deleted: true;
    }>;
    findOne(employeeNumber: string): import("../shared/domain.js").Employee;
    getPhotoUrl(employeeNumber: string): Promise<{
        photoUrl: string | null;
    }>;
}
