using Microsoft.Extensions.DependencyInjection; namespace Toolkit.Foundation; public interface IComponentBuilder { string ConfigurationFile { get; set; } string ContentRoot { get; set; } IComponentBuilder AddConfiguration(Action configurationDelegate) where TConfiguration : class, new(); IComponentBuilder AddConfiguration(string section, TConfiguration? configuration = null) where TConfiguration : class, new(); IComponentBuilder AddConfiguration(string section) where TConfiguration : class, new(); IComponentBuilder AddServices(Action configureDelegate); IComponentHost Build(); }