@24klynx/tui 0.1.2 → 0.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 24K
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/dist/index.d.mts CHANGED
@@ -20,6 +20,7 @@ interface PermissionRequestData {
20
20
  }
21
21
  /** Callback when the user makes a decision. */
22
22
  type PermissionChoice = "allow" | "deny" | "always_allow";
23
+ /** User's permission decision callback — receives request ID and chosen action. */
23
24
  type PermissionCallback = (requestId: string, choice: PermissionChoice) => void;
24
25
  /** Props for the PermissionRequest modal. */
25
26
  interface PermissionRequestProps {
@@ -55,6 +56,7 @@ interface TuiModelInfo {
55
56
  /** Approximate USD per 1M output tokens. */
56
57
  outputPrice?: number;
57
58
  }
59
+ /** Callback bridge — wired by the CLI bootstrap layer to connect TUI state with backend services. */
58
60
  interface TuiCallbacks {
59
61
  /** User submitted a message. Returns the assistant response stream. */
60
62
  onInput(message: string): AsyncGenerator<TuiStreamEvent, void, void>;
@@ -156,11 +158,14 @@ type TuiStreamEvent = {
156
158
  totalTokens?: number;
157
159
  costUsd?: number;
158
160
  };
159
- type ViewId = "chat" | "sessions" | "help" | "permission" | "settings" | "commands" | "model" | "theme" | "confirm" | "input_prompt" | "doctor" | "file_picker" | "stash" | "mcp" | "plugin" | "skills" | "context" | "usage" | "diff" | "snapshots" | "tasks" | "skill_pick";
161
+ /** Known view identifiers each corresponds to a distinct UI panel or dialog. */
162
+ type ViewId = "chat" | "sessions" | "help" | "permission" | "settings" | "commands" | "model" | "theme" | "confirm" | "input_prompt" | "doctor" | "file_picker" | "stash" | "mcp" | "plugin" | "skills" | "context" | "usage" | "diff" | "snapshots" | "tasks" | "skill_pick" | "global_search";
163
+ /** A view on the navigation stack — its type identifier and optional parameters. */
160
164
  interface ViewEntry {
161
165
  id: ViewId;
162
166
  props?: Record<string, unknown>;
163
167
  }
168
+ /** Navigation stack interface — push, pop, replace, and inspect views. */
164
169
  interface ViewStack {
165
170
  push(view: ViewEntry): void;
166
171
  pop(): ViewEntry | undefined;
@@ -168,7 +173,9 @@ interface ViewStack {
168
173
  top(): ViewEntry | undefined;
169
174
  toArray(): ViewEntry[];
170
175
  }
176
+ /** Supported theme preset names — each maps to a 60+ entry color token table. */
171
177
  type ThemeName = "dark" | "light" | "catppuccin" | "monokai" | "solarized" | "dracula";
178
+ /** Theme definition — a preset name plus a map of semantic color tokens for consistent styling. */
172
179
  interface TuiTheme {
173
180
  name: ThemeName;
174
181
  /** Semantic color tokens — 60+ available, grouped by purpose. */
@@ -253,6 +260,7 @@ interface UsageInfo {
253
260
  /** Per-model pricing info in the format "model: $N/M input · $N/M output". */
254
261
  modelPricing: string;
255
262
  }
263
+ /** Top-level App component props — receives the full bootstrap context from the CLI layer. */
256
264
  interface AppProps {
257
265
  /** Callbacks wired by the CLI bootstrap layer. */
258
266
  callbacks: TuiCallbacks;
@@ -264,6 +272,8 @@ interface AppProps {
264
272
  models?: TuiModelInfo[];
265
273
  /** Currently active model ID. */
266
274
  currentModel?: string;
275
+ /** Lynx version string (e.g. "0.1.4"). */
276
+ version: string;
267
277
  /** Whether to show the safety confirmation screen before the REPL. Default: true. */
268
278
  showWelcome?: boolean;
269
279
  /** Terminal dimensions at startup. */
@@ -297,10 +307,12 @@ interface AppProps {
297
307
  declare function App(props: AppProps): React.ReactElement;
298
308
  //#endregion
299
309
  //#region src/components/ChatView.d.ts
310
+ /** Props for ChatView — list of messages to display plus streaming state. */
300
311
  interface ChatViewProps {
301
312
  messages: Message[];
302
313
  streaming: boolean;
303
314
  }
315
+ /** Scrollable message transcript — renders the last 50 messages as labeled entries. */
304
316
  declare function ChatView({
305
317
  messages,
306
318
  streaming
@@ -371,9 +383,45 @@ interface ChatLogProps {
371
383
  /** ChatLog component — renders the message transcript driven by a handle. */
372
384
  declare const ChatLog: React.ForwardRefExoticComponent<ChatLogProps & React.RefAttributes<ChatLogHandle>>;
373
385
  //#endregion
386
+ //#region src/components/MessageRow.d.ts
387
+ /** Props for the MessageRow component. */
388
+ interface MessageRowProps {
389
+ /** The chat entry to render. */
390
+ entry: ChatLogEntry;
391
+ /** Whether this entry's collapsible content is expanded. */
392
+ isExpanded: boolean;
393
+ /** Transcript display mode: compact hides timestamps. */
394
+ transcriptMode?: "compact" | "full";
395
+ /** Search query string for highlighting (empty → no highlights). */
396
+ searchQuery?: string;
397
+ /** Byte offsets into entry.text where search matches start. */
398
+ matchIndices?: number[];
399
+ }
400
+ /**
401
+ * Single message row in the chat transcript.
402
+ *
403
+ * Dispatches to specialized renderers based on `entry.kind`:
404
+ * assistant → full markdown (streaming or finalized)
405
+ * user → right‑aligned bubble
406
+ * system → dimmed prefix line
407
+ * tool_use → status icon + tool name
408
+ * tool_result → collapsible inline result
409
+ * thinking → collapsed/expanded reasoning block
410
+ * btw → accent‑colored hint
411
+ */
412
+ /** Single message row in the chat transcript — dispatches to specialized renderers by entry kind. */
413
+ declare function MessageRow({
414
+ entry,
415
+ isExpanded,
416
+ transcriptMode,
417
+ searchQuery,
418
+ matchIndices
419
+ }: MessageRowProps): React.ReactElement;
420
+ //#endregion
374
421
  //#region src/components/InputBox.d.ts
375
422
  /** Vim editing mode. */
376
423
  type VimMode = "insert" | "normal" | "visual";
424
+ /** Props for InputBox — multi-line REPL input with history, autocomplete, and Vim support. */
377
425
  interface InputBoxProps {
378
426
  /** Called when the user submits text. */
379
427
  onSubmit: (text: string) => void;
@@ -387,15 +435,18 @@ interface InputBoxProps {
387
435
  onStash?: (text: string) => void;
388
436
  /** Text to append at cursor position (from FilePicker, @-mention, etc.). */
389
437
  appendText?: string;
390
- /** Called after appendText has been consumed. */
438
+ /** Called when appendText has been consumed. */
391
439
  onAppendTextConsumed?: () => void;
392
440
  /** Workspace directory for @‑mention file autocomplete. */
393
441
  workspace?: string;
394
- /** Enable vim‑style editing modes (INSERT/NORMAL/VISUAL). */
395
- vimMode?: boolean;
396
- /** Called when vim mode changes (for status display). */
442
+ /** Enable Vim editing mode. */
443
+ vimEnabled?: boolean;
444
+ /** Current Vim mode (for external control). */
445
+ vimMode?: VimMode;
446
+ /** Called when Vim mode changes. */
397
447
  onVimModeChange?: (mode: VimMode) => void;
398
448
  }
449
+ /** Multi-line REPL input — handles submit routing, history, completions, and Vim editing mode. */
399
450
  declare function InputBox({
400
451
  onSubmit,
401
452
  onAbort,
@@ -405,15 +456,21 @@ declare function InputBox({
405
456
  appendText,
406
457
  onAppendTextConsumed,
407
458
  workspace,
408
- vimMode: vimEnabled,
459
+ vimEnabled,
460
+ vimMode: initialVimMode,
409
461
  onVimModeChange
410
462
  }: InputBoxProps): React.ReactElement;
411
463
  //#endregion
412
464
  //#region src/components/StatusBar.d.ts
465
+ /** Props for StatusBar — mode, model, metrics, and IDE connection status. */
413
466
  interface StatusBarProps {
467
+ /** Current mode: "insert", "normal", "visual", or "abort N/3". */
414
468
  mode: string;
469
+ /** Active model identifier. */
415
470
  model: string;
471
+ /** Whether the LLM is currently streaming a response. */
416
472
  streaming: boolean;
473
+ /** Active view name (chat, sessions, settings, etc.). */
417
474
  viewName: string;
418
475
  /** Total tokens consumed in the current session. */
419
476
  tokensUsed?: number;
@@ -421,7 +478,10 @@ interface StatusBarProps {
421
478
  costUsd?: number;
422
479
  /** Budget maximum USD for color coding. */
423
480
  budgetMaxUsd?: number;
481
+ /** Whether IDE integration is connected. */
482
+ ideConnected?: boolean;
424
483
  }
484
+ /** Bottom status line — three-section layout: left (mode+view), center (model+memory), right (tokens+cost+IDE). */
425
485
  declare function StatusBar({
426
486
  mode,
427
487
  model,
@@ -429,7 +489,8 @@ declare function StatusBar({
429
489
  viewName,
430
490
  tokensUsed,
431
491
  costUsd,
432
- budgetMaxUsd
492
+ budgetMaxUsd,
493
+ ideConnected
433
494
  }: StatusBarProps): React.ReactElement;
434
495
  //#endregion
435
496
  //#region src/components/Dialog.d.ts
@@ -570,12 +631,197 @@ declare function Mascot({
570
631
  animate
571
632
  }: MascotProps): React.ReactElement;
572
633
  //#endregion
634
+ //#region src/components/ink/ScrollBox.d.ts
635
+ /** Imperative API for controlling scroll position. */
636
+ interface ScrollBoxHandle {
637
+ /** Scroll to an absolute vertical offset. */
638
+ scrollTo(y: number): void;
639
+ /** Scroll by a relative delta (negative = up, positive = down). */
640
+ scrollBy(dy: number): void;
641
+ /** Scroll to the bottom and re‑enable sticky mode. */
642
+ scrollToBottom(): void;
643
+ /** Get current scroll offset. */
644
+ getScrollTop(): number;
645
+ /** Get total content height (number of logical rows). */
646
+ getScrollHeight(): number;
647
+ /** Whether the viewport is pinned to the bottom. */
648
+ isSticky(): boolean;
649
+ /** Subscribe to imperative scroll changes. Returns unsubscribe fn. */
650
+ subscribe(listener: () => void): () => void;
651
+ }
652
+ /** Props for the ScrollBox component. */
653
+ interface ScrollBoxProps {
654
+ /** Children to render inside the scrollable area. */
655
+ children: ReactNode;
656
+ /** Height of the visible viewport in logical rows. */
657
+ height: number;
658
+ /**
659
+ * Total number of logical rows in the content.
660
+ * If a single number, all rows are assumed equal height.
661
+ */
662
+ totalRows: number;
663
+ /** When true, auto‑pins to bottom on content growth. */
664
+ stickyScroll?: boolean;
665
+ /** Called when scroll position changes. */
666
+ onScroll?: (scrollTop: number) => void;
667
+ }
668
+ /**
669
+ * Scrollable container with imperative scroll control.
670
+ *
671
+ * Only renders children that intersect [scrollTop, scrollTop + height].
672
+ * Supports keyboard navigation: PageUp/Down, Home/End, arrow keys.
673
+ *
674
+ * Limitations in standard Ink:
675
+ * - No smooth pixel‑level scrolling (Yoga‑based layout)
676
+ * - Children above/below the viewport are not rendered at all
677
+ * - Height must be known ahead of time (no auto‑measurement)
678
+ */
679
+ /** Virtual scrolling container — renders a viewport slice of children with a scroll offset. */
680
+ declare const ScrollBox: React.ForwardRefExoticComponent<ScrollBoxProps & React.RefAttributes<ScrollBoxHandle>>;
681
+ //#endregion
682
+ //#region src/components/ink/Button.d.ts
683
+ /** Interactive state exposed to the render prop. */
684
+ interface ButtonState {
685
+ /** The button currently has keyboard focus. */
686
+ focused: boolean;
687
+ /** The mouse cursor is over the button. */
688
+ hovered: boolean;
689
+ /** The button is being pressed (Enter/Space held or click). */
690
+ active: boolean;
691
+ }
692
+ /** Props for the Button component. */
693
+ interface ButtonProps {
694
+ /** Called when the button is activated via Enter, Space, or click. */
695
+ onAction: () => void;
696
+ /** Render prop receiving the interactive state. */
697
+ children: (state: ButtonState) => ReactNode;
698
+ /** Tab order index. Default: 0 (in tab order). Set to -1 to skip. */
699
+ tabIndex?: number;
700
+ /** Focus this button on mount. */
701
+ autoFocus?: boolean;
702
+ /** When true, the button processes global keyboard input. Default: false. */
703
+ isFocused?: boolean;
704
+ }
705
+ /**
706
+ * Interactive button component with keyboard activation.
707
+ *
708
+ * Supports Enter/Space activation, active‑state flash, and a
709
+ * render‑prop pattern so consumers fully control visual styling
710
+ * based on { focused, hovered, active } state.
711
+ */
712
+ declare function Button({
713
+ onAction,
714
+ children,
715
+ isFocused
716
+ }: ButtonProps): React.ReactElement;
717
+ //#endregion
718
+ //#region src/components/ink/Link.d.ts
719
+ /** Props for the Link component. */
720
+ interface LinkProps {
721
+ /** Content to display for the link. Defaults to the URL itself. */
722
+ children?: ReactNode;
723
+ /** Target URL (http://, https://, file://). */
724
+ url: string;
725
+ /** Fallback content when hyperlinks are not supported. */
726
+ fallback?: ReactNode;
727
+ }
728
+ /**
729
+ * Render a clickable link with terminal hyperlink support.
730
+ *
731
+ * On terminals with OSC 8 support, wraps text in hyperlink escape
732
+ * sequences. On unsupported terminals, renders the URL in brackets
733
+ * after the link text (GitHub‑flavored Markdown style).
734
+ */
735
+ declare function Link({
736
+ children,
737
+ url,
738
+ fallback
739
+ }: LinkProps): React.ReactElement;
740
+ //#endregion
741
+ //#region src/components/ink/RawAnsi.d.ts
742
+ /** Props for the RawAnsi component. */
743
+ interface RawAnsiProps {
744
+ /**
745
+ * Pre‑rendered ANSI lines. Each element must be exactly one terminal
746
+ * row (already wrapped to the target width) with ANSI escape codes inline.
747
+ */
748
+ lines: string[];
749
+ /** Column width the producer wrapped to. Informational only in standard Ink. */
750
+ width?: number;
751
+ }
752
+ /**
753
+ * Render ANSI‑escaped lines directly to terminal output.
754
+ *
755
+ * Joins lines with newlines and renders as a single Text node.
756
+ * In standard Ink, ANSI codes in Text children are preserved in
757
+ * terminal output — no special parsing needed.
758
+ */
759
+ declare function RawAnsi({
760
+ lines
761
+ }: RawAnsiProps): React.ReactElement | null;
762
+ //#endregion
763
+ //#region src/components/ink/Spinner.d.ts
764
+ /** Pre‑built spinner frame sets. */
765
+ declare const SPINNER_FRAMES: {
766
+ readonly dots: readonly ["⠋", "⠙", "⠹", "⠸", "⠼", "⠴", "⠦", "⠧", "⠇", "⠏"];
767
+ readonly line: readonly ["|", "/", "-", "\\"];
768
+ readonly pulse: readonly ["█", "▓", "▒", "░"];
769
+ readonly arrow: readonly ["←", "↖", "↑", "↗", "→", "↘", "↓", "↙"];
770
+ readonly bounce: readonly ["⠁", "⠂", "⠄", "⡀", "⢀", "⠠", "⠐", "⠈"];
771
+ };
772
+ /** Props for the Spinner component. */
773
+ interface SpinnerProps {
774
+ /** Frame set name or custom frame array. Default: "dots". */
775
+ frames?: keyof typeof SPINNER_FRAMES | string[];
776
+ /** Interval between frames in milliseconds. Default: 80. */
777
+ intervalMs?: number;
778
+ /** Optional label rendered after the spinner. */
779
+ label?: string;
780
+ /** Color token from the theme. Default: "spinner". */
781
+ color?: string;
782
+ }
783
+ /**
784
+ * Animated spinner component.
785
+ *
786
+ * Cycles through frames at `intervalMs` speed. Cleans up the
787
+ * interval timer on unmount to prevent memory leaks.
788
+ */
789
+ declare function Spinner({
790
+ frames,
791
+ intervalMs,
792
+ label,
793
+ color
794
+ }: SpinnerProps): React.ReactElement;
795
+ //#endregion
796
+ //#region src/components/ink/NoSelect.d.ts
797
+ /** Props for the NoSelect wrapper. */
798
+ interface NoSelectProps {
799
+ /** Content to mark as non‑selectable. */
800
+ children: ReactNode;
801
+ /**
802
+ * Extend the exclusion zone from column 0 to the right edge.
803
+ * Reserved for future custom‑renderer integration.
804
+ */
805
+ fromLeftEdge?: boolean;
806
+ }
807
+ /**
808
+ * Semantic wrapper for non‑selectable content.
809
+ *
810
+ * Currently renders as a plain Box (standard Ink has no selection API).
811
+ * When custom renderer support is added, this will integrate with the
812
+ * noSelect DOM attribute.
813
+ */
814
+ declare function NoSelect({
815
+ children
816
+ }: NoSelectProps): React.ReactElement;
817
+ //#endregion
573
818
  //#region src/hooks/useTerminalSize.d.ts
574
819
  /**
575
820
  * useTerminalSize — track stdout dimensions via Ink's useStdout hook.
576
821
  *
577
822
  * Returns { columns, rows } and updates on terminal resize events.
578
823
  */
824
+ /** Terminal dimensions — columns and rows for layout calculations. */
579
825
  interface TerminalSize {
580
826
  columns: number;
581
827
  rows: number;
@@ -587,6 +833,7 @@ interface TerminalSize {
587
833
  declare function useTerminalSize(): TerminalSize;
588
834
  //#endregion
589
835
  //#region src/hooks/useInput.d.ts
836
+ /** Controlled input state — current value, cursor position, and focus status. */
590
837
  interface InputState {
591
838
  /** Current text in the input box. */
592
839
  value: string;
@@ -595,6 +842,7 @@ interface InputState {
595
842
  /** Whether the input is currently focused. */
596
843
  focused: boolean;
597
844
  }
845
+ /** Input mutation actions — set, clear, focus, blur, submit, and insert text. */
598
846
  interface InputActions {
599
847
  /** Set the full value. */
600
848
  setValue: (value: string) => void;
@@ -662,11 +910,12 @@ declare function getTheme(): TuiTheme;
662
910
  /** Switch to a different theme. */
663
911
  declare function setTheme(name: ThemeName): void;
664
912
  /** Get a specific color from the current theme. */
665
- declare function color(name: string): string;
913
+ declare function color$1(name: string): string;
666
914
  /** List all available theme names. */
667
915
  declare function listThemes(): ThemeName[];
668
916
  //#endregion
669
917
  //#region src/renderer/markdown.d.ts
918
+ /** Parsed markdown block — the output unit of the streaming-aware markdown parser. */
670
919
  interface MarkdownBlock {
671
920
  type: "paragraph" | "heading" | "code" | "list_item" | "blockquote" | "hr" | "diff" | "table";
672
921
  /** Heading level (1–6), only for heading blocks. */
@@ -690,6 +939,7 @@ interface MarkdownBlock {
690
939
  /** For table blocks, column alignments. */
691
940
  tableAligns?: ("left" | "center" | "right")[];
692
941
  }
942
+ /** Rendering options for the markdown parser — controls block limit and streaming behavior. */
693
943
  interface RenderOptions {
694
944
  /** Max number of blocks to render (limits re‑render cost). */
695
945
  maxBlocks?: number;
@@ -816,6 +1066,7 @@ declare function transcriptCacheKey(entryId: string, isStreaming: boolean, isPen
816
1066
  declare function createFrameRateLimiter(frameMs?: number): FrameRateLimiter;
817
1067
  //#endregion
818
1068
  //#region src/keybindings/keybindings.d.ts
1069
+ /** Describes a keyboard shortcut — description, scope, key matcher, and callback action. */
819
1070
  interface KeyBinding {
820
1071
  /** Human‑readable description shown in the help modal. */
821
1072
  description: string;
@@ -826,6 +1077,7 @@ interface KeyBinding {
826
1077
  /** Action to execute. */
827
1078
  action: () => void;
828
1079
  }
1080
+ /** Ordered list of keybindings — each checked for match in the current context scope. */
829
1081
  type KeyBindingCatalog = KeyBinding[];
830
1082
  /**
831
1083
  * Create the default keybinding catalog.
@@ -1007,6 +1259,7 @@ interface InputPromptProps {
1007
1259
  * Ctrl+K — delete to end of line
1008
1260
  * Ctrl+W — delete previous word
1009
1261
  */
1262
+ /** Modal input prompt component — renders a single-line text input with cursor navigation and keyboard shortcuts. */
1010
1263
  declare function InputPrompt({
1011
1264
  title,
1012
1265
  initialValue,
@@ -1156,6 +1409,59 @@ declare function AlternateScreen({
1156
1409
  onExit
1157
1410
  }: AlternateScreenProps): React.ReactElement;
1158
1411
  //#endregion
1412
+ //#region src/components/FullscreenLayout.d.ts
1413
+ /** Entry for the sticky prompt header. */
1414
+ interface StickyPrompt {
1415
+ text: string;
1416
+ /** Number of unseen messages (for the pill). */
1417
+ newCount: number;
1418
+ }
1419
+ /** Context for scroll‑derived chrome (sticky header, jump‑to‑bottom pill). */
1420
+ declare const ScrollChromeContext: React.Context<{
1421
+ setStickyPrompt: (p: StickyPrompt | null) => void;
1422
+ }>;
1423
+ /** Props for the FullscreenLayout component. */
1424
+ interface FullscreenLayoutProps {
1425
+ /** Content pinned to the top (header bar: brand, session, model, cost). */
1426
+ header?: ReactNode;
1427
+ /** Content that scrolls (messages, tool output). */
1428
+ scrollable: ReactNode;
1429
+ /** Content pinned to the bottom (prompt input, status line). */
1430
+ bottom: ReactNode;
1431
+ /** Optional overlay rendered inside the scrollable area (permission prompt). */
1432
+ overlay?: ReactNode;
1433
+ /** Optional absolute‑positioned modal pane (dialogs, pickers). */
1434
+ modal?: ReactNode;
1435
+ /** Ref to the ScrollBox's imperative handle for keyboard scrolling. */
1436
+ scrollRef?: React.RefObject<ScrollBoxHandle | null>;
1437
+ /** Force‑hide the jump‑to‑bottom pill. */
1438
+ hidePill?: boolean;
1439
+ /** Number of unseen messages for the pill. 0 → "Jump to bottom". */
1440
+ newMessageCount?: number;
1441
+ /** Called when the user clicks the pill. */
1442
+ onPillClick?: () => void;
1443
+ }
1444
+ /**
1445
+ * Full‑screen terminal layout with three slots.
1446
+ *
1447
+ * Calculates viewport dimensions from `useTerminalSize` and
1448
+ * distributes space: header gets fixed height, scrollable gets
1449
+ * the remainder, and bottom gets its natural height.
1450
+ *
1451
+ * When `modal` is set, it paints over both the scrollable and
1452
+ * bottom regions with a dimmed backdrop.
1453
+ */
1454
+ declare function FullscreenLayout({
1455
+ header,
1456
+ scrollable,
1457
+ bottom,
1458
+ overlay,
1459
+ modal,
1460
+ hidePill,
1461
+ newMessageCount,
1462
+ onPillClick
1463
+ }: FullscreenLayoutProps): React.ReactElement;
1464
+ //#endregion
1159
1465
  //#region src/components/DiffViewer.d.ts
1160
1466
  /** A single changed file with diff content. */
1161
1467
  interface DiffFile {
@@ -1305,5 +1611,5 @@ declare function WelcomeScreen({
1305
1611
  /** Create a new view stack with an initial view. */
1306
1612
  declare function createViewStack(initial?: ViewId): ViewStack;
1307
1613
  //#endregion
1308
- export { AlternateScreen, type AlternateScreenProps, App, type AppProps, ChatLog, type ChatLogEntry, type ChatLogHandle, type ChatLogProps, ChatView, type ChatViewProps, type CommandEntry, CommandPalette, type CommandPaletteProps, ConfigMenu, type ConfigMenuProps, ConfirmDialog, type ConfirmDialogProps, type ContextInfo, Dialog, type DialogProps, type DiffFile, DiffViewer, type DiffViewerProps, type DoctorCheck, DoctorPanel, type DoctorPanelProps, ErrorBoundary, FilePicker, type FilePickerProps, FrameRateLimiter, HelpModal, type HelpModalProps, type InputActions, InputBox, type InputBoxProps, InputPrompt, type InputPromptProps, type InputState, type KeyBinding, type KeyBindingCatalog, type MarkdownBlock, Mascot, type MascotProps, type MascotState, type McpConnectionInfo, ModelPicker, type ModelPickerProps, type PermissionChoice, PermissionRequest, type PermissionRequestData, type PermissionRequestProps, type PluginInfo, type RenderOptions, type SafetyLevel, type ScrollState, SessionPicker, type SessionPickerProps, type SkillInfo, SkillPicker, type SkillPickerProps, SnapshotBrowser, type SnapshotBrowserProps, type SnapshotEntry, type StashEntry, StashPicker, type StashPickerProps, StatusBar, type StatusBarProps, type TaskEntry, type TaskStatus, TasksPanel, type TasksPanelProps, type TerminalSize, type ThemeName, ThemePicker, type ThemePickerProps, ToolRenderer, type ToolRendererProps, type TuiCallbacks, type TuiModelInfo, type TuiStreamEvent, type TuiTheme, type UsageInfo, type UseScrollOptions, type ViewEntry, type ViewId, type ViewStack, type VimMode, WelcomeScreen, type WelcomeScreenProps, chunkLongTokens, color, createDefaultBindings, createFrameRateLimiter, createViewStack, dispatchBinding, findStableOffset, getTheme, initTheme, isolateRtl, listThemes, parseMarkdown, redactBinaryContent, renderBlocks, runBuiltinChecks, sanitize, setTheme, stripAnsi, stripControlChars, transcriptCacheKey, useInput, useScroll, useTerminalSize };
1614
+ export { AlternateScreen, type AlternateScreenProps, App, type AppProps, Button, type ButtonProps, type ButtonState, ChatLog, type ChatLogEntry, type ChatLogHandle, type ChatLogProps, ChatView, type ChatViewProps, type CommandEntry, CommandPalette, type CommandPaletteProps, ConfigMenu, type ConfigMenuProps, ConfirmDialog, type ConfirmDialogProps, type ContextInfo, Dialog, type DialogProps, type DiffFile, DiffViewer, type DiffViewerProps, type DoctorCheck, DoctorPanel, type DoctorPanelProps, ErrorBoundary, FilePicker, type FilePickerProps, FrameRateLimiter, FullscreenLayout, type FullscreenLayoutProps, HelpModal, type HelpModalProps, type InputActions, InputBox, type InputBoxProps, InputPrompt, type InputPromptProps, type InputState, type KeyBinding, type KeyBindingCatalog, Link, type LinkProps, type MarkdownBlock, Mascot, type MascotProps, type MascotState, type McpConnectionInfo, MessageRow, type MessageRowProps, ModelPicker, type ModelPickerProps, NoSelect, type NoSelectProps, type PermissionChoice, PermissionRequest, type PermissionRequestData, type PermissionRequestProps, type PluginInfo, RawAnsi, type RawAnsiProps, type RenderOptions, SPINNER_FRAMES, type SafetyLevel, ScrollBox, type ScrollBoxHandle, type ScrollBoxProps, ScrollChromeContext, type ScrollState, SessionPicker, type SessionPickerProps, type SkillInfo, SkillPicker, type SkillPickerProps, SnapshotBrowser, type SnapshotBrowserProps, type SnapshotEntry, Spinner, type SpinnerProps, type StashEntry, StashPicker, type StashPickerProps, StatusBar, type StatusBarProps, type StickyPrompt, type TaskEntry, type TaskStatus, TasksPanel, type TasksPanelProps, type TerminalSize, type ThemeName, ThemePicker, type ThemePickerProps, ToolRenderer, type ToolRendererProps, type TuiCallbacks, type TuiModelInfo, type TuiStreamEvent, type TuiTheme, type UsageInfo, type UseScrollOptions, type ViewEntry, type ViewId, type ViewStack, type VimMode, WelcomeScreen, type WelcomeScreenProps, chunkLongTokens, color$1 as color, createDefaultBindings, createFrameRateLimiter, createViewStack, dispatchBinding, findStableOffset, getTheme, initTheme, isolateRtl, listThemes, parseMarkdown, redactBinaryContent, renderBlocks, runBuiltinChecks, sanitize, setTheme, stripAnsi, stripControlChars, transcriptCacheKey, useInput, useScroll, useTerminalSize };
1309
1615
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/components/PermissionRequest.ts","../src/types.ts","../src/app.ts","../src/components/ChatView.ts","../src/components/ChatLog.ts","../src/components/InputBox.ts","../src/components/StatusBar.ts","../src/components/Dialog.ts","../src/components/SessionPicker.ts","../src/components/HelpModal.ts","../src/components/CommandPalette.ts","../src/components/ToolRenderer.ts","../src/components/Mascot.ts","../src/hooks/useTerminalSize.ts","../src/hooks/useInput.ts","../src/hooks/useScroll.ts","../src/theme/theme.ts","../src/renderer/markdown.ts","../src/renderer/sanitize.ts","../src/renderer/frame-limiter.ts","../src/keybindings/keybindings.ts","../src/components/ModelPicker.ts","../src/components/ConfigMenu.ts","../src/components/ThemePicker.ts","../src/components/ConfirmDialog.ts","../src/components/InputPrompt.ts","../src/components/DoctorPanel.ts","../src/components/FilePicker.ts","../src/components/StashPicker.ts","../src/components/ErrorBoundary.ts","../src/components/AlternateScreen.ts","../src/components/DiffViewer.ts","../src/components/SnapshotBrowser.ts","../src/components/TasksPanel.ts","../src/components/SkillPicker.ts","../src/screens/WelcomeScreen.ts","../src/views/stack.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/components/PermissionRequest.ts","../src/types.ts","../src/app.ts","../src/components/ChatView.ts","../src/components/ChatLog.ts","../src/components/MessageRow.ts","../src/components/InputBox.ts","../src/components/StatusBar.ts","../src/components/Dialog.ts","../src/components/SessionPicker.ts","../src/components/HelpModal.ts","../src/components/CommandPalette.ts","../src/components/ToolRenderer.ts","../src/components/Mascot.ts","../src/components/ink/ScrollBox.ts","../src/components/ink/Button.ts","../src/components/ink/Link.ts","../src/components/ink/RawAnsi.ts","../src/components/ink/Spinner.ts","../src/components/ink/NoSelect.ts","../src/hooks/useTerminalSize.ts","../src/hooks/useInput.ts","../src/hooks/useScroll.ts","../src/theme/theme.ts","../src/renderer/markdown.ts","../src/renderer/sanitize.ts","../src/renderer/frame-limiter.ts","../src/keybindings/keybindings.ts","../src/components/ModelPicker.ts","../src/components/ConfigMenu.ts","../src/components/ThemePicker.ts","../src/components/ConfirmDialog.ts","../src/components/InputPrompt.ts","../src/components/DoctorPanel.ts","../src/components/FilePicker.ts","../src/components/StashPicker.ts","../src/components/ErrorBoundary.ts","../src/components/AlternateScreen.ts","../src/components/FullscreenLayout.ts","../src/components/DiffViewer.ts","../src/components/SnapshotBrowser.ts","../src/components/TasksPanel.ts","../src/components/SkillPicker.ts","../src/screens/WelcomeScreen.ts","../src/views/stack.ts"],"mappings":"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"}