eslint-config-typed 3.13.3 → 3.13.4

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 (96) hide show
  1. package/dist/rules/typescript-eslint-rules.d.mts +1 -0
  2. package/dist/rules/typescript-eslint-rules.d.mts.map +1 -1
  3. package/dist/rules/typescript-eslint-rules.mjs +1 -0
  4. package/dist/rules/typescript-eslint-rules.mjs.map +1 -1
  5. package/dist/types/rules/eslint-array-func-rules.d.mts +8 -8
  6. package/dist/types/rules/eslint-array-func-rules.d.mts.map +1 -1
  7. package/dist/types/rules/eslint-cypress-rules.d.mts +27 -23
  8. package/dist/types/rules/eslint-cypress-rules.d.mts.map +1 -1
  9. package/dist/types/rules/eslint-functional-rules.d.mts +426 -425
  10. package/dist/types/rules/eslint-functional-rules.d.mts.map +1 -1
  11. package/dist/types/rules/eslint-import-rules.d.mts +343 -325
  12. package/dist/types/rules/eslint-import-rules.d.mts.map +1 -1
  13. package/dist/types/rules/eslint-jest-rules.d.mts +183 -171
  14. package/dist/types/rules/eslint-jest-rules.d.mts.map +1 -1
  15. package/dist/types/rules/eslint-jsx-a11y-rules.d.mts +211 -209
  16. package/dist/types/rules/eslint-jsx-a11y-rules.d.mts.map +1 -1
  17. package/dist/types/rules/eslint-math-rules.d.mts +49 -48
  18. package/dist/types/rules/eslint-math-rules.d.mts.map +1 -1
  19. package/dist/types/rules/eslint-n-rules.d.mts +296 -293
  20. package/dist/types/rules/eslint-n-rules.d.mts.map +1 -1
  21. package/dist/types/rules/eslint-playwright-rules.d.mts +161 -149
  22. package/dist/types/rules/eslint-playwright-rules.d.mts.map +1 -1
  23. package/dist/types/rules/eslint-plugin-rules.d.mts +95 -85
  24. package/dist/types/rules/eslint-plugin-rules.d.mts.map +1 -1
  25. package/dist/types/rules/eslint-plugin-sort-destructure-keys-rules.d.mts +10 -10
  26. package/dist/types/rules/eslint-plugin-sort-destructure-keys-rules.d.mts.map +1 -1
  27. package/dist/types/rules/eslint-prefer-arrow-functions-rules.d.mts +23 -16
  28. package/dist/types/rules/eslint-prefer-arrow-functions-rules.d.mts.map +1 -1
  29. package/dist/types/rules/eslint-promise-rules.d.mts +68 -68
  30. package/dist/types/rules/eslint-promise-rules.d.mts.map +1 -1
  31. package/dist/types/rules/eslint-react-coding-style-rules.d.mts +29 -29
  32. package/dist/types/rules/eslint-react-coding-style-rules.d.mts.map +1 -1
  33. package/dist/types/rules/eslint-react-hooks-rules.d.mts +100 -100
  34. package/dist/types/rules/eslint-react-hooks-rules.d.mts.map +1 -1
  35. package/dist/types/rules/eslint-react-perf-rules.d.mts +28 -28
  36. package/dist/types/rules/eslint-react-perf-rules.d.mts.map +1 -1
  37. package/dist/types/rules/eslint-react-refresh-rules.d.mts +13 -13
  38. package/dist/types/rules/eslint-react-refresh-rules.d.mts.map +1 -1
  39. package/dist/types/rules/eslint-react-rules.d.mts +646 -620
  40. package/dist/types/rules/eslint-react-rules.d.mts.map +1 -1
  41. package/dist/types/rules/eslint-rules.d.mts +1022 -1016
  42. package/dist/types/rules/eslint-rules.d.mts.map +1 -1
  43. package/dist/types/rules/eslint-security-rules.d.mts +16 -16
  44. package/dist/types/rules/eslint-security-rules.d.mts.map +1 -1
  45. package/dist/types/rules/eslint-strict-dependencies-rules.d.mts +18 -18
  46. package/dist/types/rules/eslint-strict-dependencies-rules.d.mts.map +1 -1
  47. package/dist/types/rules/eslint-stylistic-rules.d.mts +1440 -1400
  48. package/dist/types/rules/eslint-stylistic-rules.d.mts.map +1 -1
  49. package/dist/types/rules/eslint-testing-library-rules.d.mts +110 -105
  50. package/dist/types/rules/eslint-testing-library-rules.d.mts.map +1 -1
  51. package/dist/types/rules/eslint-total-functions-rules.d.mts +16 -16
  52. package/dist/types/rules/eslint-total-functions-rules.d.mts.map +1 -1
  53. package/dist/types/rules/eslint-tree-shakable-rules.d.mts +3 -3
  54. package/dist/types/rules/eslint-tree-shakable-rules.d.mts.map +1 -1
  55. package/dist/types/rules/eslint-ts-restrictions-rules.d.mts +30 -30
  56. package/dist/types/rules/eslint-ts-restrictions-rules.d.mts.map +1 -1
  57. package/dist/types/rules/eslint-unicorn-rules.d.mts +398 -392
  58. package/dist/types/rules/eslint-unicorn-rules.d.mts.map +1 -1
  59. package/dist/types/rules/eslint-vitest-coding-style-rules.d.mts +3 -3
  60. package/dist/types/rules/eslint-vitest-coding-style-rules.d.mts.map +1 -1
  61. package/dist/types/rules/eslint-vitest-rules.d.mts +204 -190
  62. package/dist/types/rules/eslint-vitest-rules.d.mts.map +1 -1
  63. package/dist/types/rules/typescript-eslint-rules.d.mts +1107 -1077
  64. package/dist/types/rules/typescript-eslint-rules.d.mts.map +1 -1
  65. package/package.json +23 -23
  66. package/src/rules/typescript-eslint-rules.mts +2 -0
  67. package/src/types/rules/eslint-array-func-rules.mts +8 -8
  68. package/src/types/rules/eslint-cypress-rules.mts +28 -24
  69. package/src/types/rules/eslint-functional-rules.mts +581 -576
  70. package/src/types/rules/eslint-import-rules.mts +403 -384
  71. package/src/types/rules/eslint-jest-rules.mts +212 -196
  72. package/src/types/rules/eslint-jsx-a11y-rules.mts +252 -250
  73. package/src/types/rules/eslint-math-rules.mts +53 -52
  74. package/src/types/rules/eslint-n-rules.mts +1762 -1757
  75. package/src/types/rules/eslint-playwright-rules.mts +187 -171
  76. package/src/types/rules/eslint-plugin-rules.mts +109 -99
  77. package/src/types/rules/eslint-plugin-sort-destructure-keys-rules.mts +11 -11
  78. package/src/types/rules/eslint-prefer-arrow-functions-rules.mts +24 -17
  79. package/src/types/rules/eslint-promise-rules.mts +76 -76
  80. package/src/types/rules/eslint-react-coding-style-rules.mts +32 -32
  81. package/src/types/rules/eslint-react-hooks-rules.mts +129 -129
  82. package/src/types/rules/eslint-react-perf-rules.mts +32 -32
  83. package/src/types/rules/eslint-react-refresh-rules.mts +14 -14
  84. package/src/types/rules/eslint-react-rules.mts +787 -792
  85. package/src/types/rules/eslint-rules.mts +1180 -1173
  86. package/src/types/rules/eslint-security-rules.mts +16 -16
  87. package/src/types/rules/eslint-strict-dependencies-rules.mts +19 -19
  88. package/src/types/rules/eslint-stylistic-rules.mts +1767 -1807
  89. package/src/types/rules/eslint-testing-library-rules.mts +128 -124
  90. package/src/types/rules/eslint-total-functions-rules.mts +16 -16
  91. package/src/types/rules/eslint-tree-shakable-rules.mts +3 -3
  92. package/src/types/rules/eslint-ts-restrictions-rules.mts +34 -33
  93. package/src/types/rules/eslint-unicorn-rules.mts +447 -436
  94. package/src/types/rules/eslint-vitest-coding-style-rules.mts +3 -3
  95. package/src/types/rules/eslint-vitest-rules.mts +232 -219
  96. package/src/types/rules/typescript-eslint-rules.mts +1511 -1489
@@ -55,18 +55,20 @@ namespace BooleanPropNaming {
55
55
  * ]
56
56
  * ```
57
57
  */
58
- export type Options = {
58
+ export type Options = Readonly<{
59
59
  /** @minItems 1 */
60
- readonly propTypeNames?: readonly [string, ...(readonly string[])];
61
- readonly rule?: string;
62
- readonly message?: string;
63
- readonly validateNested?: boolean;
64
- };
60
+ propTypeNames?: readonly [string, ...string[]];
61
+ /** @default '^(is|has)[A-Z]([A-Za-z0-9]?)+' */
62
+ rule?: string;
63
+ message?: string;
64
+ /** @default false */
65
+ validateNested?: boolean;
66
+ }>;
65
67
 
66
68
  export type RuleEntry =
69
+ | 'off'
67
70
  | Linter.Severity
68
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
69
- | 'off';
71
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
70
72
  }
71
73
 
72
74
  /**
@@ -108,16 +110,19 @@ namespace ButtonHasType {
108
110
  * ]
109
111
  * ```
110
112
  */
111
- export type Options = {
112
- readonly button?: boolean;
113
- readonly submit?: boolean;
114
- readonly reset?: boolean;
115
- };
113
+ export type Options = Readonly<{
114
+ /** @default true */
115
+ button?: boolean;
116
+ /** @default true */
117
+ submit?: boolean;
118
+ /** @default true */
119
+ reset?: boolean;
120
+ }>;
116
121
 
117
122
  export type RuleEntry =
123
+ | 'off'
118
124
  | Linter.Severity
119
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
120
- | 'off';
125
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
121
126
  }
122
127
 
123
128
  /**
@@ -152,15 +157,15 @@ namespace CheckedRequiresOnchangeOrReadonly {
152
157
  * ]
153
158
  * ```
154
159
  */
155
- export type Options = {
156
- readonly ignoreMissingProperties?: boolean;
157
- readonly ignoreExclusiveCheckedAttribute?: boolean;
158
- };
160
+ export type Options = Readonly<{
161
+ ignoreMissingProperties?: boolean;
162
+ ignoreExclusiveCheckedAttribute?: boolean;
163
+ }>;
159
164
 
160
165
  export type RuleEntry =
166
+ | 'off'
161
167
  | Linter.Severity
162
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
163
- | 'off';
168
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
164
169
  }
165
170
 
166
171
  /**
@@ -193,14 +198,15 @@ namespace DefaultPropsMatchPropTypes {
193
198
  * ]
194
199
  * ```
195
200
  */
196
- export type Options = {
197
- readonly allowRequiredDefaults?: boolean;
198
- };
201
+ export type Options = Readonly<{
202
+ /** @default false */
203
+ allowRequiredDefaults?: boolean;
204
+ }>;
199
205
 
200
206
  export type RuleEntry =
207
+ | 'off'
201
208
  | Linter.Severity
202
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
203
- | 'off';
209
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
204
210
  }
205
211
 
206
212
  /**
@@ -251,16 +257,16 @@ namespace DestructuringAssignment {
251
257
  */
252
258
  export type Options0 = 'always' | 'never';
253
259
 
254
- export type Options1 = {
255
- readonly ignoreClassFields?: boolean;
256
- readonly destructureInSignature?: 'always' | 'ignore';
257
- };
260
+ export type Options1 = Readonly<{
261
+ ignoreClassFields?: boolean;
262
+ destructureInSignature?: 'always' | 'ignore';
263
+ }>;
258
264
 
259
265
  export type RuleEntry =
266
+ | 'off'
260
267
  | Linter.Severity
261
- | readonly [Linter.StringSeverity, Options0, Options1]
262
268
  | readonly [Linter.StringSeverity, Options0]
263
- | 'off';
269
+ | readonly [Linter.StringSeverity, Options0, Options1];
264
270
  }
265
271
 
266
272
  /**
@@ -296,15 +302,15 @@ namespace DisplayName {
296
302
  * ]
297
303
  * ```
298
304
  */
299
- export type Options = {
300
- readonly ignoreTranspilerName?: boolean;
301
- readonly checkContextObjects?: boolean;
302
- };
305
+ export type Options = Readonly<{
306
+ ignoreTranspilerName?: boolean;
307
+ checkContextObjects?: boolean;
308
+ }>;
303
309
 
304
310
  export type RuleEntry =
311
+ | 'off'
305
312
  | Linter.Severity
306
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
307
- | 'off';
313
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
308
314
  }
309
315
 
310
316
  /**
@@ -475,30 +481,32 @@ namespace ForbidComponentProps {
475
481
  * ]
476
482
  * ```
477
483
  */
