type-fest 3.4.0 → 3.5.0

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 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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "type-fest",
3
- "version": "3.4.0",
3
+ "version": "3.5.0",
4
4
  "description": "A collection of essential TypeScript types",
5
5
  "license": "(MIT OR CC0-1.0)",
6
6
  "repository": "sindresorhus/type-fest",
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) and [Yarn Workspaces](https://classic.yarnpkg.com/lang/en/docs/workspaces/).
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
@@ -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
- ? Uncapitalize<CamelCaseFromArray<SplitWords<Type extends Uppercase<Type> ? Lowercase<Type> : Type>, Options>>
77
+ ? string extends Type
78
+ ? Type
79
+ : Uncapitalize<CamelCaseFromArray<SplitWords<Type extends Uppercase<Type> ? Lowercase<Type> : Type>, Options>>
78
80
  : Type;
@@ -1,5 +1,5 @@
1
1
  import type {Opaque} from './opaque';
2
- import type {IsEqual} from './internal';
2
+ import type {IsEqual} from './is-equal';
3
3
  import type {ConditionalExcept} from './conditional-except';
4
4
  import type {ConditionalSimplifyDeep} from './conditional-simplify';
5
5
 
@@ -1,4 +1,4 @@
1
- import type {IsEqual} from './internal';
1
+ import type {IsEqual} from './is-equal';
2
2
 
3
3
  /**
4
4
  Filter out keys from an object.
@@ -1,4 +1,4 @@
1
- import type {IsEqual} from './internal';
1
+ import type {IsEqual} from './is-equal';
2
2
 
3
3
  /**
4
4
  Returns a boolean for whether the given array includes the given item.
@@ -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
  ]
@@ -1,4 +1,5 @@
1
- import type {IsEqual, Subtract} from './internal';
1
+ import type {Subtract} from './internal';
2
+ import type {IsEqual} from './is-equal';
2
3
 
3
4
  type Recursive<T> = Array<Recursive<T>>;
4
5
 
@@ -1,4 +1,5 @@
1
- import type {IsEqual, Subtract} from './internal';
1
+ import type {Subtract} from './internal';
2
+ import type {IsEqual} from './is-equal';
2
3
 
3
4
  type Recursive<T> = ReadonlyArray<Recursive<T>>;
4
5
 
@@ -294,7 +294,7 @@ declare namespace PackageJson {
294
294
  };
295
295
 
296
296
  /**
297
- An alternative configuration for Yarn workspaces.
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
- [Read more](https://classic.yarnpkg.com/blog/2018/02/15/nohoist/)
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
  /**
@@ -221,6 +221,21 @@ declare namespace TsConfigJson {
221
221
  | 'useFsEventsOnParentDirectory'
222
222
  | 'fixedChunkSizePolling';
223
223
 
224
+ export type ModuleResolution =
225
+ | 'classic'
226
+ | 'node'
227
+ | 'node16'
228
+ | 'nodenext'
229
+ // Pascal-cased alternatives
230
+ | 'Classic'
231
+ | 'Node'
232
+ | 'Node16'
233
+ | 'NodeNext';
234
+
235
+ export type ModuleDetection =
236
+ | 'auto'
237
+ | 'legacy'
238
+ | 'force';
224
239
  }
225
240
 
226
241
  export type CompilerOptions = {
@@ -247,8 +262,6 @@ declare namespace TsConfigJson {
247
262
 
248
263
  /**
249
264
  Specify output directory for generated declaration files.
250
-
251
- Requires TypeScript version 2.0 or later.
252
265
  */
253
266
  declarationDir?: string;
254
267
 
@@ -262,8 +275,6 @@ declare namespace TsConfigJson {
262
275
  /**
263
276
  Reduce the number of projects loaded automatically by TypeScript.
264
277
 
265
- Requires TypeScript version 4.0 or later.
266
-
267
278
  @default false
268
279
  */
269
280
  disableReferencedProjectLoad?: boolean;
@@ -271,8 +282,6 @@ declare namespace TsConfigJson {
271
282
  /**
272
283
  Enforces using indexed accessors for keys declared using an indexed type.
273
284
 
274
- Requires TypeScript version 4.2 or later.
275
-
276
285
  @default false
277
286
  */
278
287
  noPropertyAccessFromIndexSignature?: boolean;
@@ -294,8 +303,6 @@ declare namespace TsConfigJson {
294
303
  /**
295
304
  Differentiate between undefined and not present when type checking.
296
305
 
297
- Requires TypeScript version 4.4 or later.
298
-
299
306
  @default false
300
307
  */
301
308
  exactOptionalPropertyTypes?: boolean;
@@ -347,8 +354,6 @@ declare namespace TsConfigJson {
347
354
  /**
348
355
  Specify the JSX factory function to use when targeting React JSX emit, e.g. `React.createElement` or `h`.
349
356
 
350
- Requires TypeScript version 2.1 or later.
351
-
352
357
  @default 'React.createElement'
353
358
  */
354
359
  jsxFactory?: string;
@@ -356,8 +361,6 @@ declare namespace TsConfigJson {
356
361
  /**
357
362
  Specify the JSX Fragment reference used for fragments when targeting React JSX emit e.g. 'React.Fragment' or 'Fragment'.
358
363
 
359
- Requires TypeScript version 4.0 or later.
360
-
361
364
  @default 'React.Fragment'
362
365
  */
363
366
  jsxFragmentFactory?: string;
@@ -365,8 +368,6 @@ declare namespace TsConfigJson {
365
368
  /**
366
369
  Specify module specifier used to import the JSX factory functions when using `jsx: react-jsx*`.
367
370
 
368
- Requires TypeScript version 4.1 or later.
369
-
370
371
  @default 'react'
371
372
  */
372
373
  jsxImportSource?: string;
@@ -395,7 +396,7 @@ declare namespace TsConfigJson {
395
396
 
396
397
  @default ['AMD', 'System', 'ES6'].includes(module) ? 'classic' : 'node'
397
398
  */
398
- moduleResolution?: 'classic' | 'node';
399
+ moduleResolution?: CompilerOptions.ModuleResolution;
399
400
 
400
401
  /**
401
402
  Specifies the end of line sequence to be used when emitting files: 'crlf' (Windows) or 'lf' (Unix).
@@ -442,8 +443,6 @@ declare namespace TsConfigJson {
442
443
  /**
443
444
  Report errors on unused locals.
444
445
 
445
- Requires TypeScript version 2.0 or later.
446
-
447
446
  @default false
448
447
  */
449
448
  noUnusedLocals?: boolean;
@@ -451,8 +450,6 @@ declare namespace TsConfigJson {
451
450
  /**
452
451
  Report errors on unused parameters.
453
452
 
454
- Requires TypeScript version 2.0 or later.
455
-
456
453
  @default false
457
454
  */
458
455
  noUnusedParameters?: boolean;
@@ -486,8 +483,6 @@ declare namespace TsConfigJson {
486
483
  /**
487
484
  Skip type checking of declaration files.
488
485
 
489
- Requires TypeScript version 2.0 or later.
490
-
491
486
  @default false
492
487
  */
493
488
  skipLibCheck?: boolean;
@@ -592,8 +587,6 @@ declare namespace TsConfigJson {
592
587
  /**
593
588
  Default catch clause variables as `unknown` instead of `any`.
594
589
 
595
- Requires TypeScript version 4.4 or later.
596
-
597
590
  @default false
598
591
  */
599
592
  useUnknownInCatchVariables?: boolean;
@@ -609,8 +602,6 @@ declare namespace TsConfigJson {
609
602
  /**
610
603
  Specify the polling strategy to use when the system runs out of or doesn't support native file watchers.
611
604
 
612
- Requires TypeScript version 3.8 or later.
613
-
614
605
  @deprecated Use watchOptions.fallbackPolling instead.
615
606
  */
616
607
  fallbackPolling?: CompilerOptions.FallbackPolling;
@@ -618,8 +609,6 @@ declare namespace TsConfigJson {
618
609
  /**
619
610
  Specify the strategy for watching directories under systems that lack recursive file-watching functionality.
620
611
 
621
- Requires TypeScript version 3.8 or later.
622
-
623
612
  @default 'useFsEvents'
624
613
  @deprecated Use watchOptions.watchDirectory instead.
625
614
  */
@@ -628,8 +617,6 @@ declare namespace TsConfigJson {
628
617
  /**
629
618
  Specify the strategy for watching individual files.
630
619
 
631
- Requires TypeScript version 3.8 or later.
632
-
633
620
  @default 'useFsEvents'
634
621
  @deprecated Use watchOptions.watchFile instead.
635
622
  */
@@ -666,8 +653,6 @@ declare namespace TsConfigJson {
666
653
  /**
667
654
  Add `undefined` to a type when accessed using an index.
668
655
 
669
- Requires TypeScript version 4.1 or later.
670
-
671
656
  @default false
672
657
  */
673
658
  noUncheckedIndexedAccess?: boolean;
@@ -703,8 +688,6 @@ declare namespace TsConfigJson {
703
688
  /**
704
689
  Emit a v8 CPU profile of the compiler run for debugging.
705
690
 
706
- Requires TypeScript version 3.7 or later.
707
-
708
691
  @default 'profile.cpuprofile'
709
692
  */
710
693
  generateCpuProfile?: string;
@@ -721,8 +704,6 @@ declare namespace TsConfigJson {
721
704
 
722
705
  /**
723
706
  List of TypeScript language server plugins to load.
724
-
725
- Requires TypeScript version 2.3 or later.
726
707
  */
727
708
  plugins?: CompilerOptions.Plugin[];
728
709
 
@@ -733,15 +714,11 @@ declare namespace TsConfigJson {
733
714
 
734
715
  /**
735
716
  Specify list of directories for type definition files to be included.
736
-
737
- Requires TypeScript version 2.0 or later.
738
717
  */
739
718
  typeRoots?: string[];
740
719
 
741
720
  /**
742
721
  Type declaration files to be included in compilation.
743
-
744
- Requires TypeScript version 2.0 or later.
745
722
  */
746
723
  types?: string[];
747
724
 
@@ -783,8 +760,6 @@ declare namespace TsConfigJson {
783
760
  /**
784
761
  Enable to list all emitted files.
785
762
 
786
- Requires TypeScript version 2.0 or later.
787
-
788
763
  @default false
789
764
  */
790
765
  listEmittedFiles?: boolean;
@@ -792,24 +767,18 @@ declare namespace TsConfigJson {
792
767
  /**
793
768
  Disable size limit for JavaScript project.
794
769
 
795
- Requires TypeScript version 2.0 or later.
796
-
797
770
  @default false
798
771
  */
799
772
  disableSizeLimit?: boolean;
800
773
 
801
774
  /**
802
775
  List of library files to be included in the compilation.
803
-
804
- Requires TypeScript version 2.0 or later.
805
776
  */
806
777
  lib?: CompilerOptions.Lib[];
807
778
 
808
779
  /**
809
780
  Enable strict null checks.
810
781
 
811
- Requires TypeScript version 2.0 or later.
812
-
813
782
  @default false
814
783
  */
815
784
  strictNullChecks?: boolean;
@@ -824,8 +793,6 @@ declare namespace TsConfigJson {
824
793
  /**
825
794
  Import emit helpers (e.g. `__extends`, `__rest`, etc..) from tslib.
826
795
 
827
- Requires TypeScript version 2.1 or later.
828
-
829
796
  @default false
830
797
  */
831
798
  importHelpers?: boolean;
@@ -840,8 +807,6 @@ declare namespace TsConfigJson {
840
807
  /**
841
808
  Parse in strict mode and emit `'use strict'` for each source file.
842
809
 
843
- Requires TypeScript version 2.1 or later.
844
-
845
810
  @default false
846
811
  */
847
812
  alwaysStrict?: boolean;
@@ -849,8 +814,6 @@ declare namespace TsConfigJson {
849
814
  /**
850
815
  Enable all strict type checking options.
851
816
 
852
- Requires TypeScript version 2.3 or later.
853
-
854
817
  @default false
855
818
  */
856
819
  strict?: boolean;
@@ -865,8 +828,6 @@ declare namespace TsConfigJson {
865
828
  /**
866
829
  Provide full support for iterables in `for-of`, spread, and destructuring when targeting `ES5` or `ES3`.
867
830
 
868
- Requires TypeScript version 2.3 or later.
869
-
870
831
  @default false
871
832
  */
872
833
  downlevelIteration?: boolean;
@@ -874,8 +835,6 @@ declare namespace TsConfigJson {
874
835
  /**
875
836
  Report errors in `.js` files.
876
837
 
877
- Requires TypeScript version 2.3 or later.
878
-
879
838
  @default false
880
839
  */
881
840
  checkJs?: boolean;
@@ -883,8 +842,6 @@ declare namespace TsConfigJson {
883
842
  /**
884
843
  Disable bivariant parameter checking for function types.
885
844
 
886
- Requires TypeScript version 2.6 or later.
887
-
888
845
  @default false
889
846
  */
890
847
  strictFunctionTypes?: boolean;
@@ -892,8 +849,6 @@ declare namespace TsConfigJson {
892
849
  /**
893
850
  Ensure non-undefined class properties are initialized in the constructor.
894
851
 
895
- Requires TypeScript version 2.7 or later.
896
-
897
852
  @default false
898
853
  */
899
854
  strictPropertyInitialization?: boolean;
@@ -901,8 +856,6 @@ declare namespace TsConfigJson {
901
856
  /**
902
857
  Emit `__importStar` and `__importDefault` helpers for runtime Babel ecosystem compatibility and enable `--allowSyntheticDefaultImports` for typesystem compatibility.
903
858
 
904
- Requires TypeScript version 2.7 or later.
905
-
906
859
  @default false
907
860
  */
908
861
  esModuleInterop?: boolean;
@@ -917,8 +870,6 @@ declare namespace TsConfigJson {
917
870
  /**
918
871
  Resolve `keyof` to string valued property names only (no numbers or symbols).
919
872
 
920
- Requires TypeScript version 2.9 or later.
921
-
922
873
  @default false
923
874
  */
924
875
  keyofStringsOnly?: boolean;
@@ -926,8 +877,6 @@ declare namespace TsConfigJson {
926
877
  /**
927
878
  Emit ECMAScript standard class fields.
928
879
 
929
- Requires TypeScript version 3.7 or later.
930
-
931
880
  @default false
932
881
  */
933
882
  useDefineForClassFields?: boolean;
@@ -935,8 +884,6 @@ declare namespace TsConfigJson {
935
884
  /**
936
885
  Generates a sourcemap for each corresponding `.d.ts` file.
937
886
 
938
- Requires TypeScript version 2.9 or later.
939
-
940
887
  @default false
941
888
  */
942
889
  declarationMap?: boolean;
@@ -944,8 +891,6 @@ declare namespace TsConfigJson {
944
891
  /**
945
892
  Include modules imported with `.json` extension.
946
893
 
947
- Requires TypeScript version 2.9 or later.
948
-
949
894
  @default false
950
895
  */
951
896
  resolveJsonModule?: boolean;
@@ -953,8 +898,6 @@ declare namespace TsConfigJson {
953
898
  /**
954
899
  Have recompiles in '--incremental' and '--watch' assume that changes within a file will only affect files directly depending on it.
955
900
 
956
- Requires TypeScript version 3.8 or later.
957
-
958
901
  @default false
959
902
  */
960
903
  assumeChangesOnlyAffectDirectDependencies?: boolean;
@@ -983,8 +926,6 @@ declare namespace TsConfigJson {
983
926
  /**
984
927
  Opt a project out of multi-project reference checking when editing.
985
928
 
986
- Requires TypeScript version 3.8 or later.
987
-
988
929
  @default false
989
930
  */
990
931
  disableSolutionSearching?: boolean;
@@ -992,11 +933,28 @@ declare namespace TsConfigJson {
992
933
  /**
993
934
  Print names of files which TypeScript sees as a part of your project and the reason they are part of the compilation.
994
935
 
995
- Requires TypeScript version 4.2 or later.
996
-
997
936
  @default false
998
937
  */
999
938
  explainFiles?: boolean;
939
+
940
+ /**
941
+ Preserve unused imported values in the JavaScript output that would otherwise be removed.
942
+
943
+ @default true
944
+ */
945
+ preserveValueImports?: boolean;
946
+
947
+ /**
948
+ List of file name suffixes to search when resolving a module.
949
+ */
950
+ moduleSuffixes?: string[];
951
+
952
+ /**
953
+ Control what method is used to detect module-format JS files.
954
+
955
+ @default 'auto'
956
+ */
957
+ moduleDetection?: CompilerOptions.ModuleDetection;
1000
958
  };
1001
959
 
1002
960
  namespace WatchOptions {
@@ -1026,8 +984,6 @@ declare namespace TsConfigJson {
1026
984
  /**
1027
985
  Specify the strategy for watching individual files.
1028
986
 
1029
- Requires TypeScript version 3.8 or later.
1030
-
1031
987
  @default 'UseFsEvents'
1032
988
  */
1033
989
  watchFile?: WatchOptions.WatchFileKind | Lowercase<WatchOptions.WatchFileKind>;
@@ -1035,16 +991,12 @@ declare namespace TsConfigJson {
1035
991
  /**
1036
992
  Specify the strategy for watching directories under systems that lack recursive file-watching functionality.
1037
993
 
1038
- Requires TypeScript version 3.8 or later.
1039
-
1040
994
  @default 'UseFsEvents'
1041
995
  */
1042
996
  watchDirectory?: WatchOptions.WatchDirectoryKind | Lowercase<WatchOptions.WatchDirectoryKind>;
1043
997
 
1044
998
  /**
1045
999
  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
1000
  */
1049
1001
  fallbackPolling?: WatchOptions.PollingWatchKind | Lowercase<WatchOptions.PollingWatchKind>;
1050
1002
 
@@ -1066,8 +1018,6 @@ declare namespace TsConfigJson {
1066
1018
 
1067
1019
  /**
1068
1020
  Auto type (.d.ts) acquisition options for this project.
1069
-
1070
- Requires TypeScript version 2.1 or later.
1071
1021
  */
1072
1022
  export type TypeAcquisition = {
1073
1023
  /**
@@ -1129,8 +1079,6 @@ export type TsConfigJson = {
1129
1079
 
1130
1080
  /**
1131
1081
  Auto type (.d.ts) acquisition options for this project.
1132
-
1133
- Requires TypeScript version 2.1 or later.
1134
1082
  */
1135
1083
  typeAcquisition?: TsConfigJson.TypeAcquisition;
1136
1084
 
@@ -1141,8 +1089,6 @@ export type TsConfigJson = {
1141
1089
 
1142
1090
  /**
1143
1091
  Path to base configuration file to inherit from.
1144
-
1145
- Requires TypeScript version 2.1 or later.
1146
1092
  */
1147
1093
  extends?: string;
1148
1094
 
@@ -1162,15 +1108,11 @@ export type TsConfigJson = {
1162
1108
  Specifies a list of glob patterns that match files to be included in compilation.
1163
1109
 
1164
1110
  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
1111
  */
1168
1112
  include?: string[];
1169
1113
 
1170
1114
  /**
1171
1115
  Referenced projects.
1172
-
1173
- Requires TypeScript version 3.0 or later.
1174
1116
  */
1175
1117
  references?: TsConfigJson.References[];
1176
1118
  };