import type { ModelRuntime } from "@earendil-works/pi-coding-agent"; import type { SessionTitleConfig } from "./config.js"; type SessionEntryLike = { type?: string; message?: { role?: string; content?: unknown; }; }; type TitleModelRuntime = Pick; export declare const TITLE_SYSTEM_PROMPT: string; export declare function parseTitleModelRef(modelRef: string): { provider: string; modelId: string; } | undefined; export declare function firstUserMessageText(entries: readonly SessionEntryLike[]): string | undefined; export declare function fallbackSessionTitleFromInput(input: string, maxTitleChars: number): string | undefined; export declare function buildTitlePrompt(input: string, maxTitleChars: number): string; export declare function titleResponseText(response: { content: Array<{ type: string; text?: string; }>; }): string; export declare function sanitizeSessionTitle(raw: string, maxTitleChars: number): string | undefined; export declare function sessionTitleModelRefs(config: SessionTitleConfig): string[]; /** Host-side title generation through the canonical SDK ModelRuntime. */ export declare function generateSessionTitleWithRuntime(input: string, modelRuntime: TitleModelRuntime, config: SessionTitleConfig, modelRef: string, signal: AbortSignal, onWarning?: (message: string) => void): Promise; export {};