478
- export type Options = {
479
- readonly forbid?: readonly (
480
- | UnknownRecord
484
+ export type Options = Readonly<{
485
+ forbid?: readonly (
481
486
  | string
482
- | {
483
- readonly propName?: string;
484
- readonly allowedFor?: readonly string[];
485
- readonly allowedForPatterns?: readonly string[];
486
- readonly message?: string;
487
- }
488
- | {
489
- readonly propNamePattern?: string;
490
- readonly allowedFor?: readonly string[];
491
- readonly allowedForPatterns?: readonly string[];
492
- readonly message?: string;
493
- }
487
+ | Readonly<
488
+ | {
489
+ propName?: string;
490
+ allowedFor?: readonly string[];
491
+ allowedForPatterns?: readonly string[];
492
+ message?: string;
493
+ }
494
+ | Record<string, unknown>
495
+ | {
496
+ propNamePattern?: string;
497
+ allowedFor?: readonly string[];
498
+ allowedForPatterns?: readonly string[];
499
+ message?: string;
500
+ }
501
+ >
494
502
  )[];
495
- readonly [k: string]: unknown;
496
- };
503
+ [k: string]: unknown;
504
+ }>;
497
505
 
498
506
  export type RuleEntry =
507
+ | 'off'
499
508
  | Linter.Severity
500
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
501
- | 'off';
509
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
502
510
  }
503
511
 
504
512
  /**
@@ -558,22 +566,22 @@ namespace ForbidDomProps {
558
566
  * ]
559
567
  * ```
560
568
  */
561
- export type Options = {
562
- readonly forbid?: readonly (
569
+ export type Options = Readonly<{
570
+ forbid?: readonly (
563
571
  | string
564
- | {
565
- readonly propName?: string;
566
- readonly disallowedFor?: readonly string[];
567
- readonly message?: string;
568
- readonly [k: string]: unknown;
569
- }
572
+ | Readonly<{
573
+ propName?: string;
574
+ disallowedFor?: readonly string[];
575
+ message?: string;
576
+ [k: string]: unknown;
577
+ }>
570
578
  )[];
571
- };
579
+ }>;
572
580
 
573
581
  export type RuleEntry =
582
+ | 'off'
574
583
  | Linter.Severity
575
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
576
- | 'off';
584
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
577
585
  }
578
586
 
579
587
  /**
@@ -628,20 +636,20 @@ namespace ForbidElements {
628
636
  * ]
629
637
  * ```
630
638
  */
631
- export type Options = {
632
- readonly forbid?: readonly (
639
+ export type Options = Readonly<{
640
+ forbid?: readonly (
633
641
  | string
634
- | {
635
- readonly element: string;
636
- readonly message?: string;
637
- }
642
+ | Readonly<{
643
+ element: string;
644
+ message?: string;
645
+ }>
638
646
  )[];
639
- };
647
+ }>;
640
648
 
641
649
  export type RuleEntry =
650
+ | 'off'
642
651
  | Linter.Severity
643
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
644
- | 'off';
652
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
645
653
  }
646
654
 
647
655
  /**
@@ -674,14 +682,14 @@ namespace ForbidForeignPropTypes {
674
682
  * ]
675
683
  * ```
676
684
  */
677
- export type Options = {
678
- readonly allowInPropTypes?: boolean;
679
- };
685
+ export type Options = Readonly<{
686
+ allowInPropTypes?: boolean;
687
+ }>;
680
688
 
681
689
  export type RuleEntry =
690
+ | 'off'
682
691
  | Linter.Severity
683
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
684
- | 'off';
692
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
685
693
  }
686
694
 
687
695
  /**
@@ -723,17 +731,17 @@ namespace ForbidPropTypes {
723
731
  * ]
724
732
  * ```
725
733
  */
726
- export type Options = {
727
- readonly forbid?: readonly string[];
728
- readonly checkContextTypes?: boolean;
729
- readonly checkChildContextTypes?: boolean;
730
- readonly [k: string]: unknown;
731
- };
734
+ export type Options = Readonly<{
735
+ forbid?: readonly string[];
736
+ checkContextTypes?: boolean;
737
+ checkChildContextTypes?: boolean;
738
+ [k: string]: unknown;
739
+ }>;
732
740
 
733
741
  export type RuleEntry =
742
+ | 'off'
734
743
  | Linter.Severity
735
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
736
- | 'off';
744
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
737
745
  }
738
746
 
739
747
  /**
@@ -823,27 +831,24 @@ namespace FunctionComponentDefinition {
823
831
  * ]
824
832
  * ```
825
833
  */
826
- export type Options = {
827
- readonly namedComponents?:
834
+ export type Options = Readonly<{
835
+ namedComponents?:
836
+ | ('function-declaration' | 'arrow-function' | 'function-expression')
828
837
  | readonly (
829
- | 'arrow-function'
830
838
  | 'function-declaration'
839
+ | 'arrow-function'
831
840
  | 'function-expression'
832
- )[]
833
- | 'arrow-function'
834
- | 'function-declaration'
835
- | 'function-expression';
836
- readonly unnamedComponents?:
837
- | readonly ('arrow-function' | 'function-expression')[]
838
- | 'arrow-function'
839
- | 'function-expression';
840
- readonly [k: string]: unknown;
841
- };
841
+ )[];
842
+ unnamedComponents?:
843
+ | ('arrow-function' | 'function-expression')
844
+ | readonly ('arrow-function' | 'function-expression')[];
845
+ [k: string]: unknown;
846
+ }>;
842
847
 
843
848
  export type RuleEntry =
849
+ | 'off'
844
850
  | Linter.Severity
845
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
846
- | 'off';
851
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
847
852
  }
848
853
 
849
854
  /**
@@ -880,14 +885,15 @@ namespace HookUseState {
880
885
  * ]
881
886
  * ```
882
887
  */
883
- export type Options = {
884
- readonly allowDestructuredState?: boolean;
885
- };
888
+ export type Options = Readonly<{
889
+ /** @default false */
890
+ allowDestructuredState?: boolean;
891
+ }>;
886
892
 
887
893
  export type RuleEntry =
894
+ | 'off'
888
895
  | Linter.Severity
889
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
890
- | 'off';
896
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
891
897
  }
892
898
 
893
899
  /**
@@ -992,29 +998,29 @@ namespace JsxBooleanValue {
992
998
  * ```
993
999
  */
994
1000
  export type Options =
1001
+ | readonly []
1002
+ | readonly ['always' | 'never']
1003
+ | readonly ['always']
995
1004
  | readonly [
996
1005
  'always',
997
- {
998
- readonly never?: readonly string[];
999
- readonly assumeUndefinedIsFalse?: boolean;
1000
- },
1006
+ Readonly<{
1007
+ never?: readonly string[];
1008
+ assumeUndefinedIsFalse?: boolean;
1009
+ }>,
1001
1010
  ]
1011
+ | readonly ['never']
1002
1012
  | readonly [
1003
1013
  'never',
1004
- {
1005
- readonly always?: readonly string[];
1006
- readonly assumeUndefinedIsFalse?: boolean;
1007
- },
1008
- ]
1009
- | readonly ['always' | 'never']
1010
- | readonly ['always']
1011
- | readonly ['never']
1012
- | readonly [];
1014
+ Readonly<{
1015
+ always?: readonly string[];
1016
+ assumeUndefinedIsFalse?: boolean;
1017
+ }>,
1018
+ ];
1013
1019
 
1014
1020
  export type RuleEntry =
1021
+ | 'off'
1015
1022
  | Linter.Severity
1016
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
1017
- | 'off';
1023
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
1018
1024
  }
1019
1025
 
1020
1026
  /**
@@ -1107,36 +1113,35 @@ namespace JsxClosingBracketLocation {
1107
1113
  * ```
1108
1114
  */
1109
1115
  export type Options =
1110
- | 'after-props'
1111
- | 'line-aligned'
1112
- | 'props-aligned'
1113
- | 'tag-aligned'
1114
- | {
1115
- readonly location?:
1116
- | 'after-props'
1117
- | 'line-aligned'
1118
- | 'props-aligned'
1119
- | 'tag-aligned';
1120
- }
1121
- | {
1122
- readonly nonEmpty?:
1123
- | 'after-props'
1124
- | 'line-aligned'
1125
- | 'props-aligned'
1126
- | 'tag-aligned'
1127
- | false;
1128
- readonly selfClosing?:
1129
- | 'after-props'
1130
- | 'line-aligned'
1131
- | 'props-aligned'
1132
- | 'tag-aligned'
1133
- | false;
1134
- };
1116
+ | ('after-props' | 'props-aligned' | 'tag-aligned' | 'line-aligned')
1117
+ | Readonly<
1118
+ | {
1119
+ location?:
1120
+ | 'after-props'
1121
+ | 'props-aligned'
1122
+ | 'tag-aligned'
1123
+ | 'line-aligned';
1124
+ }
1125
+ | {
1126
+ nonEmpty?:
1127
+ | 'after-props'
1128
+ | 'props-aligned'
1129
+ | 'tag-aligned'
1130
+ | 'line-aligned'
1131
+ | false;
1132
+ selfClosing?:
1133
+ | 'after-props'
1134
+ | 'props-aligned'
1135
+ | 'tag-aligned'
1136
+ | 'line-aligned'
1137
+ | false;
1138
+ }
1139
+ >;
1135
1140
 
1136
1141
  export type RuleEntry =
1142
+ | 'off'
1137
1143
  | Linter.Severity
1138
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
1139
- | 'off';
1144
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
1140
1145
  }
1141
1146
 
1142
1147
  /**
@@ -1184,16 +1189,15 @@ namespace JsxClosingTagLocation {
1184
1189
  * ```
1185
1190
  */
1186
1191
  export type Options =
1187
- | 'line-aligned'
1188
- | 'tag-aligned'
1189
- | {
1190
- readonly location?: 'line-aligned' | 'tag-aligned';
1191
- };
1192
+ | ('tag-aligned' | 'line-aligned')
1193
+ | Readonly<{
1194
+ location?: 'tag-aligned' | 'line-aligned';
1195
+ }>;
1192
1196
 
1193
1197
  export type RuleEntry =
1198
+ | 'off'
1194
1199
  | Linter.Severity
1195
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
1196
- | 'off';
1200
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
1197
1201
  }
1198
1202
 
1199
1203
  /**
@@ -1296,48 +1300,51 @@ namespace JsxCurlySpacing {
1296
1300
  * ```
1297
1301
  */
1298
1302
  export type Options =
1303
+ | readonly []
1304
+ | readonly [
1305
+ | (BasicConfig &
1306
+ Readonly<{
1307
+ attributes?: BasicConfigOrBoolean;
1308
+ children?: BasicConfigOrBoolean;
1309
+ [k: string]: unknown;
1310
+ }>)
1311
+ | ('always' | 'never'),
1312
+ ]
1299
1313
  | readonly [
1300
1314
  (
1301
- | (BasicConfig & {
1302
- readonly attributes?: BasicConfigOrBoolean;
1303
- readonly children?: BasicConfigOrBoolean;
1304
- readonly [k: string]: unknown;
1305
- })
1315
+ | (BasicConfig &
1316
+ Readonly<{
1317
+ attributes?: BasicConfigOrBoolean;
1318
+ children?: BasicConfigOrBoolean;
1319
+ [k: string]: unknown;
1320
+ }>)
1306
1321
  | ('always' | 'never')
1307
1322
  ),
1308
- {
1309
- readonly allowMultiline?: boolean;
1310
- readonly spacing?: {
1311
- readonly objectLiterals?: 'always' | 'never';
1312
- readonly [k: string]: unknown;
1313
- };
1314
- },
1315
- ]
1316
- | readonly [
1317
- | (BasicConfig & {
1318
- readonly attributes?: BasicConfigOrBoolean;
1319
- readonly children?: BasicConfigOrBoolean;
1320
- readonly [k: string]: unknown;
1321
- })
1322
- | ('always' | 'never'),
1323
- ]
1324
- | readonly [];
1323
+ Readonly<{
1324
+ allowMultiline?: boolean;
1325
+ spacing?: Readonly<{
1326
+ objectLiterals?: 'always' | 'never';
1327
+ [k: string]: unknown;
1328
+ }>;
1329
+ }>,
1330
+ ];
1331
+
1325
1332
  export type BasicConfigOrBoolean = BasicConfig | boolean;
1326
1333
 
1327
- export type BasicConfig = {
1328
- readonly when?: 'always' | 'never';
1329
- readonly allowMultiline?: boolean;
1330
- readonly spacing?: {
1331
- readonly objectLiterals?: 'always' | 'never';
1332
- readonly [k: string]: unknown;
1333
- };
1334
- readonly [k: string]: unknown;
1335
- };
1334
+ export type BasicConfig = Readonly<{
1335
+ when?: 'always' | 'never';
1336
+ allowMultiline?: boolean;
1337
+ spacing?: Readonly<{
1338
+ objectLiterals?: 'always' | 'never';
1339
+ [k: string]: unknown;
1340
+ }>;
1341
+ [k: string]: unknown;
1342
+ }>;
1336
1343
 
1337
1344
  export type RuleEntry =
1345
+ | 'off'
1338
1346
  | Linter.Severity
1339
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
1340
- | 'off';
1347
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
1341
1348
  }
