/**
 * Runner Registry
 *
 * Central registry for agent runners. Provides auto-detection of available
 * runtimes and a simple API for retrieving runner instances.
 *
 * Auto-detect order: claude-code → codex → pi
 */
import type { AgentRunner } from './agent-runner.js';
export type { AgentRunner, AgentSession, SpawnConfig } from './agent-runner.js';
export { ClaudeCodeRunner } from './claude-code-runner.js';
export { createClaudeCodeSession } from './claude-code-runner.js';
/**
 * Get all runners whose CLI binary is available on PATH.
 *
 * Returns runners in detection order (claude-code, codex, pi).
 * Only runners with an installed CLI are included.
 */
export declare function getAvailableRunners(): AgentRunner[];
/**
 * Get a specific runner by name, or the default (first available) runner.
 *
 * @param name - Runner name to look up (e.g. 'claude-code', 'codex').
 *               If omitted, returns the first available runner.
 * @returns The runner instance, or null if not found / not available.
 */
export declare function getRunner(name?: string): AgentRunner | null;
/**
 * Wrap a runner with event emission.
 *
 * Returns an EventEmittingRunner that delegates to the given runner
 * while emitting runtime events on the global EventBus.
 */
export declare function withEvents(runner: AgentRunner): AgentRunner;
