using System; using System.Collections.Generic; using Jellyfin.Plugin.RecentlyAddedGuard.Core; namespace Jellyfin.Plugin.RecentlyAddedGuard.Api; /// /// Status shown on the configuration page. /// public sealed class GuardStatus { /// /// Gets the number of ledger entries. /// public int LedgerEntries { get; init; } /// /// Gets the number of entries with at least one live item. /// public int LiveEntries { get; init; } /// /// Gets the number of entries whose items are gone (within the grace period). /// public int RemovedEntries { get; init; } /// /// Gets the number of corrections since the server started. /// public long CorrectionsSinceStart { get; init; } /// /// Gets the number of upgrades detected in dry-run mode since the server started. /// public long DryRunDetectionsSinceStart { get; init; } /// /// Gets a value indicating whether the initial seed has completed. /// public bool SeedCompleted { get; init; } /// /// Gets the time of the last seed or synchronization (UTC). /// public DateTime? LastSyncUtc { get; init; } /// /// Gets a value indicating whether dry-run mode is active. /// public bool DryRun { get; init; } /// /// Gets the most recent corrections, newest first. /// public IReadOnlyList RecentCorrections { get; init; } = []; }