/**
 * Уровни логирования (от самого подробного к самому критичному)
 */
export type LogLevel = 'trace' | 'debug' | 'info' | 'warn' | 'error';
/**
 * Типы вывода логов
 */
export type LogOutput = 'stdout' | 'file' | 'both';
/**
 * Парсит строку уровня логирования в тип LogLevel
 */
export declare function parseLogLevel(level: string): LogLevel;
/**
 * Получает уровень логирования из переменной окружения LOG_LEVEL
 * По умолчанию: 'info'
 */
export declare function getLogLevelFromEnv(): LogLevel;
/**
 * Получает тип вывода логов из переменной окружения LOG_OUTPUT
 * По умолчанию: 'stdout'
 * Возможные значения: stdout, file, both
 */
export declare function getLogOutputFromEnv(): LogOutput;
/**
 * Получает путь к файлу логов из переменной окружения LOG_FILE
 * По умолчанию: ./logs/mcp-simpleone.log
 */
export declare function getLogFileFromEnv(): string;
/**
 * Логгер с маскировкой чувствительных данных
 * Уровень логирования настраивается через переменную окружения LOG_LEVEL
 * Вывод настраивается через переменную окружения LOG_OUTPUT (stdout, file, both)
 * Путь к файлу логов настраивается через переменную окружения LOG_FILE
 * Возможные значения уровня: trace, debug, info, warn, error (по умолчанию: info)
 * Возможные значения вывода: stdout, file, both (по умолчанию: stdout)
 */
export declare class Logger {
    private minLevel;
    private prefix;
    private logOutput;
    private logFile;
    constructor(prefix?: string, minLevel?: LogLevel, logOutput?: LogOutput, logFile?: string);
    /**
     * Создаёт директорию для файла логов если она не существует
     */
    private ensureLogDirectory;
    /**
     * Записывает сообщение в файл логов
     */
    private writeToFile;
    private shouldLog;
    private formatMessage;
    /**
     * Записывает сообщение в выбранные выходы (stdout, file, или оба)
     */
    private log;
    /**
     * Трассировка (самый подробный уровень)
     * Используется для детальной отладки внутренних процессов
     */
    trace(message: string, data?: unknown): void;
    /**
     * Отладочная информация
     * Используется для отладки
     */
    debug(message: string, data?: unknown): void;
    /**
     * Информационное сообщение
     * Используется для общих событий
     */
    info(message: string, data?: unknown): void;
    /**
     * Предупреждение
     * Используется для потенциальных проблем
     */
    warn(message: string, data?: unknown): void;
    /**
     * Ошибка
     * Используется для критических ошибок
     */
    error(message: string, data?: unknown): void;
    /**
     * Изменяет минимальный уровень логирования динамически
     */
    setLevel(level: LogLevel): void;
    /**
     * Возвращает текущий уровень логирования
     */
    getLevel(): LogLevel;
    /**
     * Логирует конфигурацию без секретов
     */
    logConfig(): void;
}
export declare const logger: Logger;
//# sourceMappingURL=logger.d.ts.map