#nullable disable using System; using System.Collections.Generic; using Jellyfin.Data.Events; namespace MediaBrowser.Model.Tasks { /// /// Interface IScheduledTaskWorker. /// public interface IScheduledTaskWorker : IDisposable { /// /// Occurs when [task progress]. /// event EventHandler> TaskProgress; /// /// Gets the scheduled task. /// /// The scheduled task. IScheduledTask ScheduledTask { get; } /// /// Gets the last execution result. /// /// The last execution result. TaskResult LastExecutionResult { get; } /// /// Gets the name. /// /// The name. string Name { get; } /// /// Gets the description. /// /// The description. string Description { get; } /// /// Gets the category. /// /// The category. string Category { get; } /// /// Gets the state. /// /// The state. TaskState State { get; } /// /// Gets the current progress. /// /// The current progress. double? CurrentProgress { get; } /// /// Gets or sets the triggers that define when the task will run. /// /// The triggers. IReadOnlyList Triggers { get; set; } /// /// Gets the unique id. /// /// The unique id. string Id { get; } /// /// Reloads the trigger events. /// void ReloadTriggerEvents(); } }