import type { LlmResponse } from '../../../core/llm/types.js';
import type { RunResult, StopReason } from '../../../core/types.js';
import type { AgentRunContext } from '../types.js';
import type { FinishAgentRunLogging } from './types.js';
/**
 * Owns terminal run outcomes and final RunResult shaping.
 */
export declare class AgentRunFinisher {
    static maybeInterrupted(context: AgentRunContext, logMessage: string): RunResult | undefined;
    static finishInterrupted(context: AgentRunContext, logMessage: string): RunResult;
    static finishAssistantResponse(context: AgentRunContext, response: LlmResponse): RunResult | 'continue';
    static maxSteps(context: AgentRunContext): RunResult;
    static finish(context: AgentRunContext, outcome: StopReason, summary: string, logging?: FinishAgentRunLogging): RunResult;
    static isRunResult(value: LlmResponse | RunResult): value is RunResult;
}
//# sourceMappingURL=run-finisher.d.ts.map