@@ -14,8 +14,13 @@ import type { Options } from "../options";
1414import { checker } from "../checker" ;
1515import * as logger from "../logger" ;
1616import { withEnv } from "../env" ;
17- import { importEqualsTransformer , legacyModules } from "../parse/transformers" ;
17+ import {
18+ importEqualsTransformer ,
19+ legacyModules ,
20+ declarationFileTransform ,
21+ } from "../parse/transformers" ;
1822import { recursiveWalkTree } from "../parse" ;
23+ import { printFlowGenHelper } from "../printers/node" ;
1924
2025const compile = withEnv < any , [ SourceFile ] , string > (
2126 ( env : any , sourceFile : SourceFile ) : string => {
@@ -28,7 +33,9 @@ const compile = withEnv<any, [SourceFile], string>(
2833 } )
2934 . join ( "" ) ;
3035
31- return output ;
36+ const helpersOutputs = printFlowGenHelper ( env ) ;
37+
38+ return `${ helpersOutputs } \n\n${ output } ` ;
3239 } ,
3340) ;
3441
@@ -40,7 +47,11 @@ const reset = (options?: Options): void => {
4047 namespaceManager . reset ( ) ;
4148} ;
4249
43- const transformers = [ legacyModules ( ) , importEqualsTransformer ( ) ] ;
50+ const getTransformers = ( options ?: Options ) => [
51+ legacyModules ( ) ,
52+ importEqualsTransformer ( ) ,
53+ declarationFileTransform ( options ) ,
54+ ] ;
4455
4556/**
4657 * Compiles typescript files
@@ -54,8 +65,8 @@ export default {
5465 checker . current = typeChecker ;
5566 } ,
5667
57- getTransformers ( ) {
58- return transformers ;
68+ getTransformers ( options ?: Options ) {
69+ return getTransformers ( options ) ;
5970 } ,
6071
6172 compileTest : ( path : string , target : string ) : void => {
@@ -76,7 +87,7 @@ export default {
7687 return transform (
7788 //$todo Flow has problems when switching variables instead of literals
7889 createSourceFile ( "/dev/null" , string , languageVersion , true ) ,
79- transformers ,
90+ getTransformers ( options ) ,
8091 compilerOptions ,
8192 ) . transformed [ 0 ] ;
8293 }
@@ -124,7 +135,7 @@ export default {
124135 languageVersion ,
125136 true ,
126137 ) ,
127- transformers ,
138+ getTransformers ( options ) ,
128139 compilerOptions ,
129140 ) . transformed [ 0 ] ;
130141 }
@@ -170,7 +181,7 @@ export default {
170181 languageVersion ,
171182 true ,
172183 ) ,
173- transformers ,
184+ getTransformers ( options ) ,
174185 compilerOptions ,
175186 ) . transformed [ 0 ] ;
176187 }
0 commit comments