using Mirea.Api.Security.Common.Model;

namespace Mirea.Api.Security.Common.Domain.Caching;

internal class FirstAuthToken
{
    public FirstAuthToken(RequestContextInfo context)
    {
        UserAgent = context.UserAgent;
        Ip = context.Ip;
        Fingerprint = context.Fingerprint;
    }

    public FirstAuthToken()
    {
    }

    public string UserAgent { get; set; } = null!;
    public string Ip { get; set; } = null!;
    public string Fingerprint { get; set; } = null!;
    public required string UserId { get; set; }
    public required TwoFactorAuthenticator TwoFactorAuthenticator { get; set; }
    public string? Secret { get; set; }
}