import type { RiskLabel } from "../../../core/index.js"; import type { ComponentProps } from "react"; import { ThreadApprovals } from "./parts.js"; import type { useMessageWindow, useStickToBottom } from "./scrolling.js"; /** The transcript pane: the windowed message list, parked approval and connect cards, and the streaming indicators. The jump-to-latest affordance lives with the composer, docked onto the bar. Pure presentation over the thread-level state. */ export declare function MessageList({ scroll, messageWindow, busy, risks, isRestored, activeAssistantId, lastUserId, lastAssistantId, onEditLast, onRegenerateLast, approvals, guardApprovals, cardRefs, respond, onMorph, sendMessage, working, quietLabel, }: { scroll: ReturnType; messageWindow: ReturnType; busy: boolean; risks: Map; isRestored: (id: string) => boolean; activeAssistantId?: string | undefined; lastUserId?: string | undefined; lastAssistantId?: string | undefined; onEditLast: () => void; onRegenerateLast: () => void; approvals: ComponentProps["approvals"]; guardApprovals: ComponentProps["guardApprovals"]; cardRefs: ComponentProps["cardRefs"]; respond: ComponentProps["respond"]; onMorph: ComponentProps["onMorph"]; /** The thread's send — connect cards use it for the post-connect continuation. */ sendMessage: (message: { text: string; }) => unknown; working: boolean; /** Set = the between-steps gap is live; renders a WorkingBeat at the tail. */ quietLabel?: string | undefined; }): import("react").JSX.Element;