using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.DependencyInjection.Extensions; using System; namespace StellaOps.Cryptography.Kms; public static partial class ServiceCollectionExtensions { public static IServiceCollection AddFido2Kms( this IServiceCollection services, Action configure) { ArgumentNullException.ThrowIfNull(services); ArgumentNullException.ThrowIfNull(configure); RemoveKmsServices(services); services.Configure(configure); RegisterKmsProvider(services); services.TryAddSingleton(); services.TryAddSingleton(); return services; } }