using System.Collections.Generic;
using MediaBrowser.Model.Entities;
using System;
using System.Threading;
using System.Threading.Tasks;
namespace MediaBrowser.Controller.Persistence
{
///
/// Interface IDisplayPreferencesRepository
///
public interface IDisplayPreferencesRepository : IRepository
{
///
/// Opens the connection to the repository
///
/// Task.
Task Initialize();
///
/// Saves display preferences for an item
///
/// The display preferences.
/// The user id.
/// The client.
/// The cancellation token.
/// Task.
Task SaveDisplayPreferences(DisplayPreferences displayPreferences, string userId, string client,
CancellationToken cancellationToken);
///
/// Saves all display preferences for a user
///
/// The display preferences.
/// The user id.
/// The cancellation token.
/// Task.
Task SaveAllDisplayPreferences(IEnumerable displayPreferences, Guid userId,
CancellationToken cancellationToken);
///
/// Gets the display preferences.
///
/// The display preferences id.
/// The user id.
/// The client.
/// Task{DisplayPreferences}.
DisplayPreferences GetDisplayPreferences(string displayPreferencesId, string userId, string client);
///
/// Gets all display preferences for the given user.
///
/// The user id.
/// Task{DisplayPreferences}.
IEnumerable GetAllDisplayPreferences(Guid userId);
}
}