import { SourceFile } from './source-file'; import { JsonTextSourceFile } from './json-text-source-file'; import { PathResolver, ResolveResult } from './paths'; type Module = 'none' | 'commonjs' | 'amd' | 'system' | 'es6' | 'es2015' | 'es2020' | 'es2022' | 'esnext' | 'node16' | 'nodenext' | 'preserve'; type ModuleResolution = 'classic' | 'node10' | 'node' | 'node16' | 'nodenext' | 'bundler'; type Paths = Record>; interface CompilerOptions { module?: Module; moduleResolution?: ModuleResolution; baseUrl?: string; paths?: Paths; /** * If set, .js files will be emitted into this directory. * * If not set, .js files are placed right next to .ts files in the same * folder. * * @see https://www.typescriptlang.org/tsconfig/#outDir */ outDir?: string; /** * If not set, rootDir is inferred to be the longest common path of all * non-declaration input files, unless `composite: true`, in which case * the inferred root is the directory containing the tsconfig.json file. * * @see https://www.typescriptlang.org/tsconfig/#rootDir */ rootDir?: string; /** * Allow multiple directions to act as a single root. Source files will be * able to refer to files in other roots as if they were present in the same * root. * * @see https://www.typescriptlang.org/tsconfig/#rootDirs */ rootDirs?: string[]; /** * If true, the default rootDir is the directory containing the * tsconfig.json file. * * @see https://www.typescriptlang.org/tsconfig/#composite */ composite?: boolean; } export interface Schema { compilerOptions?: CompilerOptions; } export declare class TSConfigFile { #private; static FILENAME: string; readonly id: number; jsonFile: JsonTextSourceFile; basePath: string; moduleResolution: string; baseUrl: string; pathResolver: PathResolver; relatedSourceFiles: SourceFile[]; protected constructor(jsonFile: JsonTextSourceFile); get meta(): import("./source-file").FileMeta; static loadFromJsonTextSourceFile(jsonFile: JsonTextSourceFile): Promise; static filePath(dirPath: string): string; resolvePath(importPath: string): ResolveResult; collectLookupPaths(filePath: string): string[]; registerRelatedSourceFile(file: SourceFile): void; } export {};