using MediaBrowser.Model.Dto;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Plugins;
using MediaBrowser.Model.Session;
using MediaBrowser.Model.Tasks;
using MediaBrowser.Model.Updates;
using System;
namespace MediaBrowser.Model.ApiClient
{
    /// 
    /// Class UserDeletedEventArgs
    /// 
    public class UserDeletedEventArgs : EventArgs
    {
        /// 
        /// Gets or sets the id.
        /// 
        /// The id.
        public string Id { get; set; }
    }
    public class UserDataChangedEventArgs : EventArgs
    {
        /// 
        /// Gets or sets the user.
        /// 
        /// The user.
        public UserDataChangeInfo ChangeInfo { get; set; }
    }
    
    /// 
    /// Class UserUpdatedEventArgs
    /// 
    public class UserUpdatedEventArgs : EventArgs
    {
        /// 
        /// Gets or sets the user.
        /// 
        /// The user.
        public UserDto User { get; set; }
    }
    /// 
    /// Class ScheduledTaskStartedEventArgs
    /// 
    public class ScheduledTaskStartedEventArgs : EventArgs
    {
        /// 
        /// Gets or sets the name.
        /// 
        /// The name.
        public string Name { get; set; }
    }
    /// 
    /// Class ScheduledTaskEndedEventArgs
    /// 
    public class ScheduledTaskEndedEventArgs : EventArgs
    {
        /// 
        /// Gets or sets the result.
        /// 
        /// The result.
        public TaskResult Result { get; set; }
    }
    /// 
    /// Class PackageInstallationEventArgs
    /// 
    public class PackageInstallationEventArgs : EventArgs
    {
        /// 
        /// Gets or sets the installation info.
        /// 
        /// The installation info.
        public InstallationInfo InstallationInfo { get; set; }
    }
    /// 
    /// Class PluginUninstallEventArgs
    /// 
    public class PluginUninstallEventArgs : EventArgs
    {
        /// 
        /// Gets or sets the plugin info.
        /// 
        /// The plugin info.
        public PluginInfo PluginInfo { get; set; }
    }
    /// 
    /// Class LibraryChangedEventArgs
    /// 
    public class LibraryChangedEventArgs : EventArgs
    {
        /// 
        /// Gets or sets the update info.
        /// 
        /// The update info.
        public LibraryUpdateInfo UpdateInfo { get; set; }
    }
    /// 
    /// Class BrowseRequestEventArgs
    /// 
    public class BrowseRequestEventArgs : EventArgs
    {
        /// 
        /// Gets or sets the request.
        /// 
        /// The request.
        public BrowseRequest Request { get; set; }
    }
    /// 
    /// Class PlayRequestEventArgs
    /// 
    public class PlayRequestEventArgs : EventArgs
    {
        /// 
        /// Gets or sets the request.
        /// 
        /// The request.
        public PlayRequest Request { get; set; }
    }
    /// 
    /// Class PlaystateRequestEventArgs
    /// 
    public class PlaystateRequestEventArgs : EventArgs
    {
        /// 
        /// Gets or sets the request.
        /// 
        /// The request.
        public PlaystateRequest Request { get; set; }
    }
    /// 
    /// Class MessageCommandEventArgs
    /// 
    public class MessageCommandEventArgs : EventArgs
    {
        /// 
        /// Gets or sets the request.
        /// 
        /// The request.
        public MessageCommand Request { get; set; }
    }
    /// 
    /// Class SystemCommandEventArgs
    /// 
    public class SystemCommandEventArgs : EventArgs
    {
        /// 
        /// Gets or sets the command.
        /// 
        /// The command.
        public SystemCommand Command { get; set; }
    }
    /// 
    /// Class SessionUpdatesEventArgs
    /// 
    public class SessionUpdatesEventArgs : EventArgs
    {
        public SessionInfoDto[] Sessions { get; set; }
    }
}