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

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);
}