using System; using MediaBrowser.Model.Entities; using System.Threading.Tasks; namespace MediaBrowser.Common.Security { public interface ISecurityManager { /// /// Gets a value indicating whether this instance is MB supporter. /// /// true if this instance is MB supporter; otherwise, false. bool IsMBSupporter { get; } /// /// Gets or sets the supporter key. /// /// The supporter key. string SupporterKey { get; set; } /// /// Gets the registration status. Overload to support existing plug-ins. /// /// The feature. /// The MB2 equivalent. /// Task{MBRegistrationRecord}. Task GetRegistrationStatus(string feature, string mb2Equivalent = null); /// /// Gets the registration status. /// /// The feature. /// The MB2 equivalent. /// The version of the feature /// Task{MBRegistrationRecord}. Task GetRegistrationStatus(string feature, string mb2Equivalent, string version); /// /// Load all registration info for all entities that require registration /// /// Task LoadAllRegistrationInfo(); /// /// Gets the supporter information. /// /// Task<SupporterInfo>. Task GetSupporterInfo(); /// /// Register and app store sale with our back-end /// /// /// /// /// /// /// /// /// /// /// true if successful Task RegisterAppStoreSale(string store, string application, string product, string feature, string type, string storeId, string storeToken, string email, string amt); } }