using adas_core.Domain.Models;
using adas_core.Domain.Models.MongoModels;
using adas_core.Domain.Models.Providers;
using Microsoft.Extensions.Options;

namespace adas_core.Application.Providers;

public abstract class BaseProvider(
    IOptions<ProvidersSettings> providerSettings,
    IHttpClientFactory httpClientFactory)
{
    protected IHttpClientFactory HttpClientFactory = httpClientFactory;
    protected string Url { get; set; } = providerSettings.Value.Url;

    public abstract Task<List<PatientObservation>> GetObservations(Patient patient);
}