namespace Jellyfin.Data.Enums
{
/// <summary>
/// The types of user permissions.
/// </summary>
public enum PermissionKind
{
/// <summary>
/// Whether the user is an administrator.
/// </summary>
IsAdministrator = 0 ,
/// <summary>
/// Whether the user is hidden.
/// </summary>
IsHidden = 1 ,
/// <summary>
/// Whether the user is disabled.
/// </summary>
IsDisabled = 2 ,
/// <summary>
/// Whether the user can control shared devices.
/// </summary>
EnableSharedDeviceControl = 3 ,
/// <summary>
/// Whether the user can access the server remotely.
/// </summary>
EnableRemoteAccess = 4 ,
/// <summary>
/// Whether the user can manage live tv.
/// </summary>
EnableLiveTvManagement = 5 ,
/// <summary>
/// Whether the user can access live tv.
/// </summary>
EnableLiveTvAccess = 6 ,
/// <summary>
/// Whether the user can play media.
/// </summary>
EnableMediaPlayback = 7 ,
/// <summary>
/// Whether the server should transcode audio for the user if requested.
/// </summary>
EnableAudioPlaybackTranscoding = 8 ,
/// <summary>
/// Whether the server should transcode video for the user if requested.
/// </summary>
EnableVideoPlaybackTranscoding = 9 ,
/// <summary>
/// Whether the user can delete content.
/// </summary>
EnableContentDeletion = 10 ,
/// <summary>
/// Whether the user can download content.
/// </summary>
EnableContentDownloading = 11 ,
/// <summary>
/// Whether to enable sync transcoding for the user.
/// </summary>
EnableSyncTranscoding = 12 ,
/// <summary>
/// Whether the user can do media conversion.
/// </summary>
EnableMediaConversion = 13 ,
/// <summary>
/// Whether the user has access to all devices.
/// </summary>
EnableAllDevices = 14 ,
/// <summary>
/// Whether the user has access to all channels.
/// </summary>
EnableAllChannels = 15 ,
/// <summary>
/// Whether the user has access to all folders.
/// </summary>
EnableAllFolders = 16 ,
/// <summary>
/// Whether to enable public sharing for the user.
/// </summary>
EnablePublicSharing = 17 ,
/// <summary>
/// Whether the user can remotely control other users.
/// </summary>
EnableRemoteControlOfOtherUsers = 18 ,
/// <summary>
/// Whether the user is permitted to do playback remuxing.
/// </summary>
EnablePlaybackRemuxing = 19 ,
/// <summary>
/// Whether the server should force transcoding on remote connections for the user.
/// </summary>
ForceRemoteSourceTranscoding = 20
}
}