"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getElementNames = getElementNames;
const language_core_1 = require("@vue/language-core");
const utils_1 = require("./utils");
function getElementNames(ts, program, fileName) {
    const sourceFile = program.getSourceFile(fileName);
    if (!sourceFile) {
        return [];
    }
    const checker = program.getTypeChecker();
    const elements = (0, utils_1.getVariableType)(ts, checker, sourceFile, language_core_1.names.intrinsics);
    if (!elements) {
        return [];
    }
    return elements.type.getProperties().map(c => c.name);
}
//# sourceMappingURL=getElementNames.js.map