namespace ModelContextProtocol;
///
/// Provides a progress value that can be sent using .
///
public sealed class ProgressNotificationValue
{
///
/// Gets or initializes the progress thus far.
///
///
///
/// This value typically represents either a percentage (0-100) or the number of items processed so far (when used with the property).
///
///
/// When reporting progress, this value should increase monotonically as the operation proceeds.
/// Values are typically between 0 and 100 when representing percentages, or can be any positive number
/// when representing completed items in combination with the property.
///
///
public required float Progress { get; init; }
/// Gets or initializes the total number of items to process (or total progress required), if known.
public float? Total { get; init; }
/// Gets or initializes an optional message describing the current progress.
public string? Message { get; init; }
}