using System.Text.Json.Serialization; namespace ControlPlane.Core.Models; /// /// Defines the billing and support level for a provisioned tenant. /// The tier gates which ComponentMode values are available per component in the StackConfig. /// /// Trial - ephemeral sandbox, all-in-one image, no persistent data guarantee. /// Shared - real production data, shared platform infrastructure (logical slices only). /// Dedicated - full container isolation per component, still on ControlPlane's shared host. /// Enterprise - full VM isolation per component (VpsDocker or VpsBareMetal), Pulumi provisioned. /// [JsonConverter(typeof(JsonStringEnumConverter))] public enum TenantTier { Trial, Shared, Dedicated, Enterprise }