Files
Swarm/DysonNetwork.Pass/Features/Auth/Interfaces/IAuthenticationService.cs

17 lines
618 B
C#

using DysonNetwork.Common.Models;
using DysonNetwork.Pass.Features.Auth.Models;
using NodaTime;
namespace DysonNetwork.Pass.Features.Auth.Interfaces;
public interface IAuthenticationService
{
Task<AuthResult> AuthenticateAsync(string username, string password);
Task<AuthResult> AuthenticateWithOidcAsync(string provider, string code, string state);
Task<AuthResult> RefreshTokenAsync(string refreshToken);
Task<bool> ValidateTokenAsync(string token);
Task LogoutAsync(Guid sessionId);
Task<bool> ValidateSessionAsync(Guid sessionId);
Task<AuthSession> GetSessionAsync(Guid sessionId);
}