loadConfiguredProject(project, reason) {
    var _a2, _b;
    (_a2 = tracing) == null ? void 0 : _a2.push(tracing.Phase.Session, "loadConfiguredProject", { configFilePath: project.canonicalConfigFilePath });
    this.sendProjectLoadingStartEvent(project, reason);
    const configFilename = asNormalizedPath(normalizePath(project.getConfigFilePath()));
    const configFileExistenceInfo = this.ensureParsedConfigUptoDate(
      configFilename,
      project.canonicalConfigFilePath,
      this.configFileExistenceInfoCache.get(project.canonicalConfigFilePath),
      project
    );
    const parsedCommandLine = configFileExistenceInfo.config.parsedCommandLine;
    Debug.assert(!!parsedCommandLine.fileNames);
    const compilerOptions = parsedCommandLine.options;
    if (!project.projectOptions) {
      project.projectOptions = {
        configHasExtendsProperty: parsedCommandLine.raw.extends !== void 0,
        configHasFilesProperty: parsedCommandLine.raw.files !== void 0,
        configHasIncludeProperty: parsedCommandLine.raw.include !== void 0,
        configHasExcludeProperty: parsedCommandLine.raw.exclude !== void 0
      };
    }
    project.canConfigFileJsonReportNoInputFiles = canJsonReportNoInputFiles(parsedCommandLine.raw);
    project.setProjectErrors(parsedCommandLine.options.configFile.parseDiagnostics);
    project.updateReferences(parsedCommandLine.projectReferences);
    const lastFileExceededProgramSize = this.getFilenameForExceededTotalSizeLimitForNonTsFiles(project.canonicalConfigFilePath, compilerOptions, parsedCommandLine.fileNames, fileNamePropertyReader);
    if (lastFileExceededProgramSize) {
      project.disableLanguageService(lastFileExceededProgramSize);
      this.configFileExistenceInfoCache.forEach((_configFileExistenceInfo, canonicalConfigFilePath) => this.stopWatchingWildCards(canonicalConfigFilePath, project));
    } else {
      project.setCompilerOptions(compilerOptions);
      project.setWatchOptions(parsedCommandLine.watchOptions);
      project.enableLanguageService();
      this.watchWildcards(configFilename, configFileExistenceInfo, project);
    }
    project.enablePluginsWithOptions(compilerOptions, this.currentPluginConfigOverrides);
    const filesToAdd = parsedCommandLine.fileNames.concat(project.getExternalFiles());
    this.updateRootAndOptionsOfNonInferredProject(project, filesToAdd, fileNamePropertyReader, compilerOptions, parsedCommandLine.typeAcquisition, parsedCommandLine.compileOnSave, parsedCommandLine.watchOptions);
    (_b = tracing) == null ? void 0 : _b.pop();
  }
Read the config file of the project, and update the project root file names.

@internal