Helpers for creation of TypeScript hosts

Downloads in past


1587.2.58 days ago4 years agoMinified + gzip package size for @file-services/typescript in KB


npm version package size
Helpers for creation of TypeScript hosts.


Install library in project:
npm i @file-services/typescript


 * Create an IBaseHost, which is actually three interfaces combined:
 * - `ts.ParseConfigHost` - for parsing of `tsconfig.json` files
 * - `ts.FormatDiagnosticsHost` - for formatting of `ts.Diagnostic` instances
 * - `ts.ModuleResolutionHost` - for resolution of imports using TypeScript's built-in mechanism
 * @param fs the file system to use as host backend
export function createBaseHost(fs: IFileSystemSync): IBaseHost;

 * Create a TypeScript `LanguageServiceHost` using provided file system.
 * @param fs the file system used as host backend
 * @param baseHost created using `createBaseHost()`
 * @param fileNames list of absolute paths to `.ts/tsx` files included in this transpilation
 * @param compilerOptions compilerOptions to use when transpiling or type checking
 * @param defaultLibsDirectory absolute path to the directory that contains TypeScript's built-in `.d.ts` files
 *                             `path.dirname(ts.getDefaultLibFilePath({}))` in node,
 *                             or custom directory with `@file-services/memory`
 * @param customTransformers optional custom transformers to apply during transpilation
export function createLanguageServiceHost(
  fs: IFileSystemSync,
  baseHost: IBaseHost,
  fileNames: string[],
  compilerOptions: ts.CompilerOptions,
  defaultLibsDirectory: string,
  customTransformers?: ts.CustomTransformers
): ts.LanguageServiceHost;