using System.Threading.Tasks;
using Webshop.Application.DTOs.Auth;
namespace Webshop.Application.Services.Auth
{
///
/// Definiert den Vertrag für den Authentifizierungsdienst.
///
public interface IAuthService
{
///
/// Registriert einen neuen Benutzer und erstellt ein zugehöriges Kundenprofil.
///
Task RegisterUserAsync(RegisterRequestDto request);
///
/// Meldet einen Benutzer an und gibt einen JWT zurück.
///
Task LoginUserAsync(LoginRequestDto request);
///
/// Meldet einen Benutzer an und überprüft, ob er die Admin-Rolle hat.
///
Task LoginAdminAsync(LoginRequestDto request);
}
}