using System.Text.Json;
using System.Text.Json.Serialization;

namespace View_by_Distance.Copy.Distinct.Models;

public record AppSettings(string Company,
                          bool CopyDuplicates,
                          string CopyTo,
                          bool IfCanUseId,
                          int MaxDegreeOfParallelism,
                          string ResultDirectoryKey,
                          string WorkingDirectoryName)
{

    public override string ToString()
    {
        string result = JsonSerializer.Serialize(this, AppSettingsSourceGenerationContext.Default.AppSettings);
        return result;
    }

}

[JsonSourceGenerationOptions(WriteIndented = true)]
[JsonSerializable(typeof(AppSettings))]
internal partial class AppSettingsSourceGenerationContext : JsonSerializerContext
{
}