1342
1349
 
1343
1350
  /**
@@ -1395,17 +1402,16 @@ namespace JsxCurlyNewline {
1395
1402
  * ```
1396
1403
  */
1397
1404
  export type Options =
1398
- | 'consistent'
1399
- | 'never'
1400
- | {
1401
- readonly singleline?: 'consistent' | 'forbid' | 'require';
1402
- readonly multiline?: 'consistent' | 'forbid' | 'require';
1403
- };
1405
+ | ('consistent' | 'never')
1406
+ | Readonly<{
1407
+ singleline?: 'consistent' | 'require' | 'forbid';
1408
+ multiline?: 'consistent' | 'require' | 'forbid';
1409
+ }>;
1404
1410
 
1405
1411
  export type RuleEntry =
1412
+ | 'off'
1406
1413
  | Linter.Severity
1407
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
1408
- | 'off';
1414
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
1409
1415
  }
1410
1416
 
1411
1417
  /**
@@ -1439,9 +1445,9 @@ namespace JsxEqualsSpacing {
1439
1445
  export type Options = 'always' | 'never';
1440
1446
 
1441
1447
  export type RuleEntry =
1448
+ | 'off'
1442
1449
  | Linter.Severity
1443
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
1444
- | 'off';
1450
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
1445
1451
  }
1446
1452
 
1447
1453
  /**
@@ -1486,16 +1492,16 @@ namespace JsxFilenameExtension {
1486
1492
  * ]
1487
1493
  * ```
1488
1494
  */
1489
- export type Options = {
1490
- readonly allow?: 'always' | 'as-needed';
1491
- readonly extensions?: readonly string[];
1492
- readonly ignoreFilesWithoutCode?: boolean;
1493
- };
1495
+ export type Options = Readonly<{
1496
+ allow?: 'always' | 'as-needed';
1497
+ extensions?: readonly string[];
1498
+ ignoreFilesWithoutCode?: boolean;
1499
+ }>;
1494
1500
 
1495
1501
  export type RuleEntry =
1502
+ | 'off'
1496
1503
  | Linter.Severity
1497
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
1498
- | 'off';
1504
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
1499
1505
  }
1500
1506
 
1501
1507
  /**
@@ -1531,15 +1537,15 @@ namespace JsxFirstPropNewLine {
1531
1537
  */
1532
1538
  export type Options =
1533
1539
  | 'always'
1534
- | 'multiline-multiprop'
1540
+ | 'never'
1535
1541
  | 'multiline'
1536
- | 'multiprop'
1537
- | 'never';
1542
+ | 'multiline-multiprop'
1543
+ | 'multiprop';
1538
1544
 
1539
1545
  export type RuleEntry =
1546
+ | 'off'
1540
1547
  | Linter.Severity
1541
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
1542
- | 'off';
1548
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
1543
1549
  }
1544
1550
 
1545
1551
  /**
@@ -1678,43 +1684,44 @@ namespace JsxHandlerNames {
1678
1684
  * ]
1679
1685
  * ```
1680
1686
  */
1681
- export type Options =
1687
+ export type Options = Readonly<
1682
1688
  | {
1683
- readonly checkInlineFunction?: boolean;
1689
+ eventHandlerPrefix?: string;
1690
+ eventHandlerPropPrefix?: string;
1691
+ checkLocalVariables?: boolean;
1692
+ checkInlineFunction?: boolean;
1693
+ ignoreComponentNames?: readonly string[];
1684
1694
  }
1685
1695
  | {
1686
- readonly checkLocalVariables?: boolean;
1696
+ eventHandlerPrefix?: string;
1697
+ eventHandlerPropPrefix?: false;
1698
+ checkLocalVariables?: boolean;
1699
+ checkInlineFunction?: boolean;
1700
+ ignoreComponentNames?: readonly string[];
1687
1701
  }
1688
1702
  | {
1689
- readonly eventHandlerPrefix?: false;
1690
- readonly eventHandlerPropPrefix?: string;
1691
- readonly checkLocalVariables?: boolean;
1692
- readonly checkInlineFunction?: boolean;
1693
- readonly ignoreComponentNames?: readonly string[];
1703
+ eventHandlerPrefix?: false;
1704
+ eventHandlerPropPrefix?: string;
1705
+ checkLocalVariables?: boolean;
1706
+ checkInlineFunction?: boolean;
1707
+ ignoreComponentNames?: readonly string[];
1694
1708
  }
1695
1709
  | {
1696
- readonly eventHandlerPrefix?: string;
1697
- readonly eventHandlerPropPrefix?: false;
1698
- readonly checkLocalVariables?: boolean;
1699
- readonly checkInlineFunction?: boolean;
1700
- readonly ignoreComponentNames?: readonly string[];
1710
+ checkLocalVariables?: boolean;
1701
1711
  }
1702
1712
  | {
1703
- readonly eventHandlerPrefix?: string;
1704
- readonly eventHandlerPropPrefix?: string;
1705
- readonly checkLocalVariables?: boolean;
1706
- readonly checkInlineFunction?: boolean;
1707
- readonly ignoreComponentNames?: readonly string[];
1713
+ checkInlineFunction?: boolean;
1708
1714
  }
1709
1715
  | {
1710
- readonly ignoreComponentNames?: readonly string[];
1711
- readonly [k: string]: unknown;
1712
- };
1716
+ ignoreComponentNames?: readonly string[];
1717
+ [k: string]: unknown;
1718
+ }
1719
+ >;
1713
1720
 
1714
1721
  export type RuleEntry =
1722
+ | 'off'
1715
1723
  | Linter.Severity
1716
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
1717
- | 'off';
1724
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
1718
1725
  }
1719
1726
 
1720
1727
  /**
@@ -1763,18 +1770,18 @@ namespace JsxIndent {
1763
1770
  * ]
1764
1771
  * ```
1765
1772
  */
1766
- export type Options0 = number | 'tab';
1773
+ export type Options0 = 'tab' | number;
1767
1774
 
1768
- export type Options1 = {
1769
- readonly checkAttributes?: boolean;
1770
- readonly indentLogicalExpressions?: boolean;
1771
- };
1775
+ export type Options1 = Readonly<{
1776
+ checkAttributes?: boolean;
1777
+ indentLogicalExpressions?: boolean;
1778
+ }>;
1772
1779
 
1773
1780
  export type RuleEntry =
1781
+ | 'off'
1774
1782
  | Linter.Severity
1775
- | readonly [Linter.StringSeverity, Options0, Options1]
1776
1783
  | readonly [Linter.StringSeverity, Options0]
1777
- | 'off';
1784
+ | readonly [Linter.StringSeverity, Options0, Options1];
1778
1785
  }
1779
1786
 
1780
1787
  /**
@@ -1834,19 +1841,18 @@ namespace JsxIndentProps {
1834
1841
  * ```
1835
1842
  */
1836
1843
  export type Options =
1844
+ | ('tab' | 'first')
1837
1845
  | number
1838
- | 'first'
1839
- | 'tab'
1840
- | {
1841
- readonly indentMode?: number | 'first' | 'tab';
1842
- readonly ignoreTernaryOperator?: boolean;
1843
- readonly [k: string]: unknown;
1844
- };
1846
+ | Readonly<{
1847
+ indentMode?: ('tab' | 'first') | number;
1848
+ ignoreTernaryOperator?: boolean;
1849
+ [k: string]: unknown;
1850
+ }>;
1845
1851
 
1846
1852
  export type RuleEntry =
1853
+ | 'off'
1847
1854
  | Linter.Severity
1848
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
1849
- | 'off';
1855
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
1850
1856
  }
1851
1857
 
1852
1858
  /**
@@ -1888,16 +1894,19 @@ namespace JsxKey {
1888
1894
  * ]
1889
1895
  * ```
1890
1896
  */
1891
- export type Options = {
1892
- readonly checkFragmentShorthand?: boolean;
1893
- readonly checkKeyMustBeforeSpread?: boolean;
1894
- readonly warnOnDuplicates?: boolean;
1895
- };
1897
+ export type Options = Readonly<{
1898
+ /** @default false */
1899
+ checkFragmentShorthand?: boolean;
1900
+ /** @default false */
1901
+ checkKeyMustBeforeSpread?: boolean;
1902
+ /** @default false */
1903
+ warnOnDuplicates?: boolean;
1904
+ }>;
1896
1905
 
1897
1906
  export type RuleEntry =
1907
+ | 'off'
1898
1908
  | Linter.Severity
1899
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
1900
- | 'off';
1909
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
1901
1910
  }
1902
1911
 
1903
1912
  /**
@@ -1931,14 +1940,14 @@ namespace JsxMaxDepth {
1931
1940
  * ]
1932
1941
  * ```
1933
1942
  */
1934
- export type Options = {
1935
- readonly max?: number;
1936
- };
1943
+ export type Options = Readonly<{
1944
+ max?: number;
1945
+ }>;
1937
1946
 
1938
1947
  export type RuleEntry =
1948
+ | 'off'
1939
1949
  | Linter.Severity
1940
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
1941
- | 'off';
1950
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
1942
1951
  }
1943
1952
 
1944
1953
  /**
@@ -2003,23 +2012,24 @@ namespace JsxMaxPropsPerLine {
2003
2012
  * ]
2004
2013
  * ```
2005
2014
  */
2006
- export type Options =
2015
+ export type Options = Readonly<
2007
2016
  | {
2008
- readonly maximum?: {
2009
- readonly single?: number;
2010
- readonly multi?: number;
2011
- readonly [k: string]: unknown;
2012
- };
2017
+ maximum?: Readonly<{
2018
+ single?: number;
2019
+ multi?: number;
2020
+ [k: string]: unknown;
2021
+ }>;
2013
2022
  }
2014
2023
  | {
2015
- readonly maximum?: number;
2016
- readonly when?: 'always' | 'multiline';
2017
- };
2024
+ maximum?: number;
2025
+ when?: 'always' | 'multiline';
2026
+ }
2027
+ >;
2018
2028
 
2019
2029
  export type RuleEntry =
2030
+ | 'off'
2020
2031
  | Linter.Severity
2021
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
2022
- | 'off';
2032
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
2023
2033
  }
2024
2034
 
2025
2035
  /**
@@ -2075,15 +2085,17 @@ namespace JsxNewline {
2075
2085
  * ]
2076
2086
  * ```
2077
2087
  */
2078
- export type Options = {
2079
- readonly prevent?: boolean;
2080
- readonly allowMultilines?: boolean;
2081
- };
2088
+ export type Options = Readonly<{
2089
+ /** @default false */
2090
+ prevent?: boolean;
2091
+ /** @default false */
2092
+ allowMultilines?: boolean;
2093
+ }>;
2082
2094
 
2083
2095
  export type RuleEntry =
2096
+ | 'off'
2084
2097
  | Linter.Severity
2085
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
2086
- | 'off';
2098
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
2087
2099
  }
2088
2100
 
2089
2101
  /**
@@ -2133,18 +2145,23 @@ namespace JsxNoBind {
2133
2145
  * ]
2134
2146
  * ```
2135
2147
  */
2136
- export type Options = {
2137
- readonly allowArrowFunctions?: boolean;
2138
- readonly allowBind?: boolean;
2139
- readonly allowFunctions?: boolean;
2140
- readonly ignoreRefs?: boolean;
2141
- readonly ignoreDOMComponents?: boolean;
2142
- };
2148
+ export type Options = Readonly<{
2149
+ /** @default false */
2150
+ allowArrowFunctions?: boolean;
2151
+ /** @default false */
2152
+ allowBind?: boolean;
2153
+ /** @default false */
2154
+ allowFunctions?: boolean;
2155
+ /** @default false */
2156
+ ignoreRefs?: boolean;
2157
+ /** @default false */
2158
+ ignoreDOMComponents?: boolean;
2159
+ }>;
2143
2160
 
2144
2161
  export type RuleEntry =
2162
+ | 'off'
2145
2163
  | Linter.Severity
2146
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
2147
- | 'off';
2164
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
2148
2165
  }
2149
2166
 
2150
2167
  /**
@@ -2210,14 +2227,14 @@ namespace JsxNoDuplicateProps {
2210
2227
  * ]
2211
2228
  * ```
2212
2229
  */
2213
- export type Options = {
2214
- readonly ignoreCase?: boolean;
2215
- };
2230
+ export type Options = Readonly<{
2231
+ ignoreCase?: boolean;
2232
+ }>;
2216
2233
 
2217
2234
  export type RuleEntry =
2235
+ | 'off'
2218
2236
  | Linter.Severity
2219
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
2220
- | 'off';
2237
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
2221
2238
  }
2222
2239
 
2223
2240
  /**
@@ -2262,14 +2279,15 @@ namespace JsxNoLeakedRender {
2262
2279
  * ]
2263
2280
  * ```
2264
2281
  */
2265
- export type Options = {
2266
- readonly validStrategies?: readonly ('coerce' | 'ternary')[];
2267
- };
2282
+ export type Options = Readonly<{
2283
+ /** @default ['ternary', 'coerce'] */
2284
+ validStrategies?: readonly ('ternary' | 'coerce')[];
2285
+ }>;
2268
2286
 
