/**
 * Work Schedule Types
 *
 * Types for employee work schedule (arbejdstidsplan)
 */

export type ShiftStatus = 'work' | 'off' | 'vacation' | 'sick';

export interface WorkScheduleShift {
  status: ShiftStatus;
  start?: string;  // "09:00" - only when status=work
  end?: string;    // "17:00" - only when status=work
  note?: string;
}

export interface EmployeeSchedule {
  employeeId: string;
  name: string;
  weeklyHours: number;
  schedule: Record<string, WorkScheduleShift>;  // key = ISO date "2025-12-23"
}

export interface WeekSchedule {
  weekNumber: number;
  year: number;
  startDate: string;  // ISO date "2025-12-23"
  endDate: string;    // ISO date "2025-12-29"
  closedDays: string[];  // ["2025-12-25"]
  employees: EmployeeSchedule[];
}
