using MessagePack; using System.Text.Json.Serialization; using SVSim.EmulatedEntrypoint.Models.Dtos.Common.Guild; namespace SVSim.EmulatedEntrypoint.Models.Dtos.GuildChat; /// Response for POST /guild_chat/messages. [MessagePackObject] public class GuildChatMessagesResponse { /// Card ids currently disabled for maintenance — client refreshes its global list. [JsonPropertyName("maintenance_card_list"), Key("maintenance_card_list"), JsonIgnore(Condition = JsonIgnoreCondition.Never)] public List MaintenanceCardList { get; set; } = new(); /// Users referenced by messages in this batch — deduplicated catalog. [JsonPropertyName("users"), Key("users"), JsonIgnore(Condition = JsonIgnoreCondition.Never)] public List Users { get; set; } = new(); /// Messages ordered oldest-to-newest. [JsonPropertyName("chat_message"), Key("chat_message"), JsonIgnore(Condition = JsonIgnoreCondition.Never)] public List ChatMessage { get; set; } = new(); /// Server-driven polling interval in seconds. Client uses this for the next poll. [JsonPropertyName("wait_interval"), Key("wait_interval"), JsonIgnore(Condition = JsonIgnoreCondition.Never)] public int WaitInterval { get; set; } }