2269
2287
  export type RuleEntry =
2288
+ | 'off'
2270
2289
  | Linter.Severity
2271
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
2272
- | 'off';
2290
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
2273
2291
  }
2274
2292
 
2275
2293
  /**
@@ -2344,28 +2362,30 @@ namespace JsxNoLiterals {
2344
2362
  * ]
2345
2363
  * ```
2346
2364
  */
2347
- export type Options = {
2348
- readonly elementOverrides?: Record<
2349
- string,
2350
- {
2351
- readonly applyToNestedElements?: boolean;
2352
- readonly noStrings?: boolean;
2353
- readonly allowedStrings?: readonly string[];
2354
- readonly ignoreProps?: boolean;
2355
- readonly noAttributeStrings?: boolean;
2356
- readonly [k: string]: unknown;
2357
- }
2365
+ export type Options = Readonly<{
2366
+ elementOverrides?: Readonly<
2367
+ Record<
2368
+ string,
2369
+ Readonly<{
2370
+ applyToNestedElements?: boolean;
2371
+ noStrings?: boolean;
2372
+ allowedStrings?: readonly string[];
2373
+ ignoreProps?: boolean;
2374
+ noAttributeStrings?: boolean;
2375
+ [k: string]: unknown;
2376
+ }>
2377
+ >
2358
2378
  >;
2359
- readonly noStrings?: boolean;
2360
- readonly allowedStrings?: readonly string[];
2361
- readonly ignoreProps?: boolean;
2362
- readonly noAttributeStrings?: boolean;
2363
- };
2379
+ noStrings?: boolean;
2380
+ allowedStrings?: readonly string[];
2381
+ ignoreProps?: boolean;
2382
+ noAttributeStrings?: boolean;
2383
+ }>;
2364
2384
 
2365
2385
  export type RuleEntry =
2386
+ | 'off'
2366
2387
  | Linter.Severity
2367
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
2368
- | 'off';
2388
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
2369
2389
  }
2370
2390
 
2371
2391
  /**
@@ -2443,34 +2463,34 @@ namespace JsxNoScriptUrl {
2443
2463
  * ```
2444
2464
  */
2445
2465
  export type Options =
2466
+ | readonly []
2446
2467
  | readonly [
2447
- {
2448
- readonly includeFromSettings?: boolean;
2449
- readonly [k: string]: unknown;
2450
- },
2468
+ readonly Readonly<{
2469
+ name: string;
2470
+ props: readonly string[];
2471
+ }>[],
2451
2472
  ]
2452
2473
  | readonly [
2453
- readonly {
2454
- readonly name: string;
2455
- readonly props: readonly string[];
2456
- }[],
2457
- {
2458
- readonly includeFromSettings?: boolean;
2459
- readonly [k: string]: unknown;
2460
- },
2474
+ readonly Readonly<{
2475
+ name: string;
2476
+ props: readonly string[];
2477
+ }>[],
2478
+ Readonly<{
2479
+ includeFromSettings?: boolean;
2480
+ [k: string]: unknown;
2481
+ }>,
2461
2482
  ]
2462
2483
  | readonly [
2463
- readonly {
2464
- readonly name: string;
2465
- readonly props: readonly string[];
2466
- }[],
2467
- ]
2468
- | readonly [];
2484
+ Readonly<{
2485
+ includeFromSettings?: boolean;
2486
+ [k: string]: unknown;
2487
+ }>,
2488
+ ];
2469
2489
 
2470
2490
  export type RuleEntry =
2491
+ | 'off'
2471
2492
  | Linter.Severity
2472
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
2473
- | 'off';
2493
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
2474
2494
  }
2475
2495
 
2476
2496
  /**
@@ -2521,18 +2541,20 @@ namespace JsxNoTargetBlank {
2521
2541
  * ]
2522
2542
  * ```
2523
2543
  */
2524
- export type Options = {
2525
- readonly allowReferrer?: boolean;
2526
- readonly enforceDynamicLinks?: 'always' | 'never';
2527
- readonly warnOnSpreadAttributes?: boolean;
2528
- readonly links?: boolean;
2529
- readonly forms?: boolean;
2530
- };
2544
+ export type Options = Readonly<{
2545
+ allowReferrer?: boolean;
2546
+ enforceDynamicLinks?: 'always' | 'never';
2547
+ warnOnSpreadAttributes?: boolean;
2548
+ /** @default true */
2549
+ links?: boolean;
2550
+ /** @default false */
2551
+ forms?: boolean;
2552
+ }>;
2531
2553
 
2532
2554
  export type RuleEntry =
2555
+ | 'off'
2533
2556
  | Linter.Severity
2534
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
2535
- | 'off';
2557
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
2536
2558
  }
2537
2559
 
2538
2560
  /**
@@ -2566,15 +2588,15 @@ namespace JsxNoUselessFragment {
2566
2588
  * ]
2567
2589
  * ```
2568
2590
  */
2569
- export type Options = {
2570
- readonly allowExpressions?: boolean;
2571
- readonly [k: string]: unknown;
2572
- };
2591
+ export type Options = Readonly<{
2592
+ allowExpressions?: boolean;
2593
+ [k: string]: unknown;
2594
+ }>;
2573
2595
 
2574
2596
  export type RuleEntry =
2597
+ | 'off'
2575
2598
  | Linter.Severity
2576
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
2577
- | 'off';
2599
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
2578
2600
  }
2579
2601
 
2580
2602
  /**
@@ -2616,14 +2638,14 @@ namespace JsxOneExpressionPerLine {
2616
2638
  * ]
2617
2639
  * ```
2618
2640
  */
2619
- export type Options = {
2620
- readonly allow?: 'literal' | 'non-jsx' | 'none' | 'single-child';
2621
- };
2641
+ export type Options = Readonly<{
2642
+ allow?: 'none' | 'literal' | 'single-child' | 'non-jsx';
2643
+ }>;
2622
2644
 
2623
2645
  export type RuleEntry =
2646
+ | 'off'
2624
2647
  | Linter.Severity
2625
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
2626
- | 'off';
2648
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
2627
2649
  }
2628
2650
 
2629
2651
  /**
@@ -2656,14 +2678,14 @@ namespace JsxNoUndef {
2656
2678
  * ]
2657
2679
  * ```
2658
2680
  */
2659
- export type Options = {
2660
- readonly allowGlobals?: boolean;
2661
- };
2681
+ export type Options = Readonly<{
2682
+ allowGlobals?: boolean;
2683
+ }>;
2662
2684
 
2663
2685
  export type RuleEntry =
2686
+ | 'off'
2664
2687
  | Linter.Severity
2665
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
2666
- | 'off';
2688
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
2667
2689
  }
2668
2690
 
2669
2691
  /**
@@ -2728,17 +2750,17 @@ namespace JsxCurlyBracePresence {
2728
2750
  * ```
2729
2751
  */
2730
2752
  export type Options =
2731
- | {
2732
- readonly props?: 'always' | 'ignore' | 'never';
2733
- readonly children?: 'always' | 'ignore' | 'never';
2734
- readonly propElementValues?: 'always' | 'ignore' | 'never';
2735
- }
2736
- | ('always' | 'ignore' | 'never');
2753
+ | Readonly<{
2754
+ props?: 'always' | 'never' | 'ignore';
2755
+ children?: 'always' | 'never' | 'ignore';
2756
+ propElementValues?: 'always' | 'never' | 'ignore';
2757
+ }>
2758
+ | ('always' | 'never' | 'ignore');
2737
2759
 
2738
2760
  export type RuleEntry =
2761
+ | 'off'
2739
2762
  | Linter.Severity
2740
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
2741
- | 'off';
2763
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
2742
2764
  }
2743
2765
 
2744
2766
  /**
@@ -2787,18 +2809,18 @@ namespace JsxPascalCase {
2787
2809
  * ]
2788
2810
  * ```
2789
2811
  */
2790
- export type Options = {
2791
- readonly allowAllCaps?: boolean;
2792
- readonly allowLeadingUnderscore?: boolean;
2793
- readonly allowNamespace?: boolean;
2812
+ export type Options = Readonly<{
2813
+ allowAllCaps?: boolean;
2814
+ allowLeadingUnderscore?: boolean;
2815
+ allowNamespace?: boolean;
2794
2816
  /** @minItems 0 */
2795
- readonly ignore?: readonly [] | readonly [string];
2796
- };
2817
+ ignore?: readonly [] | readonly [string];
2818
+ }>;
2797
2819
 
2798
2820
  export type RuleEntry =
2821
+ | 'off'
2799
2822
  | Linter.Severity
2800
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
2801
- | 'off';
2823
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
2802
2824
  }
2803
2825
 
2804
2826
  /**
@@ -2829,12 +2851,12 @@ namespace JsxFragments {
2829
2851
  * ]
2830
2852
  * ```
2831
2853
  */
2832
- export type Options = 'element' | 'syntax';
2854
+ export type Options = 'syntax' | 'element';
2833
2855
 
2834
2856
  export type RuleEntry =
2857
+ | 'off'
2835
2858
  | Linter.Severity
2836
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
2837
- | 'off';
2859
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
2838
2860
  }
2839
2861
 
2840
2862
  /**
@@ -2935,18 +2957,20 @@ namespace JsxPropsNoSpreading {
2935
2957
  * ]
2936
2958
  * ```
2937
2959
  */
2938
- export type Options = UnknownRecord & {
2939
- readonly html?: 'enforce' | 'ignore';
2940
- readonly custom?: 'enforce' | 'ignore';
2941
- readonly explicitSpread?: 'enforce' | 'ignore';
2942
- readonly exceptions?: readonly string[];
2943
- readonly [k: string]: unknown;
2944
- };
2960
+ export type Options = Readonly<
2961
+ {
2962
+ html?: 'enforce' | 'ignore';
2963
+ custom?: 'enforce' | 'ignore';
2964
+ explicitSpread?: 'enforce' | 'ignore';
2965
+ exceptions?: readonly string[];
2966
+ [k: string]: unknown;
2967
+ } & Record<string, unknown>
2968
+ >;
2945
2969
 
2946
2970
  export type RuleEntry =
2971
+ | 'off'
2947
2972
  | Linter.Severity
2948
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
2949
- | 'off';
2973
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
2950
2974
  }
2951
2975
 
2952
2976
  /**
@@ -3059,21 +3083,23 @@ namespace JsxSortProps {
3059
3083
  * ]
3060
3084
  * ```
3061
3085
  */
3062
- export type Options = {
3063
- readonly callbacksLast?: boolean;
3064
- readonly shorthandFirst?: boolean;
3065
- readonly shorthandLast?: boolean;
3066
- readonly multiline?: 'first' | 'ignore' | 'last';
3067
- readonly ignoreCase?: boolean;
3068
- readonly noSortAlphabetically?: boolean;
3069
- readonly reservedFirst?: boolean | readonly unknown[];
3070
- readonly locale?: string;
3071
- };
3086
+ export type Options = Readonly<{
3087
+ callbacksLast?: boolean;
3088
+ shorthandFirst?: boolean;
3089
+ shorthandLast?: boolean;
3090
+ /** @default 'ignore' */
3091
+ multiline?: 'ignore' | 'first' | 'last';
3092
+ ignoreCase?: boolean;
3093
+ noSortAlphabetically?: boolean;
3094
+ reservedFirst?: readonly unknown[] | boolean;
3095
+ /** @default 'auto' */
3096
+ locale?: string;
3097
+ }>;
3072
3098
 
3073
3099
  export type RuleEntry =
3100
+ | 'off'
3074
3101
  | Linter.Severity
3075
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
3076
- | 'off';
3102
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
3077
3103
  }
3078
3104
 
3079
3105
  /**
@@ -3172,25 +3198,17 @@ namespace JsxTagSpacing {
3172
3198
  * ]
3173
3199
  * ```
3174
3200
  */
3175
- export type Options = {
3176
- readonly closingSlash?: 'allow' | 'always' | 'never';
3177
- readonly beforeSelfClosing?:
3178
- | 'allow'
3179
- | 'always'
3180
- | 'never'
3181
- | 'proportional-always';
3182
- readonly afterOpening?: 'allow-multiline' | 'allow' | 'always' | 'never';
3183
- readonly beforeClosing?:
3184
- | 'allow'
3185
- | 'always'
3186
- | 'never'
3187
- | 'proportional-always';
3188
- };
3201
+ export type Options = Readonly<{
3202
+ closingSlash?: 'always' | 'never' | 'allow';
3203
+ beforeSelfClosing?: 'always' | 'proportional-always' | 'never' | 'allow';
3204
+ afterOpening?: 'always' | 'allow-multiline' | 'never' | 'allow';
3205
+ beforeClosing?: 'always' | 'proportional-always' | 'never' | 'allow';
3206
+ }>;
3189
3207
 
3190
3208
  export type RuleEntry =
3209
+ | 'off'
3191
3210
  | Linter.Severity
