1 | import * as typescript from 'typescript';
|
2 | import { Chalk } from 'chalk';
|
3 | import * as logger from './logger';
|
4 | export interface ErrorInfo {
|
5 | code: number;
|
6 | severity: Severity;
|
7 | content: string;
|
8 | file: string;
|
9 | line: number;
|
10 | character: number;
|
11 | context: string;
|
12 | }
|
13 | export declare type FileLocation = {
|
14 | line: number;
|
15 | character: number;
|
16 | };
|
17 | export interface WebpackError {
|
18 | module?: any;
|
19 | file?: string;
|
20 | message: string;
|
21 | location?: FileLocation;
|
22 | loaderSource: string;
|
23 | }
|
24 | export interface WebpackModule {
|
25 | resource: string;
|
26 | errors: WebpackError[];
|
27 | addWarning(warning: Error): void;
|
28 | addError(error: WebpackError | Error): void;
|
29 | getWarnings(): Iterable<Error> | undefined;
|
30 | getErrors(): Iterable<WebpackError | Error> | undefined;
|
31 | clearWarningsAndErrors(): void;
|
32 | buildMeta: {
|
33 | tsLoaderFileVersion: number;
|
34 | tsLoaderDefinitionFileVersions: string[];
|
35 | };
|
36 | }
|
37 | export declare type ResolveSync = (context: string | undefined, path: string, moduleName: string) => string;
|
38 | export interface HostMayBeCacheable {
|
39 | clearCache?(): void;
|
40 | fileExistsCache?: Map<string, boolean>;
|
41 | directoryExistsCache?: Map<string, boolean>;
|
42 | realpathCache?: Map<string, string>;
|
43 | }
|
44 | export interface CacheableHost extends HostMayBeCacheable {
|
45 | fileExists: typescript.ModuleResolutionHost['fileExists'];
|
46 | directoryExists: NonNullable<typescript.ModuleResolutionHost['directoryExists']>;
|
47 | realpath?: typescript.ModuleResolutionHost['realpath'];
|
48 | }
|
49 | export interface ModuleResolutionHostMayBeCacheable extends typescript.ModuleResolutionHost, HostMayBeCacheable {
|
50 | readFile(filePath: string, encoding?: string): string | undefined;
|
51 | trace: NonNullable<typescript.ModuleResolutionHost['trace']>;
|
52 | directoryExists: NonNullable<typescript.ModuleResolutionHost['directoryExists']>;
|
53 | getCurrentDirectory: NonNullable<typescript.ModuleResolutionHost['getCurrentDirectory']>;
|
54 | getDirectories: NonNullable<typescript.ModuleResolutionHost['getDirectories']>;
|
55 | useCaseSensitiveFileNames: NonNullable<typescript.LanguageServiceHost['useCaseSensitiveFileNames']>;
|
56 | getNewLine: NonNullable<typescript.LanguageServiceHost['getNewLine']>;
|
57 | getDefaultLibFileName: NonNullable<typescript.LanguageServiceHost['getDefaultLibFileName']>;
|
58 | readDirectory: NonNullable<typescript.LanguageServiceHost['readDirectory']>;
|
59 | }
|
60 | export interface ServiceHostWhichMayBeCacheable extends typescript.LanguageServiceHost, HostMayBeCacheable {
|
61 | }
|
62 | export interface WatchHost extends typescript.WatchCompilerHostOfFilesAndCompilerOptions<typescript.EmitAndSemanticDiagnosticsBuilderProgram> {
|
63 | invokeFileWatcher: WatchFactory['invokeFileWatcher'];
|
64 | updateRootFileNames(): void;
|
65 | outputFiles: Map<FilePathKey, typescript.OutputFile[]>;
|
66 | tsbuildinfo?: typescript.OutputFile;
|
67 | }
|
68 | export declare type WatchCallbacks<T> = Map<FilePathKey, {
|
69 | fileName: string;
|
70 | callbacks: T[];
|
71 | }>;
|
72 | export interface WatchFactory {
|
73 | watchedFiles: WatchCallbacks<typescript.FileWatcherCallback>;
|
74 | watchedDirectories: WatchCallbacks<typescript.DirectoryWatcherCallback>;
|
75 | watchedDirectoriesRecursive: WatchCallbacks<typescript.DirectoryWatcherCallback>;
|
76 | invokeFileWatcher(fileName: string, eventKind: typescript.FileWatcherEventKind): boolean;
|
77 |
|
78 | watchFile: typescript.WatchHost['watchFile'];
|
79 |
|
80 | watchDirectory: typescript.WatchHost['watchDirectory'];
|
81 | }
|
82 | export interface SolutionDiagnostics {
|
83 | global: typescript.Diagnostic[];
|
84 | perFile: Map<FilePathKey, typescript.Diagnostic[]>;
|
85 | transpileErrors: [FilePathKey | undefined, typescript.Diagnostic[]][];
|
86 | }
|
87 | export declare type FilePathKey = string & {
|
88 | __filePathKeyBrand: any;
|
89 | };
|
90 | export interface SolutionBuilderWithWatchHost extends typescript.SolutionBuilderWithWatchHost<typescript.EmitAndSemanticDiagnosticsBuilderProgram>, WatchFactory {
|
91 | diagnostics: SolutionDiagnostics;
|
92 | writtenFiles: typescript.OutputFile[];
|
93 | configFileInfo: Map<FilePathKey, ConfigFileInfo>;
|
94 | outputAffectingInstanceVersion: Map<FilePathKey, true>;
|
95 | getInputFileStamp(fileName: string): Date;
|
96 | updateSolutionBuilderInputFile(fileName: string): void;
|
97 | getOutputFileKeyFromReferencedProject(outputFileName: string): FilePathKey | undefined;
|
98 | getOutputFileAndKeyFromReferencedProject(oututFileName: string): {
|
99 | key: FilePathKey;
|
100 | outputFile: string | false;
|
101 | } | undefined;
|
102 | getOutputFileTextAndKeyFromReferencedProject(oututFileName: string): {
|
103 | key: FilePathKey;
|
104 | text: string | undefined;
|
105 | } | undefined;
|
106 | getInputFileNameFromOutput(outputFileName: string): string | undefined;
|
107 | getOutputFilesFromReferencedProjectInput(inputFileName: string): typescript.OutputFile[];
|
108 | buildReferences(): void;
|
109 | ensureAllReferenceTimestamps(): void;
|
110 | clearCache(): void;
|
111 | close(): void;
|
112 | }
|
113 | export interface ConfigFileInfo {
|
114 | config: typescript.ParsedCommandLine | undefined;
|
115 | outputFileNames?: Map<FilePathKey, {
|
116 | inputFileName: string;
|
117 | outputNames: string[];
|
118 | }>;
|
119 | tsbuildInfoFile?: string;
|
120 | dtsFiles?: string[];
|
121 | }
|
122 | export interface TSInstance {
|
123 | compiler: typeof typescript;
|
124 | compilerOptions: typescript.CompilerOptions;
|
125 |
|
126 | appendTsTsxSuffixesIfRequired: (filePath: string) => string;
|
127 | loaderOptions: LoaderOptions;
|
128 | rootFileNames: Set<string>;
|
129 | |
130 |
|
131 |
|
132 | files: TSFiles;
|
133 | |
134 |
|
135 |
|
136 | modifiedFiles?: Map<FilePathKey, true>;
|
137 | |
138 |
|
139 |
|
140 |
|
141 |
|
142 | projectsMissingSourceMaps?: Set<string>;
|
143 | servicesHost?: ServiceHostWhichMayBeCacheable;
|
144 | languageService?: typescript.LanguageService | null;
|
145 | version: number;
|
146 | dependencyGraph: DependencyGraph;
|
147 | filesWithErrors?: TSFiles;
|
148 | transformers: typescript.CustomTransformers;
|
149 | colors: Chalk;
|
150 | otherFiles: TSFiles;
|
151 | watchHost?: WatchHost;
|
152 | watchOfFilesAndCompilerOptions?: typescript.WatchOfFilesAndCompilerOptions<typescript.EmitAndSemanticDiagnosticsBuilderProgram>;
|
153 | builderProgram?: typescript.EmitAndSemanticDiagnosticsBuilderProgram;
|
154 | program?: typescript.Program;
|
155 | hasUnaccountedModifiedFiles?: boolean;
|
156 | changedFilesList?: boolean;
|
157 | reportTranspileErrors?: boolean;
|
158 | solutionBuilderHost?: SolutionBuilderWithWatchHost;
|
159 | configFilePath: string | undefined;
|
160 | filePathKeyMapper: (fileName: string) => FilePathKey;
|
161 | initialSetupPending: boolean;
|
162 | configParseResult: typescript.ParsedCommandLine;
|
163 | log: logger.Logger;
|
164 | }
|
165 | export interface LoaderOptionsCache {
|
166 | [name: string]: WeakMap<LoaderOptions, LoaderOptions>;
|
167 | }
|
168 | export declare type DependencyGraph = Map<FilePathKey, ResolvedModule[]>;
|
169 | export declare type ReverseDependencyGraph = Map<FilePathKey, Map<FilePathKey, true>>;
|
170 | export declare type LogLevel = 'INFO' | 'WARN' | 'ERROR';
|
171 | export declare type ResolveModuleName = (moduleName: string, containingFile: string, compilerOptions: typescript.CompilerOptions, moduleResolutionHost: typescript.ModuleResolutionHost) => typescript.ResolvedModuleWithFailedLookupLocations;
|
172 | export declare type CustomResolveModuleName = (moduleName: string, containingFile: string, compilerOptions: typescript.CompilerOptions, moduleResolutionHost: typescript.ModuleResolutionHost, parentResolver: ResolveModuleName) => typescript.ResolvedModuleWithFailedLookupLocations;
|
173 | export declare type CustomResolveTypeReferenceDirective = (typeDirectiveName: string, containingFile: string, compilerOptions: typescript.CompilerOptions, moduleResolutionHost: typescript.ModuleResolutionHost, parentResolver: typeof typescript.resolveTypeReferenceDirective) => typescript.ResolvedTypeReferenceDirectiveWithFailedLookupLocations;
|
174 | export interface LoaderOptions {
|
175 | silent: boolean;
|
176 | logLevel: LogLevel;
|
177 | logInfoToStdOut: boolean;
|
178 | instance: string;
|
179 | compiler: string;
|
180 | configFile: string;
|
181 | context: string;
|
182 | transpileOnly: boolean;
|
183 | ignoreDiagnostics: number[];
|
184 | reportFiles: string[];
|
185 | errorFormatter: (message: ErrorInfo, colors: Chalk) => string;
|
186 | onlyCompileBundledFiles: boolean;
|
187 | colors: boolean;
|
188 | compilerOptions: typescript.CompilerOptions;
|
189 | appendTsSuffixTo: (RegExp | string)[];
|
190 | appendTsxSuffixTo: (RegExp | string)[];
|
191 | happyPackMode: boolean;
|
192 | getCustomTransformers: string | ((program: typescript.Program) => typescript.CustomTransformers | undefined);
|
193 | experimentalWatchApi: boolean;
|
194 | allowTsInNodeModules: boolean;
|
195 | experimentalFileCaching: boolean;
|
196 | projectReferences: boolean;
|
197 | resolveModuleName: CustomResolveModuleName;
|
198 | resolveTypeReferenceDirective: CustomResolveTypeReferenceDirective;
|
199 | useCaseSensitiveFileNames?: boolean;
|
200 | }
|
201 | export interface TSFile {
|
202 | fileName: string;
|
203 | text?: string;
|
204 | version: number;
|
205 | modifiedTime?: Date;
|
206 | projectReference?: {
|
207 | /**
|
208 | * Undefined here means we’ve already checked and confirmed there is no
|
209 | * project reference for the file. Don’t bother checking again.
|
210 | */
|
211 | project?: typescript.ResolvedProjectReference;
|
212 | outputFileName?: string;
|
213 | };
|
214 | }
|
215 | /** where key is filepath */
|
216 | export declare type TSFiles = Map<FilePathKey, TSFile>;
|
217 | export interface ResolvedModule {
|
218 | originalFileName: string;
|
219 | resolvedFileName: string;
|
220 | resolvedModule?: ResolvedModule;
|
221 | isExternalLibraryImport?: boolean;
|
222 | }
|
223 | export declare type Severity = 'error' | 'warning';
|
224 | //# sourceMappingURL=interfaces.d.ts.map |
\ | No newline at end of file |