"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.MainThreadExtensionLog = void 0;
exports.createExtensionLogFactory = createExtensionLogFactory;
const tslib_1 = require("tslib");
const di_1 = require("@opensumi/di");
const ide_core_common_1 = require("@opensumi/ide-core-common");
const extension_log_1 = require("../../../common/extension-log");
let MainThreadExtensionLog = class MainThreadExtensionLog {
    $getLevel() {
        return this.logger.getLevel();
    }
    $setLevel(level) {
        return this.logger.setLevel(level);
    }
    async $verbose(...args) {
        return this.logger.verbose(...args);
    }
    async $debug(...args) {
        return this.logger.debug(...args);
    }
    async $log(...args) {
        return this.logger.log(...args);
    }
    async $warn(...args) {
        return this.logger.warn(...args);
    }
    async $error(...args) {
        return this.logger.error(...args);
    }
    async $critical(...args) {
        return this.logger.critical(...args);
    }
    $dispose() {
        return this.logger.dispose();
    }
};
exports.MainThreadExtensionLog = MainThreadExtensionLog;
tslib_1.__decorate([
    (0, di_1.Autowired)(ide_core_common_1.ILogger),
    tslib_1.__metadata("design:type", Object)
], MainThreadExtensionLog.prototype, "logger", void 0);
exports.MainThreadExtensionLog = MainThreadExtensionLog = tslib_1.__decorate([
    (0, di_1.Injectable)()
], MainThreadExtensionLog);
/**
 * @deprecated
 */
function createExtensionLogFactory(rpcProtocol, injector) {
    rpcProtocol.set(extension_log_1.MainThreadExtensionLogIdentifier, injector.get(MainThreadExtensionLog));
}
//# sourceMappingURL=main.thread.log.js.map