import { DayPeriod } from '@prisma/client';
export declare function leaveDaysBetween(fromDate: string, toDate: string, dayPeriod: string): number;
export declare function normalizeDayPeriod(fromDate: string, toDate: string, dayPeriod: string): DayPeriod;
export declare function computeBalance(employeeId: string, typeId: string, year: number): Promise<{
    typeId: string;
    allocated: number;
    used: number;
    pending: number;
    available: number | null;
    validUntil: string | null;
    tracksBalance: boolean;
}>;
export declare function assertCanApply(opts: {
    employeeId: string;
    typeId: string;
    fromDate: string;
    toDate: string;
    dayPeriod: string;
    year: number;
}): Promise<{
    type: {
        id: string;
        code: string;
        label: string;
        tracksBalance: boolean;
    };
    days: number;
    period: import(".prisma/client").$Enums.DayPeriod;
}>;
export declare function notifyEmployee(employeeId: string, text: string): Promise<void>;
export declare function notifySuperAdmins(text: string): Promise<void>;
