code: function createTypeScriptLanguageService(options) {
      // Discover referenced files
      const FILES = discoverAndReadFiles(options);
      // Add fake usage files
      options.inlineEntryPoints.forEach((inlineEntryPoint, index) => {
          FILES[`inlineEntryPoint.${index}.ts`] = inlineEntryPoint;
      });
      // Add additional typings
      options.typings.forEach((typing) => {
          const filePath = path.join(options.sourcesRoot, typing);
          FILES[typing] = fs.readFileSync(filePath).toString();
      });
      // Resolve libs
      const RESOLVED_LIBS = {};
      options.libs.forEach((filename) => {
          const filepath = path.join(TYPESCRIPT_LIB_FOLDER, filename);
          RESOLVED_LIBS[`defaultLib:${filename}`] = fs.readFileSync(filepath).toString();
      });
      const compilerOptions = ts.convertCompilerOptionsFromJson(options.compilerOptions, options.sourcesRoot).options;
      const host = new TypeScriptLanguageServiceHost(RESOLVED_LIBS, FILES, compilerOptions);
      return ts.createLanguageService(host);
  }
docs: #region Discovery, LanguageService & Setup