import type { LanguageModel } from "ai";
import { LLMObsTracer } from "../../llmobs/tracer.js";
import type { StoredMessage } from "./types.js";
export interface SummarizeResult {
    summary: string;
    messages: StoredMessage[];
}
export interface SummarizeOptions {
    messages: StoredMessage[];
    model: LanguageModel;
    targetTokens: number;
    abortSignal?: AbortSignal;
    tracer?: LLMObsTracer;
}
/**
 * Summarizes a session, automatically handling oversized inputs by recursively
 * splitting messages in half until they fit within the model's context window.
 */
export declare function summarizeSession(options: SummarizeOptions): Promise<SummarizeResult>;
//# sourceMappingURL=phase2-session-summarizer.d.ts.map