3192
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
3193
- | 'off';
3211
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
3194
3212
  }
3195
3213
 
3196
3214
  /**
@@ -3323,62 +3341,38 @@ namespace JsxWrapMultilines {
3323
3341
  * ]
3324
3342
  * ```
3325
3343
  */
3326
- export type Options = {
3327
- readonly declaration?:
3328
- | 'ignore'
3329
- | 'never'
3330
- | 'parens-new-line'
3331
- | 'parens'
3344
+ export type Options = Readonly<{
3345
+ declaration?:
3346
+ | true
3332
3347
  | false
3333
- | true;
3334
- readonly assignment?:
3335
3348
  | 'ignore'
3336
- | 'never'
3337
- | 'parens-new-line'
3338
3349
  | 'parens'
3339
- | false
3340
- | true;
3341
- readonly return?:
3342
- | 'ignore'
3343
- | 'never'
3344
3350
  | 'parens-new-line'
3345
- | 'parens'
3351
+ | 'never';
3352
+ assignment?:
3353
+ | true
3346
3354
  | false
3347
- | true;
3348
- readonly arrow?:
3349
3355
  | 'ignore'
3350
- | 'never'
3351
- | 'parens-new-line'
3352
3356
  | 'parens'
3353
- | false
3354
- | true;
3355
- readonly condition?:
3356
- | 'ignore'
3357
- | 'never'
3358
3357
  | 'parens-new-line'
3359
- | 'parens'
3358
+ | 'never';
3359
+ return?: true | false | 'ignore' | 'parens' | 'parens-new-line' | 'never';
3360
+ arrow?: true | false | 'ignore' | 'parens' | 'parens-new-line' | 'never';
3361
+ condition?:
3362
+ | true
3360
3363
  | false
3361
- | true;
3362
- readonly logical?:
3363
3364
  | 'ignore'
3364
- | 'never'
3365
- | 'parens-new-line'
3366
3365
  | 'parens'
3367
- | false
3368
- | true;
3369
- readonly prop?:
3370
- | 'ignore'
3371
- | 'never'
3372
3366
  | 'parens-new-line'
3373
- | 'parens'
3374
- | false
3375
- | true;
3376
- };
3367
+ | 'never';
3368
+ logical?: true | false | 'ignore' | 'parens' | 'parens-new-line' | 'never';
3369
+ prop?: true | false | 'ignore' | 'parens' | 'parens-new-line' | 'never';
3370
+ }>;
3377
3371
 
3378
3372
  export type RuleEntry =
3373
+ | 'off'
3379
3374
  | Linter.Severity
3380
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
3381
- | 'off';
3375
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
3382
3376
  }
3383
3377
 
3384
3378
  /**
@@ -3415,9 +3409,9 @@ namespace NoInvalidHtmlAttribute {
3415
3409
  export type Options = readonly 'rel'[];
3416
3410
 
3417
3411
  export type RuleEntry =
3412
+ | 'off'
3418
3413
  | Linter.Severity
3419
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
3420
- | 'off';
3414
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
3421
3415
  }
3422
3416
 
3423
3417
  /**
@@ -3516,14 +3510,15 @@ namespace NoChildrenProp {
3516
3510
  * ]
3517
3511
  * ```
3518
3512
  */
3519
- export type Options = {
3520
- readonly allowFunctions?: boolean;
3521
- };
3513
+ export type Options = Readonly<{
3514
+ /** @default false */
3515
+ allowFunctions?: boolean;
3516
+ }>;
3522
3517
 
3523
3518
  export type RuleEntry =
3519
+ | 'off'
3524
3520
  | Linter.Severity
3525
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
3526
- | 'off';
3521
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
3527
3522
  }
3528
3523
 
3529
3524
  /**
@@ -3560,16 +3555,16 @@ namespace NoDanger {
3560
3555
  * ]
3561
3556
  * ```
3562
3557
  */
3563
- export type Options = {
3558
+ export type Options = Readonly<{
3564
3559
  /** @minItems 0 */
3565
- readonly customComponentNames?: readonly string[];
3566
- readonly [k: string]: unknown;
3567
- };
3560
+ customComponentNames?: readonly string[];
3561
+ [k: string]: unknown;
3562
+ }>;
3568
3563
 
3569
3564
  export type RuleEntry =
3565
+ | 'off'
3570
3566
  | Linter.Severity
3571
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
3572
- | 'off';
3567
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
3573
3568
  }
3574
3569
 
3575
3570
  /**
@@ -3634,9 +3629,9 @@ namespace NoDidMountSetState {
3634
3629
  export type Options = 'disallow-in-func';
3635
3630
 
3636
3631
  export type RuleEntry =
3632
+ | 'off'
3637
3633
  | Linter.Severity
3638
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
3639
- | 'off';
3634
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
3640
3635
  }
3641
3636
 
3642
3637
  /**
@@ -3668,9 +3663,9 @@ namespace NoDidUpdateSetState {
3668
3663
  export type Options = 'disallow-in-func';
3669
3664
 
3670
3665
  export type RuleEntry =
3666
+ | 'off'
3671
3667
  | Linter.Severity
3672
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
3673
- | 'off';
3668
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
3674
3669
  }
3675
3670
 
3676
3671
  /**
@@ -3752,14 +3747,15 @@ namespace NoMultiComp {
3752
3747
  * ]
3753
3748
  * ```
3754
3749
  */
3755
- export type Options = {
3756
- readonly ignoreStateless?: boolean;
3757
- };
3750
+ export type Options = Readonly<{
3751
+ /** @default false */
3752
+ ignoreStateless?: boolean;
3753
+ }>;
3758
3754
 
3759
3755
  export type RuleEntry =
3756
+ | 'off'
3760
3757
  | Linter.Severity
3761
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
3762
- | 'off';
3758
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
3763
3759
  }
3764
3760
 
3765
3761
  /**
@@ -3824,14 +3820,14 @@ namespace NoStringRefs {
3824
3820
  * ]
3825
3821
  * ```
3826
3822
  */
3827
- export type Options = {
3828
- readonly noTemplateLiterals?: boolean;
3829
- };
3823
+ export type Options = Readonly<{
3824
+ noTemplateLiterals?: boolean;
3825
+ }>;
3830
3826
 
3831
3827
  export type RuleEntry =
3828
+ | 'off'
3832
3829
  | Linter.Severity
3833
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
3834
- | 'off';
3830
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
3835
3831
  }
3836
3832
 
3837
3833
  /**
@@ -3951,21 +3947,21 @@ namespace NoUnescapedEntities {
3951
3947
  * ]
3952
3948
  * ```
3953
3949
  */
3954
- export type Options = {
3955
- readonly forbid?: readonly (
3950
+ export type Options = Readonly<{
3951
+ forbid?: readonly (
3956
3952
  | string
3957
- | {
3958
- readonly char?: string;
3959
- readonly alternatives?: readonly string[];
3960
- readonly [k: string]: unknown;
3961
- }
3953
+ | Readonly<{
3954
+ char?: string;
3955
+ alternatives?: readonly string[];
3956
+ [k: string]: unknown;
3957
+ }>
3962
3958
  )[];
3963
- };
3959
+ }>;
3964
3960
 
3965
3961
  export type RuleEntry =
3962
+ | 'off'
3966
3963
  | Linter.Severity
3967
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
3968
- | 'off';
3964
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
3969
3965
  }
3970
3966
 
3971
3967
  /**
@@ -4006,15 +4002,16 @@ namespace NoUnknownProperty {
4006
4002
  * ]
4007
4003
  * ```
4008
4004
  */
4009
- export type Options = {
4010
- readonly ignore?: readonly string[];
4011
- readonly requireDataLowercase?: boolean;
4012
- };
4005
+ export type Options = Readonly<{
4006
+ ignore?: readonly string[];
4007
+ /** @default false */
4008
+ requireDataLowercase?: boolean;
4009
+ }>;
4013
4010
 
4014
4011
  export type RuleEntry =
4012
+ | 'off'
4015
4013
  | Linter.Severity
4016
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
4017
- | 'off';
4014
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
4018
4015
  }
4019
4016
 
4020
4017
  /**
@@ -4048,14 +4045,15 @@ namespace NoUnsafe {
4048
4045
  * ]
4049
4046
  * ```
4050
4047
  */
4051
- export type Options = {
4052
- readonly checkAliases?: boolean;
4053
- };
4048
+ export type Options = Readonly<{
4049
+ /** @default false */
4050
+ checkAliases?: boolean;
4051
+ }>;
4054
4052
 
4055
4053
  export type RuleEntry =
4054
+ | 'off'
4056
4055
  | Linter.Severity
4057
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
4058
- | 'off';
4056
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
4059
4057
  }
4060
4058
 
4061
4059
  /**
@@ -4097,16 +4095,16 @@ namespace NoUnstableNestedComponents {
4097
4095
  * ]
4098
4096
  * ```
4099
4097
  */
4100
- export type Options = {
4101
- readonly customValidators?: readonly string[];
4102
- readonly allowAsProps?: boolean;
4103
- readonly propNamePattern?: string;
4104
- };
4098
+ export type Options = Readonly<{
4099
+ customValidators?: readonly string[];
4100
+ allowAsProps?: boolean;
4101
+ propNamePattern?: string;
4102
+ }>;
4105
4103
 
4106
4104
  export type RuleEntry =
4105
+ | 'off'
4107
4106
  | Linter.Severity
4108
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
4109
- | 'off';
4107
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
4110
4108
  }
4111
4109
 
4112
4110
  /**
@@ -4168,16 +4166,16 @@ namespace NoUnusedPropTypes {
4168
4166
  * ]
4169
4167
  * ```
4170
4168
  */
4171
- export type Options = {
4172
- readonly ignore?: readonly string[];
4173
- readonly customValidators?: readonly string[];
4174
- readonly skipShapeProps?: boolean;
4175
- };
4169
+ export type Options = Readonly<{
4170
+ ignore?: readonly string[];
4171
+ customValidators?: readonly string[];
4172
+ skipShapeProps?: boolean;
4173
+ }>;
4176
4174
 
4177
4175
  export type RuleEntry =
4176
+ | 'off'
4178
4177
  | Linter.Severity
4179
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
4180
- | 'off';
4178
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
4181
4179
  }
4182
4180
 
4183
4181
  /**
@@ -4242,9 +4240,9 @@ namespace NoWillUpdateSetState {
4242
4240
  export type Options = 'disallow-in-func';
4243
4241
 
4244
4242
  export type RuleEntry =
4243
+ | 'off'
4245
4244
  | Linter.Severity
4246
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
4247
- | 'off';
4245
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
4248
4246
  }
4249
4247
 
4250
4248
  /**
@@ -4277,9 +4275,9 @@ namespace PreferEs6Class {
4277
4275
  export type Options = 'always' | 'never';
4278
4276
 
4279
4277
  export type RuleEntry =
4278
+ | 'off'
4280
4279
  | Linter.Severity
4281
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
4282
- | 'off';
4280
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
4283
4281
  }
4284
4282
 
4285
4283
  /**
@@ -4346,14 +4344,15 @@ namespace PreferStatelessFunction {
4346
4344
  * ]
4347
4345
  * ```
4348
4346
  */
4349
- export type Options = {
4350
- readonly ignorePureComponents?: boolean;
4351
- };
4347
+ export type Options = Readonly<{
4348
+ /** @default false */
4349
+ ignorePureComponents?: boolean;
4350
+ }>;
4352
4351
 
4353
4352
  export type RuleEntry =
4353
+ | 'off'
4354
4354
  | Linter.Severity
4355
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
4356
- | 'off';
4355
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
4357
4356
  }
4358
4357
 
4359
4358
  /**
@@ -4398,16 +4397,16 @@ namespace PropTypes {
4398
4397
  * ]
4399
4398
  * ```
4400
4399
  */
4401
- export type Options = {
4402
- readonly ignore?: readonly string[];
4403
- readonly customValidators?: readonly string[];
4404
- readonly skipUndeclared?: boolean;
4405
- };
4400
+ export type Options = Readonly<{
4401
+ ignore?: readonly string[];
4402
+ customValidators?: readonly string[];
4403
+ skipUndeclared?: boolean;
4404
+ }>;
4406
4405
 
4407
4406
  export type RuleEntry =
4407
+ | 'off'
4408
4408
  | Linter.Severity
4409
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
4410
- | 'off';
4409
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
4411
4410
  }
4412
4411
 
4413
4412
  /**
@@ -4471,17 +4470,17 @@ namespace RequireDefaultProps {
4471
4470
  * ]
4472
4471
  * ```
4473
4472
  */
4474
- export type Options = {
4475
- readonly forbidDefaultForRequired?: boolean;
4476
- readonly classes?: 'defaultProps' | 'ignore';
4477
- readonly functions?: 'defaultArguments' | 'defaultProps' | 'ignore';
4478
- readonly ignoreFunctionalComponents?: boolean;
4479
- };
4473
+ export type Options = Readonly<{
4474
+ forbidDefaultForRequired?: boolean;
4475
+ classes?: 'defaultProps' | 'ignore';
4476
+ functions?: 'defaultArguments' | 'defaultProps' | 'ignore';
4477
+ ignoreFunctionalComponents?: boolean;
4478
+ }>;
4480
4479
 
