using System.Text.Json.Serialization; namespace Jellyfin.Plugin.JRay.Models; /// /// A single prioritise/ignore rule. A rule is uniquely identified by its /// and ; setting a new action for an /// existing scope+value replaces the previous one. /// public class MediaPolicyRule { /// /// Gets or sets the scope this rule targets (genre, series, or item). /// [JsonPropertyName("scope")] public PolicyScope Scope { get; set; } /// /// Gets or sets the target value: a genre name for , /// a series id for , or an item id for /// . /// [JsonPropertyName("value")] public string Value { get; set; } = string.Empty; /// /// Gets or sets the action to apply (prioritise or ignore). /// [JsonPropertyName("action")] public PolicyAction Action { get; set; } /// /// Gets or sets an optional human-readable label for the target (e.g. the /// series or item display name), shown in the rules list. Informational only. /// [JsonPropertyName("label")] public string Label { get; set; } = string.Empty; }