You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
1.0 KiB
28 lines
1.0 KiB
/** |
|
* Typing for the parts of tsconfig that we care about |
|
*/ |
|
export interface Tsconfig { |
|
extends?: string; |
|
compilerOptions?: { |
|
baseUrl?: string; |
|
paths?: { |
|
[key: string]: Array<string>; |
|
}; |
|
strict?: boolean; |
|
}; |
|
} |
|
export interface TsConfigLoaderResult { |
|
tsConfigPath: string | undefined; |
|
baseUrl: string | undefined; |
|
paths: { |
|
[key: string]: Array<string>; |
|
} | undefined; |
|
} |
|
export interface TsConfigLoaderParams { |
|
getEnv: (key: string) => string | undefined; |
|
cwd: string; |
|
loadSync?(cwd: string, filename?: string, baseUrl?: string): TsConfigLoaderResult; |
|
} |
|
export declare function tsConfigLoader({ getEnv, cwd, loadSync, }: TsConfigLoaderParams): TsConfigLoaderResult; |
|
export declare function walkForTsConfig(directory: string, existsSync?: (path: string) => boolean): string | undefined; |
|
export declare function loadTsconfig(configFilePath: string, existsSync?: (path: string) => boolean, readFileSync?: (filename: string) => string): Tsconfig | undefined;
|
|
|