import type { ChatImage, ChatMessage, Mode } from "../../../types.js"; import type { SessionPlan } from "../../../store/plan.js"; import type { AgentPromptSection } from "../../prompt-composer.js"; export interface TurnMessagesInput { readonly prompt: string; readonly displayPrompt: string | null | undefined; readonly images: ChatImage[] | undefined; readonly history: ChatMessage[] | undefined; readonly mode: Mode; readonly systemSections: readonly string[]; readonly selectedSkillNames: readonly string[]; readonly nativeToolsActive: boolean; readonly inputTokenBudget: number | undefined; readonly stableSystemContent: (native: boolean) => string; readonly instructionsBlock: string | undefined; readonly skillsBlock: string | undefined; readonly plan: SessionPlan | undefined; readonly planApproved: boolean; } export interface TurnMessages { readonly messages: ChatMessage[]; readonly requestContextMessage: string; readonly promptSections: () => AgentPromptSection[]; } export declare const dropSectionsAlreadyInHistory: (sections: readonly AgentPromptSection[], history: readonly ChatMessage[] | undefined, prompt: string) => AgentPromptSection[]; export declare const composeTurnMessages: (input: TurnMessagesInput) => TurnMessages;