using System.Text.Json.Serialization;
namespace AIStudio.Assistants.VisualBriefing;
///
/// Plans one narrative section and its ordered components.
///
[JsonUnmappedMemberHandling(JsonUnmappedMemberHandling.Disallow)]
[CanonicalJsonShape("91d1394d")]
public sealed class VisualBriefingPlanSection
{
/// Gets or sets the globally unique section identifier.
[JsonRequired]
public string SectionId { get; set; } = string.Empty;
/// Gets or sets the narrative purpose of the section.
[JsonRequired]
public VisualBriefingSectionRole Role { get; set; }
/// Gets or sets the slot containing the section title.
[JsonRequired]
public string TitleSlotId { get; set; } = string.Empty;
/// Gets or sets the slot containing the section summary.
[JsonRequired]
public string SummarySlotId { get; set; } = string.Empty;
/// Gets or sets the ordered planned components.
[JsonRequired]
public List Components { get; set; } = [];
}