export type TipoEvento = 'declaracion' | 'pago' | 'obligacion' | 'informativa' | 'custom' | 'tarea';
export type Recurrencia = 'mensual' | 'bimestral' | 'trimestral' | 'anual' | 'unica';

export interface EventoFiscal {
  id?: number;
  titulo: string;
  descripcion: string;
  tipo: TipoEvento;
  fechaLimite: string;
  recurrencia: Recurrencia | string;
  completado: boolean;
  notas?: string | null;
  createdAt?: string;
}

export interface EventoCreate {
  titulo: string;
  descripcion: string;
  tipo: TipoEvento;
  fechaLimite: string;
  recurrencia: Recurrencia;
  notas?: string;
}

export interface EventoUpdate {
  titulo?: string;
  descripcion?: string;
  fechaLimite?: string;
  completado?: boolean;
  notas?: string;
}

export interface CalendarioMes {
  año: number;
  mes: number;
  eventos: EventoFiscal[];
}
