33 lines
2.0 KiB
C#
33 lines
2.0 KiB
C#
using Fitness_core_BE.DTOs.Auth;
|
|
using Microsoft.AspNetCore.Http;
|
|
|
|
namespace Fitness_core_BE.Interfaces.Services
|
|
{
|
|
public interface IAuthService
|
|
{
|
|
Task<AuthResponse> SendOtp(object payload, HttpContext httpContext);
|
|
Task<AuthResponse> LoginUser(object payload, HttpContext httpContext);
|
|
Task<AuthResponse> RefreshToken(object payload, HttpContext httpContext);
|
|
Task<AuthResponse> VerifyOTP(object payload, HttpContext httpContext);
|
|
// Verifies an OTP and, on success, sets the caller's Customer channel flag
|
|
// (IsPrimaryPHVerfied / IsEmailVerfied / IsSecondaryPHVerfied).
|
|
Task<AuthResponse> VerifyOTPForCus(object payload, HttpContext httpContext);
|
|
Task<AuthResponse> IsAvailable(object payload, HttpContext httpContext);
|
|
Task<AuthResponse> GetUserDetails(object payload, HttpContext httpContext);
|
|
Task<AuthResponse> UpdateUser(object payload, HttpContext httpContext);
|
|
// Admin/service-initiated update of an arbitrary user's login credential by userId —
|
|
// unlike UpdateUser (which patches the caller's own profile from their JWT), this lets
|
|
// a client/staff edit patch the login record of the *customer* they're editing. Forwards
|
|
// to Auth's existing "adminUpdateUser" function.
|
|
Task<AuthResponse> AdminUpdateUser(object payload, HttpContext httpContext);
|
|
Task<AuthResponse> RegisterUser(object payload, HttpContext httpContext);
|
|
Task<AuthResponse> VerifyOtpForLogin(object payload, HttpContext httpContext);
|
|
Task<AuthResponse> ForgotPassword(object payload, HttpContext httpContext);
|
|
Task<AuthResponse> ResetPassword(object payload, HttpContext httpContext);
|
|
Task<AuthResponse> ResetPasswordWithToken(object payload, HttpContext httpContext);
|
|
Task<AuthResponse> VerifyPassword(object payload, HttpContext httpContext);
|
|
Task<AuthResponse> LogOut(object payload, HttpContext httpContext);
|
|
void SetAccessTokenCookie(HttpContext httpContext, string token);
|
|
}
|
|
}
|