using Tiku.Application.Catalog; using Tiku.Application.Content; namespace Tiku.Application.TenantAdmin; public interface ITenantAdminDirectService { Task GetClassesAsync( TenantAdminActor actor, TenantAdminClassFilter filter, CancellationToken cancellationToken = default); Task> UpsertClassAsync( TenantAdminActor actor, UpsertTenantAdminClassCommand command, CancellationToken cancellationToken = default); Task> DisableClassAsync( TenantAdminActor actor, Guid classId, CancellationToken cancellationToken = default); Task> GetClassMembersAsync( TenantAdminActor actor, TenantAdminClassMemberFilter filter, CancellationToken cancellationToken = default); Task> UpsertClassMemberAsync( TenantAdminActor actor, UpsertTenantAdminClassMemberCommand command, CancellationToken cancellationToken = default); Task> RemoveClassMemberAsync( TenantAdminActor actor, Guid classMemberId, CancellationToken cancellationToken = default); Task GetStudentsAsync( TenantAdminActor actor, TenantAdminStudentFilter filter, CancellationToken cancellationToken = default); Task> UpsertStudentAsync( TenantAdminActor actor, UpsertTenantAdminStudentCommand command, CancellationToken cancellationToken = default); Task> UpdateStudentStatusAsync( TenantAdminActor actor, UpdateTenantAdminStudentStatusCommand command, CancellationToken cancellationToken = default); Task> GetStudentNotesAsync( TenantAdminActor actor, TenantAdminStudentActivityFilter filter, CancellationToken cancellationToken = default); Task> UpsertStudentNoteAsync( TenantAdminActor actor, UpsertTenantAdminStudentNoteCommand command, CancellationToken cancellationToken = default); Task> GetStudentFollowupsAsync( TenantAdminActor actor, TenantAdminStudentActivityFilter filter, CancellationToken cancellationToken = default); Task> UpsertStudentFollowupAsync( TenantAdminActor actor, UpsertTenantAdminStudentFollowupCommand command, CancellationToken cancellationToken = default); }