import { CreateEmployeeDto } from "./dto/create-employee.dto";
import { UpdateEmployeeDto } from "./dto/update-employee.dto";
import { AssignProjectsDto } from "./dto/assign-projects.dto";
import { UpdateLeaveBalancesDto } from "./dto/update-leave-balances.dto";
import { UpdateSalaryHistoryDto } from "./dto/update-salary-dto";
import { EmployeesService } from "./employees.service";
import { CreateEmployeeTechnologyDto } from "./dto/create-employee-technology.dto";
import { UpdateEmployeeTechnologyDto } from "./dto/update-employee-technology.dto";
import { AssignTechnologyEmployeesDto } from "./dto/assign-technology-employees.dto";
import { FilterEmployeeTechnologyDto } from "./dto/filter-employee-technology.dto";
export declare class EmployeesController {
    private readonly employeesService;
    constructor(employeesService: EmployeesService);
    create(createEmployeeDto: CreateEmployeeDto, request: Request, files: Record<string, Express.Multer.File[]>): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    findAll(query: any, request: Request): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    getMyLeaveBalances(request: Request, query?: any): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    updateLeaveBalances(updateLeaveBalancesDto: UpdateLeaveBalancesDto, employee_id: number, request: Request): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    findAllTechnologies(query: FilterEmployeeTechnologyDto, request: Request): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    createTechnology(createDto: CreateEmployeeTechnologyDto, request: Request): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    updateTechnology(id: string, updateDto: UpdateEmployeeTechnologyDto, request: Request): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    assignTechnologyEmployees(assignDto: AssignTechnologyEmployeesDto, request: Request): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    findOne(id: string): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    update(id: string, updateEmployeeDto: UpdateEmployeeDto, request: Request, files: Record<string, Express.Multer.File[]>): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    remove(id: string, request: Request): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    createLeaveBalances(id: string, request: Request): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    getSalaryHistory(id: string, request: Request): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    updateSalaryHistory(id: string, updateSalaryHistoryDto: UpdateSalaryHistoryDto, request: Request): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    activeInactiveEmployee(id: string, request: Request): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    bulkUploadEmployees(files: Record<string, Express.Multer.File[]>, request: Request): Promise<{
        success: boolean;
        code: number;
        message: string;
    } | {
        data: any;
        success: boolean;
        code: number;
        message: string;
    }>;
    getEmployeeProjects(id: string): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    assignProjects(id: string, assignProjectsDto: AssignProjectsDto, request: Request): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
}
