namespace OTSSignsOrchestrator.Core.Models.DTOs;

/// <summary>
/// Represents an Authentik group for display and sync operations.
/// </summary>
public class AuthentikGroupItem
{
    public string Pk { get; set; } = string.Empty;
    public string Name { get; set; } = string.Empty;
    public int MemberCount { get; set; }

    /// <summary>Display text for UI: "Group Name (N members)".</summary>
    public string DisplayText => MemberCount > 0
        ? $"{Name}  ({MemberCount} member{(MemberCount == 1 ? "" : "s")})"
        : Name;

    public override string ToString() => DisplayText;
}
