/**
 * Shared types + helpers for `olam mcp install` and `olam mcp uninstall`.
 *
 * Both subcommands shell out to `claude mcp add`/`claude mcp remove`, take
 * a `--scope` flag with the same enum, and need a `which`-style PATH probe.
 * Living in a sibling file keeps the seam injectable without spreading
 * duplicate helpers across two files.
 */
import { type SpawnSyncReturns } from 'node:child_process';
export type McpScope = 'user' | 'project' | 'local';
export interface ClaudeShellDeps {
    spawn: (cmd: string, args: string[], opts: {
        encoding: 'utf8';
        stdio: ['ignore', 'pipe', 'pipe' | 'ignore'];
    }) => SpawnSyncReturns<string>;
    log: (msg: string) => void;
}
export declare const DEFAULT_CLAUDE_SHELL_DEPS: ClaudeShellDeps;
export declare function isOnPath(deps: ClaudeShellDeps, bin: string): boolean;
export declare function normaliseScope(raw: string | undefined): McpScope | null;
export declare const REMEDY_CLAUDE_MISSING: string;
export declare const NOT_INSTALLED_PATTERN: RegExp;
export declare function looksLikeNotInstalled(text: string): boolean;
//# sourceMappingURL=install-shared.d.ts.map