using System;
using Microsoft.Extensions.Configuration;

namespace StellaOps.Configuration;

public sealed class StellaOpsConfigurationContext<TOptions>
    where TOptions : class, new()
{
    public StellaOpsConfigurationContext(IConfigurationRoot configuration, TOptions options)
    {
        Configuration = configuration ?? throw new ArgumentNullException(nameof(configuration));
        Options = options ?? throw new ArgumentNullException(nameof(options));
    }

    public IConfigurationRoot Configuration { get; }

    public TOptions Options { get; }
}
