📄 src/Infrastructure/TikTok/ServiceCollectionExtensions.cs
using Microsoft.Extensions.DependencyInjection;
using Slopper.Domain;

namespace Slopper.Infrastructure.TikTok;

public static class ServiceCollectionExtensions
{
    extension(IServiceCollection services)
    {
        public IServiceCollection AddTikTokUploader()
        {
            services.AddOptions<TikTokUploaderOptions>().BindConfiguration("TikTok").ValidateOnStart();

            services.AddHttpClient("TikTok");

            services.AddKeyedTransient<IUploader, TikTokUploader>("TikTok");

            return services;
        }
    }
}