export type AssignmentState = "active" | "planned" | "past" | "start_expired" | "archived";

export interface Assignment {
  id: number;
  title: string;
  entity_id: number;
  entity_name: string;
  start_date: string;
  end_date: string;
  state: AssignmentState;
  classrooms: AssignmentClassroom[];
  exams: AssignmentExam[];
  assignee_count: number;
  completed_count: number;
  subject_id?: number;
}

export interface AssignmentClassroom {
  id: number;
  name: string;
}

export interface AssignmentExam {
  id: number;
  title: string;
  module: string;
}

export interface AssignmentCreateRequest {
  title: string;
  entity_id: number;
  start_date: string;
  end_date: string;
  classroom_ids: number[];
  exam_ids: number[];
  assignee_ids?: number[];
}
