type-fest 3.4.0 → 3.5.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.d.ts +1 -0
- package/package.json +1 -1
- package/readme.md +2 -1
- package/source/camel-case.d.ts +3 -1
- package/source/conditional-pick-deep.d.ts +1 -1
- package/source/except.d.ts +1 -1
- package/source/includes.d.ts +1 -1
- package/source/internal.d.ts +0 -12
- package/source/is-equal.d.ts +30 -0
- package/source/join.d.ts +2 -2
- package/source/multidimensional-array.d.ts +2 -1
- package/source/multidimensional-readonly-array.d.ts +2 -1
- package/source/package-json.d.ts +12 -11
- package/source/tsconfig-json.d.ts +37 -93
package/index.d.ts
CHANGED
|
@@ -74,6 +74,7 @@ export type {RequiredKeysOf} from './source/required-keys-of';
|
|
|
74
74
|
export type {HasRequiredKeys} from './source/has-required-keys';
|
|
75
75
|
export type {Spread} from './source/spread';
|
|
76
76
|
export type {TupleToUnion} from './source/tuple-to-union';
|
|
77
|
+
export type {IsEqual} from './source/is-equal';
|
|
77
78
|
|
|
78
79
|
// Template literal types
|
|
79
80
|
export type {CamelCase} from './source/camel-case';
|
package/package.json
CHANGED
package/readme.md
CHANGED
|
@@ -169,6 +169,7 @@ Click the type names for complete docs.
|
|
|
169
169
|
- [`RequiredKeysOf`](source/required-keys-of.d.ts) - Extract all required keys from the given type.
|
|
170
170
|
- [`HasRequiredKeys`](source/has-required-keys.d.ts) - Create a `true`/`false` type depending on whether the given type has any required fields.
|
|
171
171
|
- [`Spread`](source/spread.d.ts) - Mimic the type inferred by TypeScript when merging two objects or two arrays/tuples using the spread syntax.
|
|
172
|
+
- [`IsEqual`](source/is-equal.d.ts) - Returns a boolean for whether the two given types are equal.
|
|
172
173
|
|
|
173
174
|
### JSON
|
|
174
175
|
|
|
@@ -237,7 +238,7 @@ Click the type names for complete docs.
|
|
|
237
238
|
### Miscellaneous
|
|
238
239
|
|
|
239
240
|
- [`GlobalThis`](source/global-this.d.ts) - Declare locally scoped properties on `globalThis`.
|
|
240
|
-
- [`PackageJson`](source/package-json.d.ts) - Type for [npm's `package.json` file](https://docs.npmjs.com/creating-a-package-json-file). It also includes support for [TypeScript Declaration Files](https://www.typescriptlang.org/docs/handbook/declaration-files/publishing.html)
|
|
241
|
+
- [`PackageJson`](source/package-json.d.ts) - Type for [npm's `package.json` file](https://docs.npmjs.com/creating-a-package-json-file). It also includes support for [TypeScript Declaration Files](https://www.typescriptlang.org/docs/handbook/declaration-files/publishing.html).
|
|
241
242
|
- [`TsConfigJson`](source/tsconfig-json.d.ts) - Type for [TypeScript's `tsconfig.json` file](https://www.typescriptlang.org/docs/handbook/tsconfig-json.html).
|
|
242
243
|
|
|
243
244
|
## Declined types
|
package/source/camel-case.d.ts
CHANGED
|
@@ -74,5 +74,7 @@ const dbResult: CamelCasedProperties<RawOptions> = {
|
|
|
74
74
|
@category Template literal
|
|
75
75
|
*/
|
|
76
76
|
export type CamelCase<Type, Options extends CamelCaseOptions = {preserveConsecutiveUppercase: true}> = Type extends string
|
|
77
|
-
?
|
|
77
|
+
? string extends Type
|
|
78
|
+
? Type
|
|
79
|
+
: Uncapitalize<CamelCaseFromArray<SplitWords<Type extends Uppercase<Type> ? Lowercase<Type> : Type>, Options>>
|
|
78
80
|
: Type;
|
package/source/except.d.ts
CHANGED
package/source/includes.d.ts
CHANGED
package/source/internal.d.ts
CHANGED
|
@@ -1,18 +1,6 @@
|
|
|
1
1
|
import type {Primitive} from './primitive';
|
|
2
2
|
import type {Simplify} from './simplify';
|
|
3
3
|
|
|
4
|
-
/**
|
|
5
|
-
Returns a boolean for whether the two given types are equal.
|
|
6
|
-
|
|
7
|
-
@link https://github.com/microsoft/TypeScript/issues/27024#issuecomment-421529650
|
|
8
|
-
@link https://stackoverflow.com/questions/68961864/how-does-the-equals-work-in-typescript/68963796#68963796
|
|
9
|
-
*/
|
|
10
|
-
export type IsEqual<T, U> =
|
|
11
|
-
(<G>() => G extends T ? 1 : 2) extends
|
|
12
|
-
(<G>() => G extends U ? 1 : 2)
|
|
13
|
-
? true
|
|
14
|
-
: false;
|
|
15
|
-
|
|
16
4
|
/**
|
|
17
5
|
Infer the length of the given array `<T>`.
|
|
18
6
|
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
/**
|
|
2
|
+
Returns a boolean for whether the two given types are equal.
|
|
3
|
+
|
|
4
|
+
@link https://github.com/microsoft/TypeScript/issues/27024#issuecomment-421529650
|
|
5
|
+
@link https://stackoverflow.com/questions/68961864/how-does-the-equals-work-in-typescript/68963796#68963796
|
|
6
|
+
|
|
7
|
+
Use-cases:
|
|
8
|
+
- If you want to make a conditional branch based on the result of a comparison of two types.
|
|
9
|
+
|
|
10
|
+
@example
|
|
11
|
+
```
|
|
12
|
+
import type {IsEqual} from 'type-fest';
|
|
13
|
+
|
|
14
|
+
// This type returns a boolean for whether the given array includes the given item.
|
|
15
|
+
// `IsEqual` is used to compare the given array at position 0 and the given item and then return true if they are equal.
|
|
16
|
+
type Includes<Value extends readonly any[], Item> =
|
|
17
|
+
Value extends readonly [Value[0], ...infer rest]
|
|
18
|
+
? IsEqual<Value[0], Item> extends true
|
|
19
|
+
? true
|
|
20
|
+
: Includes<rest, Item>
|
|
21
|
+
: false;
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
@category Utilities
|
|
25
|
+
*/
|
|
26
|
+
export type IsEqual<A, B> =
|
|
27
|
+
(<G>() => G extends A ? 1 : 2) extends
|
|
28
|
+
(<G>() => G extends B ? 1 : 2)
|
|
29
|
+
? true
|
|
30
|
+
: false;
|
package/source/join.d.ts
CHANGED
|
@@ -21,13 +21,13 @@ const path: Join<[1, 2, 3], '.'> = [1, 2, 3].join('.');
|
|
|
21
21
|
@category Template literal
|
|
22
22
|
*/
|
|
23
23
|
export type Join<
|
|
24
|
-
Strings extends Array<string | number
|
|
24
|
+
Strings extends Readonly<Array<string | number>>,
|
|
25
25
|
Delimiter extends string,
|
|
26
26
|
> = Strings extends []
|
|
27
27
|
? ''
|
|
28
28
|
: Strings extends [string | number]
|
|
29
29
|
? `${Strings[0]}`
|
|
30
|
-
: Strings extends [
|
|
30
|
+
: Strings extends readonly [
|
|
31
31
|
string | number,
|
|
32
32
|
...infer Rest extends Array<string | number>,
|
|
33
33
|
]
|
package/source/package-json.d.ts
CHANGED
|
@@ -294,7 +294,7 @@ declare namespace PackageJson {
|
|
|
294
294
|
};
|
|
295
295
|
|
|
296
296
|
/**
|
|
297
|
-
An alternative configuration for
|
|
297
|
+
An alternative configuration for workspaces.
|
|
298
298
|
*/
|
|
299
299
|
export type WorkspaceConfig = {
|
|
300
300
|
/**
|
|
@@ -305,7 +305,8 @@ declare namespace PackageJson {
|
|
|
305
305
|
/**
|
|
306
306
|
Designed to solve the problem of packages which break when their `node_modules` are moved to the root workspace directory - a process known as hoisting. For these packages, both within your workspace, and also some that have been installed via `node_modules`, it is important to have a mechanism for preventing the default Yarn workspace behavior. By adding workspace pattern strings here, Yarn will resume non-workspace behavior for any package which matches the defined patterns.
|
|
307
307
|
|
|
308
|
-
[
|
|
308
|
+
[Supported](https://classic.yarnpkg.com/blog/2018/02/15/nohoist/) by Yarn.
|
|
309
|
+
[Not supported](https://github.com/npm/rfcs/issues/287) by npm.
|
|
309
310
|
*/
|
|
310
311
|
nohoist?: WorkspacePattern[];
|
|
311
312
|
};
|
|
@@ -322,15 +323,6 @@ declare namespace PackageJson {
|
|
|
322
323
|
type WorkspacePattern = string;
|
|
323
324
|
|
|
324
325
|
export type YarnConfiguration = {
|
|
325
|
-
/**
|
|
326
|
-
Used to configure [Yarn workspaces](https://classic.yarnpkg.com/docs/workspaces/).
|
|
327
|
-
|
|
328
|
-
Workspaces allow you to manage multiple packages within the same repository in such a way that you only need to run `yarn install` once to install all of them in a single pass.
|
|
329
|
-
|
|
330
|
-
Please note that the top-level `private` property of `package.json` **must** be set to `true` in order to use workspaces.
|
|
331
|
-
*/
|
|
332
|
-
workspaces?: WorkspacePattern[] | WorkspaceConfig;
|
|
333
|
-
|
|
334
326
|
/**
|
|
335
327
|
If your package only allows one version of a given dependency, and you’d like to enforce the same behavior as `yarn install --flat` on the command-line, set this to `true`.
|
|
336
328
|
|
|
@@ -624,6 +616,15 @@ declare namespace PackageJson {
|
|
|
624
616
|
*/
|
|
625
617
|
url: string;
|
|
626
618
|
};
|
|
619
|
+
|
|
620
|
+
/**
|
|
621
|
+
Used to configure [npm workspaces](https://docs.npmjs.com/cli/using-npm/workspaces) / [Yarn workspaces](https://classic.yarnpkg.com/docs/workspaces/).
|
|
622
|
+
|
|
623
|
+
Workspaces allow you to manage multiple packages within the same repository in such a way that you only need to run your install command once in order to install all of them in a single pass.
|
|
624
|
+
|
|
625
|
+
Please note that the top-level `private` property of `package.json` **must** be set to `true` in order to use workspaces.
|
|
626
|
+
*/
|
|
627
|
+
workspaces?: WorkspacePattern[] | WorkspaceConfig;
|
|
627
628
|
}
|
|
628
629
|
|
|
629
630
|
/**
|
|
@@ -52,6 +52,7 @@ declare namespace TsConfigJson {
|
|
|
52
52
|
| 'ES2019'
|
|
53
53
|
| 'ES2020'
|
|
54
54
|
| 'ES2021'
|
|
55
|
+
| 'ES2022'
|
|
55
56
|
| 'ESNext'
|
|
56
57
|
// Lowercase alternatives
|
|
57
58
|
| 'es3'
|
|
@@ -64,6 +65,7 @@ declare namespace TsConfigJson {
|
|
|
64
65
|
| 'es2019'
|
|
65
66
|
| 'es2020'
|
|
66
67
|
| 'es2021'
|
|
68
|
+
| 'es2022'
|
|
67
69
|
| 'esnext';
|
|
68
70
|
|
|
69
71
|
export type Lib =
|
|
@@ -221,6 +223,21 @@ declare namespace TsConfigJson {
|
|
|
221
223
|
| 'useFsEventsOnParentDirectory'
|
|
222
224
|
| 'fixedChunkSizePolling';
|
|
223
225
|
|
|
226
|
+
export type ModuleResolution =
|
|
227
|
+
| 'classic'
|
|
228
|
+
| 'node'
|
|
229
|
+
| 'node16'
|
|
230
|
+
| 'nodenext'
|
|
231
|
+
// Pascal-cased alternatives
|
|
232
|
+
| 'Classic'
|
|
233
|
+
| 'Node'
|
|
234
|
+
| 'Node16'
|
|
235
|
+
| 'NodeNext';
|
|
236
|
+
|
|
237
|
+
export type ModuleDetection =
|
|
238
|
+
| 'auto'
|
|
239
|
+
| 'legacy'
|
|
240
|
+
| 'force';
|
|
224
241
|
}
|
|
225
242
|
|
|
226
243
|
export type CompilerOptions = {
|
|
@@ -247,8 +264,6 @@ declare namespace TsConfigJson {
|
|
|
247
264
|
|
|
248
265
|
/**
|
|
249
266
|
Specify output directory for generated declaration files.
|
|
250
|
-
|
|
251
|
-
Requires TypeScript version 2.0 or later.
|
|
252
267
|
*/
|
|
253
268
|
declarationDir?: string;
|
|
254
269
|
|
|
@@ -262,8 +277,6 @@ declare namespace TsConfigJson {
|
|
|
262
277
|
/**
|
|
263
278
|
Reduce the number of projects loaded automatically by TypeScript.
|
|
264
279
|
|
|
265
|
-
Requires TypeScript version 4.0 or later.
|
|
266
|
-
|
|
267
280
|
@default false
|
|
268
281
|
*/
|
|
269
282
|
disableReferencedProjectLoad?: boolean;
|
|
@@ -271,8 +284,6 @@ declare namespace TsConfigJson {
|
|
|
271
284
|
/**
|
|
272
285
|
Enforces using indexed accessors for keys declared using an indexed type.
|
|
273
286
|
|
|
274
|
-
Requires TypeScript version 4.2 or later.
|
|
275
|
-
|
|
276
287
|
@default false
|
|
277
288
|
*/
|
|
278
289
|
noPropertyAccessFromIndexSignature?: boolean;
|
|
@@ -294,8 +305,6 @@ declare namespace TsConfigJson {
|
|
|
294
305
|
/**
|
|
295
306
|
Differentiate between undefined and not present when type checking.
|
|
296
307
|
|
|
297
|
-
Requires TypeScript version 4.4 or later.
|
|
298
|
-
|
|
299
308
|
@default false
|
|
300
309
|
*/
|
|
301
310
|
exactOptionalPropertyTypes?: boolean;
|
|
@@ -347,8 +356,6 @@ declare namespace TsConfigJson {
|
|
|
347
356
|
/**
|
|
348
357
|
Specify the JSX factory function to use when targeting React JSX emit, e.g. `React.createElement` or `h`.
|
|
349
358
|
|
|
350
|
-
Requires TypeScript version 2.1 or later.
|
|
351
|
-
|
|
352
359
|
@default 'React.createElement'
|
|
353
360
|
*/
|
|
354
361
|
jsxFactory?: string;
|
|
@@ -356,8 +363,6 @@ declare namespace TsConfigJson {
|
|
|
356
363
|
/**
|
|
357
364
|
Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'.
|
|
358
365
|
|
|
359
|
-
Requires TypeScript version 4.0 or later.
|
|
360
|
-
|
|
361
366
|
@default 'React.Fragment'
|
|
362
367
|
*/
|
|
363
368
|
jsxFragmentFactory?: string;
|
|
@@ -365,8 +370,6 @@ declare namespace TsConfigJson {
|
|
|
365
370
|
/**
|
|
366
371
|
Specify module specifier used to import the JSX factory functions when using `jsx: react-jsx*`.
|
|
367
372
|
|
|
368
|
-
Requires TypeScript version 4.1 or later.
|
|
369
|
-
|
|
370
373
|
@default 'react'
|
|
371
374
|
*/
|
|
372
375
|
jsxImportSource?: string;
|
|
@@ -395,7 +398,7 @@ declare namespace TsConfigJson {
|
|
|
395
398
|
|
|
396
399
|
@default ['AMD', 'System', 'ES6'].includes(module) ? 'classic' : 'node'
|
|
397
400
|
*/
|
|
398
|
-
moduleResolution?:
|
|
401
|
+
moduleResolution?: CompilerOptions.ModuleResolution;
|
|
399
402
|
|
|
400
403
|
/**
|
|
401
404
|
Specifies the end of line sequence to be used when emitting files: 'crlf' (Windows) or 'lf' (Unix).
|
|
@@ -442,8 +445,6 @@ declare namespace TsConfigJson {
|
|
|
442
445
|
/**
|
|
443
446
|
Report errors on unused locals.
|
|
444
447
|
|
|
445
|
-
Requires TypeScript version 2.0 or later.
|
|
446
|
-
|
|
447
448
|
@default false
|
|
448
449
|
*/
|
|
449
450
|
noUnusedLocals?: boolean;
|
|
@@ -451,8 +452,6 @@ declare namespace TsConfigJson {
|
|
|
451
452
|
/**
|
|
452
453
|
Report errors on unused parameters.
|
|
453
454
|
|
|
454
|
-
Requires TypeScript version 2.0 or later.
|
|
455
|
-
|
|
456
455
|
@default false
|
|
457
456
|
*/
|
|
458
457
|
noUnusedParameters?: boolean;
|
|
@@ -486,8 +485,6 @@ declare namespace TsConfigJson {
|
|
|
486
485
|
/**
|
|
487
486
|
Skip type checking of declaration files.
|
|
488
487
|
|
|
489
|
-
Requires TypeScript version 2.0 or later.
|
|
490
|
-
|
|
491
488
|
@default false
|
|
492
489
|
*/
|
|
493
490
|
skipLibCheck?: boolean;
|
|
@@ -592,8 +589,6 @@ declare namespace TsConfigJson {
|
|
|
592
589
|
/**
|
|
593
590
|
Default catch clause variables as `unknown` instead of `any`.
|
|
594
591
|
|
|
595
|
-
Requires TypeScript version 4.4 or later.
|
|
596
|
-
|
|
597
592
|
@default false
|
|
598
593
|
*/
|
|
599
594
|
useUnknownInCatchVariables?: boolean;
|
|
@@ -609,8 +604,6 @@ declare namespace TsConfigJson {
|
|
|
609
604
|
/**
|
|
610
605
|
Specify the polling strategy to use when the system runs out of or doesn't support native file watchers.
|
|
611
606
|
|
|
612
|
-
Requires TypeScript version 3.8 or later.
|
|
613
|
-
|
|
614
607
|
@deprecated Use watchOptions.fallbackPolling instead.
|
|
615
608
|
*/
|
|
616
609
|
fallbackPolling?: CompilerOptions.FallbackPolling;
|
|
@@ -618,8 +611,6 @@ declare namespace TsConfigJson {
|
|
|
618
611
|
/**
|
|
619
612
|
Specify the strategy for watching directories under systems that lack recursive file-watching functionality.
|
|
620
613
|
|
|
621
|
-
Requires TypeScript version 3.8 or later.
|
|
622
|
-
|
|
623
614
|
@default 'useFsEvents'
|
|
624
615
|
@deprecated Use watchOptions.watchDirectory instead.
|
|
625
616
|
*/
|
|
@@ -628,8 +619,6 @@ declare namespace TsConfigJson {
|
|
|
628
619
|
/**
|
|
629
620
|
Specify the strategy for watching individual files.
|
|
630
621
|
|
|
631
|
-
Requires TypeScript version 3.8 or later.
|
|
632
|
-
|
|
633
622
|
@default 'useFsEvents'
|
|
634
623
|
@deprecated Use watchOptions.watchFile instead.
|
|
635
624
|
*/
|
|
@@ -666,8 +655,6 @@ declare namespace TsConfigJson {
|
|
|
666
655
|
/**
|
|
667
656
|
Add `undefined` to a type when accessed using an index.
|
|
668
657
|
|
|
669
|
-
Requires TypeScript version 4.1 or later.
|
|
670
|
-
|
|
671
658
|
@default false
|
|
672
659
|
*/
|
|
673
660
|
noUncheckedIndexedAccess?: boolean;
|
|
@@ -703,8 +690,6 @@ declare namespace TsConfigJson {
|
|
|
703
690
|
/**
|
|
704
691
|
Emit a v8 CPU profile of the compiler run for debugging.
|
|
705
692
|
|
|
706
|
-
Requires TypeScript version 3.7 or later.
|
|
707
|
-
|
|
708
693
|
@default 'profile.cpuprofile'
|
|
709
694
|
*/
|
|
710
695
|
generateCpuProfile?: string;
|
|
@@ -721,8 +706,6 @@ declare namespace TsConfigJson {
|
|
|
721
706
|
|
|
722
707
|
/**
|
|
723
708
|
List of TypeScript language server plugins to load.
|
|
724
|
-
|
|
725
|
-
Requires TypeScript version 2.3 or later.
|
|
726
709
|
*/
|
|
727
710
|
plugins?: CompilerOptions.Plugin[];
|
|
728
711
|
|
|
@@ -733,15 +716,11 @@ declare namespace TsConfigJson {
|
|
|
733
716
|
|
|
734
717
|
/**
|
|
735
718
|
Specify list of directories for type definition files to be included.
|
|
736
|
-
|
|
737
|
-
Requires TypeScript version 2.0 or later.
|
|
738
719
|
*/
|
|
739
720
|
typeRoots?: string[];
|
|
740
721
|
|
|
741
722
|
/**
|
|
742
723
|
Type declaration files to be included in compilation.
|
|
743
|
-
|
|
744
|
-
Requires TypeScript version 2.0 or later.
|
|
745
724
|
*/
|
|
746
725
|
types?: string[];
|
|
747
726
|
|
|
@@ -783,8 +762,6 @@ declare namespace TsConfigJson {
|
|
|
783
762
|
/**
|
|
784
763
|
Enable to list all emitted files.
|
|
785
764
|
|
|
786
|
-
Requires TypeScript version 2.0 or later.
|
|
787
|
-
|
|
788
765
|
@default false
|
|
789
766
|
*/
|
|
790
767
|
listEmittedFiles?: boolean;
|
|
@@ -792,24 +769,18 @@ declare namespace TsConfigJson {
|
|
|
792
769
|
/**
|
|
793
770
|
Disable size limit for JavaScript project.
|
|
794
771
|
|
|
795
|
-
Requires TypeScript version 2.0 or later.
|
|
796
|
-
|
|
797
772
|
@default false
|
|
798
773
|
*/
|
|
799
774
|
disableSizeLimit?: boolean;
|
|
800
775
|
|
|
801
776
|
/**
|
|
802
777
|
List of library files to be included in the compilation.
|
|
803
|
-
|
|
804
|
-
Requires TypeScript version 2.0 or later.
|
|
805
778
|
*/
|
|
806
779
|
lib?: CompilerOptions.Lib[];
|
|
807
780
|
|
|
808
781
|
/**
|
|
809
782
|
Enable strict null checks.
|
|
810
783
|
|
|
811
|
-
Requires TypeScript version 2.0 or later.
|
|
812
|
-
|
|
813
784
|
@default false
|
|
814
785
|
*/
|
|
815
786
|
strictNullChecks?: boolean;
|
|
@@ -824,8 +795,6 @@ declare namespace TsConfigJson {
|
|
|
824
795
|
/**
|
|
825
796
|
Import emit helpers (e.g. `__extends`, `__rest`, etc..) from tslib.
|
|
826
797
|
|
|
827
|
-
Requires TypeScript version 2.1 or later.
|
|
828
|
-
|
|
829
798
|
@default false
|
|
830
799
|
*/
|
|
831
800
|
importHelpers?: boolean;
|
|
@@ -840,8 +809,6 @@ declare namespace TsConfigJson {
|
|
|
840
809
|
/**
|
|
841
810
|
Parse in strict mode and emit `'use strict'` for each source file.
|
|
842
811
|
|
|
843
|
-
Requires TypeScript version 2.1 or later.
|
|
844
|
-
|
|
845
812
|
@default false
|
|
846
813
|
*/
|
|
847
814
|
alwaysStrict?: boolean;
|
|
@@ -849,8 +816,6 @@ declare namespace TsConfigJson {
|
|
|
849
816
|
/**
|
|
850
817
|
Enable all strict type checking options.
|
|
851
818
|
|
|
852
|
-
Requires TypeScript version 2.3 or later.
|
|
853
|
-
|
|
854
819
|
@default false
|
|
855
820
|
*/
|
|
856
821
|
strict?: boolean;
|
|
@@ -865,8 +830,6 @@ declare namespace TsConfigJson {
|
|
|
865
830
|
/**
|
|
866
831
|
Provide full support for iterables in `for-of`, spread, and destructuring when targeting `ES5` or `ES3`.
|
|
867
832
|
|
|
868
|
-
Requires TypeScript version 2.3 or later.
|
|
869
|
-
|
|
870
833
|
@default false
|
|
871
834
|
*/
|
|
872
835
|
downlevelIteration?: boolean;
|
|
@@ -874,8 +837,6 @@ declare namespace TsConfigJson {
|
|
|
874
837
|
/**
|
|
875
838
|
Report errors in `.js` files.
|
|
876
839
|
|
|
877
|
-
Requires TypeScript version 2.3 or later.
|
|
878
|
-
|
|
879
840
|
@default false
|
|
880
841
|
*/
|
|
881
842
|
checkJs?: boolean;
|
|
@@ -883,8 +844,6 @@ declare namespace TsConfigJson {
|
|
|
883
844
|
/**
|
|
884
845
|
Disable bivariant parameter checking for function types.
|
|
885
846
|
|
|
886
|
-
Requires TypeScript version 2.6 or later.
|
|
887
|
-
|
|
888
847
|
@default false
|
|
889
848
|
*/
|
|
890
849
|
strictFunctionTypes?: boolean;
|
|
@@ -892,8 +851,6 @@ declare namespace TsConfigJson {
|
|
|
892
851
|
/**
|
|
893
852
|
Ensure non-undefined class properties are initialized in the constructor.
|
|
894
853
|
|
|
895
|
-
Requires TypeScript version 2.7 or later.
|
|
896
|
-
|
|
897
854
|
@default false
|
|
898
855
|
*/
|
|
899
856
|
strictPropertyInitialization?: boolean;
|
|
@@ -901,8 +858,6 @@ declare namespace TsConfigJson {
|
|
|
901
858
|
/**
|
|
902
859
|
Emit `__importStar` and `__importDefault` helpers for runtime Babel ecosystem compatibility and enable `--allowSyntheticDefaultImports` for typesystem compatibility.
|
|
903
860
|
|
|
904
|
-
Requires TypeScript version 2.7 or later.
|
|
905
|
-
|
|
906
861
|
@default false
|
|
907
862
|
*/
|
|
908
863
|
esModuleInterop?: boolean;
|
|
@@ -917,8 +872,6 @@ declare namespace TsConfigJson {
|
|
|
917
872
|
/**
|
|
918
873
|
Resolve `keyof` to string valued property names only (no numbers or symbols).
|
|
919
874
|
|
|
920
|
-
Requires TypeScript version 2.9 or later.
|
|
921
|
-
|
|
922
875
|
@default false
|
|
923
876
|
*/
|
|
924
877
|
keyofStringsOnly?: boolean;
|
|
@@ -926,8 +879,6 @@ declare namespace TsConfigJson {
|
|
|
926
879
|
/**
|
|
927
880
|
Emit ECMAScript standard class fields.
|
|
928
881
|
|
|
929
|
-
Requires TypeScript version 3.7 or later.
|
|
930
|
-
|
|
931
882
|
@default false
|
|
932
883
|
*/
|
|
933
884
|
useDefineForClassFields?: boolean;
|
|
@@ -935,8 +886,6 @@ declare namespace TsConfigJson {
|
|
|
935
886
|
/**
|
|
936
887
|
Generates a sourcemap for each corresponding `.d.ts` file.
|
|
937
888
|
|
|
938
|
-
Requires TypeScript version 2.9 or later.
|
|
939
|
-
|
|
940
889
|
@default false
|
|
941
890
|
*/
|
|
942
891
|
declarationMap?: boolean;
|
|
@@ -944,8 +893,6 @@ declare namespace TsConfigJson {
|
|
|
944
893
|
/**
|
|
945
894
|
Include modules imported with `.json` extension.
|
|
946
895
|
|
|
947
|
-
Requires TypeScript version 2.9 or later.
|
|
948
|
-
|
|
949
896
|
@default false
|
|
950
897
|
*/
|
|
951
898
|
resolveJsonModule?: boolean;
|
|
@@ -953,8 +900,6 @@ declare namespace TsConfigJson {
|
|
|
953
900
|
/**
|
|
954
901
|
Have recompiles in '--incremental' and '--watch' assume that changes within a file will only affect files directly depending on it.
|
|
955
902
|
|
|
956
|
-
Requires TypeScript version 3.8 or later.
|
|
957
|
-
|
|
958
903
|
@default false
|
|
959
904
|
*/
|
|
960
905
|
assumeChangesOnlyAffectDirectDependencies?: boolean;
|
|
@@ -983,8 +928,6 @@ declare namespace TsConfigJson {
|
|
|
983
928
|
/**
|
|
984
929
|
Opt a project out of multi-project reference checking when editing.
|
|
985
930
|
|
|
986
|
-
Requires TypeScript version 3.8 or later.
|
|
987
|
-
|
|
988
931
|
@default false
|
|
989
932
|
*/
|
|
990
933
|
disableSolutionSearching?: boolean;
|
|
@@ -992,11 +935,28 @@ declare namespace TsConfigJson {
|
|
|
992
935
|
/**
|
|
993
936
|
Print names of files which TypeScript sees as a part of your project and the reason they are part of the compilation.
|
|
994
937
|
|
|
995
|
-
Requires TypeScript version 4.2 or later.
|
|
996
|
-
|
|
997
938
|
@default false
|
|
998
939
|
*/
|
|
999
940
|
explainFiles?: boolean;
|
|
941
|
+
|
|
942
|
+
/**
|
|
943
|
+
Preserve unused imported values in the JavaScript output that would otherwise be removed.
|
|
944
|
+
|
|
945
|
+
@default true
|
|
946
|
+
*/
|
|
947
|
+
preserveValueImports?: boolean;
|
|
948
|
+
|
|
949
|
+
/**
|
|
950
|
+
List of file name suffixes to search when resolving a module.
|
|
951
|
+
*/
|
|
952
|
+
moduleSuffixes?: string[];
|
|
953
|
+
|
|
954
|
+
/**
|
|
955
|
+
Control what method is used to detect module-format JS files.
|
|
956
|
+
|
|
957
|
+
@default 'auto'
|
|
958
|
+
*/
|
|
959
|
+
moduleDetection?: CompilerOptions.ModuleDetection;
|
|
1000
960
|
};
|
|
1001
961
|
|
|
1002
962
|
namespace WatchOptions {
|
|
@@ -1026,8 +986,6 @@ declare namespace TsConfigJson {
|
|
|
1026
986
|
/**
|
|
1027
987
|
Specify the strategy for watching individual files.
|
|
1028
988
|
|
|
1029
|
-
Requires TypeScript version 3.8 or later.
|
|
1030
|
-
|
|
1031
989
|
@default 'UseFsEvents'
|
|
1032
990
|
*/
|
|
1033
991
|
watchFile?: WatchOptions.WatchFileKind | Lowercase<WatchOptions.WatchFileKind>;
|
|
@@ -1035,16 +993,12 @@ declare namespace TsConfigJson {
|
|
|
1035
993
|
/**
|
|
1036
994
|
Specify the strategy for watching directories under systems that lack recursive file-watching functionality.
|
|
1037
995
|
|
|
1038
|
-
Requires TypeScript version 3.8 or later.
|
|
1039
|
-
|
|
1040
996
|
@default 'UseFsEvents'
|
|
1041
997
|
*/
|
|
1042
998
|
watchDirectory?: WatchOptions.WatchDirectoryKind | Lowercase<WatchOptions.WatchDirectoryKind>;
|
|
1043
999
|
|
|
1044
1000
|
/**
|
|
1045
1001
|
Specify the polling strategy to use when the system runs out of or doesn't support native file watchers.
|
|
1046
|
-
|
|
1047
|
-
Requires TypeScript version 3.8 or later.
|
|
1048
1002
|
*/
|
|
1049
1003
|
fallbackPolling?: WatchOptions.PollingWatchKind | Lowercase<WatchOptions.PollingWatchKind>;
|
|
1050
1004
|
|
|
@@ -1066,8 +1020,6 @@ declare namespace TsConfigJson {
|
|
|
1066
1020
|
|
|
1067
1021
|
/**
|
|
1068
1022
|
Auto type (.d.ts) acquisition options for this project.
|
|
1069
|
-
|
|
1070
|
-
Requires TypeScript version 2.1 or later.
|
|
1071
1023
|
*/
|
|
1072
1024
|
export type TypeAcquisition = {
|
|
1073
1025
|
/**
|
|
@@ -1129,8 +1081,6 @@ export type TsConfigJson = {
|
|
|
1129
1081
|
|
|
1130
1082
|
/**
|
|
1131
1083
|
Auto type (.d.ts) acquisition options for this project.
|
|
1132
|
-
|
|
1133
|
-
Requires TypeScript version 2.1 or later.
|
|
1134
1084
|
*/
|
|
1135
1085
|
typeAcquisition?: TsConfigJson.TypeAcquisition;
|
|
1136
1086
|
|
|
@@ -1141,8 +1091,6 @@ export type TsConfigJson = {
|
|
|
1141
1091
|
|
|
1142
1092
|
/**
|
|
1143
1093
|
Path to base configuration file to inherit from.
|
|
1144
|
-
|
|
1145
|
-
Requires TypeScript version 2.1 or later.
|
|
1146
1094
|
*/
|
|
1147
1095
|
extends?: string;
|
|
1148
1096
|
|
|
@@ -1162,15 +1110,11 @@ export type TsConfigJson = {
|
|
|
1162
1110
|
Specifies a list of glob patterns that match files to be included in compilation.
|
|
1163
1111
|
|
|
1164
1112
|
If no `files` or `include` property is present in a `tsconfig.json`, the compiler defaults to including all files in the containing directory and subdirectories except those specified by `exclude`.
|
|
1165
|
-
|
|
1166
|
-
Requires TypeScript version 2.0 or later.
|
|
1167
1113
|
*/
|
|
1168
1114
|
include?: string[];
|
|
1169
1115
|
|
|
1170
1116
|
/**
|
|
1171
1117
|
Referenced projects.
|
|
1172
|
-
|
|
1173
|
-
Requires TypeScript version 3.0 or later.
|
|
1174
1118
|
*/
|
|
1175
1119
|
references?: TsConfigJson.References[];
|
|
1176
1120
|
};
|