using System.Security.Claims; using AmtScanner.Api.Models; namespace AmtScanner.Api.Services; /// /// JWT 服务接口 /// public interface IJwtService { /// /// 生成 Access Token /// string GenerateAccessToken(User user, IEnumerable roles); /// /// 生成 Refresh Token /// string GenerateRefreshToken(); /// /// 验证 Token 并返回 ClaimsPrincipal /// ClaimsPrincipal? ValidateToken(string token); /// /// 从过期的 Token 中获取 ClaimsPrincipal /// ClaimsPrincipal? GetPrincipalFromExpiredToken(string token); /// /// 获取 Refresh Token 过期时间 /// DateTime GetRefreshTokenExpiryTime(); }