using MediaBrowser.Model.Connect;
using System.Collections.Generic;
using System.Threading.Tasks;
namespace MediaBrowser.Controller.Connect
{
public interface IConnectManager
{
///
/// Gets the wan API address.
///
/// The wan API address.
string WanApiAddress { get; }
///
/// Links the user.
///
/// The user identifier.
/// The connect username.
/// Task.
Task LinkUser(string userId, string connectUsername);
///
/// Removes the link.
///
/// The user identifier.
/// Task.
Task RemoveConnect(string userId);
///
/// Invites the user.
///
/// The request.
/// Task<UserLinkResult>.
Task InviteUser(ConnectAuthorizationRequest request);
///
/// Gets the pending guests.
///
/// Task<List<ConnectAuthorization>>.
Task> GetPendingGuests();
///
/// Cancels the authorization.
///
/// The identifier.
/// Task.
Task CancelAuthorization(string id);
///
/// Authenticates the specified username.
///
/// The username.
/// The password MD5.
/// Task.
Task Authenticate(string username, string passwordMd5);
}
}