@angular/tsc-wrapped
Version:
Wraps the tsc CLI, allowing extensions.
41 lines (40 loc) • 1.73 kB
TypeScript
import * as ts from 'typescript';
import AngularCompilerOptions from './options';
import { VinylFile } from './vinyl_file';
/**
* Our interface to the TypeScript standard compiler.
* If you write an Angular compiler plugin for another build tool,
* you should implement a similar interface.
*/
export interface CompilerInterface {
readConfiguration(project: string | VinylFile, basePath: string, existingOptions?: ts.CompilerOptions): {
parsed: ts.ParsedCommandLine;
ngOptions: AngularCompilerOptions;
};
typeCheck(compilerHost: ts.CompilerHost, program: ts.Program): void;
emit(program: ts.Program): number;
}
export declare class UserError extends Error {
private _nativeError;
constructor(message: string);
message: string;
name: string;
stack: any;
toString(): string;
}
export declare function formatDiagnostics(diags: ts.Diagnostic[]): string;
export declare function check(diags: ts.Diagnostic[]): void;
export declare function validateAngularCompilerOptions(options: AngularCompilerOptions): ts.Diagnostic[];
export declare class Tsc implements CompilerInterface {
private readFile;
private readDirectory;
private parseConfigHost;
constructor(readFile?: (path: string, encoding?: string) => string, readDirectory?: (path: string, extensions?: string[], exclude?: string[], include?: string[]) => string[]);
readConfiguration(project: string | VinylFile, basePath: string, existingOptions?: ts.CompilerOptions): {
parsed: ts.ParsedCommandLine;
ngOptions: any;
};
typeCheck(compilerHost: ts.CompilerHost, program: ts.Program): void;
emit(program: ts.Program): number;
}
export declare const tsc: CompilerInterface;