import { LoggerLevel } from './logger-level';
/**
 * Main logger class used for displaying messages.
 *
 * @type {Logger}
 */
export declare class Logger {
    /**
     * Logger level defines what kind of messages should be displayed in the console.
     *
     * @type {LoggerLevel}
     */
    private readonly loggerLevel;
    /**
     * Debug disabled?
     *
     * @type {boolean}
     */
    private readonly debugDisabled;
    /**
     * Info disabled?
     *
     * @type {boolean}
     */
    private readonly infoDisabled;
    /**
     * Warn disabled?
     *
     * @type {boolean}
     */
    private readonly warnDisabled;
    /**
     * Error disabled?
     *
     * @type {boolean}
     */
    private readonly errorDisabled;
    /**
     * Supports console?
     *
     * @type {boolean}
     */
    private readonly supportsConsole;
    /**
     * Supports console log?
     *
     * @type {boolean}
     */
    private readonly supportsConsoleLog;
    /**
     * Supports console info?
     *
     * @type {boolean}
     */
    private readonly supportsConsoleInfo;
    /**
     * Supports console warn?
     *
     * @type {boolean}
     */
    private readonly supportsConsoleWarn;
    /**
     * Supports console error?
     *
     * @type {boolean}
     */
    private readonly supportsConsoleError;
    /**
     * Constructor.
     *
     * @param {LoggerLevel} loggerLevel Logger level.
     */
    constructor(loggerLevel: LoggerLevel);
    /**
     * Formats message based on component and level.
     *
     * @param {string} component Component which logs the message.
     * @param {string} loggerLevel Logger level.
     * @param {string} message Message to display.
     *
     * @returns {string} Formatted message.
     */
    private format;
    /**
     * Displays debug message.
     *
     * @param {string} component Component which logs the message.
     * @param {string} message Message to display.
     * @param {ReadonlyArray<any>} optionalParams Optional data related to a message.
     *
     * @returns {void} Nothing.
     */
    debug(component: string, message: string, ...optionalParams: ReadonlyArray<any>): void;
    /**
     * Displays info message.
     *
     * @param {string} component Component which logs the message.
     * @param {string} message Message to display.
     * @param {ReadonlyArray<any>} optionalParams Optional data related to a message.
     *
     * @returns {void} Nothing.
     */
    info(component: string, message: string, ...optionalParams: ReadonlyArray<any>): void;
    /**
     * Displays warn message.
     *
     * @param {string} component Component which logs the message.
     * @param {string} message Message to display.
     * @param {ReadonlyArray<any>} optionalParams Optional data related to a message.
     *
     * @returns {void} Nothing.
     */
    warn(component: string, message: any, ...optionalParams: ReadonlyArray<any>): void;
    /**
     * Displays error message.
     *
     * @param {string} component Component which logs the message.
     * @param {string} message Message to display.
     * @param {ReadonlyArray<any>} optionalParams Optional data related to a message.
     *
     * @returns {void} Nothing.
     */
    error(component: string, message: string, ...optionalParams: ReadonlyArray<any>): void;
}
//# sourceMappingURL=logger.d.ts.map