import { EventEmitter } from "node:events";
import type { CommandIntent, RouterConfig, RouterMetrics } from "../types/common-types";
export declare class IntelligentRouterService extends EventEmitter {
    private nlpProcessor;
    private intentRecognizer;
    private parameterExtractor;
    private dictionary;
    private languageDetector;
    private commandMappings;
    private userPatternAnalyzer;
    private config;
    private metrics;
    private isInitialized;
    constructor(_config?: RouterConfig);
    initialize(): Promise<void>;
    route(input: string): Promise<CommandIntent | null>;
    suggestCommand(partialInput: string): Promise<string[]>;
    getCommandExplanation(_command: string, _language?: string): Promise<string>;
    needsConfirmation(intent: CommandIntent): Promise<boolean>;
    getMetrics(): RouterMetrics;
    resetMetrics(): void;
    private updateMetrics;
    trainOnFeedback(_input: string, correctCommand: string, wasCorrect: boolean): Promise<void>;
    getConfidenceThreshold(): number;
    setConfidenceThreshold(threshold: number): void;
    getSupportedLanguages(): string[];
    isLanguageSupported(_language: string): boolean;
    exportLearningData(): Promise<unknown>;
    importLearningData(data: unknown): Promise<void>;
    dispose(): void;
}
export declare function getIntelligentRouter(config?: RouterConfig): IntelligentRouterService;
export declare function resetIntelligentRouter(): void;
