#[allow(dead_code)]
mod activity_stack;
mod agent_steps;
mod animation;
mod chat_dag_panel;
mod chat_edge_line;
mod chat_node_box;
mod chat_task_queue;
mod command_palette;
mod dag_ascii;
#[allow(dead_code)]
mod dag_edge;
#[allow(dead_code)]
mod dag_layout;
#[allow(dead_code)]
mod dag_node_box;
mod gauge;
mod header;
mod help_overlay;
mod infer_stream_box;
#[allow(dead_code)]
mod matrix_decrypt;
mod matrix_rain;
mod mcp_call_box;
mod mention_system;
mod mission_control;
mod nika_intro;
mod pro_status_bar;
pub mod provider_modal;
#[allow(dead_code)]
mod provider_selector;
mod scroll_indicator;
mod session_context;
#[allow(dead_code)]
mod sparkline;
mod status_bar;
mod status_message;
pub mod task_box;
mod terminal_size;
mod timeline;
pub mod tree;
mod utils;
mod verb_input;
mod verb_type;
mod which_key;
#[allow(dead_code)]
pub mod micro;
pub mod panels;
pub mod progress;
pub use animation::{AnimationState, AnimationTicker, Easing};
pub use chat_dag_panel::{ChatDagPanel, DagEdgeData, DagNodeData};
pub use chat_edge_line::{ChatEdgeLine, ChatPosition};
pub use chat_node_box::{ChatNodeBox, ChatNodeKind, ChatNodeState};
pub use chat_task_queue::{ChatTaskQueue, ChatTaskQueueItem, ChatTaskState, ChatTaskVerb};
pub use provider_modal::*;
pub use provider_selector::{
McpServerDisplay, ModelInfo, ProviderInfo, SelectorSection, VerifyStatus,
};
pub use session_context::{
ActiveOperation, McpServerInfo, McpStatus, SessionContext, SessionContextBar,
};
pub use mcp_call_box::{McpCallBox, McpCallData, McpCallStatus, DEFAULT_MAX_RETRIES};
pub use infer_stream_box::{InferStatus, InferStreamBox, InferStreamData};
pub use activity_stack::{ActivityItem, ActivityTemp};
pub use command_palette::{default_commands, CommandPalette, CommandPaletteState, PaletteCommand};
pub use verb_type::VerbType;
pub use dag_node_box::{NodeBox, NodeBoxData, NodeBoxMode};
pub use dag_ascii::DagAscii;
pub use gauge::Gauge;
pub use header::Header;
pub use scroll_indicator::{ScrollHint, ScrollIndicator};
pub use sparkline::{
AnimatedLatencySparkline, LatencyHistory, LatencySparkline, SparklineAnimation,
};
pub use status_bar::{ConnectionStatus, Provider, StatusBar, StatusMetrics, WorkflowPhase};
pub use timeline::{Timeline, TimelineEntry};
pub use pro_status_bar::{ChatModeIndicator, ProStatusBar, SessionMetrics};
pub use mission_control::{
ContextItem, ContextStatus, CurrentVerb, MemoryFile, MemoryKind, MissionControlPanel,
TurnMetrics,
};
pub use verb_input::{ChatVerb, ParsedInput, SystemCommand, VerbIndicator, VerbPrompt};
pub use mention_system::{
highlight_mentions, Mention, MentionAutocomplete, MentionAutocompleteState, MentionSuggestion,
MentionTrigger, MentionType,
};
pub use agent_steps::{
AgentPhase, AgentPhaseIndicator, AgentStep, AgentStepGroup, AgentStepsWidget, StepStatus,
TokenUsage, ToolCallMetadata,
};
pub use terminal_size::{
check_terminal_size, LayoutMode, TerminalTooSmallOverlay, COMPACT_WIDTH, MIN_HEIGHT, MIN_WIDTH,
WIDE_WIDTH,
};
pub use help_overlay::{HelpOverlay, HelpOverlayState, HelpSection, HELP_SECTIONS};
pub use status_message::{StatusLevel, StatusMessage, StatusMessageWidget, StatusQueue};
pub use matrix_rain::MatrixRain;
pub use nika_intro::{IntroPhase, NikaIntro, NikaIntroState};
pub use matrix_decrypt::{DecryptVerb, MatrixDecrypt, MultiLineDecrypt, StreamingDecrypt};
pub use task_box::{
exit, http, status, AgentBox, BoxState, ExecBox, FetchBox, InferBox, InvokeBox, TaskBox,
TaskBoxWidget, VerbColor, BRAILLE_SPINNER,
};
pub use tree::{GitStatus, NodeId, NodeKind, TreeAction, TreeColors, TreeNode, TreeState};
pub use which_key::{WhichKey, WhichKeyBinding, WhichKeyGroup, WhichKeyState};
pub use panels::{
BrowserAction, BrowserPanel, InfoPanel, TaskBoxFlow, TaskListAction, TaskListPanel,
};
pub use utils::centered_rect;