using System.Text.Json.Serialization; namespace AIStudio.Assistants.VisualBriefing; /// /// Defines the strict structured response returned by the content agent. /// [JsonUnmappedMemberHandling(JsonUnmappedMemberHandling.Disallow)] public sealed class VisualBriefingContentResponse { /// Gets or sets the content contract version. [JsonRequired] public int ContractVersion { get; set; } /// Gets or sets exactly one value for every planned slot. [JsonRequired] public List Slots { get; set; } = []; /// Gets or sets the semantic chart specifications. [JsonRequired] public List Charts { get; set; } = []; /// Gets or sets the declarative interaction controls. [JsonRequired] public List Controls { get; set; } = []; /// Gets or sets the deterministic simulation formulas. [JsonRequired] public List Formulas { get; set; } = []; /// Gets or sets assistive descriptions keyed by component identifier. [JsonRequired] public Dictionary AccessibilityTexts { get; set; } = new(StringComparer.Ordinal); }