namespace SfeduSchedule.Plugin.Abstractions; // Базовый контракт плагина (общий для хоста и плагинов) public interface IPlugin { string Name { get; } // Регистрация сервисов плагина в DI (выполняется до Build()) void ConfigureServices(IServiceCollection services); // Регистрация маршрутов (Minimal API) плагина после Build() void MapEndpoints(IEndpointRouteBuilder endpoints); }