/* eslint-disable no-console */
import { Logger } from './Logger.js';
export var LogLevel;
(function (LogLevel) {
    LogLevel[LogLevel["Silly"] = 0] = "Silly";
    LogLevel[LogLevel["Debug"] = 1] = "Debug";
    LogLevel[LogLevel["Verbose"] = 2] = "Verbose";
    LogLevel[LogLevel["Info"] = 3] = "Info";
    LogLevel[LogLevel["Warn"] = 4] = "Warn";
    LogLevel[LogLevel["Error"] = 5] = "Error";
    LogLevel[LogLevel["Silent"] = 6] = "Silent";
})(LogLevel || (LogLevel = {}));
export class DefaultLogger extends Logger {
    level = LogLevel.Info;
    constructor(config = {}) {
        super();
        if (typeof config.level !== 'undefined') {
            this.level = config.level;
        }
    }
    warn(...args) {
        if (this.level > LogLevel.Warn)
            return;
        console.warn(...args);
    }
    info(...args) {
        if (this.level > LogLevel.Info)
            return;
        console.info(...args);
    }
    error(...args) {
        if (this.level > LogLevel.Error)
            return;
        console.error(...args);
    }
    log(...args) {
        if (this.level > LogLevel.Debug)
            return;
        console.log(...args);
    }
    debug(...args) {
        if (this.level > LogLevel.Debug)
            return;
        console.debug(...args);
    }
}
//# sourceMappingURL=DefaultLogger.js.map