import z from 'zod';
export declare const updateWorkScheduleSchema: z.ZodObject<{
    working_days: z.ZodOptional<z.ZodArray<z.ZodEnum<{
        monday: "monday";
        tuesday: "tuesday";
        wednesday: "wednesday";
        thursday: "thursday";
        friday: "friday";
        saturday: "saturday";
        sunday: "sunday";
    }>>>;
    working_days_per_week: z.ZodOptional<z.ZodNumber>;
    working_hours_per_day: z.ZodOptional<z.ZodNumber>;
    office_start_time: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodCoercedDate<unknown>>>;
    office_end_time: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodCoercedDate<unknown>>>;
    half_day_min_time: z.ZodOptional<z.ZodNumber>;
    half_day_max_time: z.ZodOptional<z.ZodNumber>;
    timezone: z.ZodOptional<z.ZodString>;
    monthly_correction_limit: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>;
export declare const updateCompanyInfoSchema: z.ZodObject<{
    name: z.ZodOptional<z.ZodString>;
    company_code: z.ZodOptional<z.ZodString>;
    email: z.ZodOptional<z.ZodString>;
    phone: z.ZodOptional<z.ZodString>;
    address: z.ZodOptional<z.ZodString>;
    website: z.ZodOptional<z.ZodString>;
    logo: z.ZodOptional<z.ZodOptional<z.ZodPipe<z.ZodAny, z.ZodTransform<{
        file_name: string;
        original_name: string;
        file_size: number;
        mime_type: string;
    }, any>>>>;
    description: z.ZodOptional<z.ZodString>;
    founded_at: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodCoercedDate<unknown>>>;
    industry: z.ZodOptional<z.ZodString>;
}, z.core.$strip>;
export declare const updataLeavePolicySchema: z.ZodObject<{
    annual_leave_days: z.ZodOptional<z.ZodNumber>;
    sick_leave_days: z.ZodOptional<z.ZodNumber>;
    casual_leave_days: z.ZodOptional<z.ZodNumber>;
    maternity_leave_days: z.ZodOptional<z.ZodNumber>;
    paternity_leave_days: z.ZodOptional<z.ZodNumber>;
    personal_leave_days: z.ZodOptional<z.ZodNumber>;
    compensatory_leave_days: z.ZodOptional<z.ZodNumber>;
    unpaid_leave_days: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>;
export declare const companyInfoResponseSchema: z.ZodObject<{
    id: z.ZodOptional<z.ZodString>;
    name: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
    company_code: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
    email: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
    phone: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
    address: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
    website: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
    logo: z.ZodOptional<z.ZodNullable<z.ZodOptional<z.ZodPipe<z.ZodAny, z.ZodTransform<{
        file_name: string;
        original_name: string;
        file_size: number;
        mime_type: string;
    }, any>>>>>;
    description: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
    founded_at: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodCoercedDate<unknown>>>;
    industry: z.ZodOptional<z.ZodPipe<z.ZodString, z.ZodTransform<string, string>>>;
}, z.core.$strip>;
export declare const workScheduleResponseSchema: z.ZodObject<{
    id: z.ZodOptional<z.ZodString>;
    working_days: z.ZodArray<z.ZodEnum<{
        monday: "monday";
        tuesday: "tuesday";
        wednesday: "wednesday";
        thursday: "thursday";
        friday: "friday";
        saturday: "saturday";
        sunday: "sunday";
    }>>;
    working_days_per_week: z.ZodNumber;
    working_hours_per_day: z.ZodNumber;
    office_start_time: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodCoercedDate<unknown>>>;
    office_end_time: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodCoercedDate<unknown>>>;
    half_day_min_time: z.ZodOptional<z.ZodNumber>;
    half_day_max_time: z.ZodOptional<z.ZodNumber>;
    timezone: z.ZodOptional<z.ZodString>;
    monthly_correction_limit: z.ZodDefault<z.ZodNumber>;
}, z.core.$strip>;
export declare const leavePolicyResponseSchema: z.ZodObject<{
    id: z.ZodOptional<z.ZodString>;
    annual_leave_days: z.ZodNumber;
    sick_leave_days: z.ZodNumber;
    casual_leave_days: z.ZodNumber;
    maternity_leave_days: z.ZodNumber;
    paternity_leave_days: z.ZodNumber;
    personal_leave_days: z.ZodNumber;
    compensatory_leave_days: z.ZodNumber;
    unpaid_leave_days: z.ZodNumber;
}, z.core.$strip>;
export declare const singleWorkDayScheduleSchema: z.ZodObject<{
    id: z.ZodOptional<z.ZodString>;
    day_of_week: z.ZodNumber;
    is_active: z.ZodBoolean;
    start_time: z.ZodDefault<z.ZodString>;
    end_time: z.ZodDefault<z.ZodString>;
    break_start: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    break_end: z.ZodOptional<z.ZodNullable<z.ZodString>>;
    grace_period_minutes: z.ZodDefault<z.ZodNumber>;
}, z.core.$strip>;
export declare const updateWorkDaySchedulesSchema: z.ZodObject<{
    schedules: z.ZodArray<z.ZodObject<{
        id: z.ZodOptional<z.ZodString>;
        day_of_week: z.ZodNumber;
        is_active: z.ZodBoolean;
        start_time: z.ZodDefault<z.ZodString>;
        end_time: z.ZodDefault<z.ZodString>;
        break_start: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        break_end: z.ZodOptional<z.ZodNullable<z.ZodString>>;
        grace_period_minutes: z.ZodDefault<z.ZodNumber>;
    }, z.core.$strip>>;
}, z.core.$strip>;
export declare const workDayScheduleResponseSchema: z.ZodObject<{
    id: z.ZodString;
    owner_id: z.ZodString;
    day_of_week: z.ZodNumber;
    is_active: z.ZodBoolean;
    start_time: z.ZodString;
    end_time: z.ZodString;
    break_start: z.ZodNullable<z.ZodString>;
    break_end: z.ZodNullable<z.ZodString>;
    grace_period_minutes: z.ZodNumber;
}, z.core.$strip>;
export declare const workDaySchedulesListResponseSchema: z.ZodArray<z.ZodObject<{
    id: z.ZodString;
    owner_id: z.ZodString;
    day_of_week: z.ZodNumber;
    is_active: z.ZodBoolean;
    start_time: z.ZodString;
    end_time: z.ZodString;
    break_start: z.ZodNullable<z.ZodString>;
    break_end: z.ZodNullable<z.ZodString>;
    grace_period_minutes: z.ZodNumber;
}, z.core.$strip>>;
export declare const updateAttendanceValidationSettingsSchema: z.ZodObject<{
    enforce_ip_whitelist: z.ZodOptional<z.ZodBoolean>;
    enforce_location: z.ZodOptional<z.ZodBoolean>;
    location_name: z.ZodOptional<z.ZodString>;
    latitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
    longitude: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
    radius_meters: z.ZodOptional<z.ZodNumber>;
}, z.core.$strip>;
export declare const attendanceValidationSettingsResponseSchema: z.ZodObject<{
    id: z.ZodOptional<z.ZodString>;
    owner_id: z.ZodOptional<z.ZodString>;
    enforce_ip_whitelist: z.ZodBoolean;
    enforce_location: z.ZodBoolean;
    location_name: z.ZodString;
    latitude: z.ZodOptional<z.ZodNullable<z.ZodPipe<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>, z.ZodTransform<number, string | number>>>>;
    longitude: z.ZodOptional<z.ZodNullable<z.ZodPipe<z.ZodUnion<readonly [z.ZodNumber, z.ZodString]>, z.ZodTransform<number, string | number>>>>;
    radius_meters: z.ZodNumber;
    created_at: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodCoercedDate<unknown>>>;
    updated_at: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodOptional<z.ZodCoercedDate<unknown>>>;
}, z.core.$strip>;
export type UpdateWorkScheduleDto = z.infer<typeof updateWorkScheduleSchema>;
export type UpdateCompanyInfoDto = z.infer<typeof updateCompanyInfoSchema>;
export type UpdateLeavePolicyDto = z.infer<typeof updataLeavePolicySchema>;
export type CompanyInfoResponseDto = z.infer<typeof companyInfoResponseSchema>;
export type WorkScheduleResponseDto = z.infer<typeof workScheduleResponseSchema>;
export type LeavePolicyResponseDto = z.infer<typeof leavePolicyResponseSchema>;
export type SingleWorkDayScheduleDto = z.infer<typeof singleWorkDayScheduleSchema>;
export type UpdateWorkDaySchedulesDto = z.infer<typeof updateWorkDaySchedulesSchema>;
export type WorkDayScheduleResponseDto = z.infer<typeof workDayScheduleResponseSchema>;
export type UpdateAttendanceValidationSettingsDto = z.infer<typeof updateAttendanceValidationSettingsSchema>;
export type AttendanceValidationSettingsResponseDto = z.infer<typeof attendanceValidationSettingsResponseSchema>;
