namespace Млаумчерб.Клиент.классы;

public class VersionCatalog
{
    [JsonRequired] public List<RemoteVersionDescriptorProps> versions { get; set; } = null!;
}

public class AssetProperties
{
    [JsonRequired] public string hash { get; set; } = "";
    [JsonRequired] public int size { get; set; }
}

public class AssetIndex
{
    [JsonRequired] public Dictionary<string, AssetProperties> objects { get; set; } = new();
}

public class RemoteVersionDescriptorProps
{
    [JsonRequired] public string id { get; set; } = "";
    [JsonRequired] public string type { get; set; } = "";
    [JsonRequired] public string url { get; set; } = "";
    [JsonRequired] public string sha1 { get; set; } = "";
    [JsonRequired] public DateTime time { get; set; }
    [JsonRequired] public DateTime releaseTime { get; set; }
}
