using MessagePack;
using System.Text.Json.Serialization;
namespace SVSim.EmulatedEntrypoint.Models.Dtos;
///
/// shop_notification on /mypage/index, consumed by
/// ShopNotification.SetShopNotification (Wizard/ShopNotification.cs:30). All four
/// sub-keys are directly indexed; each is passed to ShopAppealInfo, which early-
/// returns when `data.Count == 0`. We mirror prod's heterogeneous shape — three
/// empty arrays and one object — so that the wire matches and the client's
/// length-check fires on the empty cases.
///
[MessagePackObject]
public class ShopNotification
{
[JsonPropertyName("card_pack")]
[Key("card_pack")]
public ShopCardPackAppeal CardPack { get; set; } = new();
/// Prod 2026-05-23: []. Client treats Count==0 as "no notification".
[JsonPropertyName("build_deck")]
[Key("build_deck")]
public List