/**
 * Diccionario de mensajes multiidioma para cyber-mysql-openai
 */
export type SupportedLanguage = "es" | "en";
export interface MessageDictionary {
    errors: {
        noResults: string;
        connectionFailed: string;
        invalidQuery: string;
        maxReflectionsReached: string;
        openaiError: string;
        databaseError: string;
    };
    success: {
        queryExecuted: string;
        connectionEstablished: string;
        responseGenerated: string;
    };
    prompts: {
        translateToSQL: string;
        generateNaturalResponse: string;
        generateDetailedResponse: string;
        fixSQLError: string;
    };
    responses: {
        noResultsFound: string;
        multipleResults: string;
        singleResult: string;
        dataAnalysis: string;
        queryCompleted: string;
    };
    labels: {
        sqlGenerated: string;
        results: string;
        naturalResponse: string;
        detailedResponse: string;
        attempts: string;
        reflections: string;
        executionTime: string;
        rowsAffected: string;
    };
}
/**
 * Diccionario en español
 */
export declare const spanishMessages: MessageDictionary;
/**
 * Diccionario en inglés
 */
export declare const englishMessages: MessageDictionary;
/**
 * Clase para manejar internacionalización
 */
export declare class I18n {
    private language;
    private messages;
    constructor(language?: SupportedLanguage);
    /**
     * Obtiene el diccionario de mensajes para un idioma específico
     */
    private getMessages;
    /**
     * Cambia el idioma activo
     */
    setLanguage(language: SupportedLanguage): void;
    /**
     * Obtiene el idioma actual
     */
    getLanguage(): SupportedLanguage;
    /**
     * Obtiene un mensaje específico
     */
    getMessage(category: keyof MessageDictionary, key: string): string;
    /**
     * Obtiene un mensaje con reemplazo de variables
     */
    getMessageWithReplace(category: keyof MessageDictionary, key: string, replacements: Record<string, string | number>): string;
    /**
     * Obtiene todos los mensajes de una categoría
     */
    getCategory(category: keyof MessageDictionary): Record<string, string>;
}
export declare const defaultI18n: I18n;
