import { r as AgentHooks, t as Agent } from "../agent-BHkvYIH9.js";
import { t as Preset } from "../index-C4aT2kO_.js";

//#region src/output/terminal.d.ts
interface TerminalOutputOptions {
  printHeader?: boolean;
  title?: string;
  shouldPrint?: () => boolean;
  shouldPrintToolCall?: (ctx: Parameters<AgentHooks['tool:before']>[0]) => boolean;
  shouldPrintSummary?: (stats: Parameters<AgentHooks['agent:done']>[0]) => boolean;
}
declare function printTerminalHeader(agent: Agent, model: string, prompt: string, preset: Preset, title?: string): void;
/**
 * Wire the depth-aware terminal renderer onto an agent's hook bus.
 *
 * Returns a disposer that unregisters every hook this function installed —
 * hosts reusing one agent across phases can detach the renderer without
 * tearing the agent down. Callers that ignore the return value keep the old
 * fire-and-forget behavior.
 */
declare function setupTerminalOutput(agent: Agent, model: string, prompt: string, preset: Preset, options?: TerminalOutputOptions): Promise<() => void>;
//#endregion
export { TerminalOutputOptions, printTerminalHeader, setupTerminalOutput };
//# sourceMappingURL=terminal.d.ts.map