using JetBrains.Annotations; namespace TrashLib.Config.Services; public abstract class ServiceConfiguration : IServiceConfiguration { public string BaseUrl { get; init; } = ""; public string ApiKey { get; init; } = ""; public ICollection CustomFormats { get; init; } = new List(); public bool DeleteOldCustomFormats { get; init; } } [UsedImplicitly(ImplicitUseTargetFlags.WithMembers)] public class CustomFormatConfig { public ICollection TrashIds { get; init; } = new List(); public ICollection QualityProfiles { get; init; } = new List(); } [UsedImplicitly(ImplicitUseTargetFlags.WithMembers)] public class QualityProfileConfig { public string Name { get; init; } = ""; public int? Score { get; init; } public bool ResetUnmatchedScores { get; init; } }