UNPKG

1.4 kBTypeScriptView Raw
1/// <amd-module name="@angular/compiler-cli/src/perform_watch" />
2import * as ts from 'typescript';
3import { Diagnostics, ParsedConfiguration } from './perform_compile';
4import * as api from './transformers/api';
5export declare enum FileChangeEvent {
6 Change = 0,
7 CreateDelete = 1,
8 CreateDeleteDir = 2,
9}
10export interface PerformWatchHost {
11 reportDiagnostics(diagnostics: Diagnostics): void;
12 readConfiguration(): ParsedConfiguration;
13 createCompilerHost(options: api.CompilerOptions): api.CompilerHost;
14 createEmitCallback(options: api.CompilerOptions): api.TsEmitCallback | undefined;
15 onFileChange(options: api.CompilerOptions, listener: (event: FileChangeEvent, fileName: string) => void, ready: () => void): {
16 close: () => void;
17 };
18 setTimeout(callback: () => void, ms: number): any;
19 clearTimeout(timeoutId: any): void;
20}
21export declare function createPerformWatchHost(configFileName: string, reportDiagnostics: (diagnostics: Diagnostics) => void, existingOptions?: ts.CompilerOptions, createEmitCallback?: (options: api.CompilerOptions) => api.TsEmitCallback | undefined): PerformWatchHost;
22/**
23 * The logic in this function is adapted from `tsc.ts` from TypeScript.
24 */
25export declare function performWatchCompilation(host: PerformWatchHost): {
26 close: () => void;
27 ready: (cb: () => void) => void;
28 firstCompileResult: Diagnostics;
29};