@visulima/tsconfig 1.1.1 → 1.1.3

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/CHANGELOG.md CHANGED
@@ -1,3 +1,36 @@
1
+ ## @visulima/tsconfig [1.1.3](https://github.com/visulima/visulima/compare/@visulima/tsconfig@1.1.2...@visulima/tsconfig@1.1.3) (2024-12-27)
2
+
3
+ ### Miscellaneous Chores
4
+
5
+ * updated dev dependencies ([9de2eab](https://github.com/visulima/visulima/commit/9de2eab91e95c8b9289d12f863a5167218770650))
6
+
7
+
8
+ ### Dependencies
9
+
10
+ * **@visulima/fs:** upgraded to 2.3.2
11
+
12
+ ## @visulima/tsconfig [1.1.2](https://github.com/visulima/visulima/compare/@visulima/tsconfig@1.1.1...@visulima/tsconfig@1.1.2) (2024-12-12)
13
+
14
+ ### Bug Fixes
15
+
16
+ * allow node v23 ([8ca929a](https://github.com/visulima/visulima/commit/8ca929af311ce8036cbbfde68b6db05381b860a5))
17
+ * allowed node 23, updated dev dependencies ([f99d34e](https://github.com/visulima/visulima/commit/f99d34e01f6b13be8586a1b5d37dc8b8df0a5817))
18
+ * **tsconfig:** removed no needed [@ts-expect-error](https://github.com/ts-expect-error) ([8d7b961](https://github.com/visulima/visulima/commit/8d7b96191b62d597d49f7836a7c0543fa64461f0))
19
+ * updated packem to v1.8.2 ([23f869b](https://github.com/visulima/visulima/commit/23f869b4120856cc97e2bffa6d508e2ae30420ea))
20
+ * updated packem to v1.9.2 ([47bdc2d](https://github.com/visulima/visulima/commit/47bdc2dfaeca4e7014dbe7772eae2fdf8c8b35bb))
21
+
22
+ ### Miscellaneous Chores
23
+
24
+ * **tsconfig:** fixed type issues ([13d2f0e](https://github.com/visulima/visulima/commit/13d2f0eb7695a2762649da1e1fbc4f2f190992cd))
25
+ * updated dev dependencies ([a916944](https://github.com/visulima/visulima/commit/a916944b888bb34c34b0c54328b38d29e4399857))
26
+ * updated README.md ([fa3d4aa](https://github.com/visulima/visulima/commit/fa3d4aaef3435488b70e5ee1141559b85dcbb6c4))
27
+
28
+
29
+ ### Dependencies
30
+
31
+ * **@visulima/fs:** upgraded to 2.3.1
32
+ * **@visulima/path:** upgraded to 1.1.2
33
+
1
34
  ## @visulima/tsconfig [1.1.1](https://github.com/visulima/visulima/compare/@visulima/tsconfig@1.1.0...@visulima/tsconfig@1.1.1) (2024-10-25)
2
35
 
3
36
 
package/LICENSE.md CHANGED
@@ -35,4 +35,126 @@ License: (MIT OR CC0-1.0)
35
35
  By: Sindre Sorhus
36
36
  Repository: sindresorhus/type-fest
37
37
 
38
+ > Creative Commons Legal Code
39
+ >
40
+ > CC0 1.0 Universal
41
+ >
42
+ > CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
43
+ > LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
44
+ > ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
45
+ > INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
46
+ > REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
47
+ > PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
48
+ > THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
49
+ > HEREUNDER.
50
+ >
51
+ > Statement of Purpose
52
+ >
53
+ > The laws of most jurisdictions throughout the world automatically confer
54
+ > exclusive Copyright and Related Rights (defined below) upon the creator
55
+ > and subsequent owner(s) (each and all, an "owner") of an original work of
56
+ > authorship and/or a database (each, a "Work").
57
+ >
58
+ > Certain owners wish to permanently relinquish those rights to a Work for
59
+ > the purpose of contributing to a commons of creative, cultural and
60
+ > scientific works ("Commons") that the public can reliably and without fear
61
+ > of later claims of infringement build upon, modify, incorporate in other
62
+ > works, reuse and redistribute as freely as possible in any form whatsoever
63
+ > and for any purposes, including without limitation commercial purposes.
64
+ > These owners may contribute to the Commons to promote the ideal of a free
65
+ > culture and the further production of creative, cultural and scientific
66
+ > works, or to gain reputation or greater distribution for their Work in
67
+ > part through the use and efforts of others.
68
+ >
69
+ > For these and/or other purposes and motivations, and without any
70
+ > expectation of additional consideration or compensation, the person
71
+ > associating CC0 with a Work (the "Affirmer"), to the extent that he or she
72
+ > is an owner of Copyright and Related Rights in the Work, voluntarily
73
+ > elects to apply CC0 to the Work and publicly distribute the Work under its
74
+ > terms, with knowledge of his or her Copyright and Related Rights in the
75
+ > Work and the meaning and intended legal effect of CC0 on those rights.
76
+ >
77
+ > 1. Copyright and Related Rights. A Work made available under CC0 may be
78
+ > protected by copyright and related or neighboring rights ("Copyright and
79
+ > Related Rights"). Copyright and Related Rights include, but are not
80
+ > limited to, the following:
81
+ >
82
+ > i. the right to reproduce, adapt, distribute, perform, display,
83
+ > communicate, and translate a Work;
84
+ > ii. moral rights retained by the original author(s) and/or performer(s);
85
+ > iii. publicity and privacy rights pertaining to a person's image or
86
+ > likeness depicted in a Work;
87
+ > iv. rights protecting against unfair competition in regards to a Work,
88
+ > subject to the limitations in paragraph 4(a), below;
89
+ > v. rights protecting the extraction, dissemination, use and reuse of data
90
+ > in a Work;
91
+ > vi. database rights (such as those arising under Directive 96/9/EC of the
92
+ > European Parliament and of the Council of 11 March 1996 on the legal
93
+ > protection of databases, and under any national implementation
94
+ > thereof, including any amended or successor version of such
95
+ > directive); and
96
+ > vii. other similar, equivalent or corresponding rights throughout the
97
+ > world based on applicable law or treaty, and any national
98
+ > implementations thereof.
99
+ >
100
+ > 2. Waiver. To the greatest extent permitted by, but not in contravention
101
+ > of, applicable law, Affirmer hereby overtly, fully, permanently,
102
+ > irrevocably and unconditionally waives, abandons, and surrenders all of
103
+ > Affirmer's Copyright and Related Rights and associated claims and causes
104
+ > of action, whether now known or unknown (including existing as well as
105
+ > future claims and causes of action), in the Work (i) in all territories
106
+ > worldwide, (ii) for the maximum duration provided by applicable law or
107
+ > treaty (including future time extensions), (iii) in any current or future
108
+ > medium and for any number of copies, and (iv) for any purpose whatsoever,
109
+ > including without limitation commercial, advertising or promotional
110
+ > purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
111
+ > member of the public at large and to the detriment of Affirmer's heirs and
112
+ > successors, fully intending that such Waiver shall not be subject to
113
+ > revocation, rescission, cancellation, termination, or any other legal or
114
+ > equitable action to disrupt the quiet enjoyment of the Work by the public
115
+ > as contemplated by Affirmer's express Statement of Purpose.
116
+ >
117
+ > 3. Public License Fallback. Should any part of the Waiver for any reason
118
+ > be judged legally invalid or ineffective under applicable law, then the
119
+ > Waiver shall be preserved to the maximum extent permitted taking into
120
+ > account Affirmer's express Statement of Purpose. In addition, to the
121
+ > extent the Waiver is so judged Affirmer hereby grants to each affected
122
+ > person a royalty-free, non transferable, non sublicensable, non exclusive,
123
+ > irrevocable and unconditional license to exercise Affirmer's Copyright and
124
+ > Related Rights in the Work (i) in all territories worldwide, (ii) for the
125
+ > maximum duration provided by applicable law or treaty (including future
126
+ > time extensions), (iii) in any current or future medium and for any number
127
+ > of copies, and (iv) for any purpose whatsoever, including without
128
+ > limitation commercial, advertising or promotional purposes (the
129
+ > "License"). The License shall be deemed effective as of the date CC0 was
130
+ > applied by Affirmer to the Work. Should any part of the License for any
131
+ > reason be judged legally invalid or ineffective under applicable law, such
132
+ > partial invalidity or ineffectiveness shall not invalidate the remainder
133
+ > of the License, and in such case Affirmer hereby affirms that he or she
134
+ > will not (i) exercise any of his or her remaining Copyright and Related
135
+ > Rights in the Work or (ii) assert any associated claims and causes of
136
+ > action with respect to the Work, in either case contrary to Affirmer's
137
+ > express Statement of Purpose.
138
+ >
139
+ > 4. Limitations and Disclaimers.
140
+ >
141
+ > a. No trademark or patent rights held by Affirmer are waived, abandoned,
142
+ > surrendered, licensed or otherwise affected by this document.
143
+ > b. Affirmer offers the Work as-is and makes no representations or
144
+ > warranties of any kind concerning the Work, express, implied,
145
+ > statutory or otherwise, including without limitation warranties of
146
+ > title, merchantability, fitness for a particular purpose, non
147
+ > infringement, or the absence of latent or other defects, accuracy, or
148
+ > the present or absence of errors, whether or not discoverable, all to
149
+ > the greatest extent permissible under applicable law.
150
+ > c. Affirmer disclaims responsibility for clearing rights of other persons
151
+ > that may apply to the Work or any use thereof, including without
152
+ > limitation any person's Copyright and Related Rights in the Work.
153
+ > Further, Affirmer disclaims responsibility for obtaining any necessary
154
+ > consents, permissions or other rights required for any use of the
155
+ > Work.
156
+ > d. Affirmer understands and acknowledges that Creative Commons is not a
157
+ > party to this document and has no duty or obligation with respect to
158
+ > this CC0 or use of the Work.
159
+
38
160
  <!-- /TYPE_DEPENDENCIES -->
package/README.md CHANGED
@@ -33,11 +33,11 @@
33
33
 
34
34
  ## Features
35
35
 
36
- - Tested against TypeScript for correctness
37
- - Supports comments & dangling commas in tsconfig.json
38
- - Resolves extends
39
- - Fully typed tsconfig.json
40
- - Validates and throws parsing errors
36
+ - Tested against TypeScript for correctness
37
+ - Supports comments & dangling commas in tsconfig.json
38
+ - Resolves extends
39
+ - Fully typed tsconfig.json
40
+ - Validates and throws parsing errors
41
41
 
42
42
  ## Install
43
43
 
@@ -183,7 +183,7 @@ Instructs the TypeScript compiler how to watch files.
183
183
 
184
184
  #### Defined in
185
185
 
186
- node\_modules/.pnpm/type-fest@4.26.1/node\_modules/type-fest/source/tsconfig-json.d.ts:1
186
+ node\_modules/.pnpm/type-fest@4.31.0/node\_modules/type-fest/source/tsconfig-json.d.ts:1
187
187
 
188
188
  ## Other
189
189
 
@@ -218,7 +218,7 @@ An `Error` when the "tsconfig.json" file is not found.
218
218
 
219
219
  #### Defined in
220
220
 
221
- [packages/tsconfig/src/find-tsconfig.ts:29](https://github.com/visulima/visulima/blob/bfac7b2e6316f251f37670225ead9075ee3d4299/packages/tsconfig/src/find-tsconfig.ts#L29)
221
+ [packages/tsconfig/src/find-tsconfig.ts:29](https://github.com/visulima/visulima/blob/ecd2b42b254c8f2b26534eb5aa6bb5a0a0b1ca3f/packages/tsconfig/src/find-tsconfig.ts#L29)
222
222
 
223
223
  ***
224
224
 
@@ -240,7 +240,7 @@ function findTsConfigSync(cwd?, options?): TsConfigResult
240
240
 
241
241
  #### Defined in
242
242
 
243
- [packages/tsconfig/src/find-tsconfig.ts:66](https://github.com/visulima/visulima/blob/bfac7b2e6316f251f37670225ead9075ee3d4299/packages/tsconfig/src/find-tsconfig.ts#L66)
243
+ [packages/tsconfig/src/find-tsconfig.ts:66](https://github.com/visulima/visulima/blob/ecd2b42b254c8f2b26534eb5aa6bb5a0a0b1ca3f/packages/tsconfig/src/find-tsconfig.ts#L66)
244
244
 
245
245
  ***
246
246
 
@@ -330,7 +330,7 @@ Instructs the TypeScript compiler how to watch files.
330
330
 
331
331
  #### Defined in
332
332
 
333
- [packages/tsconfig/src/read-tsconfig.ts:308](https://github.com/visulima/visulima/blob/bfac7b2e6316f251f37670225ead9075ee3d4299/packages/tsconfig/src/read-tsconfig.ts#L308)
333
+ [packages/tsconfig/src/read-tsconfig.ts:307](https://github.com/visulima/visulima/blob/ecd2b42b254c8f2b26534eb5aa6bb5a0a0b1ca3f/packages/tsconfig/src/read-tsconfig.ts#L307)
334
334
 
335
335
  ***
336
336
 
@@ -362,7 +362,7 @@ The return type of function is `Promise<void>`.
362
362
 
363
363
  #### Defined in
364
364
 
365
- [packages/tsconfig/src/write-tsconfig.ts:17](https://github.com/visulima/visulima/blob/bfac7b2e6316f251f37670225ead9075ee3d4299/packages/tsconfig/src/write-tsconfig.ts#L17)
365
+ [packages/tsconfig/src/write-tsconfig.ts:17](https://github.com/visulima/visulima/blob/ecd2b42b254c8f2b26534eb5aa6bb5a0a0b1ca3f/packages/tsconfig/src/write-tsconfig.ts#L17)
366
366
 
367
367
  ***
368
368
 
@@ -394,7 +394,7 @@ The return type of function is `Promise<void>`.
394
394
 
395
395
  #### Defined in
396
396
 
397
- [packages/tsconfig/src/write-tsconfig.ts:35](https://github.com/visulima/visulima/blob/bfac7b2e6316f251f37670225ead9075ee3d4299/packages/tsconfig/src/write-tsconfig.ts#L35)
397
+ [packages/tsconfig/src/write-tsconfig.ts:35](https://github.com/visulima/visulima/blob/ecd2b42b254c8f2b26534eb5aa6bb5a0a0b1ca3f/packages/tsconfig/src/write-tsconfig.ts#L35)
398
398
 
399
399
  ***
400
400
 
@@ -406,7 +406,7 @@ const implicitBaseUrlSymbol: typeof implicitBaseUrlSymbol;
406
406
 
407
407
  #### Defined in
408
408
 
409
- [packages/tsconfig/src/read-tsconfig.ts:305](https://github.com/visulima/visulima/blob/bfac7b2e6316f251f37670225ead9075ee3d4299/packages/tsconfig/src/read-tsconfig.ts#L305)
409
+ [packages/tsconfig/src/read-tsconfig.ts:304](https://github.com/visulima/visulima/blob/ecd2b42b254c8f2b26534eb5aa6bb5a0a0b1ca3f/packages/tsconfig/src/read-tsconfig.ts#L304)
410
410
 
411
411
  ***
412
412
 
@@ -418,7 +418,7 @@ type TsConfigJsonResolved: Except<TsConfigJson, "extends">;
418
418
 
419
419
  #### Defined in
420
420
 
421
- [packages/tsconfig/src/types.ts:3](https://github.com/visulima/visulima/blob/bfac7b2e6316f251f37670225ead9075ee3d4299/packages/tsconfig/src/types.ts#L3)
421
+ [packages/tsconfig/src/types.ts:3](https://github.com/visulima/visulima/blob/ecd2b42b254c8f2b26534eb5aa6bb5a0a0b1ca3f/packages/tsconfig/src/types.ts#L3)
422
422
 
423
423
  ***
424
424
 
@@ -444,7 +444,7 @@ path: string;
444
444
 
445
445
  #### Defined in
446
446
 
447
- [packages/tsconfig/src/find-tsconfig.ts:14](https://github.com/visulima/visulima/blob/bfac7b2e6316f251f37670225ead9075ee3d4299/packages/tsconfig/src/find-tsconfig.ts#L14)
447
+ [packages/tsconfig/src/find-tsconfig.ts:14](https://github.com/visulima/visulima/blob/ecd2b42b254c8f2b26534eb5aa6bb5a0a0b1ca3f/packages/tsconfig/src/find-tsconfig.ts#L14)
448
448
 
449
449
  ## File
450
450
 
@@ -466,7 +466,7 @@ path: string;
466
466
 
467
467
  ## Related
468
468
 
469
- - [get-tsconfig](https://github.com/privatenumber/get-tsconfig) - Get the TypeScript configuration from a project.
469
+ - [get-tsconfig](https://github.com/privatenumber/get-tsconfig) - Get the TypeScript configuration from a project.
470
470
 
471
471
  ## Supported Node.js Versions
472
472
 
@@ -481,8 +481,8 @@ If you would like to help take a look at the [list of issues](https://github.com
481
481
 
482
482
  ## Credits
483
483
 
484
- - [Daniel Bannert](https://github.com/prisis)
485
- - [All Contributors](https://github.com/visulima/visulima/graphs/contributors)
484
+ - [Daniel Bannert](https://github.com/prisis)
485
+ - [All Contributors](https://github.com/visulima/visulima/graphs/contributors)
486
486
 
487
487
  ## License
488
488
 
package/dist/index.d.cts CHANGED
@@ -34,8 +34,8 @@ type Includes<Value extends readonly any[], Item> =
34
34
  @category Utilities
35
35
  */
36
36
  type IsEqual<A, B> =
37
- (<G>() => G extends A ? 1 : 2) extends
38
- (<G>() => G extends B ? 1 : 2)
37
+ (<G>() => G extends A & G | G ? 1 : 2) extends
38
+ (<G>() => G extends B & G | G ? 1 : 2)
39
39
  ? true
40
40
  : false;
41
41
 
@@ -175,6 +175,8 @@ declare namespace TsConfigJson {
175
175
  | 'ES2020'
176
176
  | 'ES2021'
177
177
  | 'ES2022'
178
+ | 'ES2023'
179
+ | 'ES2024'
178
180
  | 'ESNext'
179
181
  // Lowercase alternatives
180
182
  | 'es3'
@@ -188,6 +190,8 @@ declare namespace TsConfigJson {
188
190
  | 'es2020'
189
191
  | 'es2021'
190
192
  | 'es2022'
193
+ | 'es2023'
194
+ | 'es2024'
191
195
  | 'esnext';
192
196
 
193
197
  // eslint-disable-next-line unicorn/prevent-abbreviations
@@ -208,6 +212,8 @@ declare namespace TsConfigJson {
208
212
  | 'ES2016'
209
213
  | 'ES2016.Array.Include'
210
214
  | 'ES2017'
215
+ | 'ES2017.ArrayBuffer'
216
+ | 'ES2017.Date'
211
217
  | 'ES2017.Intl'
212
218
  | 'ES2017.Object'
213
219
  | 'ES2017.SharedMemory'
@@ -232,6 +238,7 @@ declare namespace TsConfigJson {
232
238
  | 'ES2020.SharedMemory'
233
239
  | 'ES2020.Intl'
234
240
  | 'ES2021'
241
+ | 'ES2021.Intl'
235
242
  | 'ES2021.Promise'
236
243
  | 'ES2021.String'
237
244
  | 'ES2021.WeakRef'
@@ -240,14 +247,29 @@ declare namespace TsConfigJson {
240
247
  | 'ES2022.Error'
241
248
  | 'ES2022.Intl'
242
249
  | 'ES2022.Object'
243
- | 'ES2022.SharedMemory'
244
- | 'ES2022.String'
245
250
  | 'ES2022.RegExp'
251
+ | 'ES2022.String'
252
+ | 'ES2023'
253
+ | 'ES2023.Array'
254
+ | 'ES2023.Collection'
255
+ | 'ES2023.Intl'
256
+ | 'ES2024'
257
+ | 'ES2024.ArrayBuffer'
258
+ | 'ES2024.Collection'
259
+ | 'ES2024.Object'
260
+ | 'ES2024.Promise'
261
+ | 'ES2024.Regexp'
262
+ | 'ES2024.SharedMemory'
263
+ | 'ES2024.String'
246
264
  | 'ESNext'
247
265
  | 'ESNext.Array'
248
266
  | 'ESNext.AsyncIterable'
249
267
  | 'ESNext.BigInt'
268
+ | 'ESNext.Collection'
269
+ | 'ESNext.Decorators'
270
+ | 'ESNext.Disposable'
250
271
  | 'ESNext.Intl'
272
+ | 'ESNext.Iterator'
251
273
  | 'ESNext.Promise'
252
274
  | 'ESNext.String'
253
275
  | 'ESNext.Symbol'
@@ -256,6 +278,7 @@ declare namespace TsConfigJson {
256
278
  | 'DOM.Iterable'
257
279
  | 'ScriptHost'
258
280
  | 'WebWorker'
281
+ | 'WebWorker.AsyncIterable'
259
282
  | 'WebWorker.ImportScripts'
260
283
  | 'WebWorker.Iterable'
261
284
  // Lowercase alternatives
@@ -275,6 +298,8 @@ declare namespace TsConfigJson {
275
298
  | 'es2016'
276
299
  | 'es2016.array.include'
277
300
  | 'es2017'
301
+ | 'es2017.arraybuffer'
302
+ | 'es2017.date'
278
303
  | 'es2017.intl'
279
304
  | 'es2017.object'
280
305
  | 'es2017.sharedmemory'
@@ -299,6 +324,7 @@ declare namespace TsConfigJson {
299
324
  | 'es2020.sharedmemory'
300
325
  | 'es2020.intl'
301
326
  | 'es2021'
327
+ | 'es2021.intl'
302
328
  | 'es2021.promise'
303
329
  | 'es2021.string'
304
330
  | 'es2021.weakref'
@@ -307,14 +333,29 @@ declare namespace TsConfigJson {
307
333
  | 'es2022.error'
308
334
  | 'es2022.intl'
309
335
  | 'es2022.object'
310
- | 'es2022.sharedmemory'
311
- | 'es2022.string'
312
336
  | 'es2022.regexp'
337
+ | 'es2022.string'
338
+ | 'es2023'
339
+ | 'es2023.array'
340
+ | 'es2023.collection'
341
+ | 'es2023.intl'
342
+ | 'es2024'
343
+ | 'es2024.arraybuffer'
344
+ | 'es2024.collection'
345
+ | 'es2024.object'
346
+ | 'es2024.promise'
347
+ | 'es2024.regexp'
348
+ | 'es2024.sharedmemory'
349
+ | 'es2024.string'
313
350
  | 'esnext'
314
351
  | 'esnext.array'
315
352
  | 'esnext.asynciterable'
316
353
  | 'esnext.bigint'
354
+ | 'esnext.collection'
355
+ | 'esnext.decorators'
356
+ | 'esnext.disposable'
317
357
  | 'esnext.intl'
358
+ | 'esnext.iterator'
318
359
  | 'esnext.promise'
319
360
  | 'esnext.string'
320
361
  | 'esnext.symbol'
@@ -323,6 +364,7 @@ declare namespace TsConfigJson {
323
364
  | 'dom.iterable'
324
365
  | 'scripthost'
325
366
  | 'webworker'
367
+ | 'webworker.asynciterable'
326
368
  | 'webworker.importscripts'
327
369
  | 'webworker.iterable';
328
370
 
@@ -552,6 +594,13 @@ declare namespace TsConfigJson {
552
594
  */
553
595
  newLine?: CompilerOptions.NewLine;
554
596
 
597
+ /**
598
+ Disable full type checking (only critical parse and emit errors will be reported).
599
+
600
+ @default false
601
+ */
602
+ noCheck?: boolean;
603
+
555
604
  /**
556
605
  Do not emit output.
557
606
 
@@ -694,6 +743,13 @@ declare namespace TsConfigJson {
694
743
  */
695
744
  isolatedModules?: boolean;
696
745
 
746
+ /**
747
+ Require sufficient annotation on exports so other tools can trivially generate declaration files.
748
+
749
+ @default false
750
+ */
751
+ isolatedDeclarations?: boolean;
752
+
697
753
  /**
698
754
  Generates corresponding '.map' file.
699
755
 
@@ -804,6 +860,13 @@ declare namespace TsConfigJson {
804
860
  */
805
861
  noUncheckedIndexedAccess?: boolean;
806
862
 
863
+ /**
864
+ Report error if failed to find a source file for a side effect import.
865
+
866
+ @default false
867
+ */
868
+ noUncheckedSideEffectImports?: boolean;
869
+
807
870
  /**
808
871
  Report errors for fallthrough cases in switch statement.
809
872
 
@@ -839,6 +902,11 @@ declare namespace TsConfigJson {
839
902
  */
840
903
  generateCpuProfile?: string;
841
904
 
905
+ /**
906
+ Generates an event trace and a list of types.
907
+ */
908
+ generateTrace?: boolean;
909
+
842
910
  /**
843
911
  Base directory to resolve non-relative module names.
844
912
  */
@@ -988,6 +1056,13 @@ declare namespace TsConfigJson {
988
1056
  */
989
1057
  checkJs?: boolean;
990
1058
 
1059
+ /**
1060
+ Built-in iterators are instantiated with a `TReturn` type of undefined instead of `any`.
1061
+
1062
+ @default false
1063
+ */
1064
+ strictBuiltinIteratorReturn?: boolean;
1065
+
991
1066
  /**
992
1067
  Disable bivariant parameter checking for function types.
993
1068
 
@@ -1230,6 +1305,11 @@ declare namespace TsConfigJson {
1230
1305
  Specifies a list of type declarations to be excluded from auto type acquisition. For example, `['jquery', 'lodash']`.
1231
1306
  */
1232
1307
  exclude?: string[];
1308
+
1309
+ /**
1310
+ Disable infering what types should be added based on filenames in a project.
1311
+ */
1312
+ disableFilenameBasedTypeAcquisition?: boolean;
1233
1313
  };
1234
1314
 
1235
1315
  export type References = {
package/dist/index.d.mts CHANGED
@@ -34,8 +34,8 @@ type Includes<Value extends readonly any[], Item> =
34
34
  @category Utilities
35
35
  */
36
36
  type IsEqual<A, B> =
37
- (<G>() => G extends A ? 1 : 2) extends
38
- (<G>() => G extends B ? 1 : 2)
37
+ (<G>() => G extends A & G | G ? 1 : 2) extends
38
+ (<G>() => G extends B & G | G ? 1 : 2)
39
39
  ? true
40
40
  : false;
41
41
 
@@ -175,6 +175,8 @@ declare namespace TsConfigJson {
175
175
  | 'ES2020'
176
176
  | 'ES2021'
177
177
  | 'ES2022'
178
+ | 'ES2023'
179
+ | 'ES2024'
178
180
  | 'ESNext'
179
181
  // Lowercase alternatives
180
182
  | 'es3'
@@ -188,6 +190,8 @@ declare namespace TsConfigJson {
188
190
  | 'es2020'
189
191
  | 'es2021'
190
192
  | 'es2022'
193
+ | 'es2023'
194
+ | 'es2024'
191
195
  | 'esnext';
192
196
 
193
197
  // eslint-disable-next-line unicorn/prevent-abbreviations
@@ -208,6 +212,8 @@ declare namespace TsConfigJson {
208
212
  | 'ES2016'
209
213
  | 'ES2016.Array.Include'
210
214
  | 'ES2017'
215
+ | 'ES2017.ArrayBuffer'
216
+ | 'ES2017.Date'
211
217
  | 'ES2017.Intl'
212
218
  | 'ES2017.Object'
213
219
  | 'ES2017.SharedMemory'
@@ -232,6 +238,7 @@ declare namespace TsConfigJson {
232
238
  | 'ES2020.SharedMemory'
233
239
  | 'ES2020.Intl'
234
240
  | 'ES2021'
241
+ | 'ES2021.Intl'
235
242
  | 'ES2021.Promise'
236
243
  | 'ES2021.String'
237
244
  | 'ES2021.WeakRef'
@@ -240,14 +247,29 @@ declare namespace TsConfigJson {
240
247
  | 'ES2022.Error'
241
248
  | 'ES2022.Intl'
242
249
  | 'ES2022.Object'
243
- | 'ES2022.SharedMemory'
244
- | 'ES2022.String'
245
250
  | 'ES2022.RegExp'
251
+ | 'ES2022.String'
252
+ | 'ES2023'
253
+ | 'ES2023.Array'
254
+ | 'ES2023.Collection'
255
+ | 'ES2023.Intl'
256
+ | 'ES2024'
257
+ | 'ES2024.ArrayBuffer'
258
+ | 'ES2024.Collection'
259
+ | 'ES2024.Object'
260
+ | 'ES2024.Promise'
261
+ | 'ES2024.Regexp'
262
+ | 'ES2024.SharedMemory'
263
+ | 'ES2024.String'
246
264
  | 'ESNext'
247
265
  | 'ESNext.Array'
248
266
  | 'ESNext.AsyncIterable'
249
267
  | 'ESNext.BigInt'
268
+ | 'ESNext.Collection'
269
+ | 'ESNext.Decorators'
270
+ | 'ESNext.Disposable'
250
271
  | 'ESNext.Intl'
272
+ | 'ESNext.Iterator'
251
273
  | 'ESNext.Promise'
252
274
  | 'ESNext.String'
253
275
  | 'ESNext.Symbol'
@@ -256,6 +278,7 @@ declare namespace TsConfigJson {
256
278
  | 'DOM.Iterable'
257
279
  | 'ScriptHost'
258
280
  | 'WebWorker'
281
+ | 'WebWorker.AsyncIterable'
259
282
  | 'WebWorker.ImportScripts'
260
283
  | 'WebWorker.Iterable'
261
284
  // Lowercase alternatives
@@ -275,6 +298,8 @@ declare namespace TsConfigJson {
275
298
  | 'es2016'
276
299
  | 'es2016.array.include'
277
300
  | 'es2017'
301
+ | 'es2017.arraybuffer'
302
+ | 'es2017.date'
278
303
  | 'es2017.intl'
279
304
  | 'es2017.object'
280
305
  | 'es2017.sharedmemory'
@@ -299,6 +324,7 @@ declare namespace TsConfigJson {
299
324
  | 'es2020.sharedmemory'
300
325
  | 'es2020.intl'
301
326
  | 'es2021'
327
+ | 'es2021.intl'
302
328
  | 'es2021.promise'
303
329
  | 'es2021.string'
304
330
  | 'es2021.weakref'
@@ -307,14 +333,29 @@ declare namespace TsConfigJson {
307
333
  | 'es2022.error'
308
334
  | 'es2022.intl'
309
335
  | 'es2022.object'
310
- | 'es2022.sharedmemory'
311
- | 'es2022.string'
312
336
  | 'es2022.regexp'
337
+ | 'es2022.string'
338
+ | 'es2023'
339
+ | 'es2023.array'
340
+ | 'es2023.collection'
341
+ | 'es2023.intl'
342
+ | 'es2024'
343
+ | 'es2024.arraybuffer'
344
+ | 'es2024.collection'
345
+ | 'es2024.object'
346
+ | 'es2024.promise'
347
+ | 'es2024.regexp'
348
+ | 'es2024.sharedmemory'
349
+ | 'es2024.string'
313
350
  | 'esnext'
314
351
  | 'esnext.array'
315
352
  | 'esnext.asynciterable'
316
353
  | 'esnext.bigint'
354
+ | 'esnext.collection'
355
+ | 'esnext.decorators'
356
+ | 'esnext.disposable'
317
357
  | 'esnext.intl'
358
+ | 'esnext.iterator'
318
359
  | 'esnext.promise'
319
360
  | 'esnext.string'
320
361
  | 'esnext.symbol'
@@ -323,6 +364,7 @@ declare namespace TsConfigJson {
323
364
  | 'dom.iterable'
324
365
  | 'scripthost'
325
366
  | 'webworker'
367
+ | 'webworker.asynciterable'
326
368
  | 'webworker.importscripts'
327
369
  | 'webworker.iterable';
328
370
 
@@ -552,6 +594,13 @@ declare namespace TsConfigJson {
552
594
  */
553
595
  newLine?: CompilerOptions.NewLine;
554
596
 
597
+ /**
598
+ Disable full type checking (only critical parse and emit errors will be reported).
599
+
600
+ @default false
601
+ */
602
+ noCheck?: boolean;
603
+
555
604
  /**
556
605
  Do not emit output.
557
606
 
@@ -694,6 +743,13 @@ declare namespace TsConfigJson {
694
743
  */
695
744
  isolatedModules?: boolean;
696
745
 
746
+ /**
747
+ Require sufficient annotation on exports so other tools can trivially generate declaration files.
748
+
749
+ @default false
750
+ */
751
+ isolatedDeclarations?: boolean;
752
+
697
753
  /**
698
754
  Generates corresponding '.map' file.
699
755
 
@@ -804,6 +860,13 @@ declare namespace TsConfigJson {
804
860
  */
805
861
  noUncheckedIndexedAccess?: boolean;
806
862
 
863
+ /**
864
+ Report error if failed to find a source file for a side effect import.
865
+
866
+ @default false
867
+ */
868
+ noUncheckedSideEffectImports?: boolean;
869
+
807
870
  /**
808
871
  Report errors for fallthrough cases in switch statement.
809
872
 
@@ -839,6 +902,11 @@ declare namespace TsConfigJson {
839
902
  */
840
903
  generateCpuProfile?: string;
841
904
 
905
+ /**
906
+ Generates an event trace and a list of types.
907
+ */
908
+ generateTrace?: boolean;
909
+
842
910
  /**
843
911
  Base directory to resolve non-relative module names.
844
912
  */
@@ -988,6 +1056,13 @@ declare namespace TsConfigJson {
988
1056
  */
989
1057
  checkJs?: boolean;
990
1058
 
1059
+ /**
1060
+ Built-in iterators are instantiated with a `TReturn` type of undefined instead of `any`.
1061
+
1062
+ @default false
1063
+ */
1064
+ strictBuiltinIteratorReturn?: boolean;
1065
+
991
1066
  /**
992
1067
  Disable bivariant parameter checking for function types.
993
1068
 
@@ -1230,6 +1305,11 @@ declare namespace TsConfigJson {
1230
1305
  Specifies a list of type declarations to be excluded from auto type acquisition. For example, `['jquery', 'lodash']`.
1231
1306
  */
1232
1307
  exclude?: string[];
1308
+
1309
+ /**
1310
+ Disable infering what types should be added based on filenames in a project.
1311
+ */
1312
+ disableFilenameBasedTypeAcquisition?: boolean;
1233
1313
  };
1234
1314
 
1235
1315
  export type References = {
package/dist/index.d.ts CHANGED
@@ -34,8 +34,8 @@ type Includes<Value extends readonly any[], Item> =
34
34
  @category Utilities
35
35
  */
36
36
  type IsEqual<A, B> =
37
- (<G>() => G extends A ? 1 : 2) extends
38
- (<G>() => G extends B ? 1 : 2)
37
+ (<G>() => G extends A & G | G ? 1 : 2) extends
38
+ (<G>() => G extends B & G | G ? 1 : 2)
39
39
  ? true
40
40
  : false;
41
41
 
@@ -175,6 +175,8 @@ declare namespace TsConfigJson {
175
175
  | 'ES2020'
176
176
  | 'ES2021'
177
177
  | 'ES2022'
178
+ | 'ES2023'
179
+ | 'ES2024'
178
180
  | 'ESNext'
179
181
  // Lowercase alternatives
180
182
  | 'es3'
@@ -188,6 +190,8 @@ declare namespace TsConfigJson {
188
190
  | 'es2020'
189
191
  | 'es2021'
190
192
  | 'es2022'
193
+ | 'es2023'
194
+ | 'es2024'
191
195
  | 'esnext';
192
196
 
193
197
  // eslint-disable-next-line unicorn/prevent-abbreviations
@@ -208,6 +212,8 @@ declare namespace TsConfigJson {
208
212
  | 'ES2016'
209
213
  | 'ES2016.Array.Include'
210
214
  | 'ES2017'
215
+ | 'ES2017.ArrayBuffer'
216
+ | 'ES2017.Date'
211
217
  | 'ES2017.Intl'
212
218
  | 'ES2017.Object'
213
219
  | 'ES2017.SharedMemory'
@@ -232,6 +238,7 @@ declare namespace TsConfigJson {
232
238
  | 'ES2020.SharedMemory'
233
239
  | 'ES2020.Intl'
234
240
  | 'ES2021'
241
+ | 'ES2021.Intl'
235
242
  | 'ES2021.Promise'
236
243
  | 'ES2021.String'
237
244
  | 'ES2021.WeakRef'
@@ -240,14 +247,29 @@ declare namespace TsConfigJson {
240
247
  | 'ES2022.Error'
241
248
  | 'ES2022.Intl'
242
249
  | 'ES2022.Object'
243
- | 'ES2022.SharedMemory'
244
- | 'ES2022.String'
245
250
  | 'ES2022.RegExp'
251
+ | 'ES2022.String'
252
+ | 'ES2023'
253
+ | 'ES2023.Array'
254
+ | 'ES2023.Collection'
255
+ | 'ES2023.Intl'
256
+ | 'ES2024'
257
+ | 'ES2024.ArrayBuffer'
258
+ | 'ES2024.Collection'
259
+ | 'ES2024.Object'
260
+ | 'ES2024.Promise'
261
+ | 'ES2024.Regexp'
262
+ | 'ES2024.SharedMemory'
263
+ | 'ES2024.String'
246
264
  | 'ESNext'
247
265
  | 'ESNext.Array'
248
266
  | 'ESNext.AsyncIterable'
249
267
  | 'ESNext.BigInt'
268
+ | 'ESNext.Collection'
269
+ | 'ESNext.Decorators'
270
+ | 'ESNext.Disposable'
250
271
  | 'ESNext.Intl'
272
+ | 'ESNext.Iterator'
251
273
  | 'ESNext.Promise'
252
274
  | 'ESNext.String'
253
275
  | 'ESNext.Symbol'
@@ -256,6 +278,7 @@ declare namespace TsConfigJson {
256
278
  | 'DOM.Iterable'
257
279
  | 'ScriptHost'
258
280
  | 'WebWorker'
281
+ | 'WebWorker.AsyncIterable'
259
282
  | 'WebWorker.ImportScripts'
260
283
  | 'WebWorker.Iterable'
261
284
  // Lowercase alternatives
@@ -275,6 +298,8 @@ declare namespace TsConfigJson {
275
298
  | 'es2016'
276
299
  | 'es2016.array.include'
277
300
  | 'es2017'
301
+ | 'es2017.arraybuffer'
302
+ | 'es2017.date'
278
303
  | 'es2017.intl'
279
304
  | 'es2017.object'
280
305
  | 'es2017.sharedmemory'
@@ -299,6 +324,7 @@ declare namespace TsConfigJson {
299
324
  | 'es2020.sharedmemory'
300
325
  | 'es2020.intl'
301
326
  | 'es2021'
327
+ | 'es2021.intl'
302
328
  | 'es2021.promise'
303
329
  | 'es2021.string'
304
330
  | 'es2021.weakref'
@@ -307,14 +333,29 @@ declare namespace TsConfigJson {
307
333
  | 'es2022.error'
308
334
  | 'es2022.intl'
309
335
  | 'es2022.object'
310
- | 'es2022.sharedmemory'
311
- | 'es2022.string'
312
336
  | 'es2022.regexp'
337
+ | 'es2022.string'
338
+ | 'es2023'
339
+ | 'es2023.array'
340
+ | 'es2023.collection'
341
+ | 'es2023.intl'
342
+ | 'es2024'
343
+ | 'es2024.arraybuffer'
344
+ | 'es2024.collection'
345
+ | 'es2024.object'
346
+ | 'es2024.promise'
347
+ | 'es2024.regexp'
348
+ | 'es2024.sharedmemory'
349
+ | 'es2024.string'
313
350
  | 'esnext'
314
351
  | 'esnext.array'
315
352
  | 'esnext.asynciterable'
316
353
  | 'esnext.bigint'
354
+ | 'esnext.collection'
355
+ | 'esnext.decorators'
356
+ | 'esnext.disposable'
317
357
  | 'esnext.intl'
358
+ | 'esnext.iterator'
318
359
  | 'esnext.promise'
319
360
  | 'esnext.string'
320
361
  | 'esnext.symbol'
@@ -323,6 +364,7 @@ declare namespace TsConfigJson {
323
364
  | 'dom.iterable'
324
365
  | 'scripthost'
325
366
  | 'webworker'
367
+ | 'webworker.asynciterable'
326
368
  | 'webworker.importscripts'
327
369
  | 'webworker.iterable';
328
370
 
@@ -552,6 +594,13 @@ declare namespace TsConfigJson {
552
594
  */
553
595
  newLine?: CompilerOptions.NewLine;
554
596
 
597
+ /**
598
+ Disable full type checking (only critical parse and emit errors will be reported).
599
+
600
+ @default false
601
+ */
602
+ noCheck?: boolean;
603
+
555
604
  /**
556
605
  Do not emit output.
557
606
 
@@ -694,6 +743,13 @@ declare namespace TsConfigJson {
694
743
  */
695
744
  isolatedModules?: boolean;
696
745
 
746
+ /**
747
+ Require sufficient annotation on exports so other tools can trivially generate declaration files.
748
+
749
+ @default false
750
+ */
751
+ isolatedDeclarations?: boolean;
752
+
697
753
  /**
698
754
  Generates corresponding '.map' file.
699
755
 
@@ -804,6 +860,13 @@ declare namespace TsConfigJson {
804
860
  */
805
861
  noUncheckedIndexedAccess?: boolean;
806
862
 
863
+ /**
864
+ Report error if failed to find a source file for a side effect import.
865
+
866
+ @default false
867
+ */
868
+ noUncheckedSideEffectImports?: boolean;
869
+
807
870
  /**
808
871
  Report errors for fallthrough cases in switch statement.
809
872
 
@@ -839,6 +902,11 @@ declare namespace TsConfigJson {
839
902
  */
840
903
  generateCpuProfile?: string;
841
904
 
905
+ /**
906
+ Generates an event trace and a list of types.
907
+ */
908
+ generateTrace?: boolean;
909
+
842
910
  /**
843
911
  Base directory to resolve non-relative module names.
844
912
  */
@@ -988,6 +1056,13 @@ declare namespace TsConfigJson {
988
1056
  */
989
1057
  checkJs?: boolean;
990
1058
 
1059
+ /**
1060
+ Built-in iterators are instantiated with a `TReturn` type of undefined instead of `any`.
1061
+
1062
+ @default false
1063
+ */
1064
+ strictBuiltinIteratorReturn?: boolean;
1065
+
991
1066
  /**
992
1067
  Disable bivariant parameter checking for function types.
993
1068
 
@@ -1230,6 +1305,11 @@ declare namespace TsConfigJson {
1230
1305
  Specifies a list of type declarations to be excluded from auto type acquisition. For example, `['jquery', 'lodash']`.
1231
1306
  */
1232
1307
  exclude?: string[];
1308
+
1309
+ /**
1310
+ Disable infering what types should be added based on filenames in a project.
1311
+ */
1312
+ disableFilenameBasedTypeAcquisition?: boolean;
1233
1313
  };
1234
1314
 
1235
1315
  export type References = {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@visulima/tsconfig",
3
- "version": "1.1.1",
3
+ "version": "1.1.3",
4
4
  "description": "Find and/or parse the tsconfig.json file from a directory path.",
5
5
  "keywords": [
6
6
  "anolilab",
@@ -67,8 +67,8 @@
67
67
  "CHANGELOG.md"
68
68
  ],
69
69
  "dependencies": {
70
- "@visulima/fs": "2.3.0",
71
- "@visulima/path": "1.1.1",
70
+ "@visulima/fs": "2.3.2",
71
+ "@visulima/path": "1.1.2",
72
72
  "jsonc-parser": "^3.3.1",
73
73
  "resolve-pkg-maps": "^1.0.0"
74
74
  },
@@ -76,17 +76,17 @@
76
76
  "@anolilab/eslint-config": "^15.0.3",
77
77
  "@anolilab/prettier-config": "^5.0.14",
78
78
  "@anolilab/semantic-release-pnpm": "1.1.3",
79
- "@anolilab/semantic-release-preset": "^9.0.0",
80
- "@arethetypeswrong/cli": "^0.16.4",
81
- "@babel/core": "^7.25.9",
79
+ "@anolilab/semantic-release-preset": "^9.0.3",
80
+ "@arethetypeswrong/cli": "^0.17.2",
81
+ "@babel/core": "^7.26.0",
82
82
  "@ckeditor/typedoc-plugins": "43.0.0",
83
83
  "@rushstack/eslint-plugin-security": "^0.8.3",
84
84
  "@secretlint/secretlint-rule-preset-recommend": "^9.0.0",
85
85
  "@total-typescript/ts-reset": "^0.6.1",
86
86
  "@types/node": "18.18.14",
87
87
  "@visulima/packem": "1.1.0",
88
- "@vitest/coverage-v8": "^2.1.3",
89
- "@vitest/ui": "^2.1.3",
88
+ "@vitest/coverage-v8": "^2.1.8",
89
+ "@vitest/ui": "^2.1.8",
90
90
  "conventional-changelog-conventionalcommits": "8.0.0",
91
91
  "cross-env": "^7.0.3",
92
92
  "esbuild": "0.24.0",
@@ -97,21 +97,21 @@
97
97
  "eslint-plugin-mdx": "^3.1.5",
98
98
  "eslint-plugin-vitest": "^0.4.1",
99
99
  "eslint-plugin-vitest-globals": "^1.5.0",
100
- "execa": "^9.4.1",
101
- "prettier": "^3.3.3",
100
+ "execa": "^9.5.2",
101
+ "prettier": "^3.4.2",
102
102
  "rimraf": "6.0.1",
103
103
  "secretlint": "9.0.0",
104
- "semantic-release": "^24.1.3",
104
+ "semantic-release": "^24.2.0",
105
105
  "tempy": "^3.1.0",
106
- "type-fest": "^4.26.1",
106
+ "type-fest": "^4.31.0",
107
107
  "typedoc": "0.26.10",
108
108
  "typedoc-plugin-markdown": "4.2.9",
109
109
  "typedoc-plugin-rename-defaults": "0.7.1",
110
110
  "typescript": "5.6.3",
111
- "vitest": "^2.1.3"
111
+ "vitest": "^2.1.8"
112
112
  },
113
113
  "engines": {
114
- "node": ">=18.* <=22.*"
114
+ "node": ">=18.* <=23.*"
115
115
  },
116
116
  "publishConfig": {
117
117
  "access": "public",