4481
4480
  export type RuleEntry =
4481
+ | 'off'
4482
4482
  | Linter.Severity
4483
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
4484
- | 'off';
4483
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
4485
4484
  }
4486
4485
 
4487
4486
  /**
@@ -4517,14 +4516,14 @@ namespace RequireOptimization {
4517
4516
  * ]
4518
4517
  * ```
4519
4518
  */
4520
- export type Options = {
4521
- readonly allowDecorators?: readonly string[];
4522
- };
4519
+ export type Options = Readonly<{
4520
+ allowDecorators?: readonly string[];
4521
+ }>;
4523
4522
 
4524
4523
  export type RuleEntry =
4524
+ | 'off'
4525
4525
  | Linter.Severity
4526
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
4527
- | 'off';
4526
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
4528
4527
  }
4529
4528
 
4530
4529
  /**
@@ -4579,15 +4578,17 @@ namespace SelfClosingComp {
4579
4578
  * ]
4580
4579
  * ```
4581
4580
  */
4582
- export type Options = {
4583
- readonly component?: boolean;
4584
- readonly html?: boolean;
4585
- };
4581
+ export type Options = Readonly<{
4582
+ /** @default true */
4583
+ component?: boolean;
4584
+ /** @default true */
4585
+ html?: boolean;
4586
+ }>;
4586
4587
 
4587
4588
  export type RuleEntry =
4589
+ | 'off'
4588
4590
  | Linter.Severity
4589
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
4590
- | 'off';
4591
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
4591
4592
  }
4592
4593
 
4593
4594
  /**
@@ -4634,15 +4635,15 @@ namespace SortComp {
4634
4635
  * ]
4635
4636
  * ```
4636
4637
  */
4637
- export type Options = {
4638
- readonly order?: readonly string[];
4639
- readonly groups?: Record<string, readonly string[]>;
4640
- };
4638
+ export type Options = Readonly<{
4639
+ order?: readonly string[];
4640
+ groups?: Readonly<Record<string, readonly string[]>>;
4641
+ }>;
4641
4642
 
4642
4643
  export type RuleEntry =
4644
+ | 'off'
4643
4645
  | Linter.Severity
4644
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
4645
- | 'off';
4646
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
4646
4647
  }
4647
4648
 
4648
4649
  /**
@@ -4675,14 +4676,14 @@ namespace SortDefaultProps {
4675
4676
  * ]
4676
4677
  * ```
4677
4678
  */
4678
- export type Options = {
4679
- readonly ignoreCase?: boolean;
4680
- };
4679
+ export type Options = Readonly<{
4680
+ ignoreCase?: boolean;
4681
+ }>;
4681
4682
 
4682
4683
  export type RuleEntry =
4684
+ | 'off'
4683
4685
  | Linter.Severity
4684
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
4685
- | 'off';
4686
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
4686
4687
  }
4687
4688
 
4688
4689
  /**
@@ -4731,19 +4732,19 @@ namespace SortPropTypes {
4731
4732
  * ]
4732
4733
  * ```
4733
4734
  */
4734
- export type Options = {
4735
- readonly requiredFirst?: boolean;
4736
- readonly callbacksLast?: boolean;
4737
- readonly ignoreCase?: boolean;
4738
- readonly noSortAlphabetically?: boolean;
4739
- readonly sortShapeProp?: boolean;
4740
- readonly checkTypes?: boolean;
4741
- };
4735
+ export type Options = Readonly<{
4736
+ requiredFirst?: boolean;
4737
+ callbacksLast?: boolean;
4738
+ ignoreCase?: boolean;
4739
+ noSortAlphabetically?: boolean;
4740
+ sortShapeProp?: boolean;
4741
+ checkTypes?: boolean;
4742
+ }>;
4742
4743
 
4743
4744
  export type RuleEntry =
4745
+ | 'off'
4744
4746
  | Linter.Severity
4745
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
4746
- | 'off';
4747
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
4747
4748
  }
4748
4749
 
4749
4750
  /**
@@ -4776,9 +4777,9 @@ namespace StateInConstructor {
4776
4777
  export type Options = 'always' | 'never';
4777
4778
 
4778
4779
  export type RuleEntry =
4780
+ | 'off'
4779
4781
  | Linter.Severity
4780
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
4781
- | 'off';
4782
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
4782
4783
  }
4783
4784
 
4784
4785
  /**
@@ -4858,42 +4859,39 @@ namespace StaticPropertyPlacement {
4858
4859
  * ```
4859
4860
  */
4860
4861
  export type Options0 =
4861
- | 'property assignment'
4862
+ | 'static public field'
4862
4863
  | 'static getter'
4863
- | 'static public field';
4864
+ | 'property assignment';
4864
4865
 
4865
- export type Options1 = {
4866
- readonly propTypes?:
4867
- | 'property assignment'
4868
- | 'static getter'
4869
- | 'static public field';
4870
- readonly defaultProps?:
4871
- | 'property assignment'
4866
+ export type Options1 = Readonly<{
4867
+ propTypes?: 'static public field' | 'static getter' | 'property assignment';
4868
+ defaultProps?:
4869
+ | 'static public field'
4872
4870
  | 'static getter'
4873
- | 'static public field';
4874
- readonly childContextTypes?:
4875
- | 'property assignment'
4871
+ | 'property assignment';
4872
+ childContextTypes?:
4873
+ | 'static public field'
4876
4874
  | 'static getter'
4877
- | 'static public field';
4878
- readonly contextTypes?:
4879
- | 'property assignment'
4875
+ | 'property assignment';
4876
+ contextTypes?:
4877
+ | 'static public field'
4880
4878
  | 'static getter'
4881
- | 'static public field';
4882
- readonly contextType?:
4883
- | 'property assignment'
4879
+ | 'property assignment';
4880
+ contextType?:
4881
+ | 'static public field'
4884
4882
  | 'static getter'
4885
- | 'static public field';
4886
- readonly displayName?:
4887
- | 'property assignment'
4883
+ | 'property assignment';
4884
+ displayName?:
4885
+ | 'static public field'
4888
4886
  | 'static getter'
4889
- | 'static public field';
4890
- };
4887
+ | 'property assignment';
4888
+ }>;
4891
4889
 
4892
4890
  export type RuleEntry =
4891
+ | 'off'
4893
4892
  | Linter.Severity
4894
- | readonly [Linter.StringSeverity, Options0, Options1]
4895
4893
  | readonly [Linter.StringSeverity, Options0]
4896
- | 'off';
4894
+ | readonly [Linter.StringSeverity, Options0, Options1];
4897
4895
  }
4898
4896
 
4899
4897
  /**
@@ -4930,15 +4928,15 @@ namespace StylePropObject {
4930
4928
  * ]
4931
4929
  * ```
4932
4930
  */
4933
- export type Options = {
4934
- readonly allow?: readonly string[];
4935
- readonly [k: string]: unknown;
4936
- };
4931
+ export type Options = Readonly<{
4932
+ allow?: readonly string[];
4933
+ [k: string]: unknown;
4934
+ }>;
4937
4935
 
4938
4936
  export type RuleEntry =
4937
+ | 'off'
4939
4938
  | Linter.Severity
4940
- | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>
4941
- | 'off';
4939
+ | SpreadOptionsIfIsArray<readonly [Linter.StringSeverity, Options]>;
4942
4940
  }
4943
4941
 
