import type { CliId } from '../adapters/cli/types.js';
export interface HerdrIntegrationResult {
    /** Integrations we attempted (after dedup + filtering by available CLIs). */
    attempted: string[];
    /** Newly installed during this run. */
    installed: string[];
    /** Already-present integrations we skipped. */
    alreadyInstalled: string[];
    /** Integrations whose `herdr integration install` returned non-zero. */
    failed: {
        name: string;
        reason: string;
    }[];
    /** CliIds in bots.json that have no upstream herdr integration mapping. */
    unsupportedCliIds: CliId[];
}
/**
 * Install herdr integrations for the given CLI ids. Caller is responsible
 * for ensuring `herdr` itself is on PATH first (use ensureHerdr).
 *
 * @param cliIds De-duped CliIds collected from bots.json. Order doesn't
 *               matter; we map → herdr integration → de-dup again before
 *               touching the filesystem.
 */
export declare function ensureHerdrIntegrations(cliIds: Iterable<CliId>): Promise<HerdrIntegrationResult>;
//# sourceMappingURL=ensure-herdr-integrations.d.ts.map