using MediaBrowser.Model.Sync;
using System.Collections.Generic;
using System.Threading;
using System.Threading.Tasks;
namespace MediaBrowser.Controller.Sync
{
public interface ICloudSyncProvider
{
///
/// Gets the name.
///
/// The name.
string Name { get; }
///
/// Gets the synchronize targets.
///
/// The user identifier.
/// IEnumerable<SyncTarget>.
IEnumerable GetSyncTargets(string userId);
///
/// Transfers the item file.
///
/// The server identifier.
/// The item identifier.
/// The input file.
/// The path parts.
/// The target.
/// The cancellation token.
/// Task.
Task TransferItemFile(string serverId, string itemId, string inputFile, string[] pathParts, SyncTarget target, CancellationToken cancellationToken);
}
}