using Foxel.Models; using Foxel.Models.Response.User; namespace Foxel.Services.Management; public interface IUserManagementService { Task> GetUsersAsync(int page = 1, int pageSize = 10, string? searchQuery = null, string? role = null, DateTime? startDate = null, DateTime? endDate = null); Task GetUserByIdAsync(int id); Task GetUserDetailAsync(int id); Task CreateUserAsync(string userName, string email, string password, string role); Task UpdateUserAsync(int id, string userName, string email, string role); Task DeleteUserAsync(int id); Task BatchDeleteUsersAsync(List ids); } public class BatchDeleteResult { public int SuccessCount { get; set; } public int FailedCount { get; set; } public List FailedIds { get; set; } = new(); }