using iknow_api.DTOs; namespace iknow_api.Services { public interface IAdminService { // UC012 - subjects Task> GetSubjectsAsync(); Task CreateSubjectAsync(SubjectWriteDto request); Task UpdateSubjectAsync(int subjectId, SubjectWriteDto request); Task DeleteSubjectAsync(int subjectId); Task LinkMajorAsync(int subjectId, MajorLinkDto request); Task UnlinkMajorAsync(int subjectId, int majorId); Task AddPrerequisiteAsync(int subjectId, PrerequisiteDto request); Task RemovePrerequisiteAsync(int subjectId, int dependencyId); // UC013 - active semesters Task> GetSemestersAsync(); Task CreateSemesterAsync(SemesterWriteDto request); // UC014 - professor assignments Task GetScheduleAsync(int semesterId); Task AssignAsync(ScheduleWriteDto request); Task UnassignAsync(ScheduleWriteDto request); Task> GetMajorsAsync(); } }