using System.Diagnostics.CodeAnalysis;
using System.Text.Json.Serialization;
namespace ModelContextProtocol.Protocol;
///
/// Represents the response to a task-augmented request.
///
///
///
/// When a client sends a request with a task parameter, the server immediately returns
/// a containing the created task information instead of the
/// normal result type. The actual result can be retrieved later via tasks/result.
///
///
/// This type is returned for any task-augmented request including tools/call,
/// sampling/createMessage, and elicitation/create.
///
///
[Experimental(Experimentals.Tasks_DiagnosticId, UrlFormat = Experimentals.Tasks_Url)]
public sealed class CreateTaskResult : Result
{
///
/// Gets or sets the task data for the newly created task.
///
[JsonPropertyName("task")]
public McpTask Task { get; set; } = null!;
}