import { Dependencies, ValidationError } from '../agent-project/types.js';
import { PluginDefinition, PluginRef, ParsedPlugin } from './types.js';
import { type CatalogClientOptions } from '../dependencies/catalog/client-factory.js';
import { type PluginSearchResult } from '../dependencies/catalog/plugin-source.js';
export type { PluginSearchResult };
export interface PluginManagerOptions extends CatalogClientOptions {
    noCache?: boolean;
}
/**
 * Loads, validates and searches plugins.
 *
 * Since WS4 this is a thin shim over the unified {@link CatalogService} /
 * {@link PluginCatalogSource} (public Botpress Hub only). It keeps the
 * parse-and-validate orchestration (`loadPlugins`) and the stable public surface.
 */
export declare class PluginManager {
    private readonly source;
    private readonly service;
    constructor(options?: PluginManagerOptions);
    /**
     * Load and validate all plugins from dependencies
     */
    loadPlugins(dependencies: Dependencies): Promise<{
        plugins: ParsedPlugin[];
        errors: ValidationError[];
        warnings: ValidationError[];
    }>;
    /** Fetch a plugin definition from API or cache (public Hub only). */
    fetchPlugin(ref: PluginRef): Promise<PluginDefinition>;
    /** Search public plugins in the Botpress hub. */
    searchPlugins(query: string, limit?: number): Promise<PluginSearchResult[]>;
    /** List known public versions for a plugin name. */
    listPluginVersions(name: string): Promise<string[]>;
    getCacheStats(): Promise<{
        count: number;
        sizeBytes: number;
    }>;
    clearCache(): Promise<void>;
}
//# sourceMappingURL=manager.d.ts.map