import { Plugin, PluginConfig } from "../types/index.js"; import { Container } from "../utils/container.js"; export interface PluginManagerOptions { workdir: string; enabledPlugins?: Record; } export declare class PluginManager { private container; private plugins; private workdir; private enabledPlugins; constructor(container: Container, options: PluginManagerOptions); private get skillManager(); private get hookManager(); private get lspManager(); private get mcpManager(); private get slashCommandManager(); private get configurationService(); private get subagentManager(); /** * Update enabled plugins configuration */ updateEnabledPlugins(enabledPlugins: Record): void; /** * Load plugins installed via marketplace */ private loadInstalledPlugins; /** * Load a single plugin from an absolute path */ private loadSinglePlugin; /** * Load plugins from configuration * @param configs Array of plugin configurations */ loadPlugins(configs: PluginConfig[]): Promise; /** * Get all loaded plugins */ getPlugins(): Plugin[]; /** * Get a plugin by name */ getPlugin(name: string): Plugin | undefined; }