using MediaBrowser.Model.Devices; using System; using System.Collections.Generic; using System.Threading; using System.Threading.Tasks; namespace MediaBrowser.Model.ApiClient { public interface IDevice { /// <summary> /// Occurs when [resume from sleep]. /// </summary> event EventHandler<EventArgs> ResumeFromSleep; /// <summary> /// Gets the name of the device. /// </summary> /// <value>The name of the device.</value> string DeviceName { get; } /// <summary> /// Gets the device identifier. /// </summary> /// <value>The device identifier.</value> string DeviceId { get; } /// <summary> /// Gets the local images. /// </summary> /// <returns>IEnumerable<LocalFileInfo>.</returns> Task<IEnumerable<LocalFileInfo>> GetLocalPhotos(); /// <summary> /// Gets the local videos. /// </summary> /// <returns>IEnumerable<LocalFileInfo>.</returns> Task<IEnumerable<LocalFileInfo>> GetLocalVideos(); /// <summary> /// Uploads the file. /// </summary> /// <param name="file">The file.</param> /// <param name="apiClient">The API client.</param> /// <param name="cancellationToken">The cancellation token.</param> /// <returns>Task.</returns> Task UploadFile(LocalFileInfo file, IApiClient apiClient, CancellationToken cancellationToken = default(CancellationToken)); } }