/** * This module defines extended Typescript options shared by multiple targets. * * @module typescript */ import { CustomTscOptions } from "./options/tsc"; import { AbsPosixPath } from "./types"; export interface TypescriptConfig { readonly tscOptions: CustomTscOptions; readonly tsconfigJson: AbsPosixPath; readonly customTypingsDir?: AbsPosixPath; readonly packageJson: AbsPosixPath; readonly buildDir: AbsPosixPath; readonly srcDir: AbsPosixPath; readonly scripts: Iterable; } export interface ResolvedTsLocations { /** * Absolute path for the directory containing the `tsconfig.json` file. */ readonly tsconfigJsonDir: AbsPosixPath; /** * Absolute path for the `tsconfig.json` file. */ readonly tsconfigJson: AbsPosixPath; /** * Root directory containing the sources, relative to `tsconfigJsonDir`. */ readonly rootDir: AbsPosixPath; /** * If the typeRoots are not just `@types`, an array of type root directories, relative to `tsconfigJsonDir`. */ readonly typeRoots: AbsPosixPath[] | undefined; /** * Directory containing the build, relative to `tsconfigJsonDir` */ readonly outDir: AbsPosixPath; /** * Patterns matching scripts to include, relative to `rootDir`. */ readonly relInclude: string[]; /** * Patterns matching scripts to exclude, relative to `rootDir`. */ readonly relExclude: string[]; /** * Patterns matching the scripts, relative to `rootDir`. */ readonly absScripts: string[]; } export declare function resolveTsLocations(options: TypescriptConfig): ResolvedTsLocations;