ngc-webpack
Version:
A wrapper for the @ngtools/webpack with hooks into the compilation process
28 lines (27 loc) • 1.25 kB
TypeScript
import * as ts from 'typescript';
import { NgcWebpackPluginOptions } from './plugin-options';
export interface NgcCompilerHost extends ts.CompilerHost {
resourceLoader?: {
get(filePath: string): Promise<string>;
};
readResource?(fileName: string): Promise<string> | string;
}
export interface NgcCompilerExecutionHost {
execute(compiler: any): void;
compilerHost: NgcCompilerHost;
transformers: ts.TransformerFactory<ts.SourceFile>[];
hookOverride?: {
[K in keyof NgcWebpackPluginOptions]?: (opt: NgcWebpackPluginOptions[K]) => void;
};
}
export declare function createAngularCompilerPluginExecutionHost(options: NgcWebpackPluginOptions): NgcCompilerExecutionHost;
export declare class NgcWebpackPlugin {
readonly ngcWebpackPluginOptions: NgcWebpackPluginOptions;
private executionHostFactory;
constructor(options: NgcWebpackPluginOptions, executionHostFactory?: (options: NgcWebpackPluginOptions) => NgcCompilerExecutionHost);
apply(compiler: any): void;
static clone(plugin: NgcWebpackPlugin, overwrite: {
options?: Partial<NgcWebpackPluginOptions>;
executionHostFactory?: (options: NgcWebpackPluginOptions) => NgcCompilerExecutionHost;
}): NgcWebpackPlugin;
}