import { LeaveRequestsService } from "./leave-requests.service";
import { CreateLeaveRequestDto } from "./dto/create-leave-request.dto";
import { UpdateLeaveRequestDto } from "./dto/update-leave-request.dto";
import { UpdateLeaveRequestStatusDto } from "./dto/update-leave-request-status.dto";
import { LeaveRequestFiltersDto } from "./dto/leave-request-filters.dto";
export declare class LeaveRequestsController {
    private readonly leaveRequestsService;
    constructor(leaveRequestsService: LeaveRequestsService);
    create(createLeaveRequestDto: CreateLeaveRequestDto, request: Request): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    findAll(query: LeaveRequestFiltersDto, request: Request): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    findMyLeaveRequests(query: LeaveRequestFiltersDto, request: Request): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    findOne(id: string): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    update(id: string, updateLeaveRequestDto: UpdateLeaveRequestDto, request: Request): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    remove(id: string, request: Request): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
    updateStatus(id: string, updateStatusDto: UpdateLeaveRequestStatusDto, request: Request): Promise<{
        success: boolean;
        code: number;
        message: string;
    }>;
}
