namespace DigitalData.Core.Abstractions.Security.Common;

/// <summary>
/// Represents a unique security context that identifies an issuer and an audience.
/// </summary>
public interface IUniqueSecurityContext
{
    /// <summary>
    /// Gets the issuer identifier for this security context.
    /// </summary>
    /// <remarks>
    /// The issuer typically represents the entity that issues a token or a cryptographic key.
    /// </remarks>
    string Issuer { get; }

    /// <summary>
    /// Gets the audience identifier for this security context.
    /// </summary>
    /// <remarks>
    /// The audience typically represents the intended recipient or target of a token or cryptographic operation.
    /// </remarks>
    string Audience { get; }
}