build/lib/treeshaking.ts/createTypeScriptLanguageService
function createTypeScriptLanguageService(ts: typeof import('typescript'), options: ITreeShakingOptions): ts.LanguageService {
	// Discover referenced files
	const FILES = discoverAndReadFiles(ts, 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 = processLibFiles(ts, options);

	const compilerOptions = ts.convertCompilerOptionsFromJson(options.compilerOptions, options.sourcesRoot).options;

	const host = new TypeScriptLanguageServiceHost(ts, RESOLVED_LIBS, FILES, compilerOptions);
	return ts.createLanguageService(host);
}