import type { ChatMessage } from "../types.js";
export declare function isEmptyToolResult(r: {
    toolName: string;
    message: unknown;
}): boolean;
export declare function findLastToolError(messages: unknown[], _toolName: string): string | undefined;
export declare function looksLikeBuildRequest(messages?: readonly ChatMessage[]): boolean;
export declare function resolveToolLoopBudget(requested?: number, messages?: readonly ChatMessage[]): number;
export declare function countExplicitOutputArtifacts(messages?: readonly ChatMessage[]): number;
export declare function resolveTotalToolCallBudget(requested?: number, messages?: readonly ChatMessage[]): number;
export declare function filterWhitespaceOnlyAssistant<T extends {
    role: string;
    content?: unknown;
}>(messages: T[]): T[];
export declare function synthesizeFallbackContent(messages: ChatMessage[], log: {
    info: (m: string) => void;
}): string;
export declare function summarizeToolInput(rawArgs: string): string | undefined;
