import type { Writer } from '../slash/types.js'; import type { TerminalCompositor } from '../terminal-compositor.js'; import type { OverlayComposer } from './overlay-composer.js'; import type { ToolLane } from '../commands/interactive/tool-lane.js'; import type { ToolLaneFlash } from '../commands/interactive/tool-lane-flash.js'; import type { CommitCoordinator } from './commit-coordinator.js'; import type { StreamingMarkdownRenderer } from '../markdown-stream.js'; export interface DisposeCtx { out: Writer; isTTY: boolean; ownsCompositor: boolean; compositorRef: { current: TerminalCompositor | null; }; overlayComposerRef: { current: OverlayComposer | null; }; toolLane: ToolLane; toolLaneFlash: ToolLaneFlash | null; streamingMarkdownRef: { current: StreamingMarkdownRenderer | null; }; subagentMarkdown: Map; lastProgressByTask: Map; coordinator: CommitCoordinator; resizeUnsubRef: { current: (() => void) | null; }; pauseTickIntervalRef: { current: ReturnType | null; }; softStoppingRef: { current: boolean; }; priorOnCancelRef: { current: (() => void) | undefined; }; borrowedCompositorRef: { current: TerminalCompositor | null; }; } import type { ProgressEvent } from '../../agent/types.js'; export declare function disposeRenderer(ctx: DisposeCtx): Promise;