import { ILogger } from "../api/ILogger";
import { ILogTarget } from "../api/ILogTarget";
/**
 * The log manager creates loggers and is itself a log target
 *
 * @private
 */
export declare class LogManager implements ILogTarget {
    private _logLevel;
    /**
     * The current log level
     */
    get logLevel(): number;
    /**
     * Sets the current log level
     */
    set logLevel(value: number);
    private _targets;
    /**
     * Retrieves a logger for a given source
     *
     * @param source Logging source
     * @return Logger
     */
    getLogger(source: any): ILogger;
    /**
     * Adds a custom log target
     *
     * @param target Log target
     * @return this
     */
    addLogTarget(target: ILogTarget): void;
    /**
     * @inheritDoc
     */
    log(source: any, level: number, timestamp: number, message: string, params?: any[]): void;
    removeAllTargets(): void;
}
