"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.default = CompileMcxProject;
const utils_js_1 = __importDefault(require("./../utils.js"));
/*import _compile from "./_compile.js"*/
/**
 * @description - this is a function factory to generate mcxProject
 */
function CompileMcxProject(BuildOpt) {
    return (new Compile(BuildOpt)).start();
}
class Compile {
    BuildOpt;
    constructor(BuildOpt) {
        this.BuildOpt = BuildOpt;
        // 类型验证
        if (!utils_js_1.default.TypeVerify(this.BuildOpt, {
            cacheDir: "string",
            main: "string",
            moduleDir: "string",
            output: "string",
            isCache: "boolean"
        })) {
            throw new TypeError("[compile checker]Input Opt is not right");
        }
        ;
    }
    async start() {
        /*await (new _compile(this.BuildOpt)).compile();*/
    }
}
