/** * Types pour les phases de chantiers */ export interface PhaseChantier { id: string; nom: string; description?: string; statut: StatutPhase; dateDebutPrevue: string; dateFinPrevue: string; dateDebutReelle?: string; dateFinReelle?: string; pourcentageAvancement: number; budgetPrevu?: number; coutReel?: number; critique: boolean; responsable?: { id: string; nom: string; prenom: string; }; phaseParent?: { id: string; nom: string; }; } export type StatutPhase = | 'PLANIFIEE' | 'EN_ATTENTE' | 'EN_COURS' | 'EN_PAUSE' | 'TERMINEE' | 'ANNULEE' | 'EN_RETARD'; export interface PhaseFormData { nom: string; description?: string; dateDebutPrevue: string; dateFinPrevue: string; budgetPrevu?: number; critique: boolean; responsableId?: string; phaseParentId?: string; chantierId: string; } export interface PhaseStats { total: number; planifiees: number; enCours: number; terminees: number; enRetard: number; avancementMoyen: number; }