@@ -95,7 +95,7 @@ namespace ts {
9595
9696 /*@internal */
9797 // targetSourceFile is when users only want one file in entire project to be emitted. This is used in compileOnSave feature
98- export function emitFiles ( resolver : EmitResolver , host : EmitHost , targetSourceFile : SourceFile , emitOnlyDtsFiles ?: boolean , transformers ?: TransformerFactory < SourceFile | Bundle > [ ] ) : EmitResult {
98+ export function emitFiles ( resolver : EmitResolver , host : EmitHost , targetSourceFile : SourceFile , emitOnlyDtsFiles ?: boolean , transformers ?: TransformerFactory < Bundle | SourceFile > [ ] , declarationTransformers ?: TransformerFactory < Bundle | SourceFile > [ ] ) : EmitResult {
9999 const compilerOptions = host . getCompilerOptions ( ) ;
100100 const sourceMapDataList : SourceMapData [ ] = ( compilerOptions . sourceMap || compilerOptions . inlineSourceMap || getAreDeclarationMapsEnabled ( compilerOptions ) ) ? [ ] : undefined ;
101101 const emittedFilesList : string [ ] = compilerOptions . listEmittedFiles ? [ ] : undefined ;
@@ -192,7 +192,7 @@ namespace ts {
192192 // Setup and perform the transformation to retrieve declarations from the input files
193193 const nonJsFiles = filter ( sourceFiles , isSourceFileNotJavaScript ) ;
194194 const inputListOrBundle = ( compilerOptions . outFile || compilerOptions . out ) ? [ createBundle ( nonJsFiles , ! isSourceFile ( sourceFileOrBundle ) ? sourceFileOrBundle . prepends : undefined ) ] : nonJsFiles ;
195- const declarationTransform = transformNodes ( resolver , host , compilerOptions , inputListOrBundle , [ transformDeclarations ] , /*allowDtsFiles*/ false ) ;
195+ const declarationTransform = transformNodes ( resolver , host , compilerOptions , inputListOrBundle , concatenate ( [ transformDeclarations ] , declarationTransformers ) , /*allowDtsFiles*/ false ) ;
196196 if ( length ( declarationTransform . diagnostics ) ) {
197197 for ( const diagnostic of declarationTransform . diagnostics ) {
198198 emitterDiagnostics . add ( diagnostic ) ;
0 commit comments