using System;
using System.ComponentModel;
namespace API.Entities.Enums;
///
/// 15 is blocked as it was EnableSwaggerUi, which is no longer used
///
public enum ServerSettingKey
{
///
/// Cron format for how often full library scans are performed.
///
[Description("TaskScan")]
TaskScan = 0,
///
/// Where files are cached. Not currently used.
///
[Description("CacheDirectory")]
CacheDirectory = 1,
///
/// Cron format for how often backups are taken.
///
[Description("TaskBackup")]
TaskBackup = 2,
///
/// Logging level for Server. Not managed in DB. Managed in appsettings.json and synced to DB.
///
[Description("LoggingLevel")]
LoggingLevel = 3,
///
/// Port server listens on. Not managed in DB. Managed in appsettings.json and synced to DB.
///
[Description("Port")]
Port = 4,
///
/// Where the backups are stored.
///
[Description("BackupDirectory")]
BackupDirectory = 5,
///
/// Allow anonymous data to be reported to KavitaStats
///
[Description("AllowStatCollection")]
AllowStatCollection = 6,
///
/// Is OPDS enabled for the server
///
[Description("EnableOpds")]
EnableOpds = 7,
///
/// Is Authentication needed for non-admin accounts
///
/// Deprecated. This is no longer used v0.5.1+. Assume Authentication is always in effect
[Description("EnableAuthentication")]
EnableAuthentication = 8,
///
/// Base Url for the server. Not Implemented.
///
[Description("BaseUrl")]
BaseUrl = 9,
///
/// Represents this installation of Kavita. Is tied to Stat reporting but has no information about user or files.
///
[Description("InstallId")]
InstallId = 10,
///
/// Represents the version the software is running.
///
/// This will be updated on Startup to the latest release. Provides ability to detect if certain migrations need to be run.
[Description("InstallVersion")]
InstallVersion = 11,
///
/// Location of where bookmarks are stored
///
[Description("BookmarkDirectory")]
BookmarkDirectory = 12,
///
/// If SMTP is enabled on the server
///
[Description("CustomEmailService")]
EmailServiceUrl = 13,
///
/// If Kavita should save bookmarks as WebP images
///
[Obsolete("Use EncodeMediaAs instead")]
[Description("ConvertBookmarkToWebP")]
ConvertBookmarkToWebP = 14,
///
/// Total Number of Backups to maintain before cleaning. Default 30, min 1.
///
[Description("TotalBackups")]
TotalBackups = 16,
///
/// If Kavita should watch the library folders and process changes
///
[Description("EnableFolderWatching")]
EnableFolderWatching = 17,
///
/// Total number of days worth of logs to keep
///
[Description("TotalLogs")]
TotalLogs = 18,
///
/// If Kavita should save covers as WebP images
///
[Obsolete("Use EncodeMediaAs instead")]
[Description("ConvertCoverToWebP")]
ConvertCoverToWebP = 19,
///
/// The Host name (ie Reverse proxy domain name) for the server. Used for email link generation
///
[Description("HostName")]
HostName = 20,
///
/// Ip addresses the server listens on. Not managed in DB. Managed in appsettings.json and synced to DB.
///
[Description("IpAddresses")]
IpAddresses = 21,
///
/// Encode all media as PNG/WebP/AVIF/etc.
///
/// As of v0.7.3 this replaced ConvertCoverToWebP and ConvertBookmarkToWebP
[Description("EncodeMediaAs")]
EncodeMediaAs = 22,
///
/// A Kavita+ Subscription license key
///
[Description("LicenseKey")]
LicenseKey = 23,
///
/// The size in MB for Caching API data
///
[Description("Cache")]
CacheSize = 24,
///
/// How many Days since today in the past for reading progress, should content be considered for On Deck, before it gets removed automatically
///
[Description("OnDeckProgressDays")]
OnDeckProgressDays = 25,
///
/// How many Days since today in the past for chapter updates, should content be considered for On Deck, before it gets removed automatically
///
[Description("OnDeckUpdateDays")]
OnDeckUpdateDays = 26,
}