namespace LightlessSync.LightlessConfiguration.Configurations; public class PlayerPerformanceConfig : ILightlessConfiguration { public int Version { get; set; } = 1; public bool ShowPerformanceIndicator { get; set; } = true; public bool ShowPerformanceUsageNextToName { get; set; } = false; public bool WarnOnExceedingThresholds { get; set; } = true; public bool WarnOnPreferredPermissionsExceedingThresholds { get; set; } = false; public int VRAMSizeWarningThresholdMiB { get; set; } = 375; public int TrisWarningThresholdThousands { get; set; } = 165; public bool AutoPausePlayersExceedingThresholds { get; set; } = false; public bool AutoPausePlayersWithPreferredPermissionsExceedingThresholds { get; set; } = false; public int VRAMSizeAutoPauseThresholdMiB { get; set; } = 550; public int TrisAutoPauseThresholdThousands { get; set; } = 250; public List UIDsToIgnore { get; set; } = new(); public bool PauseInInstanceDuty { get; set; } = false; public bool PauseWhilePerforming { get; set; } = true; public bool PauseInCombat { get; set; } = true; public bool EnableNonIndexTextureMipTrim { get; set; } = false; public bool EnableIndexTextureDownscale { get; set; } = false; public int TextureDownscaleMaxDimension { get; set; } = 2048; public bool OnlyDownscaleUncompressedTextures { get; set; } = true; public bool KeepOriginalTextureFiles { get; set; } = false; }