namespace CvCleanupJob.Models;

/// <summary>
/// Parameters for the CvStorageCleanup scheduled task (bound from Jobs:Tasks:n:Parameters).
/// </summary>
public sealed class CvStorageCleanupParameters
{
    /// <summary>Maximum total size of retained CV files (defaults to 40 MiB).</summary>
    public double MaxTotalSizeMegabytes { get; set; } = 40;

    /// <summary>File glob within the storage directory (default matches cached CV PDFs).</summary>
    public string SearchPattern { get; set; } = "*.pdf";

    /// <summary>
    /// When true, only files whose base name is alphanumeric (same convention as API CV cache) are considered.
    /// Set false if you store other PDFs under the same folder and want the glob to apply to all of them.
    /// </summary>
    public bool RestrictToCvStyleFileNamesOnly { get; set; } = true;
}
