import * as react_jsx_runtime from 'react/jsx-runtime'; import React__default, { ReactNode, Component } from 'react'; import { A as AriaProps } from './accessibility-Dv-wc-jy.js'; interface PanelProps { title?: string; titleColor?: string; borderColor?: string; borderStyle?: 'single' | 'double' | 'round' | 'bold' | 'singleDouble' | 'doubleSingle' | 'classic'; /** Show a border around the panel. Default: true */ bordered?: boolean; width?: number; height?: number; paddingX?: number; paddingY?: number; children?: ReactNode; } declare function Panel({ title, titleColor, borderColor, borderStyle, bordered, width, height, paddingX, paddingY, children, }: PanelProps): react_jsx_runtime.JSX.Element; interface ToggleProps extends AriaProps { checked?: boolean; onChange?: (checked: boolean) => void; label?: string; onLabel?: string; offLabel?: string; id?: string; disabled?: boolean; /** Icon shown when checked. Default: '●' */ checkedIcon?: string; /** Icon shown when unchecked. Default: '○' */ uncheckedIcon?: string; /** Border style. Default: 'round' */ borderStyle?: 'single' | 'double' | 'round' | 'bold' | 'singleDouble' | 'doubleSingle' | 'classic'; /** Horizontal padding. Default: 1 */ paddingX?: number; } declare function Toggle({ checked: controlledChecked, onChange, label, onLabel, offLabel, id, disabled, checkedIcon, uncheckedIcon, borderStyle, paddingX, 'aria-label': ariaLabel, 'aria-description': ariaDescription, 'aria-live': ariaLive, }: ToggleProps): react_jsx_runtime.JSX.Element; interface EmbeddedTerminalProps { command: string; args?: string[]; cwd?: string; width?: number; height?: number; onExit?: (code: number) => void; } /** * Renders a pseudo-terminal session inside the TUI. * Requires optional dependency `node-pty` (native build). */ declare function EmbeddedTerminal({ command, args, cwd, width, height, onExit, }: EmbeddedTerminalProps): react_jsx_runtime.JSX.Element; interface TimerProps { duration: number; onComplete?: () => void; autoStart?: boolean; format?: 'hms' | 'ms' | 's'; color?: string; label?: string; } declare function Timer({ duration, onComplete, autoStart, format, color, label, }: TimerProps): react_jsx_runtime.JSX.Element; interface StopwatchProps { autoStart?: boolean; color?: string; showLaps?: boolean; } declare function Stopwatch({ autoStart, color, showLaps }: StopwatchProps): react_jsx_runtime.JSX.Element; interface ClockProps { format?: '12h' | '24h'; showSeconds?: boolean; showDate?: boolean; timezone?: string; color?: string; size?: 'sm' | 'lg'; } declare function Clock({ format, showSeconds, showDate, timezone, color, size, }: ClockProps): react_jsx_runtime.JSX.Element; interface ClipboardProps { value: string; label?: string; successMessage?: string; timeout?: number; } declare function Clipboard({ value, label, successMessage, timeout, }: ClipboardProps): react_jsx_runtime.JSX.Element; interface Shortcut { key: string; description: string; category?: string; } interface KeyboardShortcutsProps { shortcuts: Shortcut[]; columns?: number; title?: string; } declare function KeyboardShortcuts({ shortcuts, columns, title }: KeyboardShortcutsProps): react_jsx_runtime.JSX.Element; interface HelpProps { keymap: Record; title?: string; compact?: boolean; } declare function Help({ keymap, title, compact }: HelpProps): react_jsx_runtime.JSX.Element; interface ErrorBoundaryProps { children: ReactNode; fallback?: ReactNode; onError?: (error: Error, info: { componentStack: string; }) => void; title?: string; } interface ErrorBoundaryState { hasError: boolean; error: Error | null; componentStack: string; } declare class ErrorBoundary extends Component { constructor(props: ErrorBoundaryProps); static getDerivedStateFromError(error: Error): Partial; componentDidCatch(error: Error, info: React__default.ErrorInfo): void; render(): react_jsx_runtime.JSX.Element; } type LogLevel = 'debug' | 'info' | 'warn' | 'error'; interface LogEntry { level: LogLevel; message: string; timestamp?: Date; } interface LogProps { entries: LogEntry[]; height?: number; showTimestamp?: boolean; filter?: string; follow?: boolean; } declare function Log({ entries, height, showTimestamp, filter, follow: followProp, }: LogProps): react_jsx_runtime.JSX.Element; type ImageProtocol = 'auto' | 'iterm2' | 'kitty' | 'ascii'; interface ImageProps { src: string; width?: number; height?: number; protocol?: ImageProtocol; alt?: string; } declare function Image({ src, width, height, protocol, alt }: ImageProps): react_jsx_runtime.JSX.Element; interface QRCodeProps { value: string; size?: 'sm' | 'md' | 'lg'; color?: string; label?: string; } declare function QRCode({ value, size, color, label }: QRCodeProps): react_jsx_runtime.JSX.Element; interface ProfilerProps { /** Identifier shown in the stats overlay */ id: string; /** Children to profile */ children: React__default.ReactNode; /** Show the overlay (default true) */ show?: boolean; } declare function Profiler({ id, children, show }: ProfilerProps): react_jsx_runtime.JSX.Element; export { Clipboard, type ClipboardProps, Clock, type ClockProps, EmbeddedTerminal, type EmbeddedTerminalProps, ErrorBoundary, type ErrorBoundaryProps, Help, type HelpProps, Image, type ImageProps, type ImageProtocol, KeyboardShortcuts, type KeyboardShortcutsProps, Log, type LogEntry, type LogLevel, type LogProps, Panel, type PanelProps, Profiler, type ProfilerProps, QRCode, type QRCodeProps, type Shortcut, Stopwatch, type StopwatchProps, Timer, type TimerProps, Toggle, type ToggleProps };