using Elsa.Features.Models;
namespace Elsa.Features.Contracts;
///
/// Provides read-only access to installed features.
///
///
/// This interface is used to query the list of features that are installed and available in the application.
/// Unlike , this interface does not provide write operations,
/// making it suitable for implementations where features are discovered automatically (e.g., from shell features)
/// rather than manually registered.
///
public interface IInstalledFeatureProvider
{
///
/// Gets all installed features.
///
/// All installed features.
IEnumerable List();
///
/// Finds a feature descriptor by its full name.
///
/// The full name of the feature.
/// The feature descriptor or null if not found.
FeatureDescriptor? Find(string fullName);
}