eslint-plugin-th-rules 2.7.1 → 3.0.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.
Files changed (74) hide show
  1. package/README.md +171 -11
  2. package/dist/configs/bundles/recommended-react.d.ts +199 -0
  3. package/dist/configs/bundles/recommended-react.js +11 -0
  4. package/dist/configs/bundles/recommended-typescript.d.ts +190 -0
  5. package/dist/configs/bundles/recommended-typescript.js +6 -0
  6. package/dist/configs/bundles/recommended.d.ts +190 -0
  7. package/dist/configs/bundles/recommended.js +8 -0
  8. package/dist/configs/core/base.d.ts +170 -0
  9. package/dist/configs/core/base.js +23 -0
  10. package/dist/configs/core/react.d.ts +6 -0
  11. package/dist/configs/core/react.js +8 -0
  12. package/dist/configs/core/typescript.d.ts +2 -0
  13. package/dist/configs/core/typescript.js +19 -0
  14. package/dist/configs/externals/base.d.ts +15 -0
  15. package/dist/configs/externals/base.js +16 -0
  16. package/dist/configs/externals/opinionated.d.ts +10 -0
  17. package/dist/configs/externals/opinionated.js +12 -0
  18. package/dist/index.d.ts +1170 -0
  19. package/dist/index.js +21 -0
  20. package/dist/plugin.d.ts +5 -0
  21. package/dist/plugin.js +14 -0
  22. package/dist/rules/no-boolean-coercion.d.ts +5 -0
  23. package/dist/rules/no-boolean-coercion.js +98 -0
  24. package/dist/rules/no-comments.d.ts +11 -0
  25. package/dist/rules/no-comments.js +83 -0
  26. package/dist/rules/no-default-export.d.ts +5 -0
  27. package/dist/rules/no-default-export.js +61 -0
  28. package/dist/rules/no-destructuring.d.ts +8 -0
  29. package/dist/rules/no-destructuring.js +121 -0
  30. package/dist/rules/prefer-is-empty.d.ts +5 -0
  31. package/dist/rules/prefer-is-empty.js +101 -0
  32. package/dist/rules/schemas-in-schemas-file.d.ts +9 -0
  33. package/dist/rules/schemas-in-schemas-file.js +141 -0
  34. package/dist/rules/top-level-functions.d.ts +5 -0
  35. package/dist/rules/top-level-functions.js +153 -0
  36. package/dist/rules/types-in-dts.d.ts +8 -0
  37. package/dist/rules/types-in-dts.js +76 -0
  38. package/package.json +25 -14
  39. package/.github/dependabot.yml +0 -15
  40. package/.github/workflows/codecov.yml +0 -26
  41. package/.github/workflows/codeql.yml +0 -82
  42. package/.github/workflows/dependency-review.yml +0 -20
  43. package/.github/workflows/main.yml +0 -43
  44. package/.github/workflows/scorecard.yml +0 -72
  45. package/.github/workflows/snyk-security.yml +0 -67
  46. package/.releaserc +0 -13
  47. package/.vscode/settings.json +0 -8
  48. package/.yarn/releases/yarn-4.12.0.cjs +0 -942
  49. package/.yarnrc.yml +0 -3
  50. package/CHANGELOG.md +0 -628
  51. package/SECURITY.md +0 -48
  52. package/docs/rules/no-boolean-coercion.md +0 -9
  53. package/docs/rules/no-comments.md +0 -50
  54. package/docs/rules/no-default-export.md +0 -26
  55. package/docs/rules/no-destructuring.md +0 -40
  56. package/docs/rules/prefer-is-empty.md +0 -9
  57. package/docs/rules/schemas-in-schemas-file.md +0 -170
  58. package/docs/rules/top-level-functions.md +0 -48
  59. package/docs/rules/types-in-dts.md +0 -112
  60. package/renovate.json +0 -3
  61. package/scripts/verify.mjs +0 -16
  62. package/src/index.js +0 -144
  63. package/src/rules/no-boolean-coercion.js +0 -124
  64. package/src/rules/no-comments.js +0 -94
  65. package/src/rules/no-default-export.js +0 -64
  66. package/src/rules/no-destructuring.js +0 -114
  67. package/src/rules/prefer-is-empty.js +0 -104
  68. package/src/rules/schemas-in-schemas-file.js +0 -191
  69. package/src/rules/top-level-functions.js +0 -200
  70. package/src/rules/types-in-dts.js +0 -94
  71. package/tests/no-boolean-coercion.test.ts +0 -83
  72. package/tests/prefer-is-empty.test.ts +0 -148
  73. package/tsconfig.json +0 -22
  74. package/xo.config.ts +0 -2
