namespace ColaFlow.Modules.Identity.Application.Services;

/// <summary>
/// Service for generating and hashing security tokens
/// </summary>
public interface ISecurityTokenService
{
    /// <summary>
    /// Generate a cryptographically secure random token (256-bit, base64url-encoded)
    /// </summary>
    string GenerateToken();

    /// <summary>
    /// Hash a token using SHA-256
    /// </summary>
    string HashToken(string token);

    /// <summary>
    /// Verify a token against a hash
    /// </summary>
    bool VerifyToken(string token, string hash);
}
