/**
 * Fire-and-forget tool-call summarization via a cheap LLM (Haiku).
 *
 * Summaries are ephemeral UX — displayed to the user but never injected
 * into the LLM conversation context.
 */
import { type ShortcutLlmProxyClient } from '../providers/shortcut-llm-proxy-client.js';
export declare const TOOL_SUMMARY_MODEL = "claude-haiku-4-5-20251001";
interface ToolSummaryInput {
    toolName: string;
    args: unknown;
    result: unknown;
}
export interface ToolSummaryGenerationResult {
    summary?: string;
    failureReason?: 'aborted' | 'http-error' | 'invalid-json' | 'missing-auth' | 'missing-base-url' | 'missing-text' | 'network-error';
    httpStatus?: number;
}
/**
 * Call the Shortcut LLM proxy (Haiku) to generate a one-line summary of a tool call.
 *
 * Returns the summary string, or undefined if the call fails or is aborted.
 * Never throws — errors are silently swallowed since summaries are best-effort UX.
 */
export declare function generateToolSummaryDetailed(input: ToolSummaryInput, shortcutLlmProxy: ShortcutLlmProxyClient, options?: {
    signal?: AbortSignal;
    maxOutputTokens?: number;
}): Promise<ToolSummaryGenerationResult>;
export declare function generateToolSummary(input: ToolSummaryInput, shortcutLlmProxy: ShortcutLlmProxyClient, options?: {
    signal?: AbortSignal;
    maxOutputTokens?: number;
}): Promise<string | undefined>;
export {};
//# sourceMappingURL=tool-summaries.d.ts.map