import type { Model } from "../../internal/llm.js"; import type { AgentMessage, ThinkingLevel } from "../../internal/harness.js"; import type { Brain } from "../types.js"; import type { ModelPricing } from "../pricing.js"; /** The LLM handle for the suggestion pass (mirrors `ConsolidationLLM`). */ export interface SuggestionLLM { brain: Brain; model: Model; pricing: ModelPricing; thinking?: ThinkingLevel; getApiKeyAndHeaders?: (model: Model) => Promise<{ apiKey?: string; headers?: Record; } | undefined> | { apiKey?: string; headers?: Record; } | undefined; signal?: AbortSignal; } export interface SuggestionResult { suggestions: string[]; tokens: number; costMicroUsd: number; } /** Parse the model's reply into ≤count clean suggestion strings. Returns [] on anything non-conforming. */ export declare function parseSuggestions(text: string, count: number): string[]; /** * Run ONE suggestion inference pass. May throw on a hard LLM/transport error — the caller * (`Runner.suggestNextPrompts`) is fire-and-forget and swallows, so a failure just yields no suggestions. * Returns `{ suggestions: [], tokens: 0, costMicroUsd: 0 }` when the transcript is empty. */ export declare function generatePromptSuggestions(llm: SuggestionLLM, transcript: AgentMessage[], count: number): Promise; //# sourceMappingURL=prompt-suggestions.d.ts.map