@zayne-labs/eslint-config 0.10.9 → 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +268 -162
- package/dist/cli/index.js +1 -1
- package/dist/cli/index.js.map +1 -1
- package/dist/index.d.ts +938 -50
- package/dist/index.js +325 -155
- package/dist/index.js.map +1 -1
- package/dist/{src-CqhpNkRz.js → src-MgbFTVE-.js} +96 -76
- package/dist/src-MgbFTVE-.js.map +1 -0
- package/package.json +32 -20
- package/dist/src-CqhpNkRz.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -55,182 +55,182 @@ interface Rules {
|
|
|
55
55
|
* apply `jsx-a11y/alt-text` rule to Astro components
|
|
56
56
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/alt-text/
|
|
57
57
|
*/
|
|
58
|
-
'astro/jsx-a11y/alt-text'?: Linter.RuleEntry<
|
|
58
|
+
'astro/jsx-a11y/alt-text'?: Linter.RuleEntry<AstroJsxA11YAltText>;
|
|
59
59
|
/**
|
|
60
60
|
* apply `jsx-a11y/anchor-ambiguous-text` rule to Astro components
|
|
61
61
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/anchor-ambiguous-text/
|
|
62
62
|
*/
|
|
63
|
-
'astro/jsx-a11y/anchor-ambiguous-text'?: Linter.RuleEntry<
|
|
63
|
+
'astro/jsx-a11y/anchor-ambiguous-text'?: Linter.RuleEntry<AstroJsxA11YAnchorAmbiguousText>;
|
|
64
64
|
/**
|
|
65
65
|
* apply `jsx-a11y/anchor-has-content` rule to Astro components
|
|
66
66
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/anchor-has-content/
|
|
67
67
|
*/
|
|
68
|
-
'astro/jsx-a11y/anchor-has-content'?: Linter.RuleEntry<
|
|
68
|
+
'astro/jsx-a11y/anchor-has-content'?: Linter.RuleEntry<AstroJsxA11YAnchorHasContent>;
|
|
69
69
|
/**
|
|
70
70
|
* apply `jsx-a11y/anchor-is-valid` rule to Astro components
|
|
71
71
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/anchor-is-valid/
|
|
72
72
|
*/
|
|
73
|
-
'astro/jsx-a11y/anchor-is-valid'?: Linter.RuleEntry<
|
|
73
|
+
'astro/jsx-a11y/anchor-is-valid'?: Linter.RuleEntry<AstroJsxA11YAnchorIsValid>;
|
|
74
74
|
/**
|
|
75
75
|
* apply `jsx-a11y/aria-activedescendant-has-tabindex` rule to Astro components
|
|
76
76
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-activedescendant-has-tabindex/
|
|
77
77
|
*/
|
|
78
|
-
'astro/jsx-a11y/aria-activedescendant-has-tabindex'?: Linter.RuleEntry<
|
|
78
|
+
'astro/jsx-a11y/aria-activedescendant-has-tabindex'?: Linter.RuleEntry<AstroJsxA11YAriaActivedescendantHasTabindex>;
|
|
79
79
|
/**
|
|
80
80
|
* apply `jsx-a11y/aria-props` rule to Astro components
|
|
81
81
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-props/
|
|
82
82
|
*/
|
|
83
|
-
'astro/jsx-a11y/aria-props'?: Linter.RuleEntry<
|
|
83
|
+
'astro/jsx-a11y/aria-props'?: Linter.RuleEntry<AstroJsxA11YAriaProps>;
|
|
84
84
|
/**
|
|
85
85
|
* apply `jsx-a11y/aria-proptypes` rule to Astro components
|
|
86
86
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-proptypes/
|
|
87
87
|
*/
|
|
88
|
-
'astro/jsx-a11y/aria-proptypes'?: Linter.RuleEntry<
|
|
88
|
+
'astro/jsx-a11y/aria-proptypes'?: Linter.RuleEntry<AstroJsxA11YAriaProptypes>;
|
|
89
89
|
/**
|
|
90
90
|
* apply `jsx-a11y/aria-role` rule to Astro components
|
|
91
91
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-role/
|
|
92
92
|
*/
|
|
93
|
-
'astro/jsx-a11y/aria-role'?: Linter.RuleEntry<
|
|
93
|
+
'astro/jsx-a11y/aria-role'?: Linter.RuleEntry<AstroJsxA11YAriaRole>;
|
|
94
94
|
/**
|
|
95
95
|
* apply `jsx-a11y/aria-unsupported-elements` rule to Astro components
|
|
96
96
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/aria-unsupported-elements/
|
|
97
97
|
*/
|
|
98
|
-
'astro/jsx-a11y/aria-unsupported-elements'?: Linter.RuleEntry<
|
|
98
|
+
'astro/jsx-a11y/aria-unsupported-elements'?: Linter.RuleEntry<AstroJsxA11YAriaUnsupportedElements>;
|
|
99
99
|
/**
|
|
100
100
|
* apply `jsx-a11y/autocomplete-valid` rule to Astro components
|
|
101
101
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/autocomplete-valid/
|
|
102
102
|
*/
|
|
103
|
-
'astro/jsx-a11y/autocomplete-valid'?: Linter.RuleEntry<
|
|
103
|
+
'astro/jsx-a11y/autocomplete-valid'?: Linter.RuleEntry<AstroJsxA11YAutocompleteValid>;
|
|
104
104
|
/**
|
|
105
105
|
* apply `jsx-a11y/click-events-have-key-events` rule to Astro components
|
|
106
106
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/click-events-have-key-events/
|
|
107
107
|
*/
|
|
108
|
-
'astro/jsx-a11y/click-events-have-key-events'?: Linter.RuleEntry<
|
|
108
|
+
'astro/jsx-a11y/click-events-have-key-events'?: Linter.RuleEntry<AstroJsxA11YClickEventsHaveKeyEvents>;
|
|
109
109
|
/**
|
|
110
110
|
* apply `jsx-a11y/control-has-associated-label` rule to Astro components
|
|
111
111
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/control-has-associated-label/
|
|
112
112
|
*/
|
|
113
|
-
'astro/jsx-a11y/control-has-associated-label'?: Linter.RuleEntry<
|
|
113
|
+
'astro/jsx-a11y/control-has-associated-label'?: Linter.RuleEntry<AstroJsxA11YControlHasAssociatedLabel>;
|
|
114
114
|
/**
|
|
115
115
|
* apply `jsx-a11y/heading-has-content` rule to Astro components
|
|
116
116
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/heading-has-content/
|
|
117
117
|
*/
|
|
118
|
-
'astro/jsx-a11y/heading-has-content'?: Linter.RuleEntry<
|
|
118
|
+
'astro/jsx-a11y/heading-has-content'?: Linter.RuleEntry<AstroJsxA11YHeadingHasContent>;
|
|
119
119
|
/**
|
|
120
120
|
* apply `jsx-a11y/html-has-lang` rule to Astro components
|
|
121
121
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/html-has-lang/
|
|
122
122
|
*/
|
|
123
|
-
'astro/jsx-a11y/html-has-lang'?: Linter.RuleEntry<
|
|
123
|
+
'astro/jsx-a11y/html-has-lang'?: Linter.RuleEntry<AstroJsxA11YHtmlHasLang>;
|
|
124
124
|
/**
|
|
125
125
|
* apply `jsx-a11y/iframe-has-title` rule to Astro components
|
|
126
126
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/iframe-has-title/
|
|
127
127
|
*/
|
|
128
|
-
'astro/jsx-a11y/iframe-has-title'?: Linter.RuleEntry<
|
|
128
|
+
'astro/jsx-a11y/iframe-has-title'?: Linter.RuleEntry<AstroJsxA11YIframeHasTitle>;
|
|
129
129
|
/**
|
|
130
130
|
* apply `jsx-a11y/img-redundant-alt` rule to Astro components
|
|
131
131
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/img-redundant-alt/
|
|
132
132
|
*/
|
|
133
|
-
'astro/jsx-a11y/img-redundant-alt'?: Linter.RuleEntry<
|
|
133
|
+
'astro/jsx-a11y/img-redundant-alt'?: Linter.RuleEntry<AstroJsxA11YImgRedundantAlt>;
|
|
134
134
|
/**
|
|
135
135
|
* apply `jsx-a11y/interactive-supports-focus` rule to Astro components
|
|
136
136
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/interactive-supports-focus/
|
|
137
137
|
*/
|
|
138
|
-
'astro/jsx-a11y/interactive-supports-focus'?: Linter.RuleEntry<
|
|
138
|
+
'astro/jsx-a11y/interactive-supports-focus'?: Linter.RuleEntry<AstroJsxA11YInteractiveSupportsFocus>;
|
|
139
139
|
/**
|
|
140
140
|
* apply `jsx-a11y/label-has-associated-control` rule to Astro components
|
|
141
141
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/label-has-associated-control/
|
|
142
142
|
*/
|
|
143
|
-
'astro/jsx-a11y/label-has-associated-control'?: Linter.RuleEntry<
|
|
143
|
+
'astro/jsx-a11y/label-has-associated-control'?: Linter.RuleEntry<AstroJsxA11YLabelHasAssociatedControl>;
|
|
144
144
|
/**
|
|
145
145
|
* apply `jsx-a11y/lang` rule to Astro components
|
|
146
146
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/lang/
|
|
147
147
|
*/
|
|
148
|
-
'astro/jsx-a11y/lang'?: Linter.RuleEntry<
|
|
148
|
+
'astro/jsx-a11y/lang'?: Linter.RuleEntry<AstroJsxA11YLang>;
|
|
149
149
|
/**
|
|
150
150
|
* apply `jsx-a11y/media-has-caption` rule to Astro components
|
|
151
151
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/media-has-caption/
|
|
152
152
|
*/
|
|
153
|
-
'astro/jsx-a11y/media-has-caption'?: Linter.RuleEntry<
|
|
153
|
+
'astro/jsx-a11y/media-has-caption'?: Linter.RuleEntry<AstroJsxA11YMediaHasCaption>;
|
|
154
154
|
/**
|
|
155
155
|
* apply `jsx-a11y/mouse-events-have-key-events` rule to Astro components
|
|
156
156
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/mouse-events-have-key-events/
|
|
157
157
|
*/
|
|
158
|
-
'astro/jsx-a11y/mouse-events-have-key-events'?: Linter.RuleEntry<
|
|
158
|
+
'astro/jsx-a11y/mouse-events-have-key-events'?: Linter.RuleEntry<AstroJsxA11YMouseEventsHaveKeyEvents>;
|
|
159
159
|
/**
|
|
160
160
|
* apply `jsx-a11y/no-access-key` rule to Astro components
|
|
161
161
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-access-key/
|
|
162
162
|
*/
|
|
163
|
-
'astro/jsx-a11y/no-access-key'?: Linter.RuleEntry<
|
|
163
|
+
'astro/jsx-a11y/no-access-key'?: Linter.RuleEntry<AstroJsxA11YNoAccessKey>;
|
|
164
164
|
/**
|
|
165
165
|
* apply `jsx-a11y/no-aria-hidden-on-focusable` rule to Astro components
|
|
166
166
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-aria-hidden-on-focusable/
|
|
167
167
|
*/
|
|
168
|
-
'astro/jsx-a11y/no-aria-hidden-on-focusable'?: Linter.RuleEntry<
|
|
168
|
+
'astro/jsx-a11y/no-aria-hidden-on-focusable'?: Linter.RuleEntry<AstroJsxA11YNoAriaHiddenOnFocusable>;
|
|
169
169
|
/**
|
|
170
170
|
* apply `jsx-a11y/no-autofocus` rule to Astro components
|
|
171
171
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-autofocus/
|
|
172
172
|
*/
|
|
173
|
-
'astro/jsx-a11y/no-autofocus'?: Linter.RuleEntry<
|
|
173
|
+
'astro/jsx-a11y/no-autofocus'?: Linter.RuleEntry<AstroJsxA11YNoAutofocus>;
|
|
174
174
|
/**
|
|
175
175
|
* apply `jsx-a11y/no-distracting-elements` rule to Astro components
|
|
176
176
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-distracting-elements/
|
|
177
177
|
*/
|
|
178
|
-
'astro/jsx-a11y/no-distracting-elements'?: Linter.RuleEntry<
|
|
178
|
+
'astro/jsx-a11y/no-distracting-elements'?: Linter.RuleEntry<AstroJsxA11YNoDistractingElements>;
|
|
179
179
|
/**
|
|
180
180
|
* apply `jsx-a11y/no-interactive-element-to-noninteractive-role` rule to Astro components
|
|
181
181
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-interactive-element-to-noninteractive-role/
|
|
182
182
|
*/
|
|
183
|
-
'astro/jsx-a11y/no-interactive-element-to-noninteractive-role'?: Linter.RuleEntry<
|
|
183
|
+
'astro/jsx-a11y/no-interactive-element-to-noninteractive-role'?: Linter.RuleEntry<AstroJsxA11YNoInteractiveElementToNoninteractiveRole>;
|
|
184
184
|
/**
|
|
185
185
|
* apply `jsx-a11y/no-noninteractive-element-interactions` rule to Astro components
|
|
186
186
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-noninteractive-element-interactions/
|
|
187
187
|
*/
|
|
188
|
-
'astro/jsx-a11y/no-noninteractive-element-interactions'?: Linter.RuleEntry<
|
|
188
|
+
'astro/jsx-a11y/no-noninteractive-element-interactions'?: Linter.RuleEntry<AstroJsxA11YNoNoninteractiveElementInteractions>;
|
|
189
189
|
/**
|
|
190
190
|
* apply `jsx-a11y/no-noninteractive-element-to-interactive-role` rule to Astro components
|
|
191
191
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-noninteractive-element-to-interactive-role/
|
|
192
192
|
*/
|
|
193
|
-
'astro/jsx-a11y/no-noninteractive-element-to-interactive-role'?: Linter.RuleEntry<
|
|
193
|
+
'astro/jsx-a11y/no-noninteractive-element-to-interactive-role'?: Linter.RuleEntry<AstroJsxA11YNoNoninteractiveElementToInteractiveRole>;
|
|
194
194
|
/**
|
|
195
195
|
* apply `jsx-a11y/no-noninteractive-tabindex` rule to Astro components
|
|
196
196
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-noninteractive-tabindex/
|
|
197
197
|
*/
|
|
198
|
-
'astro/jsx-a11y/no-noninteractive-tabindex'?: Linter.RuleEntry<
|
|
198
|
+
'astro/jsx-a11y/no-noninteractive-tabindex'?: Linter.RuleEntry<AstroJsxA11YNoNoninteractiveTabindex>;
|
|
199
199
|
/**
|
|
200
200
|
* apply `jsx-a11y/no-redundant-roles` rule to Astro components
|
|
201
201
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-redundant-roles/
|
|
202
202
|
*/
|
|
203
|
-
'astro/jsx-a11y/no-redundant-roles'?: Linter.RuleEntry<
|
|
203
|
+
'astro/jsx-a11y/no-redundant-roles'?: Linter.RuleEntry<AstroJsxA11YNoRedundantRoles>;
|
|
204
204
|
/**
|
|
205
205
|
* apply `jsx-a11y/no-static-element-interactions` rule to Astro components
|
|
206
206
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/no-static-element-interactions/
|
|
207
207
|
*/
|
|
208
|
-
'astro/jsx-a11y/no-static-element-interactions'?: Linter.RuleEntry<
|
|
208
|
+
'astro/jsx-a11y/no-static-element-interactions'?: Linter.RuleEntry<AstroJsxA11YNoStaticElementInteractions>;
|
|
209
209
|
/**
|
|
210
210
|
* apply `jsx-a11y/prefer-tag-over-role` rule to Astro components
|
|
211
211
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/prefer-tag-over-role/
|
|
212
212
|
*/
|
|
213
|
-
'astro/jsx-a11y/prefer-tag-over-role'?: Linter.RuleEntry<
|
|
213
|
+
'astro/jsx-a11y/prefer-tag-over-role'?: Linter.RuleEntry<AstroJsxA11YPreferTagOverRole>;
|
|
214
214
|
/**
|
|
215
215
|
* apply `jsx-a11y/role-has-required-aria-props` rule to Astro components
|
|
216
216
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/role-has-required-aria-props/
|
|
217
217
|
*/
|
|
218
|
-
'astro/jsx-a11y/role-has-required-aria-props'?: Linter.RuleEntry<
|
|
218
|
+
'astro/jsx-a11y/role-has-required-aria-props'?: Linter.RuleEntry<AstroJsxA11YRoleHasRequiredAriaProps>;
|
|
219
219
|
/**
|
|
220
220
|
* apply `jsx-a11y/role-supports-aria-props` rule to Astro components
|
|
221
221
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/role-supports-aria-props/
|
|
222
222
|
*/
|
|
223
|
-
'astro/jsx-a11y/role-supports-aria-props'?: Linter.RuleEntry<
|
|
223
|
+
'astro/jsx-a11y/role-supports-aria-props'?: Linter.RuleEntry<AstroJsxA11YRoleSupportsAriaProps>;
|
|
224
224
|
/**
|
|
225
225
|
* apply `jsx-a11y/scope` rule to Astro components
|
|
226
226
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/scope/
|
|
227
227
|
*/
|
|
228
|
-
'astro/jsx-a11y/scope'?: Linter.RuleEntry<
|
|
228
|
+
'astro/jsx-a11y/scope'?: Linter.RuleEntry<AstroJsxA11YScope>;
|
|
229
229
|
/**
|
|
230
230
|
* apply `jsx-a11y/tabindex-no-positive` rule to Astro components
|
|
231
231
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/jsx-a11y/tabindex-no-positive/
|
|
232
232
|
*/
|
|
233
|
-
'astro/jsx-a11y/tabindex-no-positive'?: Linter.RuleEntry<
|
|
233
|
+
'astro/jsx-a11y/tabindex-no-positive'?: Linter.RuleEntry<AstroJsxA11YTabindexNoPositive>;
|
|
234
234
|
/**
|
|
235
235
|
* the client:only directive is missing the correct component's framework value
|
|
236
236
|
* @see https://ota-meshi.github.io/eslint-plugin-astro/rules/missing-client-only-directive-value/
|
|
@@ -445,6 +445,26 @@ interface Rules {
|
|
|
445
445
|
* @see https://eslint.org/docs/latest/rules/eqeqeq
|
|
446
446
|
*/
|
|
447
447
|
'eqeqeq'?: Linter.RuleEntry<Eqeqeq>;
|
|
448
|
+
/**
|
|
449
|
+
* Avoid using TypeScript's enums.
|
|
450
|
+
* @see https://github.com/JoshuaKGoldberg/eslint-plugin-erasable-syntax-only/blob/main/docs/rules/enums.md
|
|
451
|
+
*/
|
|
452
|
+
'erasable-syntax-only/enums'?: Linter.RuleEntry<[]>;
|
|
453
|
+
/**
|
|
454
|
+
* Avoid using TypeScript's import aliases.
|
|
455
|
+
* @see https://github.com/JoshuaKGoldberg/eslint-plugin-erasable-syntax-only/blob/main/docs/rules/import-aliases.md
|
|
456
|
+
*/
|
|
457
|
+
'erasable-syntax-only/import-aliases'?: Linter.RuleEntry<[]>;
|
|
458
|
+
/**
|
|
459
|
+
* Avoid using TypeScript's namespaces.
|
|
460
|
+
* @see https://github.com/JoshuaKGoldberg/eslint-plugin-erasable-syntax-only/blob/main/docs/rules/namespaces.md
|
|
461
|
+
*/
|
|
462
|
+
'erasable-syntax-only/namespaces'?: Linter.RuleEntry<[]>;
|
|
463
|
+
/**
|
|
464
|
+
* Avoid using TypeScript's class parameter properties.
|
|
465
|
+
* @see https://github.com/JoshuaKGoldberg/eslint-plugin-erasable-syntax-only/blob/main/docs/rules/parameter-properties.md
|
|
466
|
+
*/
|
|
467
|
+
'erasable-syntax-only/parameter-properties'?: Linter.RuleEntry<[]>;
|
|
448
468
|
/**
|
|
449
469
|
* require a `eslint-enable` comment for every `eslint-disable` comment
|
|
450
470
|
* @see https://eslint-community.github.io/eslint-plugin-eslint-comments/rules/disable-enable-pair.html
|
|
@@ -1451,6 +1471,204 @@ interface Rules {
|
|
|
1451
1471
|
* @see https://ota-meshi.github.io/eslint-plugin-jsonc/rules/vue-custom-block/no-parsing-error.html
|
|
1452
1472
|
*/
|
|
1453
1473
|
'jsonc/vue-custom-block/no-parsing-error'?: Linter.RuleEntry<[]>;
|
|
1474
|
+
/**
|
|
1475
|
+
* Enforce emojis are wrapped in `<span>` and provide screen reader access.
|
|
1476
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/accessible-emoji.md
|
|
1477
|
+
* @deprecated
|
|
1478
|
+
*/
|
|
1479
|
+
'jsx-a11y/accessible-emoji'?: Linter.RuleEntry<JsxA11YAccessibleEmoji>;
|
|
1480
|
+
/**
|
|
1481
|
+
* Enforce all elements that require alternative text have meaningful information to relay back to end user.
|
|
1482
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/alt-text.md
|
|
1483
|
+
*/
|
|
1484
|
+
'jsx-a11y/alt-text'?: Linter.RuleEntry<JsxA11YAltText>;
|
|
1485
|
+
/**
|
|
1486
|
+
* Enforce `<a>` text to not exactly match "click here", "here", "link", or "a link".
|
|
1487
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-ambiguous-text.md
|
|
1488
|
+
*/
|
|
1489
|
+
'jsx-a11y/anchor-ambiguous-text'?: Linter.RuleEntry<JsxA11YAnchorAmbiguousText>;
|
|
1490
|
+
/**
|
|
1491
|
+
* Enforce all anchors to contain accessible content.
|
|
1492
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-has-content.md
|
|
1493
|
+
*/
|
|
1494
|
+
'jsx-a11y/anchor-has-content'?: Linter.RuleEntry<JsxA11YAnchorHasContent>;
|
|
1495
|
+
/**
|
|
1496
|
+
* Enforce all anchors are valid, navigable elements.
|
|
1497
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/anchor-is-valid.md
|
|
1498
|
+
*/
|
|
1499
|
+
'jsx-a11y/anchor-is-valid'?: Linter.RuleEntry<JsxA11YAnchorIsValid>;
|
|
1500
|
+
/**
|
|
1501
|
+
* Enforce elements with aria-activedescendant are tabbable.
|
|
1502
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-activedescendant-has-tabindex.md
|
|
1503
|
+
*/
|
|
1504
|
+
'jsx-a11y/aria-activedescendant-has-tabindex'?: Linter.RuleEntry<JsxA11YAriaActivedescendantHasTabindex>;
|
|
1505
|
+
/**
|
|
1506
|
+
* Enforce all `aria-*` props are valid.
|
|
1507
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-props.md
|
|
1508
|
+
*/
|
|
1509
|
+
'jsx-a11y/aria-props'?: Linter.RuleEntry<JsxA11YAriaProps>;
|
|
1510
|
+
/**
|
|
1511
|
+
* Enforce ARIA state and property values are valid.
|
|
1512
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-proptypes.md
|
|
1513
|
+
*/
|
|
1514
|
+
'jsx-a11y/aria-proptypes'?: Linter.RuleEntry<JsxA11YAriaProptypes>;
|
|
1515
|
+
/**
|
|
1516
|
+
* Enforce that elements with ARIA roles must use a valid, non-abstract ARIA role.
|
|
1517
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-role.md
|
|
1518
|
+
*/
|
|
1519
|
+
'jsx-a11y/aria-role'?: Linter.RuleEntry<JsxA11YAriaRole>;
|
|
1520
|
+
/**
|
|
1521
|
+
* Enforce that elements that do not support ARIA roles, states, and properties do not have those attributes.
|
|
1522
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/aria-unsupported-elements.md
|
|
1523
|
+
*/
|
|
1524
|
+
'jsx-a11y/aria-unsupported-elements'?: Linter.RuleEntry<JsxA11YAriaUnsupportedElements>;
|
|
1525
|
+
/**
|
|
1526
|
+
* Enforce that autocomplete attributes are used correctly.
|
|
1527
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/autocomplete-valid.md
|
|
1528
|
+
*/
|
|
1529
|
+
'jsx-a11y/autocomplete-valid'?: Linter.RuleEntry<JsxA11YAutocompleteValid>;
|
|
1530
|
+
/**
|
|
1531
|
+
* Enforce a clickable non-interactive element has at least one keyboard event listener.
|
|
1532
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/click-events-have-key-events.md
|
|
1533
|
+
*/
|
|
1534
|
+
'jsx-a11y/click-events-have-key-events'?: Linter.RuleEntry<JsxA11YClickEventsHaveKeyEvents>;
|
|
1535
|
+
/**
|
|
1536
|
+
* Enforce that a control (an interactive element) has a text label.
|
|
1537
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/docs/rules/control-has-associated-label.md
|
|
1538
|
+
*/
|
|
1539
|
+
'jsx-a11y/control-has-associated-label'?: Linter.RuleEntry<JsxA11YControlHasAssociatedLabel>;
|
|
1540
|
+
/**
|
|
1541
|
+
* Enforce heading (`h1`, `h2`, etc) elements contain accessible content.
|
|
1542
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/heading-has-content.md
|
|
1543
|
+
*/
|
|
1544
|
+
'jsx-a11y/heading-has-content'?: Linter.RuleEntry<JsxA11YHeadingHasContent>;
|
|
1545
|
+
/**
|
|
1546
|
+
* Enforce `<html>` element has `lang` prop.
|
|
1547
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/html-has-lang.md
|
|
1548
|
+
*/
|
|
1549
|
+
'jsx-a11y/html-has-lang'?: Linter.RuleEntry<JsxA11YHtmlHasLang>;
|
|
1550
|
+
/**
|
|
1551
|
+
* Enforce iframe elements have a title attribute.
|
|
1552
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/iframe-has-title.md
|
|
1553
|
+
*/
|
|
1554
|
+
'jsx-a11y/iframe-has-title'?: Linter.RuleEntry<JsxA11YIframeHasTitle>;
|
|
1555
|
+
/**
|
|
1556
|
+
* Enforce `<img>` alt prop does not contain the word "image", "picture", or "photo".
|
|
1557
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/img-redundant-alt.md
|
|
1558
|
+
*/
|
|
1559
|
+
'jsx-a11y/img-redundant-alt'?: Linter.RuleEntry<JsxA11YImgRedundantAlt>;
|
|
1560
|
+
/**
|
|
1561
|
+
* Enforce that elements with interactive handlers like `onClick` must be focusable.
|
|
1562
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/interactive-supports-focus.md
|
|
1563
|
+
*/
|
|
1564
|
+
'jsx-a11y/interactive-supports-focus'?: Linter.RuleEntry<JsxA11YInteractiveSupportsFocus>;
|
|
1565
|
+
/**
|
|
1566
|
+
* Enforce that a `label` tag has a text label and an associated control.
|
|
1567
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/blob/main/docs/rules/label-has-associated-control.md
|
|
1568
|
+
*/
|
|
1569
|
+
'jsx-a11y/label-has-associated-control'?: Linter.RuleEntry<JsxA11YLabelHasAssociatedControl>;
|
|
1570
|
+
/**
|
|
1571
|
+
* Enforce that `<label>` elements have the `htmlFor` prop.
|
|
1572
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/label-has-for.md
|
|
1573
|
+
* @deprecated
|
|
1574
|
+
*/
|
|
1575
|
+
'jsx-a11y/label-has-for'?: Linter.RuleEntry<JsxA11YLabelHasFor>;
|
|
1576
|
+
/**
|
|
1577
|
+
* Enforce lang attribute has a valid value.
|
|
1578
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/lang.md
|
|
1579
|
+
*/
|
|
1580
|
+
'jsx-a11y/lang'?: Linter.RuleEntry<JsxA11YLang>;
|
|
1581
|
+
/**
|
|
1582
|
+
* Enforces that `<audio>` and `<video>` elements must have a `<track>` for captions.
|
|
1583
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/media-has-caption.md
|
|
1584
|
+
*/
|
|
1585
|
+
'jsx-a11y/media-has-caption'?: Linter.RuleEntry<JsxA11YMediaHasCaption>;
|
|
1586
|
+
/**
|
|
1587
|
+
* Enforce that `onMouseOver`/`onMouseOut` are accompanied by `onFocus`/`onBlur` for keyboard-only users.
|
|
1588
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/mouse-events-have-key-events.md
|
|
1589
|
+
*/
|
|
1590
|
+
'jsx-a11y/mouse-events-have-key-events'?: Linter.RuleEntry<JsxA11YMouseEventsHaveKeyEvents>;
|
|
1591
|
+
/**
|
|
1592
|
+
* Enforce that the `accessKey` prop is not used on any element to avoid complications with keyboard commands used by a screen reader.
|
|
1593
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-access-key.md
|
|
1594
|
+
*/
|
|
1595
|
+
'jsx-a11y/no-access-key'?: Linter.RuleEntry<JsxA11YNoAccessKey>;
|
|
1596
|
+
/**
|
|
1597
|
+
* Disallow `aria-hidden="true"` from being set on focusable elements.
|
|
1598
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-aria-hidden-on-focusable.md
|
|
1599
|
+
*/
|
|
1600
|
+
'jsx-a11y/no-aria-hidden-on-focusable'?: Linter.RuleEntry<JsxA11YNoAriaHiddenOnFocusable>;
|
|
1601
|
+
/**
|
|
1602
|
+
* Enforce autoFocus prop is not used.
|
|
1603
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-autofocus.md
|
|
1604
|
+
*/
|
|
1605
|
+
'jsx-a11y/no-autofocus'?: Linter.RuleEntry<JsxA11YNoAutofocus>;
|
|
1606
|
+
/**
|
|
1607
|
+
* Enforce distracting elements are not used.
|
|
1608
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-distracting-elements.md
|
|
1609
|
+
*/
|
|
1610
|
+
'jsx-a11y/no-distracting-elements'?: Linter.RuleEntry<JsxA11YNoDistractingElements>;
|
|
1611
|
+
/**
|
|
1612
|
+
* Interactive elements should not be assigned non-interactive roles.
|
|
1613
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-interactive-element-to-noninteractive-role.md
|
|
1614
|
+
*/
|
|
1615
|
+
'jsx-a11y/no-interactive-element-to-noninteractive-role'?: Linter.RuleEntry<JsxA11YNoInteractiveElementToNoninteractiveRole>;
|
|
1616
|
+
/**
|
|
1617
|
+
* Non-interactive elements should not be assigned mouse or keyboard event listeners.
|
|
1618
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-element-interactions.md
|
|
1619
|
+
*/
|
|
1620
|
+
'jsx-a11y/no-noninteractive-element-interactions'?: Linter.RuleEntry<JsxA11YNoNoninteractiveElementInteractions>;
|
|
1621
|
+
/**
|
|
1622
|
+
* Non-interactive elements should not be assigned interactive roles.
|
|
1623
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-element-to-interactive-role.md
|
|
1624
|
+
*/
|
|
1625
|
+
'jsx-a11y/no-noninteractive-element-to-interactive-role'?: Linter.RuleEntry<JsxA11YNoNoninteractiveElementToInteractiveRole>;
|
|
1626
|
+
/**
|
|
1627
|
+
* `tabIndex` should only be declared on interactive elements.
|
|
1628
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-noninteractive-tabindex.md
|
|
1629
|
+
*/
|
|
1630
|
+
'jsx-a11y/no-noninteractive-tabindex'?: Linter.RuleEntry<JsxA11YNoNoninteractiveTabindex>;
|
|
1631
|
+
/**
|
|
1632
|
+
* Enforce usage of `onBlur` over `onChange` on select menus for accessibility.
|
|
1633
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-onchange.md
|
|
1634
|
+
* @deprecated
|
|
1635
|
+
*/
|
|
1636
|
+
'jsx-a11y/no-onchange'?: Linter.RuleEntry<JsxA11YNoOnchange>;
|
|
1637
|
+
/**
|
|
1638
|
+
* Enforce explicit role property is not the same as implicit/default role property on element.
|
|
1639
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-redundant-roles.md
|
|
1640
|
+
*/
|
|
1641
|
+
'jsx-a11y/no-redundant-roles'?: Linter.RuleEntry<JsxA11YNoRedundantRoles>;
|
|
1642
|
+
/**
|
|
1643
|
+
* Enforce that non-interactive, visible elements (such as `<div>`) that have click handlers use the role attribute.
|
|
1644
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/no-static-element-interactions.md
|
|
1645
|
+
*/
|
|
1646
|
+
'jsx-a11y/no-static-element-interactions'?: Linter.RuleEntry<JsxA11YNoStaticElementInteractions>;
|
|
1647
|
+
/**
|
|
1648
|
+
* Enforces using semantic DOM elements over the ARIA `role` property.
|
|
1649
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/prefer-tag-over-role.md
|
|
1650
|
+
*/
|
|
1651
|
+
'jsx-a11y/prefer-tag-over-role'?: Linter.RuleEntry<JsxA11YPreferTagOverRole>;
|
|
1652
|
+
/**
|
|
1653
|
+
* Enforce that elements with ARIA roles must have all required attributes for that role.
|
|
1654
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/role-has-required-aria-props.md
|
|
1655
|
+
*/
|
|
1656
|
+
'jsx-a11y/role-has-required-aria-props'?: Linter.RuleEntry<JsxA11YRoleHasRequiredAriaProps>;
|
|
1657
|
+
/**
|
|
1658
|
+
* Enforce that elements with explicit or implicit roles defined contain only `aria-*` properties supported by that `role`.
|
|
1659
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/role-supports-aria-props.md
|
|
1660
|
+
*/
|
|
1661
|
+
'jsx-a11y/role-supports-aria-props'?: Linter.RuleEntry<JsxA11YRoleSupportsAriaProps>;
|
|
1662
|
+
/**
|
|
1663
|
+
* Enforce `scope` prop is only used on `<th>` elements.
|
|
1664
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/scope.md
|
|
1665
|
+
*/
|
|
1666
|
+
'jsx-a11y/scope'?: Linter.RuleEntry<JsxA11YScope>;
|
|
1667
|
+
/**
|
|
1668
|
+
* Enforce `tabIndex` value is not greater than zero.
|
|
1669
|
+
* @see https://github.com/jsx-eslint/eslint-plugin-jsx-a11y/tree/HEAD/docs/rules/tabindex-no-positive.md
|
|
1670
|
+
*/
|
|
1671
|
+
'jsx-a11y/tabindex-no-positive'?: Linter.RuleEntry<JsxA11YTabindexNoPositive>;
|
|
1454
1672
|
/**
|
|
1455
1673
|
* Enforce the consistent use of either double or single quotes in JSX attributes
|
|
1456
1674
|
* @see https://eslint.org/docs/latest/rules/jsx-quotes
|
|
@@ -1504,6 +1722,106 @@ interface Rules {
|
|
|
1504
1722
|
* @see https://eslint.org/docs/latest/rules/logical-assignment-operators
|
|
1505
1723
|
*/
|
|
1506
1724
|
'logical-assignment-operators'?: Linter.RuleEntry<LogicalAssignmentOperators>;
|
|
1725
|
+
/**
|
|
1726
|
+
* Require languages for fenced code blocks
|
|
1727
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/fenced-code-language.md
|
|
1728
|
+
*/
|
|
1729
|
+
'markdown/fenced-code-language'?: Linter.RuleEntry<MarkdownFencedCodeLanguage>;
|
|
1730
|
+
/**
|
|
1731
|
+
* Enforce heading levels increment by one
|
|
1732
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/heading-increment.md
|
|
1733
|
+
*/
|
|
1734
|
+
'markdown/heading-increment'?: Linter.RuleEntry<MarkdownHeadingIncrement>;
|
|
1735
|
+
/**
|
|
1736
|
+
* Disallow bare URLs
|
|
1737
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-bare-urls.md
|
|
1738
|
+
*/
|
|
1739
|
+
'markdown/no-bare-urls'?: Linter.RuleEntry<[]>;
|
|
1740
|
+
/**
|
|
1741
|
+
* Disallow duplicate definitions
|
|
1742
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-duplicate-definitions.md
|
|
1743
|
+
*/
|
|
1744
|
+
'markdown/no-duplicate-definitions'?: Linter.RuleEntry<MarkdownNoDuplicateDefinitions>;
|
|
1745
|
+
/**
|
|
1746
|
+
* Disallow duplicate headings in the same document
|
|
1747
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-duplicate-headings.md
|
|
1748
|
+
*/
|
|
1749
|
+
'markdown/no-duplicate-headings'?: Linter.RuleEntry<MarkdownNoDuplicateHeadings>;
|
|
1750
|
+
/**
|
|
1751
|
+
* Disallow empty definitions
|
|
1752
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-empty-definitions.md
|
|
1753
|
+
*/
|
|
1754
|
+
'markdown/no-empty-definitions'?: Linter.RuleEntry<MarkdownNoEmptyDefinitions>;
|
|
1755
|
+
/**
|
|
1756
|
+
* Disallow empty images
|
|
1757
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-empty-images.md
|
|
1758
|
+
*/
|
|
1759
|
+
'markdown/no-empty-images'?: Linter.RuleEntry<[]>;
|
|
1760
|
+
/**
|
|
1761
|
+
* Disallow empty links
|
|
1762
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-empty-links.md
|
|
1763
|
+
*/
|
|
1764
|
+
'markdown/no-empty-links'?: Linter.RuleEntry<[]>;
|
|
1765
|
+
/**
|
|
1766
|
+
* Disallow HTML tags
|
|
1767
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-html.md
|
|
1768
|
+
*/
|
|
1769
|
+
'markdown/no-html'?: Linter.RuleEntry<MarkdownNoHtml>;
|
|
1770
|
+
/**
|
|
1771
|
+
* Disallow invalid label references
|
|
1772
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-invalid-label-refs.md
|
|
1773
|
+
*/
|
|
1774
|
+
'markdown/no-invalid-label-refs'?: Linter.RuleEntry<[]>;
|
|
1775
|
+
/**
|
|
1776
|
+
* Disallow headings without a space after the hash characters
|
|
1777
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-missing-atx-heading-space.md
|
|
1778
|
+
*/
|
|
1779
|
+
'markdown/no-missing-atx-heading-space'?: Linter.RuleEntry<MarkdownNoMissingAtxHeadingSpace>;
|
|
1780
|
+
/**
|
|
1781
|
+
* Disallow missing label references
|
|
1782
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-missing-label-refs.md
|
|
1783
|
+
*/
|
|
1784
|
+
'markdown/no-missing-label-refs'?: Linter.RuleEntry<MarkdownNoMissingLabelRefs>;
|
|
1785
|
+
/**
|
|
1786
|
+
* Disallow link fragments that do not reference valid headings
|
|
1787
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-missing-link-fragments.md
|
|
1788
|
+
*/
|
|
1789
|
+
'markdown/no-missing-link-fragments'?: Linter.RuleEntry<MarkdownNoMissingLinkFragments>;
|
|
1790
|
+
/**
|
|
1791
|
+
* Disallow multiple H1 headings in the same document
|
|
1792
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-multiple-h1.md
|
|
1793
|
+
*/
|
|
1794
|
+
'markdown/no-multiple-h1'?: Linter.RuleEntry<MarkdownNoMultipleH1>;
|
|
1795
|
+
/**
|
|
1796
|
+
* Disallow URLs that match defined reference identifiers
|
|
1797
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-reference-like-urls.md
|
|
1798
|
+
*/
|
|
1799
|
+
'markdown/no-reference-like-urls'?: Linter.RuleEntry<[]>;
|
|
1800
|
+
/**
|
|
1801
|
+
* Disallow reversed link and image syntax
|
|
1802
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-reversed-media-syntax.md
|
|
1803
|
+
*/
|
|
1804
|
+
'markdown/no-reversed-media-syntax'?: Linter.RuleEntry<[]>;
|
|
1805
|
+
/**
|
|
1806
|
+
* Disallow spaces around emphasis markers
|
|
1807
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-space-in-emphasis.md
|
|
1808
|
+
*/
|
|
1809
|
+
'markdown/no-space-in-emphasis'?: Linter.RuleEntry<MarkdownNoSpaceInEmphasis>;
|
|
1810
|
+
/**
|
|
1811
|
+
* Disallow unused definitions
|
|
1812
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/no-unused-definitions.md
|
|
1813
|
+
*/
|
|
1814
|
+
'markdown/no-unused-definitions'?: Linter.RuleEntry<MarkdownNoUnusedDefinitions>;
|
|
1815
|
+
/**
|
|
1816
|
+
* Require alternative text for images
|
|
1817
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/require-alt-text.md
|
|
1818
|
+
*/
|
|
1819
|
+
'markdown/require-alt-text'?: Linter.RuleEntry<[]>;
|
|
1820
|
+
/**
|
|
1821
|
+
* Disallow data rows in a GitHub Flavored Markdown table from having more cells than the header row
|
|
1822
|
+
* @see https://github.com/eslint/markdown/blob/main/docs/rules/table-column-count.md
|
|
1823
|
+
*/
|
|
1824
|
+
'markdown/table-column-count'?: Linter.RuleEntry<MarkdownTableColumnCount>;
|
|
1507
1825
|
/**
|
|
1508
1826
|
* Enforce a maximum number of classes per file
|
|
1509
1827
|
* @see https://eslint.org/docs/latest/rules/max-classes-per-file
|
|
@@ -3590,6 +3908,7 @@ interface Rules {
|
|
|
3590
3908
|
'react-you-might-not-need-an-effect/no-event-handler'?: Linter.RuleEntry<[]>;
|
|
3591
3909
|
/**
|
|
3592
3910
|
* Disallow initializing state in an effect.
|
|
3911
|
+
* @see https://tkdodo.eu/blog/avoiding-hydration-mismatches-with-use-sync-external-store
|
|
3593
3912
|
*/
|
|
3594
3913
|
'react-you-might-not-need-an-effect/no-initialize-state'?: Linter.RuleEntry<[]>;
|
|
3595
3914
|
/**
|
|
@@ -3952,6 +4271,11 @@ interface Rules {
|
|
|
3952
4271
|
* @see https://eslint.style/rules/eol-last
|
|
3953
4272
|
*/
|
|
3954
4273
|
'stylistic/eol-last'?: Linter.RuleEntry<StylisticEolLast>;
|
|
4274
|
+
/**
|
|
4275
|
+
* Enforce consistent spacing and line break styles inside brackets.
|
|
4276
|
+
* @see https://eslint.style/rules/list-style
|
|
4277
|
+
*/
|
|
4278
|
+
'stylistic/exp-list-style'?: Linter.RuleEntry<StylisticExpListStyle>;
|
|
3955
4279
|
/**
|
|
3956
4280
|
* Enforce line breaks between arguments of a function call
|
|
3957
4281
|
* @see https://eslint.style/rules/function-call-argument-newline
|
|
@@ -7440,6 +7764,188 @@ type ArrowSpacing = [] | [{
|
|
|
7440
7764
|
before?: boolean;
|
|
7441
7765
|
after?: boolean;
|
|
7442
7766
|
}];
|
|
7767
|
+
// ----- astro/jsx-a11y/alt-text -----
|
|
7768
|
+
type AstroJsxA11YAltText = [] | [{
|
|
7769
|
+
elements?: string[];
|
|
7770
|
+
img?: string[];
|
|
7771
|
+
object?: string[];
|
|
7772
|
+
area?: string[];
|
|
7773
|
+
"input[type=\"image\"]"?: string[];
|
|
7774
|
+
[k: string]: unknown | undefined;
|
|
7775
|
+
}];
|
|
7776
|
+
// ----- astro/jsx-a11y/anchor-ambiguous-text -----
|
|
7777
|
+
type AstroJsxA11YAnchorAmbiguousText = [] | [{
|
|
7778
|
+
words?: string[];
|
|
7779
|
+
[k: string]: unknown | undefined;
|
|
7780
|
+
}];
|
|
7781
|
+
// ----- astro/jsx-a11y/anchor-has-content -----
|
|
7782
|
+
type AstroJsxA11YAnchorHasContent = [] | [{
|
|
7783
|
+
components?: string[];
|
|
7784
|
+
[k: string]: unknown | undefined;
|
|
7785
|
+
}];
|
|
7786
|
+
// ----- astro/jsx-a11y/anchor-is-valid -----
|
|
7787
|
+
type AstroJsxA11YAnchorIsValid = [] | [{
|
|
7788
|
+
components?: string[];
|
|
7789
|
+
specialLink?: string[];
|
|
7790
|
+
aspects?: [("noHref" | "invalidHref" | "preferButton"), ...(("noHref" | "invalidHref" | "preferButton"))[]];
|
|
7791
|
+
[k: string]: unknown | undefined;
|
|
7792
|
+
}];
|
|
7793
|
+
// ----- astro/jsx-a11y/aria-activedescendant-has-tabindex -----
|
|
7794
|
+
type AstroJsxA11YAriaActivedescendantHasTabindex = [] | [{
|
|
7795
|
+
[k: string]: unknown | undefined;
|
|
7796
|
+
}];
|
|
7797
|
+
// ----- astro/jsx-a11y/aria-props -----
|
|
7798
|
+
type AstroJsxA11YAriaProps = [] | [{
|
|
7799
|
+
[k: string]: unknown | undefined;
|
|
7800
|
+
}];
|
|
7801
|
+
// ----- astro/jsx-a11y/aria-proptypes -----
|
|
7802
|
+
type AstroJsxA11YAriaProptypes = [] | [{
|
|
7803
|
+
[k: string]: unknown | undefined;
|
|
7804
|
+
}];
|
|
7805
|
+
// ----- astro/jsx-a11y/aria-role -----
|
|
7806
|
+
type AstroJsxA11YAriaRole = [] | [{
|
|
7807
|
+
allowedInvalidRoles?: string[];
|
|
7808
|
+
ignoreNonDOM?: boolean;
|
|
7809
|
+
[k: string]: unknown | undefined;
|
|
7810
|
+
}];
|
|
7811
|
+
// ----- astro/jsx-a11y/aria-unsupported-elements -----
|
|
7812
|
+
type AstroJsxA11YAriaUnsupportedElements = [] | [{
|
|
7813
|
+
[k: string]: unknown | undefined;
|
|
7814
|
+
}];
|
|
7815
|
+
// ----- astro/jsx-a11y/autocomplete-valid -----
|
|
7816
|
+
type AstroJsxA11YAutocompleteValid = [] | [{
|
|
7817
|
+
inputComponents?: string[];
|
|
7818
|
+
[k: string]: unknown | undefined;
|
|
7819
|
+
}];
|
|
7820
|
+
// ----- astro/jsx-a11y/click-events-have-key-events -----
|
|
7821
|
+
type AstroJsxA11YClickEventsHaveKeyEvents = [] | [{
|
|
7822
|
+
[k: string]: unknown | undefined;
|
|
7823
|
+
}];
|
|
7824
|
+
// ----- astro/jsx-a11y/control-has-associated-label -----
|
|
7825
|
+
type AstroJsxA11YControlHasAssociatedLabel = [] | [{
|
|
7826
|
+
labelAttributes?: string[];
|
|
7827
|
+
controlComponents?: string[];
|
|
7828
|
+
ignoreElements?: string[];
|
|
7829
|
+
ignoreRoles?: string[];
|
|
7830
|
+
depth?: number;
|
|
7831
|
+
[k: string]: unknown | undefined;
|
|
7832
|
+
}];
|
|
7833
|
+
// ----- astro/jsx-a11y/heading-has-content -----
|
|
7834
|
+
type AstroJsxA11YHeadingHasContent = [] | [{
|
|
7835
|
+
components?: string[];
|
|
7836
|
+
[k: string]: unknown | undefined;
|
|
7837
|
+
}];
|
|
7838
|
+
// ----- astro/jsx-a11y/html-has-lang -----
|
|
7839
|
+
type AstroJsxA11YHtmlHasLang = [] | [{
|
|
7840
|
+
[k: string]: unknown | undefined;
|
|
7841
|
+
}];
|
|
7842
|
+
// ----- astro/jsx-a11y/iframe-has-title -----
|
|
7843
|
+
type AstroJsxA11YIframeHasTitle = [] | [{
|
|
7844
|
+
[k: string]: unknown | undefined;
|
|
7845
|
+
}];
|
|
7846
|
+
// ----- astro/jsx-a11y/img-redundant-alt -----
|
|
7847
|
+
type AstroJsxA11YImgRedundantAlt = [] | [{
|
|
7848
|
+
components?: string[];
|
|
7849
|
+
words?: string[];
|
|
7850
|
+
[k: string]: unknown | undefined;
|
|
7851
|
+
}];
|
|
7852
|
+
// ----- astro/jsx-a11y/interactive-supports-focus -----
|
|
7853
|
+
type AstroJsxA11YInteractiveSupportsFocus = [] | [{
|
|
7854
|
+
tabbable?: ("button" | "checkbox" | "columnheader" | "combobox" | "grid" | "gridcell" | "link" | "listbox" | "menu" | "menubar" | "menuitem" | "menuitemcheckbox" | "menuitemradio" | "option" | "progressbar" | "radio" | "radiogroup" | "row" | "rowheader" | "scrollbar" | "searchbox" | "slider" | "spinbutton" | "switch" | "tab" | "tablist" | "textbox" | "tree" | "treegrid" | "treeitem" | "doc-backlink" | "doc-biblioref" | "doc-glossref" | "doc-noteref")[];
|
|
7855
|
+
[k: string]: unknown | undefined;
|
|
7856
|
+
}];
|
|
7857
|
+
// ----- astro/jsx-a11y/label-has-associated-control -----
|
|
7858
|
+
type AstroJsxA11YLabelHasAssociatedControl = [] | [{
|
|
7859
|
+
labelComponents?: string[];
|
|
7860
|
+
labelAttributes?: string[];
|
|
7861
|
+
controlComponents?: string[];
|
|
7862
|
+
assert?: ("htmlFor" | "nesting" | "both" | "either");
|
|
7863
|
+
depth?: number;
|
|
7864
|
+
[k: string]: unknown | undefined;
|
|
7865
|
+
}];
|
|
7866
|
+
// ----- astro/jsx-a11y/lang -----
|
|
7867
|
+
type AstroJsxA11YLang = [] | [{
|
|
7868
|
+
[k: string]: unknown | undefined;
|
|
7869
|
+
}];
|
|
7870
|
+
// ----- astro/jsx-a11y/media-has-caption -----
|
|
7871
|
+
type AstroJsxA11YMediaHasCaption = [] | [{
|
|
7872
|
+
audio?: string[];
|
|
7873
|
+
video?: string[];
|
|
7874
|
+
track?: string[];
|
|
7875
|
+
[k: string]: unknown | undefined;
|
|
7876
|
+
}];
|
|
7877
|
+
// ----- astro/jsx-a11y/mouse-events-have-key-events -----
|
|
7878
|
+
type AstroJsxA11YMouseEventsHaveKeyEvents = [] | [{
|
|
7879
|
+
hoverInHandlers?: string[];
|
|
7880
|
+
hoverOutHandlers?: string[];
|
|
7881
|
+
[k: string]: unknown | undefined;
|
|
7882
|
+
}];
|
|
7883
|
+
// ----- astro/jsx-a11y/no-access-key -----
|
|
7884
|
+
type AstroJsxA11YNoAccessKey = [] | [{
|
|
7885
|
+
[k: string]: unknown | undefined;
|
|
7886
|
+
}];
|
|
7887
|
+
// ----- astro/jsx-a11y/no-aria-hidden-on-focusable -----
|
|
7888
|
+
type AstroJsxA11YNoAriaHiddenOnFocusable = [] | [{
|
|
7889
|
+
[k: string]: unknown | undefined;
|
|
7890
|
+
}];
|
|
7891
|
+
// ----- astro/jsx-a11y/no-autofocus -----
|
|
7892
|
+
type AstroJsxA11YNoAutofocus = [] | [{
|
|
7893
|
+
ignoreNonDOM?: boolean;
|
|
7894
|
+
[k: string]: unknown | undefined;
|
|
7895
|
+
}];
|
|
7896
|
+
// ----- astro/jsx-a11y/no-distracting-elements -----
|
|
7897
|
+
type AstroJsxA11YNoDistractingElements = [] | [{
|
|
7898
|
+
elements?: ("marquee" | "blink")[];
|
|
7899
|
+
[k: string]: unknown | undefined;
|
|
7900
|
+
}];
|
|
7901
|
+
// ----- astro/jsx-a11y/no-interactive-element-to-noninteractive-role -----
|
|
7902
|
+
type AstroJsxA11YNoInteractiveElementToNoninteractiveRole = [] | [{
|
|
7903
|
+
[k: string]: string[] | undefined;
|
|
7904
|
+
}];
|
|
7905
|
+
// ----- astro/jsx-a11y/no-noninteractive-element-interactions -----
|
|
7906
|
+
type AstroJsxA11YNoNoninteractiveElementInteractions = [] | [{
|
|
7907
|
+
handlers?: string[];
|
|
7908
|
+
[k: string]: unknown | undefined;
|
|
7909
|
+
}];
|
|
7910
|
+
// ----- astro/jsx-a11y/no-noninteractive-element-to-interactive-role -----
|
|
7911
|
+
type AstroJsxA11YNoNoninteractiveElementToInteractiveRole = [] | [{
|
|
7912
|
+
[k: string]: string[] | undefined;
|
|
7913
|
+
}];
|
|
7914
|
+
// ----- astro/jsx-a11y/no-noninteractive-tabindex -----
|
|
7915
|
+
type AstroJsxA11YNoNoninteractiveTabindex = [] | [{
|
|
7916
|
+
roles?: string[];
|
|
7917
|
+
tags?: string[];
|
|
7918
|
+
[k: string]: unknown | undefined;
|
|
7919
|
+
}];
|
|
7920
|
+
// ----- astro/jsx-a11y/no-redundant-roles -----
|
|
7921
|
+
type AstroJsxA11YNoRedundantRoles = [] | [{
|
|
7922
|
+
[k: string]: string[] | undefined;
|
|
7923
|
+
}];
|
|
7924
|
+
// ----- astro/jsx-a11y/no-static-element-interactions -----
|
|
7925
|
+
type AstroJsxA11YNoStaticElementInteractions = [] | [{
|
|
7926
|
+
handlers?: string[];
|
|
7927
|
+
[k: string]: unknown | undefined;
|
|
7928
|
+
}];
|
|
7929
|
+
// ----- astro/jsx-a11y/prefer-tag-over-role -----
|
|
7930
|
+
type AstroJsxA11YPreferTagOverRole = [] | [{
|
|
7931
|
+
[k: string]: unknown | undefined;
|
|
7932
|
+
}];
|
|
7933
|
+
// ----- astro/jsx-a11y/role-has-required-aria-props -----
|
|
7934
|
+
type AstroJsxA11YRoleHasRequiredAriaProps = [] | [{
|
|
7935
|
+
[k: string]: unknown | undefined;
|
|
7936
|
+
}];
|
|
7937
|
+
// ----- astro/jsx-a11y/role-supports-aria-props -----
|
|
7938
|
+
type AstroJsxA11YRoleSupportsAriaProps = [] | [{
|
|
7939
|
+
[k: string]: unknown | undefined;
|
|
7940
|
+
}];
|
|
7941
|
+
// ----- astro/jsx-a11y/scope -----
|
|
7942
|
+
type AstroJsxA11YScope = [] | [{
|
|
7943
|
+
[k: string]: unknown | undefined;
|
|
7944
|
+
}];
|
|
7945
|
+
// ----- astro/jsx-a11y/tabindex-no-positive -----
|
|
7946
|
+
type AstroJsxA11YTabindexNoPositive = [] | [{
|
|
7947
|
+
[k: string]: unknown | undefined;
|
|
7948
|
+
}];
|
|
7443
7949
|
// ----- astro/prefer-split-class-list -----
|
|
7444
7950
|
type AstroPreferSplitClassList = [] | [{
|
|
7445
7951
|
splitLiteral?: boolean;
|
|
@@ -8760,6 +9266,209 @@ type JsoncSpaceUnaryOps = [] | [{
|
|
|
8760
9266
|
[k: string]: boolean | undefined;
|
|
8761
9267
|
};
|
|
8762
9268
|
}];
|
|
9269
|
+
// ----- jsx-a11y/accessible-emoji -----
|
|
9270
|
+
type JsxA11YAccessibleEmoji = [] | [{
|
|
9271
|
+
[k: string]: unknown | undefined;
|
|
9272
|
+
}];
|
|
9273
|
+
// ----- jsx-a11y/alt-text -----
|
|
9274
|
+
type JsxA11YAltText = [] | [{
|
|
9275
|
+
elements?: string[];
|
|
9276
|
+
img?: string[];
|
|
9277
|
+
object?: string[];
|
|
9278
|
+
area?: string[];
|
|
9279
|
+
"input[type=\"image\"]"?: string[];
|
|
9280
|
+
[k: string]: unknown | undefined;
|
|
9281
|
+
}];
|
|
9282
|
+
// ----- jsx-a11y/anchor-ambiguous-text -----
|
|
9283
|
+
type JsxA11YAnchorAmbiguousText = [] | [{
|
|
9284
|
+
words?: string[];
|
|
9285
|
+
[k: string]: unknown | undefined;
|
|
9286
|
+
}];
|
|
9287
|
+
// ----- jsx-a11y/anchor-has-content -----
|
|
9288
|
+
type JsxA11YAnchorHasContent = [] | [{
|
|
9289
|
+
components?: string[];
|
|
9290
|
+
[k: string]: unknown | undefined;
|
|
9291
|
+
}];
|
|
9292
|
+
// ----- jsx-a11y/anchor-is-valid -----
|
|
9293
|
+
type JsxA11YAnchorIsValid = [] | [{
|
|
9294
|
+
components?: string[];
|
|
9295
|
+
specialLink?: string[];
|
|
9296
|
+
aspects?: [("noHref" | "invalidHref" | "preferButton"), ...(("noHref" | "invalidHref" | "preferButton"))[]];
|
|
9297
|
+
[k: string]: unknown | undefined;
|
|
9298
|
+
}];
|
|
9299
|
+
// ----- jsx-a11y/aria-activedescendant-has-tabindex -----
|
|
9300
|
+
type JsxA11YAriaActivedescendantHasTabindex = [] | [{
|
|
9301
|
+
[k: string]: unknown | undefined;
|
|
9302
|
+
}];
|
|
9303
|
+
// ----- jsx-a11y/aria-props -----
|
|
9304
|
+
type JsxA11YAriaProps = [] | [{
|
|
9305
|
+
[k: string]: unknown | undefined;
|
|
9306
|
+
}];
|
|
9307
|
+
// ----- jsx-a11y/aria-proptypes -----
|
|
9308
|
+
type JsxA11YAriaProptypes = [] | [{
|
|
9309
|
+
[k: string]: unknown | undefined;
|
|
9310
|
+
}];
|
|
9311
|
+
// ----- jsx-a11y/aria-role -----
|
|
9312
|
+
type JsxA11YAriaRole = [] | [{
|
|
9313
|
+
allowedInvalidRoles?: string[];
|
|
9314
|
+
ignoreNonDOM?: boolean;
|
|
9315
|
+
[k: string]: unknown | undefined;
|
|
9316
|
+
}];
|
|
9317
|
+
// ----- jsx-a11y/aria-unsupported-elements -----
|
|
9318
|
+
type JsxA11YAriaUnsupportedElements = [] | [{
|
|
9319
|
+
[k: string]: unknown | undefined;
|
|
9320
|
+
}];
|
|
9321
|
+
// ----- jsx-a11y/autocomplete-valid -----
|
|
9322
|
+
type JsxA11YAutocompleteValid = [] | [{
|
|
9323
|
+
inputComponents?: string[];
|
|
9324
|
+
[k: string]: unknown | undefined;
|
|
9325
|
+
}];
|
|
9326
|
+
// ----- jsx-a11y/click-events-have-key-events -----
|
|
9327
|
+
type JsxA11YClickEventsHaveKeyEvents = [] | [{
|
|
9328
|
+
[k: string]: unknown | undefined;
|
|
9329
|
+
}];
|
|
9330
|
+
// ----- jsx-a11y/control-has-associated-label -----
|
|
9331
|
+
type JsxA11YControlHasAssociatedLabel = [] | [{
|
|
9332
|
+
labelAttributes?: string[];
|
|
9333
|
+
controlComponents?: string[];
|
|
9334
|
+
ignoreElements?: string[];
|
|
9335
|
+
ignoreRoles?: string[];
|
|
9336
|
+
depth?: number;
|
|
9337
|
+
[k: string]: unknown | undefined;
|
|
9338
|
+
}];
|
|
9339
|
+
// ----- jsx-a11y/heading-has-content -----
|
|
9340
|
+
type JsxA11YHeadingHasContent = [] | [{
|
|
9341
|
+
components?: string[];
|
|
9342
|
+
[k: string]: unknown | undefined;
|
|
9343
|
+
}];
|
|
9344
|
+
// ----- jsx-a11y/html-has-lang -----
|
|
9345
|
+
type JsxA11YHtmlHasLang = [] | [{
|
|
9346
|
+
[k: string]: unknown | undefined;
|
|
9347
|
+
}];
|
|
9348
|
+
// ----- jsx-a11y/iframe-has-title -----
|
|
9349
|
+
type JsxA11YIframeHasTitle = [] | [{
|
|
9350
|
+
[k: string]: unknown | undefined;
|
|
9351
|
+
}];
|
|
9352
|
+
// ----- jsx-a11y/img-redundant-alt -----
|
|
9353
|
+
type JsxA11YImgRedundantAlt = [] | [{
|
|
9354
|
+
components?: string[];
|
|
9355
|
+
words?: string[];
|
|
9356
|
+
[k: string]: unknown | undefined;
|
|
9357
|
+
}];
|
|
9358
|
+
// ----- jsx-a11y/interactive-supports-focus -----
|
|
9359
|
+
type JsxA11YInteractiveSupportsFocus = [] | [{
|
|
9360
|
+
tabbable?: ("button" | "checkbox" | "columnheader" | "combobox" | "grid" | "gridcell" | "link" | "listbox" | "menu" | "menubar" | "menuitem" | "menuitemcheckbox" | "menuitemradio" | "option" | "progressbar" | "radio" | "radiogroup" | "row" | "rowheader" | "scrollbar" | "searchbox" | "slider" | "spinbutton" | "switch" | "tab" | "tablist" | "textbox" | "tree" | "treegrid" | "treeitem" | "doc-backlink" | "doc-biblioref" | "doc-glossref" | "doc-noteref")[];
|
|
9361
|
+
[k: string]: unknown | undefined;
|
|
9362
|
+
}];
|
|
9363
|
+
// ----- jsx-a11y/label-has-associated-control -----
|
|
9364
|
+
type JsxA11YLabelHasAssociatedControl = [] | [{
|
|
9365
|
+
labelComponents?: string[];
|
|
9366
|
+
labelAttributes?: string[];
|
|
9367
|
+
controlComponents?: string[];
|
|
9368
|
+
assert?: ("htmlFor" | "nesting" | "both" | "either");
|
|
9369
|
+
depth?: number;
|
|
9370
|
+
[k: string]: unknown | undefined;
|
|
9371
|
+
}];
|
|
9372
|
+
// ----- jsx-a11y/label-has-for -----
|
|
9373
|
+
type JsxA11YLabelHasFor = [] | [{
|
|
9374
|
+
components?: string[];
|
|
9375
|
+
required?: (("nesting" | "id") | {
|
|
9376
|
+
some: ("nesting" | "id")[];
|
|
9377
|
+
[k: string]: unknown | undefined;
|
|
9378
|
+
} | {
|
|
9379
|
+
every: ("nesting" | "id")[];
|
|
9380
|
+
[k: string]: unknown | undefined;
|
|
9381
|
+
});
|
|
9382
|
+
allowChildren?: boolean;
|
|
9383
|
+
[k: string]: unknown | undefined;
|
|
9384
|
+
}];
|
|
9385
|
+
// ----- jsx-a11y/lang -----
|
|
9386
|
+
type JsxA11YLang = [] | [{
|
|
9387
|
+
[k: string]: unknown | undefined;
|
|
9388
|
+
}];
|
|
9389
|
+
// ----- jsx-a11y/media-has-caption -----
|
|
9390
|
+
type JsxA11YMediaHasCaption = [] | [{
|
|
9391
|
+
audio?: string[];
|
|
9392
|
+
video?: string[];
|
|
9393
|
+
track?: string[];
|
|
9394
|
+
[k: string]: unknown | undefined;
|
|
9395
|
+
}];
|
|
9396
|
+
// ----- jsx-a11y/mouse-events-have-key-events -----
|
|
9397
|
+
type JsxA11YMouseEventsHaveKeyEvents = [] | [{
|
|
9398
|
+
hoverInHandlers?: string[];
|
|
9399
|
+
hoverOutHandlers?: string[];
|
|
9400
|
+
[k: string]: unknown | undefined;
|
|
9401
|
+
}];
|
|
9402
|
+
// ----- jsx-a11y/no-access-key -----
|
|
9403
|
+
type JsxA11YNoAccessKey = [] | [{
|
|
9404
|
+
[k: string]: unknown | undefined;
|
|
9405
|
+
}];
|
|
9406
|
+
// ----- jsx-a11y/no-aria-hidden-on-focusable -----
|
|
9407
|
+
type JsxA11YNoAriaHiddenOnFocusable = [] | [{
|
|
9408
|
+
[k: string]: unknown | undefined;
|
|
9409
|
+
}];
|
|
9410
|
+
// ----- jsx-a11y/no-autofocus -----
|
|
9411
|
+
type JsxA11YNoAutofocus = [] | [{
|
|
9412
|
+
ignoreNonDOM?: boolean;
|
|
9413
|
+
[k: string]: unknown | undefined;
|
|
9414
|
+
}];
|
|
9415
|
+
// ----- jsx-a11y/no-distracting-elements -----
|
|
9416
|
+
type JsxA11YNoDistractingElements = [] | [{
|
|
9417
|
+
elements?: ("marquee" | "blink")[];
|
|
9418
|
+
[k: string]: unknown | undefined;
|
|
9419
|
+
}];
|
|
9420
|
+
// ----- jsx-a11y/no-interactive-element-to-noninteractive-role -----
|
|
9421
|
+
type JsxA11YNoInteractiveElementToNoninteractiveRole = [] | [{
|
|
9422
|
+
[k: string]: string[] | undefined;
|
|
9423
|
+
}];
|
|
9424
|
+
// ----- jsx-a11y/no-noninteractive-element-interactions -----
|
|
9425
|
+
type JsxA11YNoNoninteractiveElementInteractions = [] | [{
|
|
9426
|
+
handlers?: string[];
|
|
9427
|
+
[k: string]: unknown | undefined;
|
|
9428
|
+
}];
|
|
9429
|
+
// ----- jsx-a11y/no-noninteractive-element-to-interactive-role -----
|
|
9430
|
+
type JsxA11YNoNoninteractiveElementToInteractiveRole = [] | [{
|
|
9431
|
+
[k: string]: string[] | undefined;
|
|
9432
|
+
}];
|
|
9433
|
+
// ----- jsx-a11y/no-noninteractive-tabindex -----
|
|
9434
|
+
type JsxA11YNoNoninteractiveTabindex = [] | [{
|
|
9435
|
+
roles?: string[];
|
|
9436
|
+
tags?: string[];
|
|
9437
|
+
[k: string]: unknown | undefined;
|
|
9438
|
+
}];
|
|
9439
|
+
// ----- jsx-a11y/no-onchange -----
|
|
9440
|
+
type JsxA11YNoOnchange = [] | [{
|
|
9441
|
+
[k: string]: unknown | undefined;
|
|
9442
|
+
}];
|
|
9443
|
+
// ----- jsx-a11y/no-redundant-roles -----
|
|
9444
|
+
type JsxA11YNoRedundantRoles = [] | [{
|
|
9445
|
+
[k: string]: string[] | undefined;
|
|
9446
|
+
}];
|
|
9447
|
+
// ----- jsx-a11y/no-static-element-interactions -----
|
|
9448
|
+
type JsxA11YNoStaticElementInteractions = [] | [{
|
|
9449
|
+
handlers?: string[];
|
|
9450
|
+
[k: string]: unknown | undefined;
|
|
9451
|
+
}];
|
|
9452
|
+
// ----- jsx-a11y/prefer-tag-over-role -----
|
|
9453
|
+
type JsxA11YPreferTagOverRole = [] | [{
|
|
9454
|
+
[k: string]: unknown | undefined;
|
|
9455
|
+
}];
|
|
9456
|
+
// ----- jsx-a11y/role-has-required-aria-props -----
|
|
9457
|
+
type JsxA11YRoleHasRequiredAriaProps = [] | [{
|
|
9458
|
+
[k: string]: unknown | undefined;
|
|
9459
|
+
}];
|
|
9460
|
+
// ----- jsx-a11y/role-supports-aria-props -----
|
|
9461
|
+
type JsxA11YRoleSupportsAriaProps = [] | [{
|
|
9462
|
+
[k: string]: unknown | undefined;
|
|
9463
|
+
}];
|
|
9464
|
+
// ----- jsx-a11y/scope -----
|
|
9465
|
+
type JsxA11YScope = [] | [{
|
|
9466
|
+
[k: string]: unknown | undefined;
|
|
9467
|
+
}];
|
|
9468
|
+
// ----- jsx-a11y/tabindex-no-positive -----
|
|
9469
|
+
type JsxA11YTabindexNoPositive = [] | [{
|
|
9470
|
+
[k: string]: unknown | undefined;
|
|
9471
|
+
}];
|
|
8763
9472
|
// ----- jsx-quotes -----
|
|
8764
9473
|
type JsxQuotes = [] | [("prefer-single" | "prefer-double")];
|
|
8765
9474
|
// ----- key-spacing -----
|
|
@@ -9147,6 +9856,64 @@ type LinesBetweenClassMembers = [] | [({
|
|
|
9147
9856
|
type LogicalAssignmentOperators = (([] | ["always"] | ["always", {
|
|
9148
9857
|
enforceForIfStatements?: boolean;
|
|
9149
9858
|
}] | ["never"]) & unknown[]);
|
|
9859
|
+
// ----- markdown/fenced-code-language -----
|
|
9860
|
+
type MarkdownFencedCodeLanguage = [] | [{
|
|
9861
|
+
required?: string[];
|
|
9862
|
+
}];
|
|
9863
|
+
// ----- markdown/heading-increment -----
|
|
9864
|
+
type MarkdownHeadingIncrement = [] | [{
|
|
9865
|
+
frontmatterTitle?: string;
|
|
9866
|
+
}];
|
|
9867
|
+
// ----- markdown/no-duplicate-definitions -----
|
|
9868
|
+
type MarkdownNoDuplicateDefinitions = [] | [{
|
|
9869
|
+
allowDefinitions?: string[];
|
|
9870
|
+
allowFootnoteDefinitions?: string[];
|
|
9871
|
+
}];
|
|
9872
|
+
// ----- markdown/no-duplicate-headings -----
|
|
9873
|
+
type MarkdownNoDuplicateHeadings = [] | [{
|
|
9874
|
+
checkSiblingsOnly?: boolean;
|
|
9875
|
+
}];
|
|
9876
|
+
// ----- markdown/no-empty-definitions -----
|
|
9877
|
+
type MarkdownNoEmptyDefinitions = [] | [{
|
|
9878
|
+
allowDefinitions?: string[];
|
|
9879
|
+
allowFootnoteDefinitions?: string[];
|
|
9880
|
+
checkFootnoteDefinitions?: boolean;
|
|
9881
|
+
}];
|
|
9882
|
+
// ----- markdown/no-html -----
|
|
9883
|
+
type MarkdownNoHtml = [] | [{
|
|
9884
|
+
allowed?: string[];
|
|
9885
|
+
allowedIgnoreCase?: boolean;
|
|
9886
|
+
}];
|
|
9887
|
+
// ----- markdown/no-missing-atx-heading-space -----
|
|
9888
|
+
type MarkdownNoMissingAtxHeadingSpace = [] | [{
|
|
9889
|
+
checkClosedHeadings?: boolean;
|
|
9890
|
+
}];
|
|
9891
|
+
// ----- markdown/no-missing-label-refs -----
|
|
9892
|
+
type MarkdownNoMissingLabelRefs = [] | [{
|
|
9893
|
+
allowLabels?: string[];
|
|
9894
|
+
}];
|
|
9895
|
+
// ----- markdown/no-missing-link-fragments -----
|
|
9896
|
+
type MarkdownNoMissingLinkFragments = [] | [{
|
|
9897
|
+
ignoreCase?: boolean;
|
|
9898
|
+
allowPattern?: string;
|
|
9899
|
+
}];
|
|
9900
|
+
// ----- markdown/no-multiple-h1 -----
|
|
9901
|
+
type MarkdownNoMultipleH1 = [] | [{
|
|
9902
|
+
frontmatterTitle?: string;
|
|
9903
|
+
}];
|
|
9904
|
+
// ----- markdown/no-space-in-emphasis -----
|
|
9905
|
+
type MarkdownNoSpaceInEmphasis = [] | [{
|
|
9906
|
+
checkStrikethrough?: boolean;
|
|
9907
|
+
}];
|
|
9908
|
+
// ----- markdown/no-unused-definitions -----
|
|
9909
|
+
type MarkdownNoUnusedDefinitions = [] | [{
|
|
9910
|
+
allowDefinitions?: string[];
|
|
9911
|
+
allowFootnoteDefinitions?: string[];
|
|
9912
|
+
}];
|
|
9913
|
+
// ----- markdown/table-column-count -----
|
|
9914
|
+
type MarkdownTableColumnCount = [] | [{
|
|
9915
|
+
checkMissingCells?: boolean;
|
|
9916
|
+
}];
|
|
9150
9917
|
// ----- max-classes-per-file -----
|
|
9151
9918
|
type MaxClassesPerFile = [] | [(number | {
|
|
9152
9919
|
ignoreExpressions?: boolean;
|
|
@@ -11775,6 +12542,7 @@ type PnpmJsonValidCatalog = [] | [{
|
|
|
11775
12542
|
// ----- pnpm/yaml-no-duplicate-catalog-item -----
|
|
11776
12543
|
type PnpmYamlNoDuplicateCatalogItem = [] | [{
|
|
11777
12544
|
allow?: string[];
|
|
12545
|
+
checkDuplicates?: ("name-only" | "exact-version");
|
|
11778
12546
|
}];
|
|
11779
12547
|
// ----- prefer-arrow-callback -----
|
|
11780
12548
|
type PreferArrowCallback = [] | [{
|
|
@@ -12321,6 +13089,50 @@ type StylisticCurlyNewline = [] | [(("always" | "never") | {
|
|
|
12321
13089
|
type StylisticDotLocation = [] | [("object" | "property")];
|
|
12322
13090
|
// ----- stylistic/eol-last -----
|
|
12323
13091
|
type StylisticEolLast = [] | [("always" | "never" | "unix" | "windows")];
|
|
13092
|
+
// ----- stylistic/exp-list-style -----
|
|
13093
|
+
type StylisticExpListStyle = [] | [{
|
|
13094
|
+
singleLine?: _StylisticExpListStyle_SingleLineConfig;
|
|
13095
|
+
multiLine?: _StylisticExpListStyle_MultiLineConfig;
|
|
13096
|
+
overrides?: {
|
|
13097
|
+
"[]"?: _StylisticExpListStyle_BaseConfig;
|
|
13098
|
+
"{}"?: _StylisticExpListStyle_BaseConfig;
|
|
13099
|
+
"<>"?: _StylisticExpListStyle_BaseConfig;
|
|
13100
|
+
"()"?: _StylisticExpListStyle_BaseConfig;
|
|
13101
|
+
ArrayExpression?: _StylisticExpListStyle_BaseConfig;
|
|
13102
|
+
ArrayPattern?: _StylisticExpListStyle_BaseConfig;
|
|
13103
|
+
ArrowFunctionExpression?: _StylisticExpListStyle_BaseConfig;
|
|
13104
|
+
CallExpression?: _StylisticExpListStyle_BaseConfig;
|
|
13105
|
+
ExportNamedDeclaration?: _StylisticExpListStyle_BaseConfig;
|
|
13106
|
+
FunctionDeclaration?: _StylisticExpListStyle_BaseConfig;
|
|
13107
|
+
FunctionExpression?: _StylisticExpListStyle_BaseConfig;
|
|
13108
|
+
ImportDeclaration?: _StylisticExpListStyle_BaseConfig;
|
|
13109
|
+
ImportAttributes?: _StylisticExpListStyle_BaseConfig;
|
|
13110
|
+
NewExpression?: _StylisticExpListStyle_BaseConfig;
|
|
13111
|
+
ObjectExpression?: _StylisticExpListStyle_BaseConfig;
|
|
13112
|
+
ObjectPattern?: _StylisticExpListStyle_BaseConfig;
|
|
13113
|
+
TSDeclareFunction?: _StylisticExpListStyle_BaseConfig;
|
|
13114
|
+
TSFunctionType?: _StylisticExpListStyle_BaseConfig;
|
|
13115
|
+
TSInterfaceBody?: _StylisticExpListStyle_BaseConfig;
|
|
13116
|
+
TSEnumBody?: _StylisticExpListStyle_BaseConfig;
|
|
13117
|
+
TSTupleType?: _StylisticExpListStyle_BaseConfig;
|
|
13118
|
+
TSTypeLiteral?: _StylisticExpListStyle_BaseConfig;
|
|
13119
|
+
TSTypeParameterDeclaration?: _StylisticExpListStyle_BaseConfig;
|
|
13120
|
+
TSTypeParameterInstantiation?: _StylisticExpListStyle_BaseConfig;
|
|
13121
|
+
JSONArrayExpression?: _StylisticExpListStyle_BaseConfig;
|
|
13122
|
+
JSONObjectExpression?: _StylisticExpListStyle_BaseConfig;
|
|
13123
|
+
};
|
|
13124
|
+
}];
|
|
13125
|
+
interface _StylisticExpListStyle_SingleLineConfig {
|
|
13126
|
+
spacing?: ("always" | "never");
|
|
13127
|
+
maxItems?: number;
|
|
13128
|
+
}
|
|
13129
|
+
interface _StylisticExpListStyle_MultiLineConfig {
|
|
13130
|
+
minItems?: number;
|
|
13131
|
+
}
|
|
13132
|
+
interface _StylisticExpListStyle_BaseConfig {
|
|
13133
|
+
singleLine?: _StylisticExpListStyle_SingleLineConfig;
|
|
13134
|
+
multiline?: _StylisticExpListStyle_MultiLineConfig;
|
|
13135
|
+
}
|
|
12324
13136
|
// ----- stylistic/function-call-argument-newline -----
|
|
12325
13137
|
type StylisticFunctionCallArgumentNewline = [] | [("always" | "never" | "consistent")];
|
|
12326
13138
|
// ----- stylistic/function-call-spacing -----
|
|
@@ -12390,7 +13202,11 @@ type StylisticIndent = [] | [("tab" | number)] | [("tab" | number), {
|
|
|
12390
13202
|
ObjectExpression?: (number | ("first" | "off"));
|
|
12391
13203
|
ImportDeclaration?: (number | ("first" | "off"));
|
|
12392
13204
|
flatTernaryExpressions?: boolean;
|
|
12393
|
-
offsetTernaryExpressions?: boolean
|
|
13205
|
+
offsetTernaryExpressions?: (boolean | {
|
|
13206
|
+
CallExpression?: boolean;
|
|
13207
|
+
AwaitExpression?: boolean;
|
|
13208
|
+
NewExpression?: boolean;
|
|
13209
|
+
});
|
|
12394
13210
|
offsetTernaryExpressionsOffsetCallExpressions?: boolean;
|
|
12395
13211
|
ignoredNodes?: string[];
|
|
12396
13212
|
ignoreComments?: boolean;
|
|
@@ -13191,6 +14007,7 @@ type StylisticObjectCurlySpacing = [] | [("always" | "never")] | [("always" | "n
|
|
|
13191
14007
|
TSInterfaceBody?: ("always" | "never");
|
|
13192
14008
|
TSEnumBody?: ("always" | "never");
|
|
13193
14009
|
};
|
|
14010
|
+
emptyObjects?: ("ignore" | "always" | "never");
|
|
13194
14011
|
}];
|
|
13195
14012
|
// ----- stylistic/object-property-newline -----
|
|
13196
14013
|
type StylisticObjectPropertyNewline = [] | [{
|
|
@@ -16612,7 +17429,7 @@ type Yoda = [] | [("always" | "never")] | [("always" | "never"), {
|
|
|
16612
17429
|
}];
|
|
16613
17430
|
|
|
16614
17431
|
// Names of all the configs
|
|
16615
|
-
type ConfigNames = "zayne/js-eslint/setup" | "zayne/js-eslint/recommended" | "zayne/js-eslint/rules" | "zayne/unicorn/recommended" | "zayne/unicorn/rules" | "zayne/ts-eslint/setup" | "zayne/ts-eslint/
|
|
17432
|
+
type ConfigNames = "zayne/js-eslint/setup" | "zayne/js-eslint/recommended" | "zayne/js-eslint/rules" | "zayne/unicorn/recommended" | "zayne/unicorn/rules" | "zayne/ts-eslint/setup" | "zayne/ts-eslint/parser" | "zayne/ts-eslint/parser-type-aware" | "zayne/ts-eslint/recommended-strict-type-checked" | "zayne/ts-eslint/rules-type-checked" | "zayne/ts-eslint/recommended-stylistic-type-checked" | "zayne/typescript/erasable-syntax-only/recommended" | "zayne/perfectionist/rules" | "zayne/stylistic/rules" | "zayne/import/setup" | "zayne/import/recommended" | "zayne/import/rules" | "zayne/jsdoc/rules" | "zayne/jsonc/setup" | "zayne/jsonc/parser" | "zayne/jsonc/rules" | "zayne/react/setup" | "zayne/react/official/rules" | "zayne/react/unofficial/strict-type-checked" | "zayne/react/unofficial/rules" | "zayne/react/official/compiler/rules" | "zayne/react/refresh/rules" | "zayne/react/you-might-not-need-an-effect/recommended" | "zayne/react/you-might-not-need-an-effect/rules" | "zayne/react/nextjs/recommended" | "zayne/react/nextjs/rules" | "zayne/node/recommended" | "zayne/node/rules" | "zayne/node/security/recommended" | "zayne/tanstack-query/recommended" | "zayne/tanstack-query/rules" | "zayne/tanstack-router/recommended" | "zayne/tanstack-router/rules" | "zayne/eslint-comments/rules" | "zayne/toml/setup" | "zayne/toml/parser" | "zayne/toml/rules" | "zayne/yaml/setup" | "zayne/yaml/parser" | "zayne/yaml/rules" | "zayne/yaml/disables" | "zayne/vue/setup" | "zayne/vue/parser" | "zayne/vue/recommended" | "zayne/vue/rules" | "zayne/vue/disables" | "zayne/solid/setup" | "zayne/solid/recommended" | "zayne/solid/rules" | "zayne/pnpm/setup" | "zayne/pnpm/package-json/rules" | "zayne/pnpm/pnpm-workspace-yaml/rules" | "zayne/astro/setup" | "zayne/astro/parser" | "zayne/astro/recommended" | "zayne/astro/rules" | "zayne/depend/setup" | "zayne/depend/recommended" | "zayne/depend/recommended/package-json" | "zayne/tailwindcss-better/setup" | "zayne/tailwindcss-better/recommended" | "zayne/tailwindcss-better/rules" | "zayne/expo/recommended" | "zayne/expo/recommended" | "zayne/expo/rules" | "zayne/jsx/setup" | "zayne/jsx/a11y/setup" | "zayne/jsx/a11y/recommended" | "zayne/jsx/a11y/rules" | "zayne/markdown/setup" | "zayne/markdown/parser" | "zayne/markdown/processor" | "zayne/markdown/recommended" | "zayne/markdown/rules" | "zayne/markdown/disables";
|
|
16616
17433
|
//#endregion
|
|
16617
17434
|
//#region src/types/eslint-config-types/parser-options.d.ts
|
|
16618
17435
|
// Some types copied from `@types/eslint` `Linter.ParserOptions`
|
|
@@ -16779,7 +17596,7 @@ interface LinterOptions extends Linter.LinterOptions {
|
|
|
16779
17596
|
*
|
|
16780
17597
|
* @see [Configuration Files (New)](https://eslint.org/docs/latest/user-guide/configuring/configuration-files-new)
|
|
16781
17598
|
*/
|
|
16782
|
-
interface FlatESLintConfigItem
|
|
17599
|
+
interface FlatESLintConfigItem extends Linter.Config<Partial<Linter.RulesRecord>> {
|
|
16783
17600
|
/**
|
|
16784
17601
|
* An array of glob patterns indicating the files that the configuration object should apply to. If not specified, the configuration object applies to all files.
|
|
16785
17602
|
*
|
|
@@ -16825,7 +17642,7 @@ interface FlatESLintConfigItem<TRules extends Linter.Config["rules"] = Linter.Co
|
|
|
16825
17642
|
*
|
|
16826
17643
|
* @see [Configuring rules](https://eslint.org/docs/latest/user-guide/configuring/configuration-files-new#configuring-rules)
|
|
16827
17644
|
*/
|
|
16828
|
-
rules?:
|
|
17645
|
+
rules?: Record<string, Linter.RuleEntry<any> | undefined>;
|
|
16829
17646
|
|
|
16830
17647
|
/**
|
|
16831
17648
|
* An object containing name-value pairs of information that should be available to all rules.
|
|
@@ -16838,8 +17655,14 @@ interface FlatESLintConfigItem<TRules extends Linter.Config["rules"] = Linter.Co
|
|
|
16838
17655
|
//#endregion
|
|
16839
17656
|
//#region src/types/interfaces.d.ts
|
|
16840
17657
|
type TypedRules = Omit<Rules, "vue/multiline-ternary">;
|
|
16841
|
-
|
|
17658
|
+
/**
|
|
17659
|
+
* An updated version of ESLint's `Linter.Config`, which provides autocompletion
|
|
17660
|
+
* for `rules` and relaxes type limitations for `plugins`, because
|
|
17661
|
+
* many plugins still lack proper type definitions.
|
|
17662
|
+
*/
|
|
17663
|
+
interface TypedFlatConfigItem extends FlatESLintConfigItem {
|
|
16842
17664
|
plugins?: Record<string, any>;
|
|
17665
|
+
rules?: Record<string, Linter.RuleEntry | undefined> & TypedRules;
|
|
16843
17666
|
}
|
|
16844
17667
|
interface OptionsOverrides {
|
|
16845
17668
|
overrides?: TypedFlatConfigItem["rules"];
|
|
@@ -16880,6 +17703,8 @@ interface OptionsComponentExts {
|
|
|
16880
17703
|
* @default []
|
|
16881
17704
|
*/
|
|
16882
17705
|
componentExts?: string[];
|
|
17706
|
+
}
|
|
17707
|
+
interface OptionsComponentExtsTypeAware {
|
|
16883
17708
|
/**
|
|
16884
17709
|
* Additional extensions for components that should be type aware.
|
|
16885
17710
|
* @example ['vue']
|
|
@@ -16922,7 +17747,16 @@ interface OptionsTypeScriptWithTypes {
|
|
|
16922
17747
|
*/
|
|
16923
17748
|
tsconfigPath?: true | string | string[] | null;
|
|
16924
17749
|
}
|
|
16925
|
-
|
|
17750
|
+
interface OptionsTypeScriptErasableOnly {
|
|
17751
|
+
/**
|
|
17752
|
+
* Enable erasable syntax only rules.
|
|
17753
|
+
*
|
|
17754
|
+
* @see https://github.com/JoshuaKGoldberg/eslint-plugin-erasable-syntax-only
|
|
17755
|
+
* @default false
|
|
17756
|
+
*/
|
|
17757
|
+
erasableOnly?: boolean;
|
|
17758
|
+
}
|
|
17759
|
+
type OptionsTypescript = (OptionsComponentExts & OptionsComponentExtsTypeAware & OptionsTypeScriptErasableOnly) & (OptionsTypeScriptParserOptions | OptionsTypeScriptWithTypes);
|
|
16926
17760
|
interface OptionsHasTypeScript {
|
|
16927
17761
|
/**
|
|
16928
17762
|
* Enable typescript rules
|
|
@@ -16940,6 +17774,9 @@ interface OptionsReact {
|
|
|
16940
17774
|
compiler?: boolean | OptionsOverrides;
|
|
16941
17775
|
/**
|
|
16942
17776
|
* Enable nextjs rules.
|
|
17777
|
+
*
|
|
17778
|
+
* Requires installing:
|
|
17779
|
+
* - `@next/eslint-plugin-next`
|
|
16943
17780
|
* @default auto-detect-from-dependencies
|
|
16944
17781
|
*/
|
|
16945
17782
|
nextjs?: boolean | OptionsOverrides;
|
|
@@ -16959,6 +17796,17 @@ interface OptionsReact {
|
|
|
16959
17796
|
*/
|
|
16960
17797
|
youMightNotNeedAnEffect?: boolean | OptionsOverrides;
|
|
16961
17798
|
}
|
|
17799
|
+
interface OptionsJSX {
|
|
17800
|
+
/**
|
|
17801
|
+
* Enable JSX accessibility rules.
|
|
17802
|
+
*
|
|
17803
|
+
* Requires installing:
|
|
17804
|
+
* - `eslint-plugin-jsx-a11y`
|
|
17805
|
+
*
|
|
17806
|
+
* @default false
|
|
17807
|
+
*/
|
|
17808
|
+
a11y?: boolean | OptionsOverrides;
|
|
17809
|
+
}
|
|
16962
17810
|
interface OptionsStylistic {
|
|
16963
17811
|
indent?: number;
|
|
16964
17812
|
quotes?: "backtick" | "double" | "single";
|
|
@@ -16971,11 +17819,17 @@ interface OptionsStylistic {
|
|
|
16971
17819
|
interface OptionsTanstack {
|
|
16972
17820
|
/**
|
|
16973
17821
|
* Enable tanstack query linting
|
|
17822
|
+
*
|
|
17823
|
+
* Requires installing:
|
|
17824
|
+
* - `@tanstack/eslint-plugin-query`
|
|
16974
17825
|
* @default false
|
|
16975
17826
|
*/
|
|
16976
17827
|
query?: boolean | OptionsOverrides;
|
|
16977
17828
|
/**
|
|
16978
17829
|
* Enable tanstack router linting
|
|
17830
|
+
*
|
|
17831
|
+
* Requires installing:
|
|
17832
|
+
* - `@tanstack/eslint-plugin-router`
|
|
16979
17833
|
* @default false
|
|
16980
17834
|
*/
|
|
16981
17835
|
router?: boolean | OptionsOverrides;
|
|
@@ -17033,7 +17887,7 @@ interface OptionsNode {
|
|
|
17033
17887
|
*/
|
|
17034
17888
|
security?: boolean | OptionsOverrides;
|
|
17035
17889
|
}
|
|
17036
|
-
interface OptionsConfig extends OptionsComponentExts {
|
|
17890
|
+
interface OptionsConfig extends OptionsComponentExts, OptionsComponentExtsTypeAware {
|
|
17037
17891
|
/**
|
|
17038
17892
|
* Enable ASTRO support.
|
|
17039
17893
|
*
|
|
@@ -17102,16 +17956,17 @@ interface OptionsConfig extends OptionsComponentExts {
|
|
|
17102
17956
|
/**
|
|
17103
17957
|
* Enable JSX related rules.
|
|
17104
17958
|
*
|
|
17105
|
-
*
|
|
17959
|
+
* Pass in an object to enable JSX accessibility rules.
|
|
17960
|
+
*
|
|
17106
17961
|
* @default true
|
|
17107
17962
|
*/
|
|
17108
|
-
jsx?: boolean;
|
|
17963
|
+
jsx?: (OptionsJSX & OptionsOverrides) | boolean;
|
|
17109
17964
|
/**
|
|
17110
17965
|
* Enable linting for **code snippets** in Markdown.
|
|
17111
17966
|
*
|
|
17112
17967
|
* @default true
|
|
17113
17968
|
*/
|
|
17114
|
-
markdown?:
|
|
17969
|
+
markdown?: (OptionsComponentExts & OptionsFiles & OptionsOverrides) | boolean;
|
|
17115
17970
|
/**
|
|
17116
17971
|
* Enable linting for node.
|
|
17117
17972
|
*
|
|
@@ -17199,8 +18054,9 @@ interface OptionsConfig extends OptionsComponentExts {
|
|
|
17199
18054
|
/**
|
|
17200
18055
|
* Enable TanStack Query support.
|
|
17201
18056
|
*
|
|
17202
|
-
*
|
|
18057
|
+
* May require installing the following:
|
|
17203
18058
|
* - `@tanstack/eslint-plugin-query`
|
|
18059
|
+
* - `@tanstack/eslint-plugin-router`
|
|
17204
18060
|
* @default false
|
|
17205
18061
|
*/
|
|
17206
18062
|
tanstack?: (OptionsOverrides & OptionsTanstack) | boolean;
|
|
@@ -17220,7 +18076,7 @@ interface OptionsConfig extends OptionsComponentExts {
|
|
|
17220
18076
|
* Pass `true` or an options object with a `tsconfigPath` property to enable type aware rules.
|
|
17221
18077
|
* @default auto-detect based on the dependencies
|
|
17222
18078
|
*/
|
|
17223
|
-
typescript?: (OptionsFiles & OptionsOverrides &
|
|
18079
|
+
typescript?: (OptionsFiles & OptionsOverrides & OptionsTypescript & Pick<OptionsStylistic, "stylistic">) | boolean;
|
|
17224
18080
|
/**
|
|
17225
18081
|
* Options for eslint-plugin-unicorn.
|
|
17226
18082
|
* @default true
|
|
@@ -17252,7 +18108,7 @@ interface OptionsConfig extends OptionsComponentExts {
|
|
|
17252
18108
|
//#region src/types/utils.d.ts
|
|
17253
18109
|
type Awaitable<T> = Promise<T> | T;
|
|
17254
18110
|
type ExtractOptions<TUnion> = Extract<TUnion, object>;
|
|
17255
|
-
type Prettify<TObject> = NonNullable<unknown> & { [Key in keyof TObject]: TObject[Key] };
|
|
18111
|
+
type Prettify<TObject$1> = NonNullable<unknown> & { [Key in keyof TObject$1]: TObject$1[Key] };
|
|
17256
18112
|
//#endregion
|
|
17257
18113
|
//#region src/configs/astro.d.ts
|
|
17258
18114
|
declare const astro: (options?: ExtractOptions<OptionsConfig["astro"]>) => Promise<TypedFlatConfigItem[]>;
|
|
@@ -17282,6 +18138,12 @@ declare const jsdoc: (options?: ExtractOptions<OptionsConfig["jsdoc"]>) => Promi
|
|
|
17282
18138
|
//#region src/configs/jsonc.d.ts
|
|
17283
18139
|
declare const jsonc: (options?: ExtractOptions<OptionsConfig["jsonc"]>) => Promise<TypedFlatConfigItem[]>;
|
|
17284
18140
|
//#endregion
|
|
18141
|
+
//#region src/configs/jsx.d.ts
|
|
18142
|
+
declare const jsx: (options?: ExtractOptions<OptionsConfig["jsx"]>) => Promise<TypedFlatConfigItem[]>;
|
|
18143
|
+
//#endregion
|
|
18144
|
+
//#region src/configs/markdown.d.ts
|
|
18145
|
+
declare const markdown: (options?: ExtractOptions<OptionsConfig["markdown"]>) => Promise<TypedFlatConfigItem[]>;
|
|
18146
|
+
//#endregion
|
|
17285
18147
|
//#region src/configs/node.d.ts
|
|
17286
18148
|
declare const node: (options?: ExtractOptions<OptionsConfig["node"]>) => Promise<TypedFlatConfigItem[]>;
|
|
17287
18149
|
//#endregion
|
|
@@ -17397,6 +18259,7 @@ declare const GLOB_ASTRO = "**/*.astro";
|
|
|
17397
18259
|
declare const GLOB_ASTRO_TS = "**/*.astro/*.ts";
|
|
17398
18260
|
declare const GLOB_GRAPHQL = "**/*.{g,graph}ql";
|
|
17399
18261
|
declare const GLOB_MARKDOWN_CODE = "**/*.md/**/*.?([cm])[jt]s?(x)";
|
|
18262
|
+
declare const GLOB_MARKDOWN_JSON = "**/*.md/**/*.json?({c,5})";
|
|
17400
18263
|
declare const GLOB_TESTS: ["**/__tests__/**/*.?([cm])[jt]s?(x)", "**/*.spec.?([cm])[jt]s?(x)", "**/*.test.?([cm])[jt]s?(x)", "**/*.bench.?([cm])[jt]s?(x)", "**/*.benchmark.?([cm])[jt]s?(x)"] & {
|
|
17401
18264
|
$inferUnion: "**/__tests__/**/*.?([cm])[jt]s?(x)" | "**/*.spec.?([cm])[jt]s?(x)" | "**/*.test.?([cm])[jt]s?(x)" | "**/*.bench.?([cm])[jt]s?(x)" | "**/*.benchmark.?([cm])[jt]s?(x)";
|
|
17402
18265
|
};
|
|
@@ -17513,6 +18376,31 @@ declare const isPackageInScope: (name: string) => boolean;
|
|
|
17513
18376
|
*/
|
|
17514
18377
|
declare const ensurePackages: (packages: Array<string | undefined>) => Promise<void>;
|
|
17515
18378
|
declare const resolveOptions: <TObject>(option: boolean | TObject | undefined) => TObject;
|
|
18379
|
+
declare const parserPlain: {
|
|
18380
|
+
meta: {
|
|
18381
|
+
name: string;
|
|
18382
|
+
};
|
|
18383
|
+
parseForESLint: (code: string) => {
|
|
18384
|
+
ast: {
|
|
18385
|
+
body: never[];
|
|
18386
|
+
comments: never[];
|
|
18387
|
+
loc: {
|
|
18388
|
+
end: number;
|
|
18389
|
+
start: number;
|
|
18390
|
+
};
|
|
18391
|
+
range: number[];
|
|
18392
|
+
tokens: never[];
|
|
18393
|
+
type: string;
|
|
18394
|
+
};
|
|
18395
|
+
scopeManager: null;
|
|
18396
|
+
services: {
|
|
18397
|
+
isPlain: boolean;
|
|
18398
|
+
};
|
|
18399
|
+
visitorKeys: {
|
|
18400
|
+
Program: never[];
|
|
18401
|
+
};
|
|
18402
|
+
};
|
|
18403
|
+
};
|
|
17516
18404
|
//#endregion
|
|
17517
|
-
export { Awaitable, type ConfigNames, ExtractOptions, GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLES, GLOB_SVELTE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, OptionsAppType, OptionsComponentExts, OptionsConfig, OptionsFiles, OptionsHasJsx, OptionsHasTypeScript, OptionsNode, OptionsOverrides, OptionsReact, OptionsRegExp, OptionsStylistic, OptionsTailwindCSS, OptionsTailwindCSSBetter, OptionsTanstack, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsVue, Prettify, type Rules, TypedFlatConfigItem, allowedNextJsExportNames, allowedReactRouterExportNames, astro, combine, comments, defaultPluginRenameMap, depend, ensurePackages, expo, gitIgnores, ignores, imports, interopDefault, isObject, isPackageInScope, javascript, jsdoc, jsonc, node, overrideConfigs, perfectionist, pnpm, react, renamePluginInConfigs, renamePlugins, renameRules, resolveOptions, solid, sortPackageJson, sortTsconfig, stylistic, tailwindcssBetter, tanstack, toml, typescript, unicorn, vue, yaml, zayne };
|
|
18405
|
+
export { Awaitable, type ConfigNames, ExtractOptions, GLOB_ALL_SRC, GLOB_ASTRO, GLOB_ASTRO_TS, GLOB_CSS, GLOB_EXCLUDE, GLOB_GRAPHQL, GLOB_HTML, GLOB_JS, GLOB_JSON, GLOB_JSON5, GLOB_JSONC, GLOB_JSX, GLOB_LESS, GLOB_MARKDOWN, GLOB_MARKDOWN_CODE, GLOB_MARKDOWN_IN_MARKDOWN, GLOB_MARKDOWN_JSON, GLOB_POSTCSS, GLOB_SCSS, GLOB_SRC, GLOB_SRC_EXT, GLOB_STYLES, GLOB_SVELTE, GLOB_SVG, GLOB_TESTS, GLOB_TOML, GLOB_TS, GLOB_TSX, GLOB_VUE, GLOB_XML, GLOB_YAML, OptionsAppType, OptionsComponentExts, OptionsComponentExtsTypeAware, OptionsConfig, OptionsFiles, OptionsHasJsx, OptionsHasTypeScript, OptionsJSX, OptionsNode, OptionsOverrides, OptionsReact, OptionsRegExp, OptionsStylistic, OptionsTailwindCSS, OptionsTailwindCSSBetter, OptionsTanstack, OptionsTypeScriptErasableOnly, OptionsTypeScriptParserOptions, OptionsTypeScriptWithTypes, OptionsTypescript, OptionsVue, Prettify, type Rules, TypedFlatConfigItem, allowedNextJsExportNames, allowedReactRouterExportNames, astro, combine, comments, defaultPluginRenameMap, depend, ensurePackages, expo, gitIgnores, ignores, imports, interopDefault, isObject, isPackageInScope, javascript, jsdoc, jsonc, jsx, markdown, node, overrideConfigs, parserPlain, perfectionist, pnpm, react, renamePluginInConfigs, renamePlugins, renameRules, resolveOptions, solid, sortPackageJson, sortTsconfig, stylistic, tailwindcssBetter, tanstack, toml, typescript, unicorn, vue, yaml, zayne };
|
|
17518
18406
|
//# sourceMappingURL=index.d.ts.map
|