import React from 'react';
import { LLMClient, Message } from '../types/core.js';
import type { ThemePreset, TitleShape } from '../types/ui.js';
interface UseModeHandlersProps {
    client: LLMClient | null;
    currentModel: string;
    currentProvider: string;
    currentTheme: ThemePreset;
    setClient: (client: LLMClient | null) => void;
    setCurrentModel: (model: string) => void;
    setCurrentProvider: (provider: string) => void;
    setCurrentTheme: (theme: ThemePreset) => void;
    setMessages: (messages: Message[]) => void;
    setIsModelSelectionMode: (mode: boolean) => void;
    setIsProviderSelectionMode: (mode: boolean) => void;
    setIsThemeSelectionMode: (mode: boolean) => void;
    setIsTitleShapeSelectionMode: (mode: boolean) => void;
    setIsModelDatabaseMode: (mode: boolean) => void;
    setIsConfigWizardMode: (mode: boolean) => void;
    addToChatQueue: (component: React.ReactNode) => void;
    getNextComponentKey: () => number;
    reinitializeMCPServers: (toolManager: import('../tools/tool-manager.js').ToolManager) => Promise<void>;
}
export declare function useModeHandlers({ client, currentModel, currentProvider, currentTheme: _currentTheme, setClient, setCurrentModel, setCurrentProvider, setCurrentTheme, setMessages, setIsModelSelectionMode, setIsProviderSelectionMode, setIsThemeSelectionMode, setIsTitleShapeSelectionMode, setIsModelDatabaseMode, setIsConfigWizardMode, addToChatQueue, getNextComponentKey, reinitializeMCPServers, }: UseModeHandlersProps): {
    enterModelSelectionMode: () => void;
    enterProviderSelectionMode: () => void;
    enterThemeSelectionMode: () => void;
    enterTitleShapeSelectionMode: () => void;
    handleTitleShapeSelect: (selectedShape: TitleShape) => void;
    handleTitleShapeSelectionCancel: () => void;
    enterModelDatabaseMode: () => void;
    enterConfigWizardMode: () => void;
    handleModelSelect: (selectedModel: string) => Promise<void>;
    handleModelSelectionCancel: () => void;
    handleProviderSelect: (selectedProvider: string) => Promise<void>;
    handleProviderSelectionCancel: () => void;
    handleThemeSelect: (selectedTheme: ThemePreset) => void;
    handleThemeSelectionCancel: () => void;
    handleModelDatabaseCancel: () => void;
    handleConfigWizardComplete: (configPath?: string) => Promise<void>;
    handleConfigWizardCancel: () => void;
};
export {};
//# sourceMappingURL=useModeHandlers.d.ts.map