/** * ChatStatic — Phase 4 of the Ink migration. * * Wraps Ink's component so chat history is committed to * scrollback exactly once and never repainted. This is the architectural * fix for the resize / rapid-paste / overlay-leak bugs that motivated * the Ink switch: messages above the live UI become real terminal lines * that no longer participate in any frame diff. writes a row, * then forgets it. * * Each item is rendered through `renderItem` so the host can format * different event kinds (user message, assistant message, tool result) * with different styling — the array drives the order, the renderer * decides the appearance. */ import React from 'react'; export interface ChatItem { /** Stable identity for React's key prop — usually a monotonic id. */ id: string; /** Tag the host can use to dispatch on style. */ kind: 'user' | 'assistant' | 'system' | 'tool' | 'error' | 'banner'; /** Pre-formatted content (already wrapped / styled by the caller). */ text: string; } export interface ChatStaticProps { items: ChatItem[]; } export declare const ChatStatic: React.FC; //# sourceMappingURL=ChatStatic.d.ts.map