"use strict";
var CodiacClientConfig_1;
Object.defineProperty(exports, "__esModule", { value: true });
exports.CodiacClientConfig = void 0;
const tslib_1 = require("tslib");
const os = require("os");
const path = require("path");
const inversify_1 = require("inversify");
const config_loader_1 = require("../common/config-loader");
/** The in-memory representation of the api client config file.
 */
let CodiacClientConfig = CodiacClientConfig_1 = class CodiacClientConfig {
    static load() {
        const os = require('os');
        let cfg = this.loader.load(); // yeah this is real helpful - maybe we should just accept the .loader.load() syntax and expose the loader itself?
        return cfg;
    }
    constructor() {
    }
};
CodiacClientConfig.CONFIG_PATH = path.posix.join(os.homedir(), `.config`, `codiac-api-client`);
CodiacClientConfig.CONFIG_FILENAME = "config.json";
CodiacClientConfig.loader = new config_loader_1.ConfigLoader(CodiacClientConfig_1.CONFIG_PATH, CodiacClientConfig_1.CONFIG_FILENAME);
CodiacClientConfig = CodiacClientConfig_1 = tslib_1.__decorate([
    (0, inversify_1.injectable)(),
    tslib_1.__metadata("design:paramtypes", [])
], CodiacClientConfig);
exports.CodiacClientConfig = CodiacClientConfig;
//# sourceMappingURL=client-config.js.map