using JetBrains.Annotations; namespace Elsa.Features.Services; /// /// Represents a feature. /// [UsedImplicitly(ImplicitUseTargetFlags.WithInheritors | ImplicitUseTargetFlags.Members)] public interface IFeature { /// /// Gets the module that this feature belongs to. /// IModule Module { get; } /// /// Configures the feature. /// void Configure(); /// /// Configures the hosted services. /// void ConfigureHostedServices(); /// /// Applies the feature by adding services to the service collection. /// void Apply(); }