import { type GiornoSettimana } from '@/shared/model/enumerations/giorno-settimana.model';
import { type TipoDisponibilita } from '@/shared/model/enumerations/tipo-disponibilita.model';
import { type IStruttura } from '@/shared/model/struttura.model';
export interface IDisponibilita {
  id?: number;
  giornoSettimana?: keyof typeof GiornoSettimana | null;
  dataSpecifica?: Date | null;
  oraInizio?: Date | null;
  oraFine?: Date | null;
  orarioInizio?: string | null;
  orarioFine?: string | null;
  tipo?: keyof typeof TipoDisponibilita | null;
  note?: string | null;
  struttura?: IStruttura | null;
}

export class Disponibilita implements IDisponibilita {
  constructor(
    public id?: number,
    public giornoSettimana?: keyof typeof GiornoSettimana | null,
    public dataSpecifica?: Date | null,
    public oraInizio?: Date | null,
    public oraFine?: Date | null,
    public orarioInizio?: string | null,
    public orarioFine?: string | null,
    public tipo?: keyof typeof TipoDisponibilita | null,
    public note?: string | null,
    public struttura?: IStruttura | null,
  ) {}
}
