import type { PluginExecFileFn, InstallOutcome, PluginRecommendation } from '../../types/plugin-install.js';
/**
 * Install a list of plugins, skipping already-installed ones.
 * Every CLI call is isolated in its own try/catch.
 *
 * @param plugins - Plugins to install
 * @param dryRun - When true, skip all CLI calls and return empty outcome
 * @param exec - Optional execFile override for testing
 */
export declare function installPlugins(plugins: PluginRecommendation[], dryRun?: boolean, exec?: PluginExecFileFn): Promise<InstallOutcome>;
//# sourceMappingURL=installer.d.ts.map