using System;
using System.Security.Claims;
using System.Threading.Tasks;
using BlueWest.Data.Application;
using Microsoft.AspNetCore.Identity;
namespace BlueWest.Data.Auth.Context.Users;
///
/// Auth manager contract interface.
///
public interface IAuthManager
{
///
/// CreateUserAsync
///
///
///
Task CreateUserAsync(RegisterRequest registerRequest);
///
/// Does Login
///
///
///
public Task<(bool, SessionTokenUnique, ClaimsIdentity)> GetSessionTokenIdByLoginRequest(LoginRequest loginRequest, string authenticationType);
///
/// Does Login
///
///
///
public Task<(bool, SessionTokenUnique, ClaimsIdentity)> GetSessionTokenIdByLoginRequestViaCookie(LoginRequest loginRequest, string authenticationType);
}