using Newtonsoft.Json; using System; namespace Optimizer { [Serializable] public sealed class SilentConfig { [JsonProperty("WindowsVersion", Required = Required.Always, NullValueHandling = NullValueHandling.Ignore)] public int WindowsVersion { get; set; } [JsonProperty("PostAction", NullValueHandling = NullValueHandling.Ignore)] public PostAction PostAction { get; set; } [JsonProperty("Cleaner", NullValueHandling = NullValueHandling.Ignore)] public Cleaner Cleaner { get; set; } [JsonProperty("Pinger", NullValueHandling = NullValueHandling.Ignore)] public Pinger Pinger { get; set; } [JsonProperty("ProcessControl", NullValueHandling = NullValueHandling.Ignore)] public ProcessControl ProcessControl { get; set; } [JsonProperty("HostsEditor", NullValueHandling = NullValueHandling.Ignore)] public HostsEditor HostsEditor { get; set; } [JsonProperty("RegistryFix", NullValueHandling = NullValueHandling.Ignore)] public RegistryFix RegistryFix { get; set; } [JsonProperty("Integrator", NullValueHandling = NullValueHandling.Ignore)] public Integrator Integrator { get; set; } [JsonProperty("Tweaks", NullValueHandling = NullValueHandling.Ignore)] public Tweaks Tweaks { get; set; } [JsonProperty("AdvancedTweaks", NullValueHandling = NullValueHandling.Ignore)] public AdvancedTweaks AdvancedTweaks { get; set; } } [Serializable] public sealed class AdvancedTweaks { [JsonProperty("DisableHPET", NullValueHandling = NullValueHandling.Ignore)] public bool? DisableHPET { get; set; } [JsonProperty("EnableLoginVerbose", NullValueHandling = NullValueHandling.Ignore)] public bool? EnableLoginVerbose { get; set; } [JsonProperty("UnlockAllCores", NullValueHandling = NullValueHandling.Ignore)] public bool? UnlockAllCores { get; set; } [JsonProperty("EnableRegistryBackups", NullValueHandling = NullValueHandling.Ignore)] public bool? EnableRegistryBackups { get; set; } [JsonProperty("SvchostProcessSplitting", NullValueHandling = NullValueHandling.Ignore)] public SvchostProcessSplitting SvchostProcessSplitting { get; set; } } [Serializable] public sealed class Cleaner { [JsonProperty("TempFiles", NullValueHandling = NullValueHandling.Ignore)] public bool? TempFiles { get; set; } [JsonProperty("BsodDumps", NullValueHandling = NullValueHandling.Ignore)] public bool? BsodDumps { get; set; } [JsonProperty("ErrorReports", NullValueHandling = NullValueHandling.Ignore)] public bool? ErrorReports { get; set; } [JsonProperty("RecycleBin", NullValueHandling = NullValueHandling.Ignore)] public bool? RecycleBin { get; set; } [JsonProperty("GoogleChrome", NullValueHandling = NullValueHandling.Ignore)] public BaseBrowser GoogleChrome { get; set; } [JsonProperty("MozillaFirefox", NullValueHandling = NullValueHandling.Ignore)] public BaseBrowser MozillaFirefox { get; set; } [JsonProperty("MicrosoftEdge", NullValueHandling = NullValueHandling.Ignore)] public BaseBrowser MicrosoftEdge { get; set; } [JsonProperty("BraveBrowser", NullValueHandling = NullValueHandling.Ignore)] public BaseBrowser BraveBrowser { get; set; } [JsonProperty("InternetExplorer", NullValueHandling = NullValueHandling.Ignore)] public bool? InternetExplorer { get; set; } } [Serializable] public sealed class BaseBrowser { [JsonProperty("Cache", NullValueHandling = NullValueHandling.Ignore)] public bool? Cache { get; set; } [JsonProperty("Cookies", NullValueHandling = NullValueHandling.Ignore)] public bool? Cookies { get; set; } [JsonProperty("History", NullValueHandling = NullValueHandling.Ignore)] public bool? History { get; set; } [JsonProperty("Session", NullValueHandling = NullValueHandling.Ignore)] public bool? Session { get; set; } [JsonProperty("Passwords", NullValueHandling = NullValueHandling.Ignore)] public bool? Passwords { get; set; } } [Serializable] public sealed class HostsEditor { [JsonProperty("Block", NullValueHandling = NullValueHandling.Ignore)] public string[] Block { get; set; } [JsonProperty("Remove", NullValueHandling = NullValueHandling.Ignore)] public string[] Remove { get; set; } [JsonProperty("Add", NullValueHandling = NullValueHandling.Ignore)] public AddHostsEntry[] Add { get; set; } [JsonProperty("IncludeWwwCname", NullValueHandling = NullValueHandling.Ignore)] public bool? IncludeWwwCname { get; set; } } [Serializable] public sealed class AddHostsEntry { [JsonProperty("Domain", NullValueHandling = NullValueHandling.Ignore)] public string Domain { get; set; } [JsonProperty("IPAddress", NullValueHandling = NullValueHandling.Ignore)] public string IpAddress { get; set; } } [Serializable] public sealed class Integrator { [JsonProperty("TakeOwnership", NullValueHandling = NullValueHandling.Ignore)] public bool? TakeOwnership { get; set; } [JsonProperty("OpenWithCMD", NullValueHandling = NullValueHandling.Ignore)] public bool? OpenWithCmd { get; set; } } [Serializable] public sealed class Pinger { [JsonProperty("SetDNS", NullValueHandling = NullValueHandling.Ignore)] public string SetDns { get; set; } [JsonProperty("FlushDNSCache", NullValueHandling = NullValueHandling.Ignore)] public bool? FlushDnsCache { get; set; } [JsonProperty("CustomDNSv4", NullValueHandling = NullValueHandling.Ignore)] public string[] CustomDNSv4 { get; set; } [JsonProperty("CustomDNSv6", NullValueHandling = NullValueHandling.Ignore)] public string[] CustomDNSv6 { get; set; } } [Serializable] public sealed class PostAction { [JsonProperty("Restart", NullValueHandling = NullValueHandling.Ignore)] public bool? Restart { get; set; } [JsonProperty("RestartType", NullValueHandling = NullValueHandling.Ignore)] public string RestartType { get; set; } } [Serializable] public sealed class ProcessControl { [JsonProperty("Prevent", NullValueHandling = NullValueHandling.Ignore)] public string[] Prevent { get; set; } [JsonProperty("Allow", NullValueHandling = NullValueHandling.Ignore)] public string[] Allow { get; set; } } [Serializable] public sealed class RegistryFix { [JsonProperty("TaskManager", NullValueHandling = NullValueHandling.Ignore)] public bool? TaskManager { get; set; } [JsonProperty("CommandPrompt", NullValueHandling = NullValueHandling.Ignore)] public bool? CommandPrompt { get; set; } [JsonProperty("ControlPanel", NullValueHandling = NullValueHandling.Ignore)] public bool? ControlPanel { get; set; } [JsonProperty("FolderOptions", NullValueHandling = NullValueHandling.Ignore)] public bool? FolderOptions { get; set; } [JsonProperty("RunDialog", NullValueHandling = NullValueHandling.Ignore)] public bool? RunDialog { get; set; } [JsonProperty("RightClickMenu", NullValueHandling = NullValueHandling.Ignore)] public bool? RightClickMenu { get; set; } [JsonProperty("WindowsFirewall", NullValueHandling = NullValueHandling.Ignore)] public bool? WindowsFirewall { get; set; } [JsonProperty("RegistryEditor", NullValueHandling = NullValueHandling.Ignore)] public bool? RegistryEditor { get; set; } } [Serializable] public sealed class SvchostProcessSplitting { [JsonProperty("Disable", NullValueHandling = NullValueHandling.Ignore)] public bool? Disable { get; set; } [JsonProperty("RAM", NullValueHandling = NullValueHandling.Ignore)] public int? Ram { get; set; } } [Serializable] public sealed class Tweaks { public bool? EnablePerformanceTweaks { get; set; } public bool? DisableNetworkThrottling { get; set; } public bool? DisableWindowsDefender { get; set; } public bool? DisableSystemRestore { get; set; } public bool? DisablePrintService { get; set; } public bool? DisableMediaPlayerSharing { get; set; } public bool? DisableErrorReporting { get; set; } public bool? DisableHomeGroup { get; set; } public bool? DisableSuperfetch { get; set; } public bool? DisableTelemetryTasks { get; set; } public bool? DisableCompatibilityAssistant { get; set; } public bool? DisableFaxService { get; set; } public bool? DisableSmartScreen { get; set; } public bool? DisableCloudClipboard { get; set; } public bool? DisableStickyKeys { get; set; } public bool? DisableHibernation { get; set; } public bool? DisableSMB1 { get; set; } public bool? DisableSMB2 { get; set; } public bool? DisableNTFSTimeStamp { get; set; } public bool? DisableSearch { get; set; } public bool? EnableUtcTime { get; set; } public bool? ShowAllTrayIcons { get; set; } public bool? RemoveMenusDelay { get; set; } public bool? DisableOffice2016Telemetry { get; set; } public bool? DisableVisualStudioTelemetry { get; set; } public bool? DisableFirefoxTemeletry { get; set; } public bool? DisableChromeTelemetry { get; set; } public bool? DisableNVIDIATelemetry { get; set; } public bool? DisableEdgeDiscoverBar { get; set; } public bool? DisableEdgeTelemetry { get; set; } public bool? EnableLegacyVolumeSlider { get; set; } public bool? DisableQuickAccessHistory { get; set; } public bool? DisableStartMenuAds { get; set; } public bool? UninstallOneDrive { get; set; } public bool? DisableMyPeople { get; set; } public bool? DisableAutomaticUpdates { get; set; } public bool? ExcludeDrivers { get; set; } public bool? DisableTelemetryServices { get; set; } public bool? DisablePrivacyOptions { get; set; } public bool? DisableCortana { get; set; } public bool? DisableSensorServices { get; set; } public bool? DisableWindowsInk { get; set; } public bool? DisableSpellingTyping { get; set; } public bool? DisableXboxLive { get; set; } public bool? DisableGameBar { get; set; } public bool? DisableInsiderService { get; set; } public bool? DisableStoreUpdates { get; set; } public bool? EnableLongPaths { get; set; } public bool? RemoveCastToDevice { get; set; } public bool? EnableGamingMode { get; set; } public bool? RestoreClassicPhotoViewer { get; set; } public bool? DisableModernStandby { get; set; } public bool? HideTaskbarWeather { get; set; } public bool? HideTaskbarSearch { get; set; } public bool? DisableNewsInterests { get; set; } public bool? DisableOneDrive { get; set; } public bool? TaskbarToLeft { get; set; } public bool? DisableSnapAssist { get; set; } public bool? DisableWidgets { get; set; } public bool? DisableChat { get; set; } public bool? ClassicMenu { get; set; } public bool? DisableTPMCheck { get; set; } public bool? CompactMode { get; set; } public bool? DisableStickers { get; set; } public bool? DisableVirtualizationBasedTechnology { get; set; } public bool? DisableCoPilotAI { get; set; } } }