using MediaBrowser.Model.Devices;
using MediaBrowser.Model.Session;
using System.Collections.Generic;
namespace MediaBrowser.Controller.Devices
{
public interface IDeviceRepository
{
///
/// Registers the device.
///
/// The device.
/// Task.
void SaveDevice(DeviceInfo device);
///
/// Saves the capabilities.
///
/// The identifier.
/// The capabilities.
/// Task.
void SaveCapabilities(string id, ClientCapabilities capabilities);
///
/// Gets the capabilities.
///
/// The identifier.
/// ClientCapabilities.
ClientCapabilities GetCapabilities(string id);
///
/// Gets the device information.
///
/// The identifier.
/// DeviceInfo.
DeviceInfo GetDevice(string id);
List GetDevices();
///
/// Deletes the device.
///
/// The identifier.
/// Task.
void DeleteDevice(string id);
///
/// Gets the upload history.
///
/// The device identifier.
/// ContentUploadHistory.
ContentUploadHistory GetCameraUploadHistory(string deviceId);
///
/// Saves the camera upload history.
///
/// The device identifier.
/// The file.
void AddCameraUpload(string deviceId, LocalFileInfo file);
}
}