using System; using System.Collections.Generic; using System.Text.Json.Serialization; namespace BinaryLane.Api.V2.Models; /// A BinaryLane region in which a resource can be created. public sealed class Region : BinaryLaneDto { [JsonPropertyName("slug")] public string Slug { get; init; } = string.Empty; [JsonPropertyName("name")] public string Name { get; init; } = string.Empty; [JsonPropertyName("sizes")] public IReadOnlyList Sizes { get; init; } = Array.Empty(); [JsonPropertyName("available")] public bool Available { get; init; } [JsonPropertyName("features")] public IReadOnlyList Features { get; init; } = Array.Empty(); [JsonPropertyName("name_servers")] public IReadOnlyList NameServers { get; init; } = Array.Empty(); } public sealed class RegionsResponse : BinaryLaneDto { [JsonPropertyName("meta")] public PageMeta Meta { get; init; } = new(); [JsonPropertyName("links")] public PageLinks? Links { get; init; } [JsonPropertyName("regions")] public IReadOnlyList Regions { get; init; } = Array.Empty(); }