import type { ChatSessionHostState } from "./chat-session-host-state.ts"; import type { ChatSessionSubmitMode } from "./chat-session-host-types.ts"; import type { ChatTranscriptEntryLike } from "./chat-transcript.js"; export declare function isChatSessionStreaming(state: ChatSessionHostState): boolean; export declare function isChatSessionBashRunning(state: ChatSessionHostState): boolean; export declare function incrementOptimisticUserSignature(state: ChatSessionHostState, signature: string): void; export declare function decrementOptimisticUserSignature(state: ChatSessionHostState, signature: string): void; export declare function startChatSessionWorkingLifecycle(state: ChatSessionHostState): void; export declare function stopChatSessionWorkingLifecycle(state: ChatSessionHostState, immediateEventRender?: boolean): void; /** * Begin a Working lifecycle for a prompt this host did not submit itself — * currently a workflow-authored `sendUserMessage()` accepted on an idle * retained stage. Mirrors the manual submit path so an accepted delivery paints * immediately and then hands the same visible period to the agent turn. * * Returns the lifecycle generation that identifies this delivery. Pass it back * to `settleChatSessionPromptLifecycle` so a stale settlement cannot clear a * newer turn. */ export declare function startChatSessionExternalPromptLifecycle(state: ChatSessionHostState): number | undefined; /** * Reopen the Working lifecycle for a delivery that is still active after a * temporary overlay ended — a pre-turn compaction clears busy state and the * lifecycle even though the accepted delivery has not started its turn yet. * * Unlike the initial start, this preserves `statusMessage` verbatim, so a * compaction error stays visible and keeps outranking ordinary Working. */ export declare function reassertChatSessionExternalPromptLifecycle(state: ChatSessionHostState): number | undefined; /** * Settle a prompt lifecycle started by this host. A replaced generation means a * newer turn owns the indicator, so only its own owner may clear busy state. */ export declare function settleChatSessionPromptLifecycle(state: ChatSessionHostState, submittedGeneration: number | undefined): void; export declare function syncChatSessionAnimationTick(state: ChatSessionHostState): void; export declare function clearChatSessionBusyForTerminalWorkflowStage(state: ChatSessionHostState): void; export declare function disposeChatSession(state: ChatSessionHostState): void; export declare function notifyChatSessionWarning(state: ChatSessionHostState, message: string): void; export declare function notifyChatSessionStatus(state: ChatSessionHostState, message: string): void; /** * Prompt requires the submitting key's mode; resume accepts it optionally for * hosts that preserve submission intent across a pause. */ export declare function requiredChatSessionPromptCommand(state: ChatSessionHostState): (text: string, mode: ChatSessionSubmitMode) => Promise; export declare function requiredChatSessionCommand(state: ChatSessionHostState, name: "steer" | "followUp" | "resume"): (text?: string, mode?: ChatSessionSubmitMode) => Promise; export declare function afterChatSessionEvent(state: ChatSessionHostState, changed: boolean): void; //# sourceMappingURL=chat-session-host-runtime.d.ts.map