namespace OmsorgCore.Application.Services;

public class PasswordResetVerifyResult
{
    public bool Success { get; init; }
    public string? ResetToken { get; init; }

    /// <summary>"invalid_or_expired" | "too_many_attempts"</summary>
    public string? FailureReason { get; init; }

    public static PasswordResetVerifyResult Fail(string reason) => new() { Success = false, FailureReason = reason };

    public static PasswordResetVerifyResult Ok(string resetToken) => new() { Success = true, ResetToken = resetToken };
}
