/**
 * Execution Modes for Cline SDK
 *
 * Defines different operational modes:
 * - ASK: Only answers questions, no tool execution
 * - PLAN: Creates plans but doesn't execute actions
 * - ACT: Full execution mode with all tools enabled
 */
export type ExecutionMode = "ask" | "plan" | "act";
export interface ModeConfiguration {
    mode: ExecutionMode;
    allowedTools: string[];
    description: string;
    systemPromptAddition: string;
}
export interface ModeRestrictions {
    canExecuteTools: boolean;
    canWriteFiles: boolean;
    canRunCommands: boolean;
    canModifyDatabase: boolean;
    canAccessFileSystem: boolean;
    maxToolsPerTask?: number;
}
/**
 * Mode definitions and their characteristics
 */
export declare const MODE_DEFINITIONS: Record<ExecutionMode, ModeConfiguration>;
/**
 * Get mode restrictions based on execution mode
 */
export declare function getModeRestrictions(mode: ExecutionMode): ModeRestrictions;
/**
 * Check if a tool is allowed in the current mode
 */
export declare function isToolAllowed(toolName: string, mode: ExecutionMode): boolean;
/**
 * Parse mode switch commands from user input
 * Only responds to explicit mode commands, no automatic detection
 */
export declare function parseModeSwitch(userInput: string): ExecutionMode | null;
/**
 * Get user-friendly mode description
 */
export declare function getModeDescription(mode: ExecutionMode): string;
/**
 * Generate mode status message
 */
export declare function generateModeStatus(mode: ExecutionMode): string;
//# sourceMappingURL=execution-modes.d.ts.map