using System.Text.Json.Serialization;

namespace View_by_Distance.Shared.Models;

public record Aggregations(
    [property: JsonPropertyName("allPeople")] IReadOnlyList<AllPerson> AllPeople,
    [property: JsonPropertyName("clusterId")] IReadOnlyList<ClusterId> ClusterId,
    [property: JsonPropertyName("location")] IReadOnlyList<LocationAmazon> Location,
    [property: JsonPropertyName("people")] IReadOnlyList<PersonAmazon> People,
    [property: JsonPropertyName("things")] IReadOnlyList<Thing> Things,
    [property: JsonPropertyName("time")] IReadOnlyList<Time> Time,
    [property: JsonPropertyName("type")] IReadOnlyList<Type> Type
);

[JsonSourceGenerationOptions(WriteIndented = true)]
[JsonSerializable(typeof(Aggregations))]
public partial class AggregationsGenerationContext : JsonSerializerContext
{
}