15 lines
532 B
C#
15 lines
532 B
C#
using DysonNetwork.Common.Models;
|
|
using NodaTime;
|
|
|
|
namespace DysonNetwork.Pass.Features.Auth.Interfaces;
|
|
|
|
public interface ISessionService
|
|
{
|
|
Task<AuthSession> CreateSessionAsync(Guid accountId, string ipAddress, string userAgent);
|
|
Task<AuthSession?> GetSessionAsync(Guid sessionId);
|
|
Task<bool> ValidateSessionAsync(Guid sessionId);
|
|
Task InvalidateSessionAsync(Guid sessionId);
|
|
Task InvalidateAllSessionsAsync(Guid accountId, Guid? excludeSessionId = null);
|
|
Task UpdateSessionActivityAsync(Guid sessionId);
|
|
}
|