using MediaBrowser.Model.Updates; using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; namespace MediaBrowser.Common.Updates { public interface IPackageManager { /// /// Gets all available packages dynamically. /// /// The cancellation token. /// Task{List{PackageInfo}}. Task> GetAvailablePackages(CancellationToken cancellationToken); /// /// Gets all available packages from a static resource. /// /// The cancellation token. /// Task{List{PackageInfo}}. Task> GetAvailablePackagesStatic(CancellationToken cancellationToken); /// /// Installs a package. /// /// /// The package. /// The cancellation token. /// Task. Task InstallPackage(IProgress progress, PackageVersionInfo package, CancellationToken cancellationToken); } }