using System; #nullable enable namespace Terminal.Gui; /// /// An attribute that can be applied to a property to indicate that it should included in the configuration file. /// /// /// [SerializableConfigurationProperty(Scope = typeof(Configuration.ThemeManager.ThemeScope)), JsonConverter (typeof (JsonStringEnumConverter))] /// public static LineStyle DefaultBorderStyle { /// ... /// [AttributeUsage (AttributeTargets.Property, AllowMultiple = false, Inherited = false)] public class SerializableConfigurationProperty : System.Attribute { /// /// Specifies the scope of the property. /// public Type? Scope { get; set; } /// /// If , the property will be serialized to the configuration file using only the property name /// as the key. If , the property will be serialized to the configuration file using the /// property name pre-pended with the classname (e.g. Application.UseSystemConsole). /// public bool OmitClassName { get; set; } }