using MediaBrowser.Controller.Entities; 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(); /// /// Gets the user from exchange token. /// /// The token. /// User. User GetUserFromExchangeToken(string token); /// /// 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); /// /// Gets the local user. /// /// The connect user identifier. /// Task<User>. Task GetLocalUser(string connectUserId); /// /// Determines whether [is authorization token valid] [the specified token]. /// /// The token. /// true if [is authorization token valid] [the specified token]; otherwise, false. bool IsAuthorizationTokenValid(string token); } }