using MessagePack;
using System.Text.Json.Serialization;
namespace SVSim.EmulatedEntrypoint.Models.Dtos;
///
/// One entry under /mypage/index data.room_type_in_session.special_deck_format_list. Consumed by
/// RoomRuleInfo ctor (Wizard/RoomRuleInfo.cs:61-70) which is TryGetValue-guarded but the per-entry
/// fields are accessed unconditionally inside the guard.
///
/// Prod-captured shape: {"deck_format":"5","end_time":"2030-06-26 19:59:59"}.
///
[MessagePackObject]
public class SpecialDeckFormat
{
/// Wire is string per prod's PHP convention (despite looking numeric like "5").
[JsonPropertyName("deck_format")]
[Key("deck_format")]
public string DeckFormat { get; set; } = string.Empty;
/// "yyyy-MM-dd HH:mm:ss" wire format.
[JsonPropertyName("end_time")]
[Key("end_time")]
public string EndTime { get; set; } = string.Empty;
}