@@ -0,0 +1,1170 @@
1
+ export { coreBase } from './configs/core/base.js';
2
+ export { coreTypescript } from './configs/core/typescript.js';
3
+ export { coreReact } from './configs/core/react.js';
4
+ export { externalsBase } from './configs/externals/base.js';
5
+ export { externalsOpinionated } from './configs/externals/opinionated.js';
6
+ export declare const configs: {
7
+ recommended: ({
8
+ name: string;
9
+ plugins: {
10
+ 'th-rules': {
11
+ rules: any;
12
+ };
13
+ };
14
+ languageOptions: {
15
+ ecmaVersion: string;
16
+ sourceType: string;
17
+ globals: {
18
+ afterAll: false;
19
+ afterEach: false;
20
+ beforeAll: false;
21
+ beforeEach: false;
22
+ describe: false;
23
+ expect: false;
24
+ fit: false;
25
+ it: false;
26
+ jest: false;
27
+ test: false;
28
+ xdescribe: false;
29
+ xit: false;
30
+ xtest: false;
31
+ AggregateError: false;
32
+ Array: false;
33
+ ArrayBuffer: false;
34
+ Atomics: false;
35
+ BigInt: false;
36
+ BigInt64Array: false;
37
+ BigUint64Array: false;
38
+ Boolean: false;
39
+ DataView: false;
40
+ Date: false;
41
+ decodeURI: false;
42
+ decodeURIComponent: false;
43
+ encodeURI: false;
44
+ encodeURIComponent: false;
45
+ Error: false;
46
+ escape: false;
47
+ eval: false;
48
+ EvalError: false;
49
+ FinalizationRegistry: false;
50
+ Float32Array: false;
51
+ Float64Array: false;
52
+ Function: false;
53
+ globalThis: false;
54
+ Infinity: false;
55
+ Int16Array: false;
56
+ Int32Array: false;
57
+ Int8Array: false;
58
+ Intl: false;
59
+ isFinite: false;
60
+ isNaN: false;
61
+ JSON: false;
62
+ Map: false;
63
+ Math: false;
64
+ NaN: false;
65
+ Number: false;
66
+ Object: false;
67
+ parseFloat: false;
68
+ parseInt: false;
69
+ Promise: false;
70
+ Proxy: false;
71
+ RangeError: false;
72
+ ReferenceError: false;
73
+ Reflect: false;
74
+ RegExp: false;
75
+ Set: false;
76
+ SharedArrayBuffer: false;
77
+ String: false;
78
+ Symbol: false;
79
+ SyntaxError: false;
80
+ TypeError: false;
81
+ Uint16Array: false;
82
+ Uint32Array: false;
83
+ Uint8Array: false;
84
+ Uint8ClampedArray: false;
85
+ undefined: false;
86
+ unescape: false;
87
+ URIError: false;
88
+ WeakMap: false;
89
+ WeakRef: false;
90
+ WeakSet: false;
91
+ __dirname: false;
92
+ __filename: false;
93
+ AbortController: false;
94
+ AbortSignal: false;
95
+ AsyncDisposableStack: false;
96
+ atob: false;
97
+ Blob: false;
98
+ BroadcastChannel: false;
99
+ btoa: false;
100
+ Buffer: false;
101
+ ByteLengthQueuingStrategy: false;
102
+ clearImmediate: false;
103
+ clearInterval: false;
104
+ clearTimeout: false;
105
+ CloseEvent: false;
106
+ CompressionStream: false;
107
+ console: false;
108
+ CountQueuingStrategy: false;
109
+ crypto: false;
110
+ Crypto: false;
111
+ CryptoKey: false;
112
+ CustomEvent: false;
113
+ DecompressionStream: false;
114
+ DisposableStack: false;
115
+ DOMException: false;
116
+ ErrorEvent: false;
117
+ Event: false;
118
+ EventTarget: false;
119
+ exports: true;
120
+ fetch: false;
121
+ File: false;
122
+ FormData: false;
123
+ global: false;
124
+ Headers: false;
125
+ localStorage: false;
126
+ MessageChannel: false;
127
+ MessageEvent: false;
128
+ MessagePort: false;
129
+ module: false;
130
+ navigator: false;
131
+ Navigator: false;
132
+ performance: false;
133
+ Performance: false;
134
+ PerformanceEntry: false;
135
+ PerformanceMark: false;
136
+ PerformanceMeasure: false;
137
+ PerformanceObserver: false;
138
+ PerformanceObserverEntryList: false;
139
+ PerformanceResourceTiming: false;
140
+ process: false;
141
+ queueMicrotask: false;
142
+ ReadableByteStreamController: false;
143
+ ReadableStream: false;
144
+ ReadableStreamBYOBReader: false;
145
+ ReadableStreamBYOBRequest: false;
146
+ ReadableStreamDefaultController: false;
147
+ ReadableStreamDefaultReader: false;
148
+ Request: false;
149
+ require: false;
150
+ Response: false;
151
+ sessionStorage: false;
152
+ setImmediate: false;
153
+ setInterval: false;
154
+ setTimeout: false;
155
+ Storage: false;
156
+ structuredClone: false;
157
+ SubtleCrypto: false;
158
+ SuppressedError: false;
159
+ TextDecoder: false;
160
+ TextDecoderStream: false;
161
+ TextEncoder: false;
162
+ TextEncoderStream: false;
163
+ TransformStream: false;
164
+ TransformStreamDefaultController: false;
165
+ URL: false;
166
+ URLPattern: false;
167
+ URLSearchParams: false;
168
+ WebAssembly: false;
169
+ WebSocket: false;
170
+ WritableStream: false;
171
+ WritableStreamDefaultController: false;
172
+ WritableStreamDefaultWriter: false;
173
+ };
174
+ };
175
+ rules: Record<string, string>;
176
+ } | {
177
+ name: string;
178
+ plugins: {
179
+ lodash: any;
180
+ n: import("@eslint/core", { with: { "resolution-mode": "require" } }).Plugin & {
181
+ configs: import("eslint-plugin-n").Configs;
182
+ };
183
+ sonarjs: typeof import("eslint-plugin-sonarjs");
184
+ security: typeof import("eslint-plugin-security");
185
+ };
186
+ rules: {};
187
+ } | {
188
+ name: string;
189
+ rules: {
190
+ 'lodash/import-scope': string[];
191
+ 'lodash/chaining': string[];
192
+ camelcase: string;
193
+ 'security/detect-unsafe-regex': string;
194
+ 'sonarjs/no-clear-text-protocols': string;
195
+ };
196
+ })[];
197
+ 'recommended-react': ({
198
+ name: string;
199
+ plugins: {
200
+ 'th-rules': {
201
+ rules: any;
202
+ };
203
+ };
204
+ languageOptions: {
205
+ ecmaVersion: string;
206
+ sourceType: string;
207
+ globals: {
208
+ afterAll: false;
209
+ afterEach: false;
210
+ beforeAll: false;
211
+ beforeEach: false;
212
+ describe: false;
213
+ expect: false;
214
+ fit: false;
215
+ it: false;
216
+ jest: false;
217
+ test: false;
218
+ xdescribe: false;
219
+ xit: false;
220
+ xtest: false;
221
+ AggregateError: false;
222
+ Array: false;
223
+ ArrayBuffer: false;
224
+ Atomics: false;
225
+ BigInt: false;
226
+ BigInt64Array: false;
227
+ BigUint64Array: false;
228
+ Boolean: false;
229
+ DataView: false;
230
+ Date: false;
231
+ decodeURI: false;
232
+ decodeURIComponent: false;
233
+ encodeURI: false;
234
+ encodeURIComponent: false;
235
+ Error: false;
236
+ escape: false;
237
+ eval: false;
238
+ EvalError: false;
239
+ FinalizationRegistry: false;
240
+ Float32Array: false;
241
+ Float64Array: false;
242
+ Function: false;
243
+ globalThis: false;
244
+ Infinity: false;
245
+ Int16Array: false;
246
+ Int32Array: false;
247
+ Int8Array: false;
248
+ Intl: false;
249
+ isFinite: false;
250
+ isNaN: false;
251
+ JSON: false;
252
+ Map: false;
253
+ Math: false;
254
+ NaN: false;
255
+ Number: false;
256
+ Object: false;
257
+ parseFloat: false;
258
+ parseInt: false;
259
+ Promise: false;
260
+ Proxy: false;
261
+ RangeError: false;
262
+ ReferenceError: false;
263
+ Reflect: false;
264
+ RegExp: false;
265
+ Set: false;
266
+ SharedArrayBuffer: false;
267
+ String: false;
268
+ Symbol: false;
269
+ SyntaxError: false;
270
+ TypeError: false;
271
+ Uint16Array: false;
272
+ Uint32Array: false;
273
+ Uint8Array: false;
274
+ Uint8ClampedArray: false;
275
+ undefined: false;
276
+ unescape: false;
277
+ URIError: false;
278
+ WeakMap: false;
279
+ WeakRef: false;
280
+ WeakSet: false;
281
+ __dirname: false;
282
+ __filename: false;
283
+ AbortController: false;
284
+ AbortSignal: false;
285
+ AsyncDisposableStack: false;
286
+ atob: false;
287
+ Blob: false;
288
+ BroadcastChannel: false;
289
+ btoa: false;
290
+ Buffer: false;
291
+ ByteLengthQueuingStrategy: false;
292
+ clearImmediate: false;
293
+ clearInterval: false;
294
+ clearTimeout: false;
295
+ CloseEvent: false;
296
+ CompressionStream: false;
297
+ console: false;
298
+ CountQueuingStrategy: false;
299
+ crypto: false;
300
+ Crypto: false;
301
+ CryptoKey: false;
302
+ CustomEvent: false;
303
+ DecompressionStream: false;
304
+ DisposableStack: false;
305
+ DOMException: false;
306
+ ErrorEvent: false;
307
+ Event: false;
308
+ EventTarget: false;
309
+ exports: true;
310
+ fetch: false;
311
+ File: false;
312
+ FormData: false;
313
+ global: false;
314
+ Headers: false;
315
+ localStorage: false;
316
+ MessageChannel: false;
317
+ MessageEvent: false;
318
+ MessagePort: false;
319
+ module: false;
320
+ navigator: false;
321
+ Navigator: false;
322
+ performance: false;
323
+ Performance: false;
324
+ PerformanceEntry: false;
325
+ PerformanceMark: false;
326
+ PerformanceMeasure: false;
327
+ PerformanceObserver: false;
328
+ PerformanceObserverEntryList: false;
329
+ PerformanceResourceTiming: false;
330
+ process: false;
331
+ queueMicrotask: false;
332
+ ReadableByteStreamController: false;
333
+ ReadableStream: false;
334
+ ReadableStreamBYOBReader: false;
335
+ ReadableStreamBYOBRequest: false;
336
+ ReadableStreamDefaultController: false;
337
+ ReadableStreamDefaultReader: false;
338
+ Request: false;
339
+ require: false;
340
+ Response: false;
341
+ sessionStorage: false;
342
+ setImmediate: false;
343
+ setInterval: false;
344
+ setTimeout: false;
345
+ Storage: false;
346
+ structuredClone: false;
347
+ SubtleCrypto: false;
348
+ SuppressedError: false;
349
+ TextDecoder: false;
350
+ TextDecoderStream: false;
351
+ TextEncoder: false;
352
+ TextEncoderStream: false;
353
+ TransformStream: false;
354
+ TransformStreamDefaultController: false;
355
+ URL: false;
356
+ URLPattern: false;
357
+ URLSearchParams: false;
358
+ WebAssembly: false;
359
+ WebSocket: false;
360
+ WritableStream: false;
361
+ WritableStreamDefaultController: false;
362
+ WritableStreamDefaultWriter: false;
363
+ };
364
+ };
365
+ rules: Record<string, string>;
366
+ } | {
367
+ name: string;
368
+ plugins: {
369
+ lodash: any;
370
+ n: import("@eslint/core", { with: { "resolution-mode": "require" } }).Plugin & {
371
+ configs: import("eslint-plugin-n").Configs;
372
+ };
373
+ sonarjs: typeof import("eslint-plugin-sonarjs");
374
+ security: typeof import("eslint-plugin-security");
375
+ };
376
+ rules: {};
377
+ } | {
378
+ name: string;
379
+ rules: {
380
+ 'lodash/import-scope': string[];
381
+ 'lodash/chaining': string[];
382
+ camelcase: string;
383
+ 'security/detect-unsafe-regex': string;
384
+ 'sonarjs/no-clear-text-protocols': string;
385
+ };
386
+ } | {
387
+ name: string;
388
+ rules: {
389
+ 'react-hooks/set-state-in-effect': string;
390
+ };
391
+ } | import("eslint-plugin-react").ReactFlatConfig | {
392
+ plugins: string[];
393
+ rules: import("eslint").Linter.RulesRecord;
394
+ })[];
395
+ 'recommended-typescript': ({
396
+ name: string;
397
+ plugins: {
398
+ 'th-rules': {
399
+ rules: any;
400
+ };
401
+ };
402
+ languageOptions: {
403
+ ecmaVersion: string;
404
+ sourceType: string;
405
+ globals: {
406
+ afterAll: false;
407
+ afterEach: false;
408
+ beforeAll: false;
409
+ beforeEach: false;
410
+ describe: false;
411
+ expect: false;
412
+ fit: false;
413
+ it: false;
414
+ jest: false;
415
+ test: false;
416
+ xdescribe: false;
417
+ xit: false;
418
+ xtest: false;
419
+ AggregateError: false;
420
+ Array: false;
421
+ ArrayBuffer: false;
422
+ Atomics: false;
423
+ BigInt: false;
424
+ BigInt64Array: false;
425
+ BigUint64Array: false;
426
+ Boolean: false;
427
+ DataView: false;
428
+ Date: false;
429
+ decodeURI: false;
430
+ decodeURIComponent: false;
431
+ encodeURI: false;
432
+ encodeURIComponent: false;
433
+ Error: false;
434
+ escape: false;
435
+ eval: false;
436
+ EvalError: false;
437
+ FinalizationRegistry: false;
438
+ Float32Array: false;
439
+ Float64Array: false;
440
+ Function: false;
441
+ globalThis: false;
442
+ Infinity: false;
443
+ Int16Array: false;
444
+ Int32Array: false;
445
+ Int8Array: false;
446
+ Intl: false;
447
+ isFinite: false;
448
+ isNaN: false;
449
+ JSON: false;
450
+ Map: false;
451
+ Math: false;
452
+ NaN: false;
453
+ Number: false;
454
+ Object: false;
455
+ parseFloat: false;
456
+ parseInt: false;
457
+ Promise: false;
458
+ Proxy: false;
459
+ RangeError: false;
460
+ ReferenceError: false;
461
+ Reflect: false;
462
+ RegExp: false;
463
+ Set: false;
464
+ SharedArrayBuffer: false;
465
+ String: false;
466
+ Symbol: false;
467
+ SyntaxError: false;
468
+ TypeError: false;
469
+ Uint16Array: false;
470
+ Uint32Array: false;
471
+ Uint8Array: false;
472
+ Uint8ClampedArray: false;
473
+ undefined: false;
474
+ unescape: false;
475
+ URIError: false;
476
+ WeakMap: false;
477
+ WeakRef: false;
478
+ WeakSet: false;
479
+ __dirname: false;
480
+ __filename: false;
481
+ AbortController: false;
482
+ AbortSignal: false;
483
+ AsyncDisposableStack: false;
484
+ atob: false;
485
+ Blob: false;
486
+ BroadcastChannel: false;
487
+ btoa: false;
488
+ Buffer: false;
489
+ ByteLengthQueuingStrategy: false;
490
+ clearImmediate: false;
491
+ clearInterval: false;
492
+ clearTimeout: false;
493
+ CloseEvent: false;
494
+ CompressionStream: false;
495
+ console: false;
496
+ CountQueuingStrategy: false;
497
+ crypto: false;
498
+ Crypto: false;
499
+ CryptoKey: false;
500
+ CustomEvent: false;
501
+ DecompressionStream: false;
502
+ DisposableStack: false;
503
+ DOMException: false;
504
+ ErrorEvent: false;
505
+ Event: false;
506
+ EventTarget: false;
507
+ exports: true;
508
+ fetch: false;
509
+ File: false;
510
+ FormData: false;
511
+ global: false;
512
+ Headers: false;
513
+ localStorage: false;
514
+ MessageChannel: false;
515
+ MessageEvent: false;
516
+ MessagePort: false;
517
+ module: false;
518
+ navigator: false;
519
+ Navigator: false;
520
+ performance: false;
521
+ Performance: false;
522
+ PerformanceEntry: false;
523
+ PerformanceMark: false;
524
+ PerformanceMeasure: false;
525
+ PerformanceObserver: false;
526
+ PerformanceObserverEntryList: false;
527
+ PerformanceResourceTiming: false;
528
+ process: false;
529
+ queueMicrotask: false;
530
+ ReadableByteStreamController: false;
531
+ ReadableStream: false;
532
+ ReadableStreamBYOBReader: false;
533
+ ReadableStreamBYOBRequest: false;
534
+ ReadableStreamDefaultController: false;
535
+ ReadableStreamDefaultReader: false;
536
+ Request: false;
537
+ require: false;
538
+ Response: false;
539
+ sessionStorage: false;
540
+ setImmediate: false;
541
+ setInterval: false;
542
+ setTimeout: false;
543
+ Storage: false;
544
+ structuredClone: false;
545
+ SubtleCrypto: false;
546
+ SuppressedError: false;
547
+ TextDecoder: false;
548
+ TextDecoderStream: false;
549
+ TextEncoder: false;
550
+ TextEncoderStream: false;
551
+ TransformStream: false;
552
+ TransformStreamDefaultController: false;
553
+ URL: false;
554
+ URLPattern: false;
555
+ URLSearchParams: false;
556
+ WebAssembly: false;
557
+ WebSocket: false;
558
+ WritableStream: false;
559
+ WritableStreamDefaultController: false;
560
+ WritableStreamDefaultWriter: false;
561
+ };
562
+ };
563
+ rules: Record<string, string>;
564
+ } | {
565
+ name: string;
566
+ plugins: {
567
+ lodash: any;
568
+ n: import("@eslint/core", { with: { "resolution-mode": "require" } }).Plugin & {
569
+ configs: import("eslint-plugin-n").Configs;
570
+ };
571
+ sonarjs: typeof import("eslint-plugin-sonarjs");
572
+ security: typeof import("eslint-plugin-security");
573
+ };
574
+ rules: {};
575
+ } | {
576
+ name: string;
577
+ rules: {
578
+ 'lodash/import-scope': string[];
579
+ 'lodash/chaining': string[];
580
+ camelcase: string;
581
+ 'security/detect-unsafe-regex': string;
582
+ 'sonarjs/no-clear-text-protocols': string;
583
+ };
584
+ } | import("typescript-eslint").ConfigWithExtends)[];
585
+ };
586
+ declare const _default: {
587
+ rules: any;
588
+ configs: {
589
+ recommended: ({
590
+ name: string;
591
+ plugins: {
592
+ 'th-rules': {
593
+ rules: any;
594
+ };
595
+ };
596
+ languageOptions: {
597
+ ecmaVersion: string;
598
+ sourceType: string;
599
+ globals: {
600
+ afterAll: false;
601
+ afterEach: false;
602
+ beforeAll: false;
603
+ beforeEach: false;
604
+ describe: false;
605
+ expect: false;
606
+ fit: false;
607
+ it: false;
608
+ jest: false;
609
+ test: false;
610
+ xdescribe: false;
611
+ xit: false;
612
+ xtest: false;
613
+ AggregateError: false;
614
+ Array: false;
615
+ ArrayBuffer: false;
616
+ Atomics: false;
617
+ BigInt: false;
618
+ BigInt64Array: false;
619
+ BigUint64Array: false;
620
+ Boolean: false;
621
+ DataView: false;
622
+ Date: false;
623
+ decodeURI: false;
624
+ decodeURIComponent: false;
625
+ encodeURI: false;
626
+ encodeURIComponent: false;
627
+ Error: false;
628
+ escape: false;
629
+ eval: false;
630
+ EvalError: false;
631
+ FinalizationRegistry: false;
632
+ Float32Array: false;
633
+ Float64Array: false;
634
+ Function: false;
635
+ globalThis: false;
636
+ Infinity: false;
637
+ Int16Array: false;
638
+ Int32Array: false;
639
+ Int8Array: false;
640
+ Intl: false;
641
+ isFinite: false;
642
+ isNaN: false;
643
+ JSON: false;
644
+ Map: false;
645
+ Math: false;
646
+ NaN: false;
647
+ Number: false;
648
+ Object: false;
649
+ parseFloat: false;
650
+ parseInt: false;
651
+ Promise: false;
652
+ Proxy: false;
653
+ RangeError: false;
654
+ ReferenceError: false;
655
+ Reflect: false;
656
+ RegExp: false;
657
+ Set: false;
658
+ SharedArrayBuffer: false;
659
+ String: false;
660
+ Symbol: false;
661
+ SyntaxError: false;
662
+ TypeError: false;
663
+ Uint16Array: false;
664
+ Uint32Array: false;
665
+ Uint8Array: false;
666
+ Uint8ClampedArray: false;
667
+ undefined: false;
668
+ unescape: false;
669
+ URIError: false;
670
+ WeakMap: false;
671
+ WeakRef: false;
672
+ WeakSet: false;
673
+ __dirname: false;
674
+ __filename: false;
675
+ AbortController: false;
676
+ AbortSignal: false;
677
+ AsyncDisposableStack: false;
678
+ atob: false;
679
+ Blob: false;
680
+ BroadcastChannel: false;
681
+ btoa: false;
682
+ Buffer: false;
683
+ ByteLengthQueuingStrategy: false;
684
+ clearImmediate: false;
685
+ clearInterval: false;
686
+ clearTimeout: false;
687
+ CloseEvent: false;
688
+ CompressionStream: false;
689
+ console: false;
690
+ CountQueuingStrategy: false;
691
+ crypto: false;
692
+ Crypto: false;
693
+ CryptoKey: false;
694
+ CustomEvent: false;
695
+ DecompressionStream: false;
696
+ DisposableStack: false;
697
+ DOMException: false;
698
+ ErrorEvent: false;
699
+ Event: false;
700
+ EventTarget: false;
701
+ exports: true;
702
+ fetch: false;
703
+ File: false;
704
+ FormData: false;
705
+ global: false;
706
+ Headers: false;
707
+ localStorage: false;
708
+ MessageChannel: false;
709
+ MessageEvent: false;
710
+ MessagePort: false;
711
+ module: false;
712
+ navigator: false;
713
+ Navigator: false;
714
+ performance: false;
715
+ Performance: false;
716
+ PerformanceEntry: false;
717
+ PerformanceMark: false;
718
+ PerformanceMeasure: false;
719
+ PerformanceObserver: false;
720
+ PerformanceObserverEntryList: false;
721
+ PerformanceResourceTiming: false;
722
+ process: false;
723
+ queueMicrotask: false;
724
+ ReadableByteStreamController: false;
725
+ ReadableStream: false;
726
+ ReadableStreamBYOBReader: false;
727
+ ReadableStreamBYOBRequest: false;
728
+ ReadableStreamDefaultController: false;
729
+ ReadableStreamDefaultReader: false;
730
+ Request: false;
731
+ require: false;
732
+ Response: false;
733
+ sessionStorage: false;
734
+ setImmediate: false;
735
+ setInterval: false;
736
+ setTimeout: false;
737
+ Storage: false;
738
+ structuredClone: false;
739
+ SubtleCrypto: false;
740
+ SuppressedError: false;
741
+ TextDecoder: false;
742
+ TextDecoderStream: false;
743
+ TextEncoder: false;
744
+ TextEncoderStream: false;
745
+ TransformStream: false;
746
+ TransformStreamDefaultController: false;
747
+ URL: false;
748
+ URLPattern: false;
749
+ URLSearchParams: false;
750
+ WebAssembly: false;
751
+ WebSocket: false;
752
+ WritableStream: false;
753
+ WritableStreamDefaultController: false;
754
+ WritableStreamDefaultWriter: false;
755
+ };
756
+ };
757
+ rules: Record<string, string>;
758
+ } | {
759
+ name: string;
760
+ plugins: {
761
+ lodash: any;
762
+ n: import("@eslint/core", { with: { "resolution-mode": "require" } }).Plugin & {
763
+ configs: import("eslint-plugin-n").Configs;
764
+ };
765
+ sonarjs: typeof import("eslint-plugin-sonarjs");
766
+ security: typeof import("eslint-plugin-security");
767
+ };
768
+ rules: {};
769
+ } | {
770
+ name: string;
771
+ rules: {
772
+ 'lodash/import-scope': string[];
773
+ 'lodash/chaining': string[];
774
+ camelcase: string;
775
+ 'security/detect-unsafe-regex': string;
776
+ 'sonarjs/no-clear-text-protocols': string;
777
+ };
778
+ })[];
779
+ 'recommended-react': ({
780
+ name: string;
781
+ plugins: {
782
+ 'th-rules': {
783
+ rules: any;
784
+ };
785
+ };
786
+ languageOptions: {
787
+ ecmaVersion: string;
788
+ sourceType: string;
789
+ globals: {
790
+ afterAll: false;
791
+ afterEach: false;
792
+ beforeAll: false;
793
+ beforeEach: false;
794
+ describe: false;
795
+ expect: false;
796
+ fit: false;
797
+ it: false;
798
+ jest: false;
799
+ test: false;
800
+ xdescribe: false;
801
+ xit: false;
802
+ xtest: false;
803
+ AggregateError: false;
804
+ Array: false;
805
+ ArrayBuffer: false;
806
+ Atomics: false;
807
+ BigInt: false;
808
+ BigInt64Array: false;
809
+ BigUint64Array: false;
810
+ Boolean: false;
811
+ DataView: false;
812
+ Date: false;
813
+ decodeURI: false;
814
+ decodeURIComponent: false;
815
+ encodeURI: false;
816
+ encodeURIComponent: false;
817
+ Error: false;
818
+ escape: false;
819
+ eval: false;
820
+ EvalError: false;
821
+ FinalizationRegistry: false;
822
+ Float32Array: false;
823
+ Float64Array: false;
824
+ Function: false;
825
+ globalThis: false;
826
+ Infinity: false;
827
+ Int16Array: false;
828
+ Int32Array: false;
829
+ Int8Array: false;
830
+ Intl: false;
831
+ isFinite: false;
832
+ isNaN: false;
833
+ JSON: false;
834
+ Map: false;
835
+ Math: false;
836
+ NaN: false;
837
+ Number: false;
838
+ Object: false;
839
+ parseFloat: false;
840
+ parseInt: false;
841
+ Promise: false;
842
+ Proxy: false;
843
+ RangeError: false;
844
+ ReferenceError: false;
845
+ Reflect: false;
846
+ RegExp: false;
847
+ Set: false;
848
+ SharedArrayBuffer: false;
849
+ String: false;
850
+ Symbol: false;
851
+ SyntaxError: false;
852
+ TypeError: false;
853
+ Uint16Array: false;
854
+ Uint32Array: false;
855
+ Uint8Array: false;
856
+ Uint8ClampedArray: false;
857
+ undefined: false;
858
+ unescape: false;
859
+ URIError: false;
860
+ WeakMap: false;
861
+ WeakRef: false;
862
+ WeakSet: false;
863
+ __dirname: false;
864
+ __filename: false;
865
+ AbortController: false;
866
+ AbortSignal: false;
867
+ AsyncDisposableStack: false;
868
+ atob: false;
869
+ Blob: false;
870
+ BroadcastChannel: false;
871
+ btoa: false;
872
+ Buffer: false;
873
+ ByteLengthQueuingStrategy: false;
874
+ clearImmediate: false;
875
+ clearInterval: false;
876
+ clearTimeout: false;
877
+ CloseEvent: false;
878
+ CompressionStream: false;
879
+ console: false;
880
+ CountQueuingStrategy: false;
881
+ crypto: false;
882
+ Crypto: false;
883
+ CryptoKey: false;
884
+ CustomEvent: false;
885
+ DecompressionStream: false;
886
+ DisposableStack: false;
887
+ DOMException: false;
888
+ ErrorEvent: false;
889
+ Event: false;
890
+ EventTarget: false;
891
+ exports: true;
892
+ fetch: false;
893
+ File: false;
894
+ FormData: false;
895
+ global: false;
896
+ Headers: false;
897
+ localStorage: false;
898
+ MessageChannel: false;
899
+ MessageEvent: false;
900
+ MessagePort: false;
901
+ module: false;
902
+ navigator: false;
903
+ Navigator: false;
904
+ performance: false;
905
+ Performance: false;
906
+ PerformanceEntry: false;
907
+ PerformanceMark: false;
908
+ PerformanceMeasure: false;
909
+ PerformanceObserver: false;
910
+ PerformanceObserverEntryList: false;
911
+ PerformanceResourceTiming: false;
912
+ process: false;
913
+ queueMicrotask: false;
914
+ ReadableByteStreamController: false;
915
+ ReadableStream: false;
916
+ ReadableStreamBYOBReader: false;
917
+ ReadableStreamBYOBRequest: false;
918
+ ReadableStreamDefaultController: false;
919
+ ReadableStreamDefaultReader: false;
920
+ Request: false;
921
+ require: false;
922
+ Response: false;
923
+ sessionStorage: false;
924
+ setImmediate: false;
925
+ setInterval: false;
926
+ setTimeout: false;
927
+ Storage: false;
928
+ structuredClone: false;
929
+ SubtleCrypto: false;
930
+ SuppressedError: false;
931
+ TextDecoder: false;
932
+ TextDecoderStream: false;
933
+ TextEncoder: false;
934
+ TextEncoderStream: false;
935
+ TransformStream: false;
936
+ TransformStreamDefaultController: false;
937
+ URL: false;
938
+ URLPattern: false;
939
+ URLSearchParams: false;
940
+ WebAssembly: false;
941
+ WebSocket: false;
942
+ WritableStream: false;
943
+ WritableStreamDefaultController: false;
944
+ WritableStreamDefaultWriter: false;
945
+ };
946
+ };
947
+ rules: Record<string, string>;
948
+ } | {
949
+ name: string;
950
+ plugins: {
951
+ lodash: any;
952
+ n: import("@eslint/core", { with: { "resolution-mode": "require" } }).Plugin & {
953
+ configs: import("eslint-plugin-n").Configs;
954
+ };
955
+ sonarjs: typeof import("eslint-plugin-sonarjs");
956
+ security: typeof import("eslint-plugin-security");
957
+ };
958
+ rules: {};
959
+ } | {
960
+ name: string;
961
+ rules: {
962
+ 'lodash/import-scope': string[];
963
+ 'lodash/chaining': string[];
964
+ camelcase: string;
965
+ 'security/detect-unsafe-regex': string;
966
+ 'sonarjs/no-clear-text-protocols': string;
967
+ };
968
+ } | {
969
+ name: string;
970
+ rules: {
971
+ 'react-hooks/set-state-in-effect': string;
972
+ };
973
+ } | import("eslint-plugin-react").ReactFlatConfig | {
974
+ plugins: string[];
975
+ rules: import("eslint").Linter.RulesRecord;
976
+ })[];
977
+ 'recommended-typescript': ({
978
+ name: string;
979
+ plugins: {
980
+ 'th-rules': {
981
+ rules: any;
982
+ };
983
+ };
984
+ languageOptions: {
985
+ ecmaVersion: string;
986
+ sourceType: string;
987
+ globals: {
988
+ afterAll: false;
989
+ afterEach: false;
990
+ beforeAll: false;
991
+ beforeEach: false;
992
+ describe: false;
993
+ expect: false;
994
+ fit: false;
995
+ it: false;
996
+ jest: false;
997
+ test: false;
998
+ xdescribe: false;
999
+ xit: false;
1000
+ xtest: false;
1001
+ AggregateError: false;
1002
+ Array: false;
1003
+ ArrayBuffer: false;
1004
+ Atomics: false;
1005
+ BigInt: false;
1006
+ BigInt64Array: false;
1007
+ BigUint64Array: false;
1008
+ Boolean: false;
1009
+ DataView: false;
1010
+ Date: false;
1011
+ decodeURI: false;
1012
+ decodeURIComponent: false;
1013
+ encodeURI: false;
1014
+ encodeURIComponent: false;
1015
+ Error: false;
1016
+ escape: false;
1017
+ eval: false;
1018
+ EvalError: false;
1019
+ FinalizationRegistry: false;
1020
+ Float32Array: false;
1021
+ Float64Array: false;
1022
+ Function: false;
1023
+ globalThis: false;
1024
+ Infinity: false;
1025
+ Int16Array: false;
1026
+ Int32Array: false;
1027
+ Int8Array: false;
1028
+ Intl: false;
1029
+ isFinite: false;
1030
+ isNaN: false;
1031
+ JSON: false;
1032
+ Map: false;
1033
+ Math: false;
1034
+ NaN: false;
1035
+ Number: false;
1036
+ Object: false;
1037
+ parseFloat: false;
1038
+ parseInt: false;
1039
+ Promise: false;
1040
+ Proxy: false;
1041
+ RangeError: false;
1042
+ ReferenceError: false;
1043
+ Reflect: false;
1044
+ RegExp: false;
1045
+ Set: false;
1046
+ SharedArrayBuffer: false;
1047
+ String: false;
1048
+ Symbol: false;
1049
+ SyntaxError: false;
1050
+ TypeError: false;
1051
+ Uint16Array: false;
1052
+ Uint32Array: false;
1053
+ Uint8Array: false;
1054
+ Uint8ClampedArray: false;
1055
+ undefined: false;
1056
+ unescape: false;
1057
+ URIError: false;
1058
+ WeakMap: false;
1059
+ WeakRef: false;
1060
+ WeakSet: false;
1061
+ __dirname: false;
1062
+ __filename: false;
1063
+ AbortController: false;
1064
+ AbortSignal: false;
1065
+ AsyncDisposableStack: false;
1066
+ atob: false;
1067
+ Blob: false;
1068
+ BroadcastChannel: false;
1069
+ btoa: false;
1070
+ Buffer: false;
1071
+ ByteLengthQueuingStrategy: false;
1072
+ clearImmediate: false;
1073
+ clearInterval: false;
1074
+ clearTimeout: false;
1075
+ CloseEvent: false;
1076
+ CompressionStream: false;
1077
+ console: false;
1078
+ CountQueuingStrategy: false;
1079
+ crypto: false;
1080
+ Crypto: false;
1081
+ CryptoKey: false;
1082
+ CustomEvent: false;
1083
+ DecompressionStream: false;
1084
+ DisposableStack: false;
1085
+ DOMException: false;
1086
+ ErrorEvent: false;
1087
+ Event: false;
1088
+ EventTarget: false;
1089
+ exports: true;
1090
+ fetch: false;
1091
+ File: false;
1092
+ FormData: false;
1093
+ global: false;
1094
+ Headers: false;
1095
+ localStorage: false;
1096
+ MessageChannel: false;
1097
+ MessageEvent: false;
1098
+ MessagePort: false;
1099
+ module: false;
1100
+ navigator: false;
1101
+ Navigator: false;
1102
+ performance: false;
1103
+ Performance: false;
1104
+ PerformanceEntry: false;
1105
+ PerformanceMark: false;
1106
+ PerformanceMeasure: false;
1107
+ PerformanceObserver: false;
1108
+ PerformanceObserverEntryList: false;
1109
+ PerformanceResourceTiming: false;
1110
+ process: false;
1111
+ queueMicrotask: false;
1112
+ ReadableByteStreamController: false;
1113
+ ReadableStream: false;
1114
+ ReadableStreamBYOBReader: false;
1115
+ ReadableStreamBYOBRequest: false;
1116
+ ReadableStreamDefaultController: false;
1117
+ ReadableStreamDefaultReader: false;
1118
+ Request: false;
1119
+ require: false;
1120
+ Response: false;
1121
+ sessionStorage: false;
1122
+ setImmediate: false;
1123
+ setInterval: false;
1124
+ setTimeout: false;
1125
+ Storage: false;
1126
+ structuredClone: false;
1127
+ SubtleCrypto: false;
1128
+ SuppressedError: false;
1129
+ TextDecoder: false;
1130
+ TextDecoderStream: false;
1131
+ TextEncoder: false;
1132
+ TextEncoderStream: false;
1133
+ TransformStream: false;
1134
+ TransformStreamDefaultController: false;
1135
+ URL: false;
1136
+ URLPattern: false;
1137
+ URLSearchParams: false;
1138
+ WebAssembly: false;
1139
+ WebSocket: false;
1140
+ WritableStream: false;
1141
+ WritableStreamDefaultController: false;
1142
+ WritableStreamDefaultWriter: false;
1143
+ };
1144
+ };
1145
+ rules: Record<string, string>;
1146
+ } | {
1147
+ name: string;
1148
+ plugins: {
1149
+ lodash: any;
1150
+ n: import("@eslint/core", { with: { "resolution-mode": "require" } }).Plugin & {
1151
+ configs: import("eslint-plugin-n").Configs;
1152
+ };
1153
+ sonarjs: typeof import("eslint-plugin-sonarjs");
1154
+ security: typeof import("eslint-plugin-security");
1155
+ };
1156
+ rules: {};
1157
+ } | {
1158
+ name: string;
1159
+ rules: {
1160
+ 'lodash/import-scope': string[];
1161
+ 'lodash/chaining': string[];
1162
+ camelcase: string;
1163
+ 'security/detect-unsafe-regex': string;
1164
+ 'sonarjs/no-clear-text-protocols': string;
1165
+ };
1166
+ } | import("typescript-eslint").ConfigWithExtends)[];
1167
+ };
1168
+ };
1169
+ export default _default;
1170
+ export { rules } from './plugin.js';