import type { FeatureModuleSpec } from './types';
/** In-memory registry for FeatureModuleSpec. */
export declare class FeatureRegistry {
    private items;
    /** Register a feature module. Throws when the key already exists. */
    register(f: FeatureModuleSpec): this;
    /** List all registered feature modules. */
    list(): FeatureModuleSpec[];
    /** Get a feature by its key (slug). */
    get(key: string): FeatureModuleSpec | undefined;
    /** Filter features by criteria. */
    filter(criteria: import('../registry-utils').RegistryFilter): FeatureModuleSpec[];
    /** List features with specific tag. */
    listByTag(tag: string): FeatureModuleSpec[];
    /** List features by owner. */
    listByOwner(owner: string): FeatureModuleSpec[];
    /** Group features by key function. */
    groupBy(keyFn: import('../registry-utils').GroupKeyFn<FeatureModuleSpec>): Map<string, FeatureModuleSpec[]>;
    /** Get unique tags from all features. */
    getUniqueTags(): string[];
}
