jsii
Version:
[](https://cdk.dev) [;
/**
* Compiles the configured program.
*
* @param files can be specified to override the standard source code location logic. Useful for example when testing "negatives".
*/
emit(...files: string[]): ts.EmitResult;
/**
* Watches for file-system changes and dynamically recompiles the project as needed. In blocking mode, this results
* in a never-resolving promise.
*/
watch(): Promise<never>;
/**
* Prepares the project for build, by creating the necessary configuration
* file(s), and assigning the relevant root file(s).
*
* @param files the files that were specified as input in the CLI invocation.
*/
private configureTypeScript;
/**
* Final preparations of the project for build.
*
* These are preparations that either
* - must happen immediately before the build, or
* - can be different for every build like assigning the relevant root file(s).
*
* @param files the files that were specified as input in the CLI invocation.
*/
private prepareForBuild;
/**
* Do a single build
*/
private buildOnce;
private consumeProgram;
/**
* Build the TypeScript config object from jsii config
*
* This is the object that will be written to disk
* unless an existing tsconfig was provided.
*/
private buildTypeScriptConfig;
/**
* Load the TypeScript config object from a provided file
*/
private readTypeScriptConfig;
/**
* Creates a `tsconfig.json` file to improve the IDE experience.
*
* @return the fully qualified path to the `tsconfig.json` file
*/
private writeTypeScriptConfig;
/**
* Find all dependencies that look like TypeScript projects.
*
* Enumerate all dependencies, if they have a tsconfig.json file with
* "composite: true" we consider them project references.
*
* (Note: TypeScript seems to only correctly find transitive project references
* if there's an "index" tsconfig.json of all projects somewhere up the directory
* tree)
*/
private findProjectReferences;
/**
* Find source files using the same mechanism that the TypeScript compiler itself uses.
*
* Respects includes/excludes/etc.
*
* This makes it so that running 'typescript' and running 'jsii' has the same behavior.
*/
private determineSources;
/**
* Resolve the given dependency name from the current package, and find the associated tsconfig.json location
*
* Because we have the following potential directory layout:
*
* package/node_modules/some_dependency
* package/tsconfig.json
*
* We resolve symlinks and only find a "TypeScript" dependency if doesn't have 'node_modules' in
* the path after resolving symlinks (i.e., if it's a peer package in the same monorepo).
*
* Returns undefined if no such tsconfig could be found.
*/
private findMonorepoPeerTsconfig;
private diagsHaveAbortableErrors;
}
//# sourceMappingURL=compiler.d.ts.map