using Microsoft.AspNetCore.SignalR.Client; using Microsoft.Extensions.Logging; namespace DigitalData.Auth.Client; public class ClientParams { public string Url { get; set; } = string.Empty; /// /// Controls when the client attempts to reconnect and how many times it does so. /// public IRetryPolicy? RetryPolicy { get; private set; } private TimeSpan? _retryDelay; /// /// To be able to serilize the simple /// public TimeSpan? RetryDelay { get => _retryDelay; set { RetryPolicy = new RetryPolicy(ctx => RetryDelay); _retryDelay = value; } } public event ClientEvent OnPublicKeyReceived = ClientEvents.UpdatePublicKeys; internal void TriggerOnPublicReceivedEvent(AuthClient client, string issuer, string audience, string key, ILogger? logger = null) => OnPublicKeyReceived(client, issuer, audience, key, logger); public List PublicKeys { get; set; } = new(); }