4944
4942
  /**
@@ -4957,191 +4955,188 @@ namespace VoidDomElementsNoChildren {
4957
4955
  export type RuleEntry = Linter.StringSeverity;
4958
4956
  }
4959
4957
 
4960
- export type EslintReactRules = {
4961
- readonly 'react/boolean-prop-naming': BooleanPropNaming.RuleEntry;
4962
- readonly 'react/button-has-type': ButtonHasType.RuleEntry;
4963
- readonly 'react/checked-requires-onchange-or-readonly': CheckedRequiresOnchangeOrReadonly.RuleEntry;
4964
- readonly 'react/default-props-match-prop-types': DefaultPropsMatchPropTypes.RuleEntry;
4965
- readonly 'react/destructuring-assignment': DestructuringAssignment.RuleEntry;
4966
- readonly 'react/display-name': DisplayName.RuleEntry;
4967
- readonly 'react/forbid-component-props': ForbidComponentProps.RuleEntry;
4968
- readonly 'react/forbid-dom-props': ForbidDomProps.RuleEntry;
4969
- readonly 'react/forbid-elements': ForbidElements.RuleEntry;
4970
- readonly 'react/forbid-foreign-prop-types': ForbidForeignPropTypes.RuleEntry;
4971
- readonly 'react/forbid-prop-types': ForbidPropTypes.RuleEntry;
4972
- readonly 'react/forward-ref-uses-ref': ForwardRefUsesRef.RuleEntry;
4973
- readonly 'react/function-component-definition': FunctionComponentDefinition.RuleEntry;
4974
- readonly 'react/hook-use-state': HookUseState.RuleEntry;
4975
- readonly 'react/iframe-missing-sandbox': IframeMissingSandbox.RuleEntry;
4976
- readonly 'react/jsx-boolean-value': JsxBooleanValue.RuleEntry;
4977
- readonly 'react/jsx-child-element-spacing': JsxChildElementSpacing.RuleEntry;
4978
- readonly 'react/jsx-closing-bracket-location': JsxClosingBracketLocation.RuleEntry;
4979
- readonly 'react/jsx-closing-tag-location': JsxClosingTagLocation.RuleEntry;
4980
- readonly 'react/jsx-curly-spacing': JsxCurlySpacing.RuleEntry;
4981
- readonly 'react/jsx-curly-newline': JsxCurlyNewline.RuleEntry;
4982
- readonly 'react/jsx-equals-spacing': JsxEqualsSpacing.RuleEntry;
4983
- readonly 'react/jsx-filename-extension': JsxFilenameExtension.RuleEntry;
4984
- readonly 'react/jsx-first-prop-new-line': JsxFirstPropNewLine.RuleEntry;
4985
- readonly 'react/jsx-handler-names': JsxHandlerNames.RuleEntry;
4986
- readonly 'react/jsx-indent': JsxIndent.RuleEntry;
4987
- readonly 'react/jsx-indent-props': JsxIndentProps.RuleEntry;
4988
- readonly 'react/jsx-key': JsxKey.RuleEntry;
4989
- readonly 'react/jsx-max-depth': JsxMaxDepth.RuleEntry;
4990
- readonly 'react/jsx-max-props-per-line': JsxMaxPropsPerLine.RuleEntry;
4991
- readonly 'react/jsx-newline': JsxNewline.RuleEntry;
4992
- readonly 'react/jsx-no-bind': JsxNoBind.RuleEntry;
4993
- readonly 'react/jsx-no-comment-textnodes': JsxNoCommentTextnodes.RuleEntry;
4994
- readonly 'react/jsx-no-constructed-context-values': JsxNoConstructedContextValues.RuleEntry;
4995
- readonly 'react/jsx-no-duplicate-props': JsxNoDuplicateProps.RuleEntry;
4996
- readonly 'react/jsx-no-leaked-render': JsxNoLeakedRender.RuleEntry;
4997
- readonly 'react/jsx-no-literals': JsxNoLiterals.RuleEntry;
4998
- readonly 'react/jsx-no-script-url': JsxNoScriptUrl.RuleEntry;
4999
- readonly 'react/jsx-no-target-blank': JsxNoTargetBlank.RuleEntry;
5000
- readonly 'react/jsx-no-useless-fragment': JsxNoUselessFragment.RuleEntry;
5001
- readonly 'react/jsx-one-expression-per-line': JsxOneExpressionPerLine.RuleEntry;
5002
- readonly 'react/jsx-no-undef': JsxNoUndef.RuleEntry;
5003
- readonly 'react/jsx-curly-brace-presence': JsxCurlyBracePresence.RuleEntry;
5004
- readonly 'react/jsx-pascal-case': JsxPascalCase.RuleEntry;
5005
- readonly 'react/jsx-fragments': JsxFragments.RuleEntry;
5006
- readonly 'react/jsx-props-no-multi-spaces': JsxPropsNoMultiSpaces.RuleEntry;
5007
- readonly 'react/jsx-props-no-spreading': JsxPropsNoSpreading.RuleEntry;
5008
- readonly 'react/jsx-props-no-spread-multi': JsxPropsNoSpreadMulti.RuleEntry;
5009
- readonly 'react/jsx-sort-props': JsxSortProps.RuleEntry;
5010
- readonly 'react/jsx-tag-spacing': JsxTagSpacing.RuleEntry;
5011
- readonly 'react/jsx-uses-react': JsxUsesReact.RuleEntry;
5012
- readonly 'react/jsx-uses-vars': JsxUsesVars.RuleEntry;
5013
- readonly 'react/jsx-wrap-multilines': JsxWrapMultilines.RuleEntry;
5014
- readonly 'react/no-invalid-html-attribute': NoInvalidHtmlAttribute.RuleEntry;
5015
- readonly 'react/no-access-state-in-setstate': NoAccessStateInSetstate.RuleEntry;
5016
- readonly 'react/no-adjacent-inline-elements': NoAdjacentInlineElements.RuleEntry;
5017
- readonly 'react/no-array-index-key': NoArrayIndexKey.RuleEntry;
5018
- readonly 'react/no-arrow-function-lifecycle': NoArrowFunctionLifecycle.RuleEntry;
5019
- readonly 'react/no-children-prop': NoChildrenProp.RuleEntry;
5020
- readonly 'react/no-danger': NoDanger.RuleEntry;
5021
- readonly 'react/no-danger-with-children': NoDangerWithChildren.RuleEntry;
5022
- readonly 'react/no-deprecated': NoDeprecated.RuleEntry;
5023
- readonly 'react/no-did-mount-set-state': NoDidMountSetState.RuleEntry;
5024
- readonly 'react/no-did-update-set-state': NoDidUpdateSetState.RuleEntry;
5025
- readonly 'react/no-direct-mutation-state': NoDirectMutationState.RuleEntry;
5026
- readonly 'react/no-find-dom-node': NoFindDomNode.RuleEntry;
5027
- readonly 'react/no-is-mounted': NoIsMounted.RuleEntry;
5028
- readonly 'react/no-multi-comp': NoMultiComp.RuleEntry;
5029
- readonly 'react/no-namespace': NoNamespace.RuleEntry;
5030
- readonly 'react/no-set-state': NoSetState.RuleEntry;
5031
- readonly 'react/no-string-refs': NoStringRefs.RuleEntry;
5032
- readonly 'react/no-redundant-should-component-update': NoRedundantShouldComponentUpdate.RuleEntry;
5033
- readonly 'react/no-render-return-value': NoRenderReturnValue.RuleEntry;
5034
- readonly 'react/no-this-in-sfc': NoThisInSfc.RuleEntry;
5035
- readonly 'react/no-typos': NoTypos.RuleEntry;
5036
- readonly 'react/no-unescaped-entities': NoUnescapedEntities.RuleEntry;
5037
- readonly 'react/no-unknown-property': NoUnknownProperty.RuleEntry;
5038
- readonly 'react/no-unsafe': NoUnsafe.RuleEntry;
5039
- readonly 'react/no-unstable-nested-components': NoUnstableNestedComponents.RuleEntry;
5040
- readonly 'react/no-unused-class-component-methods': NoUnusedClassComponentMethods.RuleEntry;
5041
- readonly 'react/no-unused-prop-types': NoUnusedPropTypes.RuleEntry;
5042
- readonly 'react/no-unused-state': NoUnusedState.RuleEntry;
5043
- readonly 'react/no-object-type-as-default-prop': NoObjectTypeAsDefaultProp.RuleEntry;
5044
- readonly 'react/no-will-update-set-state': NoWillUpdateSetState.RuleEntry;
5045
- readonly 'react/prefer-es6-class': PreferEs6Class.RuleEntry;
5046
- readonly 'react/prefer-exact-props': PreferExactProps.RuleEntry;
5047
- readonly 'react/prefer-read-only-props': PreferReadOnlyProps.RuleEntry;
5048
- readonly 'react/prefer-stateless-function': PreferStatelessFunction.RuleEntry;
5049
- readonly 'react/prop-types': PropTypes.RuleEntry;
5050
- readonly 'react/react-in-jsx-scope': ReactInJsxScope.RuleEntry;
5051
- readonly 'react/require-default-props': RequireDefaultProps.RuleEntry;
5052
- readonly 'react/require-optimization': RequireOptimization.RuleEntry;
5053
- readonly 'react/require-render-return': RequireRenderReturn.RuleEntry;
5054
- readonly 'react/self-closing-comp': SelfClosingComp.RuleEntry;
5055
- readonly 'react/sort-comp': SortComp.RuleEntry;
5056
- readonly 'react/sort-default-props': SortDefaultProps.RuleEntry;
5057
- readonly 'react/sort-prop-types': SortPropTypes.RuleEntry;
5058
- readonly 'react/state-in-constructor': StateInConstructor.RuleEntry;
5059
- readonly 'react/static-property-placement': StaticPropertyPlacement.RuleEntry;
5060
- readonly 'react/style-prop-object': StylePropObject.RuleEntry;
5061
- readonly 'react/void-dom-elements-no-children': VoidDomElementsNoChildren.RuleEntry;
4958
+ export type EslintReactRules = Readonly<{
4959
+ 'react/boolean-prop-naming': BooleanPropNaming.RuleEntry;
4960
+ 'react/button-has-type': ButtonHasType.RuleEntry;
4961
+ 'react/checked-requires-onchange-or-readonly': CheckedRequiresOnchangeOrReadonly.RuleEntry;
4962
+ 'react/default-props-match-prop-types': DefaultPropsMatchPropTypes.RuleEntry;
4963
+ 'react/destructuring-assignment': DestructuringAssignment.RuleEntry;
4964
+ 'react/display-name': DisplayName.RuleEntry;
4965
+ 'react/forbid-component-props': ForbidComponentProps.RuleEntry;
4966
+ 'react/forbid-dom-props': ForbidDomProps.RuleEntry;
4967
+ 'react/forbid-elements': ForbidElements.RuleEntry;
4968
+ 'react/forbid-foreign-prop-types': ForbidForeignPropTypes.RuleEntry;
4969
+ 'react/forbid-prop-types': ForbidPropTypes.RuleEntry;
4970
+ 'react/forward-ref-uses-ref': ForwardRefUsesRef.RuleEntry;
4971
+ 'react/function-component-definition': FunctionComponentDefinition.RuleEntry;
4972
+ 'react/hook-use-state': HookUseState.RuleEntry;
4973
+ 'react/iframe-missing-sandbox': IframeMissingSandbox.RuleEntry;
4974
+ 'react/jsx-boolean-value': JsxBooleanValue.RuleEntry;
4975
+ 'react/jsx-child-element-spacing': JsxChildElementSpacing.RuleEntry;
4976
+ 'react/jsx-closing-bracket-location': JsxClosingBracketLocation.RuleEntry;
4977
+ 'react/jsx-closing-tag-location': JsxClosingTagLocation.RuleEntry;
4978
+ 'react/jsx-curly-spacing': JsxCurlySpacing.RuleEntry;
4979
+ 'react/jsx-curly-newline': JsxCurlyNewline.RuleEntry;
4980
+ 'react/jsx-equals-spacing': JsxEqualsSpacing.RuleEntry;
4981
+ 'react/jsx-filename-extension': JsxFilenameExtension.RuleEntry;
4982
+ 'react/jsx-first-prop-new-line': JsxFirstPropNewLine.RuleEntry;
4983
+ 'react/jsx-handler-names': JsxHandlerNames.RuleEntry;
4984
+ 'react/jsx-indent': JsxIndent.RuleEntry;
4985
+ 'react/jsx-indent-props': JsxIndentProps.RuleEntry;
4986
+ 'react/jsx-key': JsxKey.RuleEntry;
4987
+ 'react/jsx-max-depth': JsxMaxDepth.RuleEntry;
4988
+ 'react/jsx-max-props-per-line': JsxMaxPropsPerLine.RuleEntry;
4989
+ 'react/jsx-newline': JsxNewline.RuleEntry;
4990
+ 'react/jsx-no-bind': JsxNoBind.RuleEntry;
4991
+ 'react/jsx-no-comment-textnodes': JsxNoCommentTextnodes.RuleEntry;
4992
+ 'react/jsx-no-constructed-context-values': JsxNoConstructedContextValues.RuleEntry;
4993
+ 'react/jsx-no-duplicate-props': JsxNoDuplicateProps.RuleEntry;
4994
+ 'react/jsx-no-leaked-render': JsxNoLeakedRender.RuleEntry;
4995
+ 'react/jsx-no-literals': JsxNoLiterals.RuleEntry;
4996
+ 'react/jsx-no-script-url': JsxNoScriptUrl.RuleEntry;
4997
+ 'react/jsx-no-target-blank': JsxNoTargetBlank.RuleEntry;
4998
+ 'react/jsx-no-useless-fragment': JsxNoUselessFragment.RuleEntry;
4999
+ 'react/jsx-one-expression-per-line': JsxOneExpressionPerLine.RuleEntry;
5000
+ 'react/jsx-no-undef': JsxNoUndef.RuleEntry;
5001
+ 'react/jsx-curly-brace-presence': JsxCurlyBracePresence.RuleEntry;
5002
+ 'react/jsx-pascal-case': JsxPascalCase.RuleEntry;
5003
+ 'react/jsx-fragments': JsxFragments.RuleEntry;
5004
+ 'react/jsx-props-no-multi-spaces': JsxPropsNoMultiSpaces.RuleEntry;
5005
+ 'react/jsx-props-no-spreading': JsxPropsNoSpreading.RuleEntry;
5006
+ 'react/jsx-props-no-spread-multi': JsxPropsNoSpreadMulti.RuleEntry;
5007
+ 'react/jsx-sort-props': JsxSortProps.RuleEntry;
5008
+ 'react/jsx-tag-spacing': JsxTagSpacing.RuleEntry;
5009
+ 'react/jsx-uses-react': JsxUsesReact.RuleEntry;
5010
+ 'react/jsx-uses-vars': JsxUsesVars.RuleEntry;
5011
+ 'react/jsx-wrap-multilines': JsxWrapMultilines.RuleEntry;
5012
+ 'react/no-invalid-html-attribute': NoInvalidHtmlAttribute.RuleEntry;
5013
+ 'react/no-access-state-in-setstate': NoAccessStateInSetstate.RuleEntry;
5014
+ 'react/no-adjacent-inline-elements': NoAdjacentInlineElements.RuleEntry;
5015
+ 'react/no-array-index-key': NoArrayIndexKey.RuleEntry;
5016
+ 'react/no-arrow-function-lifecycle': NoArrowFunctionLifecycle.RuleEntry;
5017
+ 'react/no-children-prop': NoChildrenProp.RuleEntry;
5018
+ 'react/no-danger': NoDanger.RuleEntry;
5019
+ 'react/no-danger-with-children': NoDangerWithChildren.RuleEntry;
5020
+ 'react/no-deprecated': NoDeprecated.RuleEntry;
5021
+ 'react/no-did-mount-set-state': NoDidMountSetState.RuleEntry;
5022
+ 'react/no-did-update-set-state': NoDidUpdateSetState.RuleEntry;
5023
+ 'react/no-direct-mutation-state': NoDirectMutationState.RuleEntry;
5024
+ 'react/no-find-dom-node': NoFindDomNode.RuleEntry;
5025
+ 'react/no-is-mounted': NoIsMounted.RuleEntry;
5026
+ 'react/no-multi-comp': NoMultiComp.RuleEntry;
5027
+ 'react/no-namespace': NoNamespace.RuleEntry;
5028
+ 'react/no-set-state': NoSetState.RuleEntry;
5029
+ 'react/no-string-refs': NoStringRefs.RuleEntry;
5030
+ 'react/no-redundant-should-component-update': NoRedundantShouldComponentUpdate.RuleEntry;
5031
+ 'react/no-render-return-value': NoRenderReturnValue.RuleEntry;
5032
+ 'react/no-this-in-sfc': NoThisInSfc.RuleEntry;
5033
+ 'react/no-typos': NoTypos.RuleEntry;
5034
+ 'react/no-unescaped-entities': NoUnescapedEntities.RuleEntry;
5035
+ 'react/no-unknown-property': NoUnknownProperty.RuleEntry;
5036
+ 'react/no-unsafe': NoUnsafe.RuleEntry;
5037
+ 'react/no-unstable-nested-components': NoUnstableNestedComponents.RuleEntry;
5038
+ 'react/no-unused-class-component-methods': NoUnusedClassComponentMethods.RuleEntry;
5039
+ 'react/no-unused-prop-types': NoUnusedPropTypes.RuleEntry;
5040
+ 'react/no-unused-state': NoUnusedState.RuleEntry;
5041
+ 'react/no-object-type-as-default-prop': NoObjectTypeAsDefaultProp.RuleEntry;
5042
+ 'react/no-will-update-set-state': NoWillUpdateSetState.RuleEntry;
5043
+ 'react/prefer-es6-class': PreferEs6Class.RuleEntry;
5044
+ 'react/prefer-exact-props': PreferExactProps.RuleEntry;
5045
+ 'react/prefer-read-only-props': PreferReadOnlyProps.RuleEntry;
5046
+ 'react/prefer-stateless-function': PreferStatelessFunction.RuleEntry;
5047
+ 'react/prop-types': PropTypes.RuleEntry;
5048
+ 'react/react-in-jsx-scope': ReactInJsxScope.RuleEntry;
5049
+ 'react/require-default-props': RequireDefaultProps.RuleEntry;
5050
+ 'react/require-optimization': RequireOptimization.RuleEntry;
5051
+ 'react/require-render-return': RequireRenderReturn.RuleEntry;
5052
+ 'react/self-closing-comp': SelfClosingComp.RuleEntry;
5053
+ 'react/sort-comp': SortComp.RuleEntry;
5054
+ 'react/sort-default-props': SortDefaultProps.RuleEntry;
5055
+ 'react/sort-prop-types': SortPropTypes.RuleEntry;
5056
+ 'react/state-in-constructor': StateInConstructor.RuleEntry;
5057
+ 'react/static-property-placement': StaticPropertyPlacement.RuleEntry;
5058
+ 'react/style-prop-object': StylePropObject.RuleEntry;
5059
+ 'react/void-dom-elements-no-children': VoidDomElementsNoChildren.RuleEntry;
5062
5060
 
5063
5061
  // deprecated
5064
- readonly 'react/jsx-sort-default-props': JsxSortDefaultProps.RuleEntry;
5065
- readonly 'react/jsx-space-before-closing': JsxSpaceBeforeClosing.RuleEntry;
5066
- };
5067
-
5068
- export type EslintReactRulesOption = {
5069
- readonly 'react/boolean-prop-naming': BooleanPropNaming.Options;
5070
- readonly 'react/button-has-type': ButtonHasType.Options;
5071
- readonly 'react/checked-requires-onchange-or-readonly': CheckedRequiresOnchangeOrReadonly.Options;
5072
- readonly 'react/default-props-match-prop-types': DefaultPropsMatchPropTypes.Options;
5073
- readonly 'react/destructuring-assignment': readonly [
5062
+ 'react/jsx-sort-default-props': JsxSortDefaultProps.RuleEntry;
5063
+ 'react/jsx-space-before-closing': JsxSpaceBeforeClosing.RuleEntry;
5064
+ }>;
5065
+
5066
+ export type EslintReactRulesOption = Readonly<{
5067
+ 'react/boolean-prop-naming': BooleanPropNaming.Options;
5068
+ 'react/button-has-type': ButtonHasType.Options;
5069
+ 'react/checked-requires-onchange-or-readonly': CheckedRequiresOnchangeOrReadonly.Options;
5070
+ 'react/default-props-match-prop-types': DefaultPropsMatchPropTypes.Options;
5071
+ 'react/destructuring-assignment': readonly [
5074
5072
  DestructuringAssignment.Options0,
5075
5073
  DestructuringAssignment.Options1,
5076
5074
  ];
5077
- readonly 'react/display-name': DisplayName.Options;
5078
- readonly 'react/forbid-component-props': ForbidComponentProps.Options;
5079
- readonly 'react/forbid-dom-props': ForbidDomProps.Options;
5080
- readonly 'react/forbid-elements': ForbidElements.Options;
5081
- readonly 'react/forbid-foreign-prop-types': ForbidForeignPropTypes.Options;
5082
- readonly 'react/forbid-prop-types': ForbidPropTypes.Options;
5083
- readonly 'react/function-component-definition': FunctionComponentDefinition.Options;
5084
- readonly 'react/hook-use-state': HookUseState.Options;
5085
- readonly 'react/jsx-boolean-value': JsxBooleanValue.Options;
5086
- readonly 'react/jsx-closing-bracket-location': JsxClosingBracketLocation.Options;
5087
- readonly 'react/jsx-closing-tag-location': JsxClosingTagLocation.Options;
5088
- readonly 'react/jsx-curly-spacing': JsxCurlySpacing.Options;
5089
- readonly 'react/jsx-curly-newline': JsxCurlyNewline.Options;
5090
- readonly 'react/jsx-equals-spacing': JsxEqualsSpacing.Options;
5091
- readonly 'react/jsx-filename-extension': JsxFilenameExtension.Options;
5092
- readonly 'react/jsx-first-prop-new-line': JsxFirstPropNewLine.Options;
5093
- readonly 'react/jsx-handler-names': JsxHandlerNames.Options;
5094
- readonly 'react/jsx-indent': readonly [
5095
- JsxIndent.Options0,
5096
- JsxIndent.Options1,
5097
- ];
5098
- readonly 'react/jsx-indent-props': JsxIndentProps.Options;
5099
- readonly 'react/jsx-key': JsxKey.Options;
5100
- readonly 'react/jsx-max-depth': JsxMaxDepth.Options;
5101
- readonly 'react/jsx-max-props-per-line': JsxMaxPropsPerLine.Options;
5102
- readonly 'react/jsx-newline': JsxNewline.Options;
5103
- readonly 'react/jsx-no-bind': JsxNoBind.Options;
5104
- readonly 'react/jsx-no-duplicate-props': JsxNoDuplicateProps.Options;
5105
- readonly 'react/jsx-no-leaked-render': JsxNoLeakedRender.Options;
5106
- readonly 'react/jsx-no-literals': JsxNoLiterals.Options;
5107
- readonly 'react/jsx-no-script-url': JsxNoScriptUrl.Options;
5108
- readonly 'react/jsx-no-target-blank': JsxNoTargetBlank.Options;
5109
- readonly 'react/jsx-no-useless-fragment': JsxNoUselessFragment.Options;
5110
- readonly 'react/jsx-one-expression-per-line': JsxOneExpressionPerLine.Options;
5111
- readonly 'react/jsx-no-undef': JsxNoUndef.Options;
5112
- readonly 'react/jsx-curly-brace-presence': JsxCurlyBracePresence.Options;
5113
- readonly 'react/jsx-pascal-case': JsxPascalCase.Options;
5114
- readonly 'react/jsx-fragments': JsxFragments.Options;
5115
- readonly 'react/jsx-props-no-spreading': JsxPropsNoSpreading.Options;
5116
- readonly 'react/jsx-sort-props': JsxSortProps.Options;
5117
- readonly 'react/jsx-tag-spacing': JsxTagSpacing.Options;
5118
- readonly 'react/jsx-wrap-multilines': JsxWrapMultilines.Options;
5119
- readonly 'react/no-invalid-html-attribute': NoInvalidHtmlAttribute.Options;
5120
- readonly 'react/no-children-prop': NoChildrenProp.Options;
5121
- readonly 'react/no-danger': NoDanger.Options;
5122
- readonly 'react/no-did-mount-set-state': NoDidMountSetState.Options;
5123
- readonly 'react/no-did-update-set-state': NoDidUpdateSetState.Options;
5124
- readonly 'react/no-multi-comp': NoMultiComp.Options;
5125
- readonly 'react/no-string-refs': NoStringRefs.Options;
5126
- readonly 'react/no-unescaped-entities': NoUnescapedEntities.Options;
5127
- readonly 'react/no-unknown-property': NoUnknownProperty.Options;
5128
- readonly 'react/no-unsafe': NoUnsafe.Options;
5129
- readonly 'react/no-unstable-nested-components': NoUnstableNestedComponents.Options;
5130
- readonly 'react/no-unused-prop-types': NoUnusedPropTypes.Options;
5131
- readonly 'react/no-will-update-set-state': NoWillUpdateSetState.Options;
5132
- readonly 'react/prefer-es6-class': PreferEs6Class.Options;
5133
- readonly 'react/prefer-stateless-function': PreferStatelessFunction.Options;
5134
- readonly 'react/prop-types': PropTypes.Options;
5135
- readonly 'react/require-default-props': RequireDefaultProps.Options;
5136
- readonly 'react/require-optimization': RequireOptimization.Options;
5137
- readonly 'react/self-closing-comp': SelfClosingComp.Options;
5138
- readonly 'react/sort-comp': SortComp.Options;
5139
- readonly 'react/sort-default-props': SortDefaultProps.Options;
5140
- readonly 'react/sort-prop-types': SortPropTypes.Options;
5141
- readonly 'react/state-in-constructor': StateInConstructor.Options;
5142
- readonly 'react/static-property-placement': readonly [
5075
+ 'react/display-name': DisplayName.Options;
5076
+ 'react/forbid-component-props': ForbidComponentProps.Options;
5077
+ 'react/forbid-dom-props': ForbidDomProps.Options;
5078
+ 'react/forbid-elements': ForbidElements.Options;
5079
+ 'react/forbid-foreign-prop-types': ForbidForeignPropTypes.Options;
5080
+ 'react/forbid-prop-types': ForbidPropTypes.Options;
5081
+ 'react/function-component-definition': FunctionComponentDefinition.Options;
5082
+ 'react/hook-use-state': HookUseState.Options;
5083
+ 'react/jsx-boolean-value': JsxBooleanValue.Options;
5084
+ 'react/jsx-closing-bracket-location': JsxClosingBracketLocation.Options;
5085
+ 'react/jsx-closing-tag-location': JsxClosingTagLocation.Options;
5086
+ 'react/jsx-curly-spacing': JsxCurlySpacing.Options;
5087
+ 'react/jsx-curly-newline': JsxCurlyNewline.Options;
5088
+ 'react/jsx-equals-spacing': JsxEqualsSpacing.Options;
5089
+ 'react/jsx-filename-extension': JsxFilenameExtension.Options;
5090
+ 'react/jsx-first-prop-new-line': JsxFirstPropNewLine.Options;
5091
+ 'react/jsx-handler-names': JsxHandlerNames.Options;
5092
+ 'react/jsx-indent': readonly [JsxIndent.Options0, JsxIndent.Options1];
5093
+ 'react/jsx-indent-props': JsxIndentProps.Options;
5094
+ 'react/jsx-key': JsxKey.Options;
5095
+ 'react/jsx-max-depth': JsxMaxDepth.Options;
5096
+ 'react/jsx-max-props-per-line': JsxMaxPropsPerLine.Options;
5097
+ 'react/jsx-newline': JsxNewline.Options;
5098
+ 'react/jsx-no-bind': JsxNoBind.Options;
5099
+ 'react/jsx-no-duplicate-props': JsxNoDuplicateProps.Options;
5100
+ 'react/jsx-no-leaked-render': JsxNoLeakedRender.Options;
5101
+ 'react/jsx-no-literals': JsxNoLiterals.Options;
5102
+ 'react/jsx-no-script-url': JsxNoScriptUrl.Options;
5103
+ 'react/jsx-no-target-blank': JsxNoTargetBlank.Options;
5104
+ 'react/jsx-no-useless-fragment': JsxNoUselessFragment.Options;
5105
+ 'react/jsx-one-expression-per-line': JsxOneExpressionPerLine.Options;
5106
+ 'react/jsx-no-undef': JsxNoUndef.Options;
5107
+ 'react/jsx-curly-brace-presence': JsxCurlyBracePresence.Options;
5108
+ 'react/jsx-pascal-case': JsxPascalCase.Options;
5109
+ 'react/jsx-fragments': JsxFragments.Options;
5110
+ 'react/jsx-props-no-spreading': JsxPropsNoSpreading.Options;
5111
+ 'react/jsx-sort-props': JsxSortProps.Options;
5112
+ 'react/jsx-tag-spacing': JsxTagSpacing.Options;
5113
+ 'react/jsx-wrap-multilines': JsxWrapMultilines.Options;
5114
+ 'react/no-invalid-html-attribute': NoInvalidHtmlAttribute.Options;
5115
+ 'react/no-children-prop': NoChildrenProp.Options;
5116
+ 'react/no-danger': NoDanger.Options;
5117
+ 'react/no-did-mount-set-state': NoDidMountSetState.Options;
5118
+ 'react/no-did-update-set-state': NoDidUpdateSetState.Options;
5119
+ 'react/no-multi-comp': NoMultiComp.Options;
5120
+ 'react/no-string-refs': NoStringRefs.Options;
5121
+ 'react/no-unescaped-entities': NoUnescapedEntities.Options;
5122
+ 'react/no-unknown-property': NoUnknownProperty.Options;
5123
+ 'react/no-unsafe': NoUnsafe.Options;
5124
+ 'react/no-unstable-nested-components': NoUnstableNestedComponents.Options;
5125
+ 'react/no-unused-prop-types': NoUnusedPropTypes.Options;
5126
+ 'react/no-will-update-set-state': NoWillUpdateSetState.Options;
5127
+ 'react/prefer-es6-class': PreferEs6Class.Options;
5128
+ 'react/prefer-stateless-function': PreferStatelessFunction.Options;
5129
+ 'react/prop-types': PropTypes.Options;
5130
+ 'react/require-default-props': RequireDefaultProps.Options;
5131
+ 'react/require-optimization': RequireOptimization.Options;
5132
+ 'react/self-closing-comp': SelfClosingComp.Options;
5133
+ 'react/sort-comp': SortComp.Options;
5134
+ 'react/sort-default-props': SortDefaultProps.Options;
5135
+ 'react/sort-prop-types': SortPropTypes.Options;
5136
+ 'react/state-in-constructor': StateInConstructor.Options;
5137
+ 'react/static-property-placement': readonly [
5143
5138
  StaticPropertyPlacement.Options0,
5144
5139
  StaticPropertyPlacement.Options1,
5145
5140
  ];
5146
- readonly 'react/style-prop-object': StylePropObject.Options;
5147
- };
5141
+ 'react/style-prop-object': StylePropObject.Options;
5142
+ }>;