using Pgo.Backend.Models;
using System.Text.Json.Serialization;

namespace Pgo.Backend.Data.Models;

/// <summary>
/// Leverancier binnen het stelsel. Een DVA of APD (PGO als aanbieder in het persoonsdomein).
/// Frontend gebruikt dit model ook als viewmodel, we geven dan alleen Name en DisplayName door.
/// </summary>
public class StelselNodeProvider
{
    public string? Name { get; set; }
    public string? DisplayName { get; set; }

    [JsonConverter(typeof(JsonStringEnumConverter))]
    public StelselNodeProviderType ProviderType { get; set; }

    [JsonIgnore]
    public string? AuthorizationEndpoint { get; set; }

    [JsonIgnore]
    public string? TokenEndpoint { get; set; }

    [JsonIgnore]
    public string? FhirResourceEndpoint { get; set; }

    [JsonIgnore]
    public string? SubscriptionEndpoint { get; set; }
}
