using GreenHome.Application.Dtos.Admin; namespace GreenHome.Application; public interface IAdminService { Task GetDashboardAsync(CancellationToken cancellationToken); Task> GetUsersAsync(AdminUserFilter filter, CancellationToken cancellationToken); Task GetUserAsync(int id, CancellationToken cancellationToken); Task SetUserRoleAsync(int id, Domain.UserRole role, int currentAdminId, CancellationToken cancellationToken); Task SetUserStatusAsync(int id, bool isEnabled, int currentAdminId, CancellationToken cancellationToken); Task> GetDevicesAsync(AdminDeviceFilter filter, CancellationToken cancellationToken); Task GetDeviceAsync(int id, CancellationToken cancellationToken); Task> GetUsageAsync(DateTime? from, DateTime? to, int? userId, CancellationToken cancellationToken); }