/**
 * CLI Commands Module (Modular Version)
 *
 * This module aggregates all CLI commands from extracted modular components.
 * It maintains the same external interface as the original monolithic commands.ts
 * while using the new modular structure internally.
 *
 * The commands are organized into logical modules:
 * - General Commands: Basic CLI functionality (help, exit, clear)
 * - Conversation Commands: Session management, history, and search
 * - Model Commands: Model switching and configuration
 * - MCP Commands: MCP server management
 * - Plugin Commands: Claude Code plugin management
 * - System Commands: Configuration, logging, and statistics
 * - Tool Commands: Tool listing and management
 * - Prompt Commands: System prompt management
 * - Documentation Commands: Help and documentation access
 *
 * This file serves as the integration layer that combines all modular commands
 * into a single CLI_COMMANDS array for the command execution system.
 */
import type { CommandDefinition, CommandHandlerResult } from './command-parser.js';
import { type TuiAgentBackend } from '../agent-backend.js';
/**
 * Complete list of all available CLI commands.
 * This array combines commands from all extracted modules to maintain
 * the same interface as the original monolithic implementation.
 *
 * Commands are organized by category:
 * - General: help, exit, clear
 * - Session Management: session, history, search
 * - Model Management: model
 * - MCP Management: mcp
 * - Tool Management: tools
 * - Prompt Management: prompt
 * - System: log, config, stats
 * - Documentation: docs
 */
export declare const CLI_COMMANDS: CommandDefinition[];
/**
 * Execute a slash command
 *
 * @param sessionId - Session ID to use for agent.run() calls
 * @returns CommandHandlerResult - boolean, string, or StyledOutput
 */
export declare function executeCommand(command: string, args: string[], agent: TuiAgentBackend, sessionId?: string, configFilePath?: string | null): Promise<CommandHandlerResult>;
/**
 * Get all available command definitions
 * This is used by external systems that need to inspect available commands
 */
export declare function getAllCommands(): CommandDefinition[];
export declare function getAvailableCommands(agent: TuiAgentBackend): CommandDefinition[];
//# sourceMappingURL=commands.d.ts.map