namespace Jellyfin.Plugin.JRay.Models;
///
/// What a fetch stored, and from where.
///
public class ManifestFetchResult
{
/// Gets or sets the server that supplied the manifest.
public string ServerUrl { get; set; } = string.Empty;
/// Gets or sets the cut-match tier achieved.
public string Match { get; set; } = string.Empty;
/// Gets or sets the offset applied to every window, in seconds.
public double OffsetSec { get; set; }
/// Gets or sets how many actors the stored truth file holds.
public int ActorCount { get; set; }
///
/// Gets or sets a caveat to surface in the UI, or null when the match needs
/// no explanation.
///
///
/// A loose match must surface as a caveat rather than being applied
/// silently — the runtimes differ by up to 30 seconds, which is usually a
/// different trim of the same cut but is not guaranteed to be.
///
public string? Caveat { get; set; }
}