using System.Diagnostics.CodeAnalysis;
using System.Text.Json.Serialization;
namespace ModelContextProtocol.Protocol;
///
/// Represents the parameters for a tasks/list request to retrieve a list of tasks.
///
///
/// This operation supports cursor-based pagination. Receivers should use cursor-based
/// pagination to limit the number of tasks returned in a single response.
///
[Experimental(Experimentals.Tasks_DiagnosticId, UrlFormat = Experimentals.Tasks_Url)]
public sealed class ListTasksRequestParams : PaginatedRequestParams
{
// Inherits Cursor property from PaginatedRequestParams
}
///
/// Represents the result of a tasks/list request.
///
///
/// The result contains an array of task objects and an optional cursor for pagination.
/// If is present, more tasks are available.
///
[Experimental(Experimentals.Tasks_DiagnosticId, UrlFormat = Experimentals.Tasks_Url)]
public sealed class ListTasksResult : PaginatedResult
{
///
/// Gets or sets the list of tasks.
///
[JsonPropertyName("tasks")]
public required IList Tasks { get; set; }
}