using MessagePack;
using System.Text.Json.Serialization;
namespace SVSim.EmulatedEntrypoint.Models.Dtos;
///
/// One of the eight "starter" decks (one per class), as surfaced under
/// /deck/info data.default_deck_list. Wire shape derived from 2026-05-23 prod capture.
/// Used by the client both as new-account defaults and as the source for "use default deck".
///
[MessagePackObject]
public class DefaultDeck
{
[JsonPropertyName("deck_no")]
[Key("deck_no")]
public int DeckNo { get; set; }
[JsonPropertyName("class_id")]
[Key("class_id")]
public int ClassId { get; set; }
[JsonPropertyName("sleeve_id")]
[Key("sleeve_id")]
public long SleeveId { get; set; }
[JsonPropertyName("leader_skin_id")]
[Key("leader_skin_id")]
public int LeaderSkinId { get; set; }
[JsonPropertyName("deck_name")]
[Key("deck_name")]
public string DeckName { get; set; } = string.Empty;
/// 40 card_id values — same card may repeat (max 3 per card per Shadowverse rules).
[JsonPropertyName("card_id_array")]
[Key("card_id_array")]
public List CardIdArray { get; set; } = new();
}