using System.Text.Json; using System.Text.Json.Serialization; namespace ModelContextProtocol.Protocol; /// /// Represents the client's response to an elicitation request. /// public sealed class ElicitResult : Result { /// /// Gets or sets the user action in response to the elicitation. /// /// /// Defaults to "cancel" if not explicitly set. /// /// /// /// /// "accept" /// User submitted the form/confirmed the action /// /// /// "decline" /// User explicitly declined the action /// /// /// "cancel" /// User dismissed without making an explicit choice (default) /// /// /// [JsonPropertyName("action")] public string Action { get; set; } = "cancel"; /// /// Gets or sets the submitted form data. /// /// /// /// This is typically omitted if the action is "cancel" or "decline". /// /// /// Values in the dictionary should be of types , , /// , or . /// /// [JsonPropertyName("content")] public IDictionary? Content { get; set; } }