namespace Common.Configuration.DownloadClient; /// /// Configuration for a specific download client /// public sealed record ClientConfig { /// /// Unique identifier for this client /// public string Id { get; init; } = Guid.NewGuid().ToString("N"); /// /// Friendly name for this client /// public string Name { get; init; } = string.Empty; /// /// Type of download client /// public Common.Enums.DownloadClient Type { get; init; } = Common.Enums.DownloadClient.None; /// /// Host address for the download client /// public string Host { get; init; } = string.Empty; /// /// Port for the download client /// public int Port { get; init; } /// /// Username for authentication /// public string Username { get; init; } = string.Empty; /// /// Password for authentication /// public string Password { get; init; } = string.Empty; /// /// Default category to use /// public string Category { get; init; } = string.Empty; /// /// Path to download directory /// public string Path { get; init; } = string.Empty; /// /// Whether this client is enabled /// public bool Enabled { get; init; } = true; }