using System.Collections.ObjectModel;

namespace Adaptation.Shared;

public class ProcessDataStandardFormatMapping
{

    public ReadOnlyCollection<string> BackfillColumns { get; private set; }
    public ReadOnlyCollection<int> ColumnIndices { get; private set; }
    public ReadOnlyCollection<string> IgnoreColumns { get; private set; }
    public ReadOnlyCollection<string> IndexOnlyColumns { get; private set; }
    public ReadOnlyDictionary<string, string> KeyValuePairs { get; private set; }
    public ReadOnlyCollection<string> NewColumnNames { get; private set; }
    public ReadOnlyCollection<string> OldColumnNames { get; private set; }

    public ProcessDataStandardFormatMapping(ReadOnlyCollection<string> backfillColumns,
                                            ReadOnlyCollection<int> columnIndices,
                                            ReadOnlyCollection<string> ignoreColumns,
                                            ReadOnlyCollection<string> indexOnlyColumns,
                                            ReadOnlyDictionary<string, string> keyValuePairs,
                                            ReadOnlyCollection<string> newColumnNames,
                                            ReadOnlyCollection<string> oldColumnNames)
    {
        BackfillColumns = backfillColumns;
        ColumnIndices = columnIndices;
        IgnoreColumns = ignoreColumns;
        IndexOnlyColumns = indexOnlyColumns;
        KeyValuePairs = keyValuePairs;
        NewColumnNames = newColumnNames;
        OldColumnNames = oldColumnNames;
    }

}