using System.Text.Json.Serialization; namespace LeagueAPI.Models.Challenges; public record class LolChallengesChallengeData { [JsonPropertyName("id")] public long Id { get; init; } [JsonPropertyName("category")] public string? Category { get; init; } [JsonPropertyName("legacy")] public bool Legacy { get; init; } [JsonPropertyName("percentile")] public double Percentile { get; init; } [JsonPropertyName("position")] public int Position { get; init; } [JsonPropertyName("playersInLevel")] public int PlayersInLevel { get; init; } [JsonPropertyName("initValue")] public double InitValue { get; init; } [JsonPropertyName("previousLevel")] public string? PreviousLevel { get; init; } [JsonPropertyName("previousValue")] public double PreviousValue { get; init; } [JsonPropertyName("previousThreshold")] public double PreviousThreshold { get; init; } [JsonPropertyName("newLevels")] public string[]? NewLevels { get; init; } [JsonPropertyName("currentLevel")] public string? CurrentLevel { get; init; } [JsonPropertyName("currentValue")] public double CurrentValue { get; init; } [JsonPropertyName("currentThreshold")] public double CurrentThreshold { get; init; } [JsonPropertyName("currentLevelAchievedTime")] public long CurrentLevelAchievedTime { get; init; } [JsonPropertyName("nextLevel")] public string? NextLevel { get; init; } [JsonPropertyName("nextThreshold")] public double NextThreshold { get; init; } [JsonPropertyName("friendsAtLevels")] public LolChallengesFriendLevelsData[]? FriendsAtLevels { get; init; } [JsonPropertyName("idListType")] public string? IdListType { get; init; } [JsonPropertyName("availableIds")] public int[]? AvailableIds { get; init; } [JsonPropertyName("completedIds")] public int[]? CompletedIds { get; init; } }