using UniVerse.Application.DTOs.Sync; namespace UniVerse.Application.Interfaces; public interface IScheduleSyncService { Task SyncScheduleAsync(SyncScheduleRequest request); Task SyncRoomsAsync(); Task> SearchEmployeesAsync(string fullname); Task GetLastSyncStatusAsync(); } public interface IModeusApiClient { Task SearchEventsAsync(SyncScheduleRequest request); Task SearchRoomsAsync(); Task> SearchEmployeeAsync(string fullname); } // Modeus API response models public record ModeusEvent(string Id, string Name, DateTime StartsAt, DateTime EndsAt, string? RoomId, string? TeacherId, string? TypeId); public record ModeusEventsResponse(List Events); public record ModeusRoom(string Id, string Name, string? Building); public record ModeusRoomsResponse(List Rooms); public record ModeusEmployee(string? Id, string FullName, string? Department);