using ApplicationLayer.InfrastructureServicesInterfaces;
using Domains.Users;
namespace ApplicationLayer.Services.AuthServices.NeededServices;
/// Repository pattern for
public interface IUsersRepository : IGenericRepository
{
/// Find by email
/// 's email
/// Cancellation token
/// User or null if not found
Task FindByEmailAsync(string email, CancellationToken cancellationToken);
/// Returns all accounts with specific role
/// role
/// cancellation token
/// list of accounts
Task> GetAllOfRoleAsync(Role role, CancellationToken cancellationToken);
}