@flint.fyi/ts 0.23.1 → 0.23.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.mts +301 -1202
- package/dist/index.mjs +193 -238
- package/package.json +11 -10
package/dist/index.d.mts
CHANGED
|
@@ -1,1052 +1,617 @@
|
|
|
1
1
|
//#region src/plugin.d.ts
|
|
2
|
-
declare const ts: import("@flint.fyi/core").Plugin<import("@flint.fyi/core").RuleAbout<string>, "javascript" | "all" | "typescript", [import("@flint.fyi/core").Rule<{
|
|
2
|
+
export declare const ts: import("@flint.fyi/core").Plugin<import("@flint.fyi/core").RuleAbout<string>, "javascript" | "all" | "typescript", [import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
3
3
|
readonly description: "Reports getter and setter accessors for the same property that are not adjacent.";
|
|
4
4
|
readonly id: "accessorPairGroups";
|
|
5
5
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
6
|
-
} & {
|
|
7
|
-
readonly pluginId: string;
|
|
8
|
-
readonly url: string;
|
|
9
|
-
}, "notGrouped", undefined>, import("@flint.fyi/core").Rule<{
|
|
6
|
+
}, "notGrouped", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
10
7
|
readonly description: "Reports mismatched types between getter and setter accessor pairs.";
|
|
11
8
|
readonly id: "accessorPairTypes";
|
|
12
9
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
13
|
-
} & {
|
|
14
|
-
readonly pluginId: string;
|
|
15
|
-
readonly url: string;
|
|
16
|
-
}, "mismatchedTypes", undefined>, import("@flint.fyi/core").Rule<{
|
|
10
|
+
}, "mismatchedTypes", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
17
11
|
readonly description: "Reports recursive access to this within getters and setters.";
|
|
18
12
|
readonly id: "accessorThisRecursion";
|
|
19
13
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
20
|
-
} & {
|
|
21
|
-
readonly pluginId: string;
|
|
22
|
-
readonly url: string;
|
|
23
|
-
}, "noGetterRecursion" | "noSetterRecursion", undefined>, import("@flint.fyi/core").Rule<{
|
|
14
|
+
}, "noGetterRecursion" | "noSetterRecursion", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
24
15
|
readonly description: "Reports calling a function with a value typed as `any` as an argument.";
|
|
25
16
|
readonly id: "anyArguments";
|
|
26
17
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
27
|
-
} & {
|
|
28
|
-
readonly pluginId: string;
|
|
29
|
-
readonly url: string;
|
|
30
|
-
}, "unsafeArgument" | "unsafeSpread" | "unsafeTupleSpread", undefined>, import("@flint.fyi/core").Rule<{
|
|
18
|
+
}, "unsafeArgument" | "unsafeSpread" | "unsafeTupleSpread", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
31
19
|
readonly description: "Reports assigning a value with type `any` to variables and properties.";
|
|
32
20
|
readonly id: "anyAssignments";
|
|
33
21
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
34
|
-
} & {
|
|
35
|
-
readonly pluginId: string;
|
|
36
|
-
readonly url: string;
|
|
37
|
-
}, "unsafeArrayDestructure" | "unsafeArrayPatternFromTuple" | "unsafeArraySpread" | "unsafeAssignment" | "unsafeAssignmentToVariable" | "unsafeObjectPattern", undefined>, import("@flint.fyi/core").Rule<{
|
|
22
|
+
}, "unsafeArrayDestructure" | "unsafeArrayPatternFromTuple" | "unsafeArraySpread" | "unsafeAssignment" | "unsafeAssignmentToVariable" | "unsafeObjectPattern", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
38
23
|
readonly description: "Reports calling a value with type `any`.";
|
|
39
24
|
readonly id: "anyCalls";
|
|
40
25
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
41
|
-
} & {
|
|
42
|
-
readonly pluginId: string;
|
|
43
|
-
readonly url: string;
|
|
44
|
-
}, "unsafeCall" | "unsafeNew" | "unsafeTemplateTag", undefined>, import("@flint.fyi/core").Rule<{
|
|
26
|
+
}, "unsafeCall" | "unsafeNew" | "unsafeTemplateTag", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
45
27
|
readonly description: "Reports member access on a value with type `any`.";
|
|
46
28
|
readonly id: "anyMemberAccess";
|
|
47
29
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
48
|
-
} & {
|
|
49
|
-
readonly pluginId: string;
|
|
50
|
-
readonly url: string;
|
|
51
|
-
}, "unsafeComputedMemberAccess" | "unsafeMemberAccess", undefined>, import("@flint.fyi/core").Rule<{
|
|
30
|
+
}, "unsafeComputedMemberAccess" | "unsafeMemberAccess", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
52
31
|
readonly description: "Reports returning a value with type `any` from a function.";
|
|
53
32
|
readonly id: "anyReturns";
|
|
54
33
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
55
|
-
} & {
|
|
56
|
-
readonly pluginId: string;
|
|
57
|
-
readonly url: string;
|
|
58
|
-
}, "unsafeReturn" | "unsafeReturnAssignment" | "unsafeReturnThis", undefined>, import("@flint.fyi/core").Rule<{
|
|
34
|
+
}, "unsafeReturn" | "unsafeReturnAssignment" | "unsafeReturnThis", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
59
35
|
readonly description: "Reports using the arguments object instead of rest parameters.";
|
|
60
36
|
readonly id: "arguments";
|
|
61
37
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
62
|
-
} & {
|
|
63
|
-
readonly pluginId: string;
|
|
64
|
-
readonly url: string;
|
|
65
|
-
}, "preferRestParameters", undefined>, import("@flint.fyi/core").Rule<{
|
|
38
|
+
}, "preferRestParameters", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
66
39
|
readonly description: "Reports missing return statements in callbacks of array methods.";
|
|
67
40
|
readonly id: "arrayCallbackReturns";
|
|
68
41
|
readonly presets: readonly ["javascript"];
|
|
69
|
-
} & {
|
|
70
|
-
readonly pluginId: string;
|
|
71
|
-
readonly url: string;
|
|
72
|
-
}, "missingReturn", undefined>, import("@flint.fyi/core").Rule<{
|
|
42
|
+
}, "missingReturn", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
73
43
|
readonly description: "Reports using the `Array` constructor to create arrays instead of array literal syntax.";
|
|
74
44
|
readonly id: "arrayConstructors";
|
|
75
45
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
76
|
-
} & {
|
|
77
|
-
readonly pluginId: string;
|
|
78
|
-
readonly url: string;
|
|
79
|
-
}, "preferLiteral", undefined>, import("@flint.fyi/core").Rule<{
|
|
46
|
+
}, "preferLiteral", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
80
47
|
readonly description: "Reports using `.length` or `Infinity` as the `deleteCount` or `skipCount` argument of `Array#splice()` or `Array#toSpliced()`.";
|
|
81
48
|
readonly id: "arrayDeleteUnnecessaryCounts";
|
|
82
49
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
83
|
-
} & {
|
|
84
|
-
readonly pluginId: string;
|
|
85
|
-
readonly url: string;
|
|
86
|
-
}, "unnecessaryCount", undefined>, import("@flint.fyi/core").Rule<{
|
|
50
|
+
}, "unnecessaryCount", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
87
51
|
readonly description: "Reports using the `delete` operator on array values.";
|
|
88
52
|
readonly id: "arrayElementDeletions";
|
|
89
53
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
90
|
-
} & {
|
|
91
|
-
readonly pluginId: string;
|
|
92
|
-
readonly url: string;
|
|
93
|
-
}, "noArrayDelete", undefined>, import("@flint.fyi/core").Rule<{
|
|
54
|
+
}, "noArrayDelete", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
94
55
|
readonly description: "Reports array methods with callbacks that will never be invoked on arrays with empty slots.";
|
|
95
56
|
readonly id: "arrayEmptyCallbackSlots";
|
|
96
57
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
97
|
-
} & {
|
|
98
|
-
readonly pluginId: string;
|
|
99
|
-
readonly url: string;
|
|
100
|
-
}, "neverInvoked", undefined>, import("@flint.fyi/core").Rule<{
|
|
58
|
+
}, "neverInvoked", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
101
59
|
readonly description: "Reports inconsistent styles for checking element existence using index methods.";
|
|
102
60
|
readonly id: "arrayExistenceChecksConsistency";
|
|
103
61
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
104
|
-
} & {
|
|
105
|
-
readonly pluginId: string;
|
|
106
|
-
readonly url: string;
|
|
107
|
-
}, "preferEqualsMinusOne" | "preferNotEqualsMinusOne", undefined>, import("@flint.fyi/core").Rule<{
|
|
62
|
+
}, "preferEqualsMinusOne" | "preferNotEqualsMinusOne", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
108
63
|
readonly description: "Reports using `.filter()` when only the first or last matching element is needed.";
|
|
109
64
|
readonly id: "arrayFilteredFinds";
|
|
110
65
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
111
|
-
} & {
|
|
112
|
-
readonly pluginId: string;
|
|
113
|
-
readonly url: string;
|
|
114
|
-
}, "preferFind" | "preferFindLast", undefined>, import("@flint.fyi/core").Rule<{
|
|
66
|
+
}, "preferFind" | "preferFindLast", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
115
67
|
readonly description: "Reports using `.filter()[0]` instead of `.find()` when looking for a single element.";
|
|
116
68
|
readonly id: "arrayFinds";
|
|
117
69
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
118
|
-
} & {
|
|
119
|
-
readonly pluginId: string;
|
|
120
|
-
readonly url: string;
|
|
121
|
-
}, "preferFind", undefined>, import("@flint.fyi/core").Rule<{
|
|
70
|
+
}, "preferFind", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
122
71
|
readonly description: "Reports using `.map().flat()` when `.flatMap()` can be used.";
|
|
123
72
|
readonly id: "arrayFlatMapMethods";
|
|
124
73
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
125
|
-
} & {
|
|
126
|
-
readonly pluginId: string;
|
|
127
|
-
readonly url: string;
|
|
128
|
-
}, "preferFlatMap", undefined>, import("@flint.fyi/core").Rule<{
|
|
74
|
+
}, "preferFlatMap", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
129
75
|
readonly description: "Reports legacy techniques to flatten arrays instead of using `.flat()`.";
|
|
130
76
|
readonly id: "arrayFlatMethods";
|
|
131
77
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
132
|
-
} & {
|
|
133
|
-
readonly pluginId: string;
|
|
134
|
-
readonly url: string;
|
|
135
|
-
}, "preferFlat", undefined>, import("@flint.fyi/core").Rule<{
|
|
78
|
+
}, "preferFlat", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
136
79
|
readonly description: "Reports using `1` as the depth argument of `.flat()` since it is the default.";
|
|
137
80
|
readonly id: "arrayFlatUnnecessaryDepths";
|
|
138
81
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
139
|
-
} & {
|
|
140
|
-
readonly pluginId: string;
|
|
141
|
-
readonly url: string;
|
|
142
|
-
}, "unnecessaryDepth", undefined>, import("@flint.fyi/core").Rule<{
|
|
82
|
+
}, "unnecessaryDepth", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
143
83
|
readonly description: "Reports using `.indexOf()` comparisons that can be replaced with `.includes()`.";
|
|
144
84
|
readonly id: "arrayIncludes";
|
|
145
85
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
146
|
-
} & {
|
|
147
|
-
readonly pluginId: string;
|
|
148
|
-
readonly url: string;
|
|
149
|
-
}, "preferIncludes", undefined>, import("@flint.fyi/core").Rule<{
|
|
86
|
+
}, "preferIncludes", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
150
87
|
readonly description: "Reports using `Array#some()` with simple equality checks that can be replaced with `.includes()`.";
|
|
151
88
|
readonly id: "arrayIncludesMethods";
|
|
152
89
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
153
|
-
} & {
|
|
154
|
-
readonly pluginId: string;
|
|
155
|
-
readonly url: string;
|
|
156
|
-
}, "preferIncludes", undefined>, import("@flint.fyi/core").Rule<{
|
|
90
|
+
}, "preferIncludes", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
157
91
|
readonly description: "Reports using `.findIndex()` or `.findLastIndex()` with simple equality checks that can be replaced with `.indexOf()` or `.lastIndexOf()`.";
|
|
158
92
|
readonly id: "arrayIndexOfMethods";
|
|
159
93
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
160
|
-
} & {
|
|
161
|
-
readonly pluginId: string;
|
|
162
|
-
readonly url: string;
|
|
163
|
-
}, "preferIndexOf" | "preferLastIndexOf", undefined>, import("@flint.fyi/core").Rule<{
|
|
94
|
+
}, "preferIndexOf" | "preferLastIndexOf", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
164
95
|
readonly description: "Reports using `.forEach()` when a for-of loop can be used.";
|
|
165
96
|
readonly id: "arrayLoops";
|
|
166
97
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
167
|
-
} & {
|
|
168
|
-
readonly pluginId: string;
|
|
169
|
-
readonly url: string;
|
|
170
|
-
}, "preferForOf", undefined>, import("@flint.fyi/core").Rule<{
|
|
98
|
+
}, "preferForOf", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
171
99
|
readonly description: "Reports using `.flatMap()` with an identity function that returns its argument unchanged.";
|
|
172
100
|
readonly id: "arrayMapIdentities";
|
|
173
101
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
174
|
-
} & {
|
|
175
|
-
readonly pluginId: string;
|
|
176
|
-
readonly url: string;
|
|
177
|
-
}, "identityFlatMap", undefined>, import("@flint.fyi/core").Rule<{
|
|
102
|
+
}, "identityFlatMap", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
178
103
|
readonly description: "Reports `.reverse()` calls on arrays that mutate the original array.";
|
|
179
104
|
readonly id: "arrayMutableReverses";
|
|
180
105
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
181
|
-
} & {
|
|
182
|
-
readonly pluginId: string;
|
|
183
|
-
readonly url: string;
|
|
184
|
-
}, "preferToReversed", undefined>, import("@flint.fyi/core").Rule<{
|
|
106
|
+
}, "preferToReversed", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
185
107
|
readonly description: "Reports `.sort()` calls on arrays that mutate the original array.";
|
|
186
108
|
readonly id: "arrayMutableSorts";
|
|
187
109
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
188
|
-
} & {
|
|
189
|
-
readonly pluginId: string;
|
|
190
|
-
readonly url: string;
|
|
191
|
-
}, "preferToSorted", undefined>, import("@flint.fyi/core").Rule<{
|
|
110
|
+
}, "preferToSorted", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
192
111
|
readonly description: "Reports `Array#reduce` calls using type assertions on initial values instead of type arguments.";
|
|
193
112
|
readonly id: "arrayReduceTypeArguments";
|
|
194
113
|
readonly presets: readonly ["logicalStrict"];
|
|
195
|
-
} & {
|
|
196
|
-
readonly pluginId: string;
|
|
197
|
-
readonly url: string;
|
|
198
|
-
}, "preferTypeParameter", undefined>, import("@flint.fyi/core").Rule<{
|
|
114
|
+
}, "preferTypeParameter", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
199
115
|
readonly description: "Reports unnecessary `end` argument in `.slice()` calls when it equals the length or is `Infinity`.";
|
|
200
116
|
readonly id: "arraySliceUnnecessaryEnd";
|
|
201
117
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
202
|
-
} & {
|
|
203
|
-
readonly pluginId: string;
|
|
204
|
-
readonly url: string;
|
|
205
|
-
}, "unnecessaryEnd", undefined>, import("@flint.fyi/core").Rule<{
|
|
118
|
+
}, "unnecessaryEnd", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
206
119
|
readonly description: "Reports patterns that can be replaced with `.some()` for checking array element existence.";
|
|
207
120
|
readonly id: "arraySomeMethods";
|
|
208
121
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
209
|
-
} & {
|
|
210
|
-
readonly pluginId: string;
|
|
211
|
-
readonly url: string;
|
|
212
|
-
}, "preferSome", undefined>, import("@flint.fyi/core").Rule<{
|
|
122
|
+
}, "preferSome", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
213
123
|
readonly description: "Reports inconsistent types when spreading a ternary in an array literal.";
|
|
214
124
|
readonly id: "arrayTernarySpreadingConsistency";
|
|
215
125
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
216
|
-
} & {
|
|
217
|
-
readonly pluginId: string;
|
|
218
|
-
readonly url: string;
|
|
219
|
-
}, "inconsistentTypes", undefined>, import("@flint.fyi/core").Rule<{
|
|
126
|
+
}, "inconsistentTypes", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
220
127
|
readonly description: "Reports array type syntax that doesn't match the configured style.";
|
|
221
128
|
readonly id: "arrayTypes";
|
|
222
129
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
223
|
-
} & {
|
|
224
|
-
readonly pluginId: string;
|
|
225
|
-
readonly url: string;
|
|
226
130
|
}, "preferArraySyntax" | "preferGenericSyntax" | "preferReadonlyArraySyntax" | "preferReadonlyGenericSyntax", {
|
|
227
131
|
style: import("zod/v4").ZodDefault<import("zod/v4").ZodEnum<{
|
|
228
132
|
array: "array";
|
|
229
133
|
"array-simple": "array-simple";
|
|
230
134
|
generic: "generic";
|
|
231
135
|
}>>;
|
|
232
|
-
}>, import("@flint.fyi/core").Rule<{
|
|
136
|
+
}>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
233
137
|
readonly description: "Reports unnecessary array length checks before `.some()` or `.every()` calls.";
|
|
234
138
|
readonly id: "arrayUnnecessaryLengthChecks";
|
|
235
139
|
readonly presets: readonly ["logical"];
|
|
236
|
-
} & {
|
|
237
|
-
readonly pluginId: string;
|
|
238
|
-
readonly url: string;
|
|
239
|
-
}, "unnecessaryLengthCheckEvery" | "unnecessaryLengthCheckSome", undefined>, import("@flint.fyi/core").Rule<{
|
|
140
|
+
}, "unnecessaryLengthCheckEvery" | "unnecessaryLengthCheckSome", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
240
141
|
readonly description: "Reports using explicit literal types when `as const` can be used.";
|
|
241
142
|
readonly id: "asConstAssertions";
|
|
242
143
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
243
|
-
} & {
|
|
244
|
-
readonly pluginId: string;
|
|
245
|
-
readonly url: string;
|
|
246
|
-
}, "preferAsConst" | "preferAsConstAnnotation", undefined>, import("@flint.fyi/core").Rule<{
|
|
144
|
+
}, "preferAsConst" | "preferAsConstAnnotation", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
247
145
|
readonly description: "Prefer logical assignment operator shorthand expressions.";
|
|
248
146
|
readonly id: "assignmentOperatorShorthands";
|
|
249
147
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
250
|
-
} & {
|
|
251
|
-
readonly pluginId: string;
|
|
252
|
-
readonly url: string;
|
|
253
|
-
}, "preferShorthand", undefined>, import("@flint.fyi/core").Rule<{
|
|
148
|
+
}, "preferShorthand", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
254
149
|
readonly description: "Reports async functions that do not use await.";
|
|
255
150
|
readonly id: "asyncFunctionAwaits";
|
|
256
151
|
readonly presets: readonly ["logicalStrict"];
|
|
257
|
-
} & {
|
|
258
|
-
readonly pluginId: string;
|
|
259
|
-
readonly url: string;
|
|
260
|
-
}, "missingAwait", undefined>, import("@flint.fyi/core").Rule<{
|
|
152
|
+
}, "missingAwait", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
261
153
|
readonly description: "Reports using async functions as Promise executor functions.";
|
|
262
154
|
readonly id: "asyncPromiseExecutors";
|
|
263
155
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
264
|
-
} & {
|
|
265
|
-
readonly pluginId: string;
|
|
266
|
-
readonly url: string;
|
|
267
|
-
}, "asyncPromiseExecutor", undefined>, import("@flint.fyi/core").Rule<{
|
|
156
|
+
}, "asyncPromiseExecutor", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
268
157
|
readonly description: "Reports unnecessary `Promise.resolve()` or `Promise.reject()` in async contexts.";
|
|
269
158
|
readonly id: "asyncUnnecessaryPromiseWrappers";
|
|
270
159
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
271
|
-
} & {
|
|
272
|
-
readonly pluginId: string;
|
|
273
|
-
readonly url: string;
|
|
274
|
-
}, "unnecessaryReject" | "unnecessaryResolve", undefined>, import("@flint.fyi/core").Rule<{
|
|
160
|
+
}, "unnecessaryReject" | "unnecessaryResolve", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
275
161
|
readonly description: "Prefer using .at() for accessing elements at negative indices.";
|
|
276
162
|
readonly id: "atAccesses";
|
|
277
163
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
278
|
-
} & {
|
|
279
|
-
readonly pluginId: string;
|
|
280
|
-
readonly url: string;
|
|
281
|
-
}, "preferAt", undefined>, import("@flint.fyi/core").Rule<{
|
|
164
|
+
}, "preferAt", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
282
165
|
readonly description: "Reports functions that wrap native coercion functions like `String`, `Number`, `BigInt`, `Boolean`, or `Symbol`.";
|
|
283
166
|
readonly id: "builtinCoercions";
|
|
284
167
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
285
|
-
} & {
|
|
286
|
-
readonly pluginId: string;
|
|
287
|
-
readonly url: string;
|
|
288
|
-
}, "useBuiltin", undefined>, import("@flint.fyi/core").Rule<{
|
|
168
|
+
}, "useBuiltin", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
289
169
|
readonly description: "Enforces using new for constructors that require it, and disallows new for primitive coercion functions.";
|
|
290
170
|
readonly id: "builtinConstructorNews";
|
|
291
171
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
292
|
-
} & {
|
|
293
|
-
readonly pluginId: string;
|
|
294
|
-
readonly url: string;
|
|
295
|
-
}, "disallowedNew" | "missingNew", undefined>, import("@flint.fyi/core").Rule<{
|
|
172
|
+
}, "disallowedNew" | "missingNew", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
296
173
|
readonly description: "Reports lexical declarations in case clauses without wrapping them in blocks.";
|
|
297
174
|
readonly id: "caseDeclarations";
|
|
298
175
|
readonly presets: readonly ["javascript"];
|
|
299
|
-
} & {
|
|
300
|
-
readonly pluginId: string;
|
|
301
|
-
readonly url: string;
|
|
302
|
-
}, "unexpectedLexicalDeclaration", undefined>, import("@flint.fyi/core").Rule<{
|
|
176
|
+
}, "unexpectedLexicalDeclaration", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
303
177
|
readonly description: "Reports switch statements with duplicate case clause test expressions.";
|
|
304
178
|
readonly id: "caseDuplicates";
|
|
305
179
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
306
|
-
} & {
|
|
307
|
-
readonly pluginId: string;
|
|
308
|
-
readonly url: string;
|
|
309
|
-
}, "duplicateCase", undefined>, import("@flint.fyi/core").Rule<{
|
|
180
|
+
}, "duplicateCase", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
310
181
|
readonly description: "Reports switch case clauses that fall through unexpectedly.";
|
|
311
182
|
readonly id: "caseFallthroughs";
|
|
312
183
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
313
|
-
} & {
|
|
314
|
-
readonly pluginId: string;
|
|
315
|
-
readonly url: string;
|
|
316
|
-
}, "unexpectedFallthrough", undefined>, import("@flint.fyi/core").Rule<{
|
|
184
|
+
}, "unexpectedFallthrough", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
317
185
|
readonly description: "Reports `Promise` catch callback parameters that are not typed as unknown.";
|
|
318
186
|
readonly id: "catchCallbackTypes";
|
|
319
187
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
320
|
-
} & {
|
|
321
|
-
readonly pluginId: string;
|
|
322
|
-
readonly url: string;
|
|
323
|
-
}, "preferUnknown", undefined>, import("@flint.fyi/core").Rule<{
|
|
188
|
+
}, "preferUnknown", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
324
189
|
readonly description: "Enforces a consistent naming convention for catch clause error variables.";
|
|
325
190
|
readonly id: "caughtVariableNames";
|
|
326
191
|
readonly presets: readonly ["stylisticStrict"];
|
|
327
|
-
} & {
|
|
328
|
-
readonly pluginId: string;
|
|
329
|
-
readonly url: string;
|
|
330
|
-
}, "preferErrorName", undefined>, import("@flint.fyi/core").Rule<{
|
|
192
|
+
}, "preferErrorName", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
331
193
|
readonly description: "Reports using chained assignment expressions (e.g., a = b = c).";
|
|
332
194
|
readonly id: "chainedAssignments";
|
|
333
195
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
334
|
-
} & {
|
|
335
|
-
readonly pluginId: string;
|
|
336
|
-
readonly url: string;
|
|
337
|
-
}, "noChainedAssignment", undefined>, import("@flint.fyi/core").Rule<{
|
|
196
|
+
}, "noChainedAssignment", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
338
197
|
readonly description: "Reports comparing charAt() results with strings longer than one character.";
|
|
339
198
|
readonly id: "charAtComparisons";
|
|
340
199
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
341
|
-
} & {
|
|
342
|
-
readonly pluginId: string;
|
|
343
|
-
readonly url: string;
|
|
344
|
-
}, "invalidComparison", undefined>, import("@flint.fyi/core").Rule<{
|
|
200
|
+
}, "invalidComparison", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
345
201
|
readonly description: "Reports reassigning class declarations.";
|
|
346
202
|
readonly id: "classAssignments";
|
|
347
203
|
readonly presets: readonly ["javascript"];
|
|
348
|
-
} & {
|
|
349
|
-
readonly pluginId: string;
|
|
350
|
-
readonly url: string;
|
|
351
|
-
}, "noClassAssign", undefined>, import("@flint.fyi/core").Rule<{
|
|
204
|
+
}, "noClassAssign", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
352
205
|
readonly description: "Reports assigning literal values to `this` in constructors instead of using class field declarations.";
|
|
353
206
|
readonly id: "classFieldDeclarations";
|
|
354
207
|
readonly presets: readonly ["javascript"];
|
|
355
|
-
} & {
|
|
356
|
-
readonly pluginId: string;
|
|
357
|
-
readonly url: string;
|
|
358
|
-
}, "preferClassField", undefined>, import("@flint.fyi/core").Rule<{
|
|
208
|
+
}, "preferClassField", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
359
209
|
readonly description: "Reports getters that return literal values instead of using readonly class fields.";
|
|
360
210
|
readonly id: "classLiteralProperties";
|
|
361
211
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
362
|
-
} & {
|
|
363
|
-
readonly pluginId: string;
|
|
364
|
-
readonly url: string;
|
|
365
|
-
}, "preferField", undefined>, import("@flint.fyi/core").Rule<{
|
|
212
|
+
}, "preferField", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
366
213
|
readonly description: "Reports duplicate class member names that will be overwritten.";
|
|
367
214
|
readonly id: "classMemberDuplicates";
|
|
368
215
|
readonly presets: readonly ["javascript"];
|
|
369
|
-
} & {
|
|
370
|
-
readonly pluginId: string;
|
|
371
|
-
readonly url: string;
|
|
372
|
-
}, "duplicateMember", undefined>, import("@flint.fyi/core").Rule<{
|
|
216
|
+
}, "duplicateMember", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
373
217
|
readonly description: "Reports class methods that do not use `this`.";
|
|
374
218
|
readonly id: "classMethodsThis";
|
|
375
219
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
376
|
-
} & {
|
|
377
|
-
readonly pluginId: string;
|
|
378
|
-
readonly url: string;
|
|
379
220
|
}, "missingThis", {
|
|
380
221
|
ignoreClassesThatImplementAnInterface: import("zod/v4").ZodDefault<import("zod/v4").ZodUnion<readonly [import("zod/v4").ZodBoolean, import("zod/v4").ZodLiteral<"public-fields">]>>;
|
|
381
222
|
ignoreOverrideMethods: import("zod/v4").ZodDefault<import("zod/v4").ZodBoolean>;
|
|
382
|
-
}>, import("@flint.fyi/core").Rule<{
|
|
223
|
+
}>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
383
224
|
readonly description: "Reports consecutive array.push() calls that could be combined into a single call.";
|
|
384
225
|
readonly id: "combinedPushes";
|
|
385
226
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
386
|
-
} & {
|
|
387
|
-
readonly pluginId: string;
|
|
388
|
-
readonly url: string;
|
|
389
|
-
}, "combinePushes", undefined>, import("@flint.fyi/core").Rule<{
|
|
227
|
+
}, "combinePushes", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
390
228
|
readonly description: "Reports unnecessary extra non-null assertions.";
|
|
391
229
|
readonly id: "consecutiveNonNullAssertions";
|
|
392
230
|
readonly presets: readonly ["logical"];
|
|
393
|
-
} & {
|
|
394
|
-
readonly pluginId: string;
|
|
395
|
-
readonly url: string;
|
|
396
|
-
}, "consecutiveNonNullAssertion", undefined>, import("@flint.fyi/core").Rule<{
|
|
231
|
+
}, "consecutiveNonNullAssertion", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
397
232
|
readonly description: "Reports calls to console methods.";
|
|
398
233
|
readonly id: "consoleCalls";
|
|
399
|
-
} & {
|
|
400
|
-
readonly pluginId: string;
|
|
401
|
-
readonly url: string;
|
|
402
|
-
}, "noConsole", undefined>, import("@flint.fyi/core").Rule<{
|
|
234
|
+
}, "noConsole", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
403
235
|
readonly description: "Reports attempting to reassign variables declared with const.";
|
|
404
236
|
readonly id: "constantAssignments";
|
|
405
237
|
readonly presets: readonly ["javascript"];
|
|
406
|
-
} & {
|
|
407
|
-
readonly pluginId: string;
|
|
408
|
-
readonly url: string;
|
|
409
|
-
}, "noConstAssign", undefined>, import("@flint.fyi/core").Rule<{
|
|
238
|
+
}, "noConstAssign", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
410
239
|
readonly description: "Reports inconsistent placement of type arguments in constructor calls.";
|
|
411
240
|
readonly id: "constructorGenericCalls";
|
|
412
241
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
413
|
-
} & {
|
|
414
|
-
readonly pluginId: string;
|
|
415
|
-
readonly url: string;
|
|
416
242
|
}, "preferConstructor" | "preferTypeAnnotation", {
|
|
417
243
|
style: import("zod/v4").ZodDefault<import("zod/v4").ZodEnum<{
|
|
418
244
|
constructor: "constructor";
|
|
419
245
|
"type-annotation": "type-annotation";
|
|
420
246
|
}>>;
|
|
421
|
-
}>, import("@flint.fyi/core").Rule<{
|
|
247
|
+
}>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
422
248
|
readonly description: "Reports returning values from constructor functions.";
|
|
423
249
|
readonly id: "constructorReturns";
|
|
424
250
|
readonly presets: readonly ["javascript"];
|
|
425
|
-
} & {
|
|
426
|
-
readonly pluginId: string;
|
|
427
|
-
readonly url: string;
|
|
428
|
-
}, "noConstructorReturn", undefined>, import("@flint.fyi/core").Rule<{
|
|
251
|
+
}, "noConstructorReturn", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
429
252
|
readonly description: "Reports constructors of derived classes that do not call `super()`, and constructors of non-derived classes that call `super()`.";
|
|
430
253
|
readonly id: "constructorSupers";
|
|
431
254
|
readonly presets: readonly ["javascript"];
|
|
432
|
-
} & {
|
|
433
|
-
readonly pluginId: string;
|
|
434
|
-
readonly url: string;
|
|
435
|
-
}, "missingSuperCall" | "unexpectedSuperCall", undefined>, import("@flint.fyi/core").Rule<{
|
|
255
|
+
}, "missingSuperCall" | "unexpectedSuperCall", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
436
256
|
readonly description: "Prefer passing a `Date` directly to the `Date` constructor when cloning, rather than calling `getTime()`.";
|
|
437
257
|
readonly id: "dateConstructorClones";
|
|
438
258
|
readonly presets: readonly ["logical"];
|
|
439
|
-
} & {
|
|
440
|
-
readonly pluginId: string;
|
|
441
|
-
readonly url: string;
|
|
442
|
-
}, "unnecessaryGetTime", undefined>, import("@flint.fyi/core").Rule<{
|
|
259
|
+
}, "unnecessaryGetTime", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
443
260
|
readonly description: "Prefer the shorter `Date.now()` to get the number of milliseconds since the Unix Epoch.";
|
|
444
261
|
readonly id: "dateNowTimestamps";
|
|
445
262
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
446
|
-
} & {
|
|
447
|
-
readonly pluginId: string;
|
|
448
|
-
readonly url: string;
|
|
449
|
-
}, "preferDateNow", undefined>, import("@flint.fyi/core").Rule<{
|
|
263
|
+
}, "preferDateNow", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
450
264
|
readonly description: "Reports using debugger statements.";
|
|
451
265
|
readonly id: "debuggerStatements";
|
|
452
266
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
453
|
-
} & {
|
|
454
|
-
readonly pluginId: string;
|
|
455
|
-
readonly url: string;
|
|
456
|
-
}, "noDebugger", undefined>, import("@flint.fyi/core").Rule<{
|
|
267
|
+
}, "noDebugger", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
457
268
|
readonly description: "Reports switch statements where the default clause is not last.";
|
|
458
269
|
readonly id: "defaultCaseLast";
|
|
459
270
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
460
|
-
} & {
|
|
461
|
-
readonly pluginId: string;
|
|
462
|
-
readonly url: string;
|
|
463
|
-
}, "defaultCaseShouldBeLast", undefined>, import("@flint.fyi/core").Rule<{
|
|
271
|
+
}, "defaultCaseShouldBeLast", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
464
272
|
readonly description: "Enforce default parameters to be last.";
|
|
465
273
|
readonly id: "defaultParameterLast";
|
|
466
274
|
readonly presets: readonly ["javascript"];
|
|
467
|
-
} & {
|
|
468
|
-
readonly pluginId: string;
|
|
469
|
-
readonly url: string;
|
|
470
|
-
}, "defaultParameterLast", undefined>, import("@flint.fyi/core").Rule<{
|
|
275
|
+
}, "defaultParameterLast", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
471
276
|
readonly description: "Disallow using code marked as @deprecated.";
|
|
472
277
|
readonly id: "deprecated";
|
|
473
278
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
474
|
-
} & {
|
|
475
|
-
readonly pluginId: string;
|
|
476
|
-
readonly url: string;
|
|
477
|
-
}, "deprecated", undefined>, import("@flint.fyi/core").Rule<{
|
|
279
|
+
}, "deprecated", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
478
280
|
readonly description: "Use destructured variables over properties for consistency.";
|
|
479
281
|
readonly id: "destructuringConsistency";
|
|
480
282
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
481
|
-
} & {
|
|
482
|
-
readonly pluginId: string;
|
|
483
|
-
readonly url: string;
|
|
484
|
-
}, "useDestructured", undefined>, import("@flint.fyi/core").Rule<{
|
|
283
|
+
}, "useDestructured", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
485
284
|
readonly description: "Reports functions with duplicate parameter names in their signatures.";
|
|
486
285
|
readonly id: "duplicateArguments";
|
|
487
286
|
readonly presets: readonly ["javascript"];
|
|
488
|
-
} & {
|
|
489
|
-
readonly pluginId: string;
|
|
490
|
-
readonly url: string;
|
|
491
|
-
}, "duplicateParam", undefined>, import("@flint.fyi/core").Rule<{
|
|
287
|
+
}, "duplicateParam", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
492
288
|
readonly description: "Disallow using the delete operator on computed key expressions.";
|
|
493
289
|
readonly id: "dynamicDeletes";
|
|
494
290
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
495
|
-
} & {
|
|
496
|
-
readonly pluginId: string;
|
|
497
|
-
readonly url: string;
|
|
498
|
-
}, "dynamicDelete", undefined>, import("@flint.fyi/core").Rule<{
|
|
291
|
+
}, "dynamicDelete", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
499
292
|
readonly description: "Reports duplicate conditions in if-else-if chains that make code unreachable.";
|
|
500
293
|
readonly id: "elseIfDuplicates";
|
|
501
294
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
502
|
-
} & {
|
|
503
|
-
readonly pluginId: string;
|
|
504
|
-
readonly url: string;
|
|
505
|
-
}, "duplicateCondition", undefined>, import("@flint.fyi/core").Rule<{
|
|
295
|
+
}, "duplicateCondition", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
506
296
|
readonly description: "Reports unnecessary `else` blocks following `if` statements that always return or throw.";
|
|
507
297
|
readonly id: "elseReturns";
|
|
508
298
|
readonly presets: readonly ["stylisticStrict"];
|
|
509
|
-
} & {
|
|
510
|
-
readonly pluginId: string;
|
|
511
|
-
readonly url: string;
|
|
512
|
-
}, "unnecessaryElse", undefined>, import("@flint.fyi/core").Rule<{
|
|
299
|
+
}, "unnecessaryElse", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
513
300
|
readonly description: "Reports empty block statements that should contain code.";
|
|
514
301
|
readonly id: "emptyBlocks";
|
|
515
302
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
516
|
-
} & {
|
|
517
|
-
readonly pluginId: string;
|
|
518
|
-
readonly url: string;
|
|
519
|
-
}, "emptyBlock", undefined>, import("@flint.fyi/core").Rule<{
|
|
303
|
+
}, "emptyBlock", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
520
304
|
readonly description: "Reports using empty destructuring patterns that destructure no values.";
|
|
521
305
|
readonly id: "emptyDestructures";
|
|
522
306
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
523
|
-
} & {
|
|
524
|
-
readonly pluginId: string;
|
|
525
|
-
readonly url: string;
|
|
526
|
-
}, "emptyPattern", undefined>, import("@flint.fyi/core").Rule<{
|
|
307
|
+
}, "emptyPattern", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
527
308
|
readonly description: "Reports empty enum declarations with no members.";
|
|
528
309
|
readonly id: "emptyEnums";
|
|
529
310
|
readonly presets: readonly ["logical"];
|
|
530
|
-
} & {
|
|
531
|
-
readonly pluginId: string;
|
|
532
|
-
readonly url: string;
|
|
533
|
-
}, "emptyEnum", undefined>, import("@flint.fyi/core").Rule<{
|
|
311
|
+
}, "emptyEnum", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
534
312
|
readonly description: "Reports empty export statements that don't make a file a module.";
|
|
535
313
|
readonly id: "emptyExports";
|
|
536
314
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
537
|
-
} & {
|
|
538
|
-
readonly pluginId: string;
|
|
539
|
-
readonly url: string;
|
|
540
|
-
}, "uselessExport", undefined>, import("@flint.fyi/core").Rule<{
|
|
315
|
+
}, "uselessExport", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
541
316
|
readonly description: "Reports files that contain no meaningful code.";
|
|
542
317
|
readonly id: "emptyFiles";
|
|
543
318
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
544
|
-
} & {
|
|
545
|
-
readonly pluginId: string;
|
|
546
|
-
readonly url: string;
|
|
547
|
-
}, "emptyFile", undefined>, import("@flint.fyi/core").Rule<{
|
|
319
|
+
}, "emptyFile", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
548
320
|
readonly description: "Reports empty functions that should contain code or a comment.";
|
|
549
321
|
readonly id: "emptyFunctions";
|
|
550
322
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
551
|
-
} & {
|
|
552
|
-
readonly pluginId: string;
|
|
553
|
-
readonly url: string;
|
|
554
|
-
}, "emptyFunction", undefined>, import("@flint.fyi/core").Rule<{
|
|
323
|
+
}, "emptyFunction", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
555
324
|
readonly description: "Reports empty import/export attributes that serve no purpose.";
|
|
556
325
|
readonly id: "emptyModuleAttributes";
|
|
557
326
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
558
|
-
} & {
|
|
559
|
-
readonly pluginId: string;
|
|
560
|
-
readonly url: string;
|
|
561
|
-
}, "emptyAttributes", undefined>, import("@flint.fyi/core").Rule<{
|
|
327
|
+
}, "emptyAttributes", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
562
328
|
readonly description: "Reports empty object type literals and empty interfaces that are often used incorrectly.";
|
|
563
329
|
readonly id: "emptyObjectTypes";
|
|
564
330
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
565
|
-
} & {
|
|
566
|
-
readonly pluginId: string;
|
|
567
|
-
readonly url: string;
|
|
568
|
-
}, "emptyInterface" | "emptyObjectType", undefined>, import("@flint.fyi/core").Rule<{
|
|
331
|
+
}, "emptyInterface" | "emptyObjectType", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
569
332
|
readonly description: "Reports empty static initialization blocks within class declarations.";
|
|
570
333
|
readonly id: "emptyStaticBlocks";
|
|
571
334
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
572
|
-
} & {
|
|
573
|
-
readonly pluginId: string;
|
|
574
|
-
readonly url: string;
|
|
575
|
-
}, "emptyStaticBlock", undefined>, import("@flint.fyi/core").Rule<{
|
|
335
|
+
}, "emptyStaticBlock", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
576
336
|
readonly description: "Reports empty type parameter lists in type aliases and interfaces.";
|
|
577
337
|
readonly id: "emptyTypeParameterLists";
|
|
578
338
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
579
|
-
} & {
|
|
580
|
-
readonly pluginId: string;
|
|
581
|
-
readonly url: string;
|
|
582
|
-
}, "emptyTypeParameters", undefined>, import("@flint.fyi/core").Rule<{
|
|
339
|
+
}, "emptyTypeParameters", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
583
340
|
readonly description: "Reports enum members without explicit initial values.";
|
|
584
341
|
readonly id: "enumInitializers";
|
|
585
342
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
586
|
-
} & {
|
|
587
|
-
readonly pluginId: string;
|
|
588
|
-
readonly url: string;
|
|
589
|
-
}, "defineInitializer", undefined>, import("@flint.fyi/core").Rule<{
|
|
343
|
+
}, "defineInitializer", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
590
344
|
readonly description: "Requires all enum members to be literal values.";
|
|
591
345
|
readonly id: "enumMemberLiterals";
|
|
592
346
|
readonly presets: readonly ["logicalStrict"];
|
|
593
|
-
} & {
|
|
594
|
-
readonly pluginId: string;
|
|
595
|
-
readonly url: string;
|
|
596
|
-
}, "requireLiteral", undefined>, import("@flint.fyi/core").Rule<{
|
|
347
|
+
}, "requireLiteral", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
597
348
|
readonly description: "Reports enums that contain both string and number members.";
|
|
598
349
|
readonly id: "enumValueConsistency";
|
|
599
350
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
600
|
-
} & {
|
|
601
|
-
readonly pluginId: string;
|
|
602
|
-
readonly url: string;
|
|
603
|
-
}, "mixedTypes", undefined>, import("@flint.fyi/core").Rule<{
|
|
351
|
+
}, "mixedTypes", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
604
352
|
readonly description: "Reports enum members with duplicate values.";
|
|
605
353
|
readonly id: "enumValueDuplicates";
|
|
606
354
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
607
|
-
} & {
|
|
608
|
-
readonly pluginId: string;
|
|
609
|
-
readonly url: string;
|
|
610
|
-
}, "duplicateValue", undefined>, import("@flint.fyi/core").Rule<{
|
|
355
|
+
}, "duplicateValue", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
611
356
|
readonly description: "Reports negated expressions on the left side of equality checks.";
|
|
612
357
|
readonly id: "equalityOperatorNegations";
|
|
613
|
-
} & {
|
|
614
|
-
readonly pluginId: string;
|
|
615
|
-
readonly url: string;
|
|
616
|
-
}, "negatedEquality", undefined>, import("@flint.fyi/core").Rule<{
|
|
358
|
+
}, "negatedEquality", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
617
359
|
readonly description: "Enforces consistent use of strict equality operators (=== and !==) over loose equality operators (== and !=) for non-nullish comparisons.";
|
|
618
360
|
readonly id: "equalityOperators";
|
|
619
361
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
620
|
-
} & {
|
|
621
|
-
readonly pluginId: string;
|
|
622
|
-
readonly url: string;
|
|
623
|
-
}, "preferStrictEquality", undefined>, import("@flint.fyi/core").Rule<{
|
|
362
|
+
}, "preferStrictEquality", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
624
363
|
readonly description: "Requires a message value when creating a built-in error.";
|
|
625
364
|
readonly id: "errorMessages";
|
|
626
365
|
readonly presets: readonly ["logicalStrict"];
|
|
627
|
-
} & {
|
|
628
|
-
readonly pluginId: string;
|
|
629
|
-
readonly url: string;
|
|
630
|
-
}, "missingMessage", undefined>, import("@flint.fyi/core").Rule<{
|
|
366
|
+
}, "missingMessage", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
631
367
|
readonly description: "Reports incorrect Error subclass definitions that don't follow best practices.";
|
|
632
368
|
readonly id: "errorSubclassProperties";
|
|
633
369
|
readonly presets: readonly ["logicalStrict"];
|
|
634
|
-
} & {
|
|
635
|
-
readonly pluginId: string;
|
|
636
|
-
readonly url: string;
|
|
637
|
-
}, "invalidClassName" | "missingName" | "redundantMessage" | "useConstructorName" | "wrongName", undefined>, import("@flint.fyi/core").Rule<{
|
|
370
|
+
}, "invalidClassName" | "missingName" | "redundantMessage" | "useConstructorName" | "wrongName", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
638
371
|
readonly description: "Reports unnecessary Error.captureStackTrace() calls in Error subclass constructors.";
|
|
639
372
|
readonly id: "errorUnnecessaryCaptureStackTraces";
|
|
640
373
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
641
|
-
} & {
|
|
642
|
-
readonly pluginId: string;
|
|
643
|
-
readonly url: string;
|
|
644
|
-
}, "unnecessaryCaptureStackTrace", undefined>, import("@flint.fyi/core").Rule<{
|
|
374
|
+
}, "unnecessaryCaptureStackTrace", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
645
375
|
readonly description: "Reports escape sequences with lowercase hexadecimal characters.";
|
|
646
376
|
readonly id: "escapeSequenceCasing";
|
|
647
377
|
readonly presets: readonly ["stylisticStrict"];
|
|
648
|
-
} & {
|
|
649
|
-
readonly pluginId: string;
|
|
650
|
-
readonly url: string;
|
|
651
|
-
}, "useUppercase", undefined>, import("@flint.fyi/core").Rule<{
|
|
378
|
+
}, "useUppercase", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
652
379
|
readonly description: "Reports uses of the eval function.";
|
|
653
380
|
readonly id: "evals";
|
|
654
381
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
655
|
-
} & {
|
|
656
|
-
readonly pluginId: string;
|
|
657
|
-
readonly url: string;
|
|
658
|
-
}, "noEval", undefined>, import("@flint.fyi/core").Rule<{
|
|
382
|
+
}, "noEval", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
659
383
|
readonly description: "Reports variables declared without type annotation or initializer.";
|
|
660
384
|
readonly id: "evolvingVariableTypes";
|
|
661
385
|
readonly presets: readonly ["stylisticStrict"];
|
|
662
|
-
} & {
|
|
663
|
-
readonly pluginId: string;
|
|
664
|
-
readonly url: string;
|
|
665
|
-
}, "implicitAny", undefined>, import("@flint.fyi/core").Rule<{
|
|
386
|
+
}, "implicitAny", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
666
387
|
readonly description: "Reports reassigning exception parameters in catch clauses.";
|
|
667
388
|
readonly id: "exceptionAssignments";
|
|
668
389
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
669
|
-
} & {
|
|
670
|
-
readonly pluginId: string;
|
|
671
|
-
readonly url: string;
|
|
672
|
-
}, "noExAssign", undefined>, import("@flint.fyi/core").Rule<{
|
|
390
|
+
}, "noExAssign", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
673
391
|
readonly description: "Reports explicit uses of the any type.";
|
|
674
392
|
readonly id: "explicitAnys";
|
|
675
393
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
676
|
-
} & {
|
|
677
|
-
readonly pluginId: string;
|
|
678
|
-
readonly url: string;
|
|
679
|
-
}, "noExplicitAny", undefined>, import("@flint.fyi/core").Rule<{
|
|
394
|
+
}, "noExplicitAny", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
680
395
|
readonly description: "Prefers the ** operator over Math.pow().";
|
|
681
396
|
readonly id: "exponentiationOperators";
|
|
682
397
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
683
|
-
} & {
|
|
684
|
-
readonly pluginId: string;
|
|
685
|
-
readonly url: string;
|
|
686
|
-
}, "preferOperator", undefined>, import("@flint.fyi/core").Rule<{
|
|
398
|
+
}, "preferOperator", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
687
399
|
readonly description: "Reports imports that are re-exported and could use export...from syntax instead.";
|
|
688
400
|
readonly id: "exportFromImports";
|
|
689
401
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
690
|
-
} & {
|
|
691
|
-
readonly pluginId: string;
|
|
692
|
-
readonly url: string;
|
|
693
|
-
}, "preferExportDefaultFrom" | "preferExportFrom" | "preferExportNamespaceFrom", undefined>, import("@flint.fyi/core").Rule<{
|
|
402
|
+
}, "preferExportDefaultFrom" | "preferExportFrom" | "preferExportNamespaceFrom", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
694
403
|
readonly description: "Reports exporting mutable bindings (let or var).";
|
|
695
404
|
readonly id: "exportMutables";
|
|
696
405
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
697
|
-
} & {
|
|
698
|
-
readonly pluginId: string;
|
|
699
|
-
readonly url: string;
|
|
700
|
-
}, "noMutableExport", undefined>, import("@flint.fyi/core").Rule<{
|
|
406
|
+
}, "noMutableExport", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
701
407
|
readonly description: "Reports duplicate export names in a module.";
|
|
702
408
|
readonly id: "exportUniqueNames";
|
|
703
409
|
readonly presets: readonly ["javascript"];
|
|
704
|
-
} & {
|
|
705
|
-
readonly pluginId: string;
|
|
706
|
-
readonly url: string;
|
|
707
|
-
}, "duplicateExport", undefined>, import("@flint.fyi/core").Rule<{
|
|
410
|
+
}, "duplicateExport", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
708
411
|
readonly description: "Reports classes used as static namespaces.";
|
|
709
412
|
readonly id: "extraneousClasses";
|
|
710
413
|
readonly presets: readonly ["logicalStrict"];
|
|
711
|
-
} & {
|
|
712
|
-
readonly pluginId: string;
|
|
713
|
-
readonly url: string;
|
|
714
414
|
}, "empty" | "onlyConstructor" | "onlyStatic", {
|
|
715
415
|
allowConstructorOnly: import("zod/v4").ZodDefault<import("zod/v4").ZodBoolean>;
|
|
716
416
|
allowEmpty: import("zod/v4").ZodDefault<import("zod/v4").ZodBoolean>;
|
|
717
417
|
allowStaticOnly: import("zod/v4").ZodDefault<import("zod/v4").ZodBoolean>;
|
|
718
418
|
allowWithDecorator: import("zod/v4").ZodDefault<import("zod/v4").ZodBoolean>;
|
|
719
|
-
}>, import("@flint.fyi/core").Rule<{
|
|
419
|
+
}>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
720
420
|
readonly description: "Disallow providing a body with GET or HEAD fetch requests.";
|
|
721
421
|
readonly id: "fetchMethodBodies";
|
|
722
422
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
723
|
-
} & {
|
|
724
|
-
readonly pluginId: string;
|
|
725
|
-
readonly url: string;
|
|
726
|
-
}, "noBody", undefined>, import("@flint.fyi/core").Rule<{
|
|
423
|
+
}, "noBody", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
727
424
|
readonly description: "Reports control flow statements in `finally` blocks that can override control flow in `try`/`catch` blocks.";
|
|
728
425
|
readonly id: "finallyStatementSafety";
|
|
729
426
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
730
|
-
} & {
|
|
731
|
-
readonly pluginId: string;
|
|
732
|
-
readonly url: string;
|
|
733
|
-
}, "unsafeFinally", undefined>, import("@flint.fyi/core").Rule<{
|
|
427
|
+
}, "unsafeFinally", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
734
428
|
readonly description: "Reports for loops with counter variables that move in the wrong direction.";
|
|
735
429
|
readonly id: "forDirections";
|
|
736
430
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
737
|
-
} & {
|
|
738
|
-
readonly pluginId: string;
|
|
739
|
-
readonly url: string;
|
|
740
|
-
}, "wrongDirection", undefined>, import("@flint.fyi/core").Rule<{
|
|
431
|
+
}, "wrongDirection", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
741
432
|
readonly description: "Reports iterating over an array with a for-in loop.";
|
|
742
433
|
readonly id: "forInArrays";
|
|
743
434
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
744
|
-
} & {
|
|
745
|
-
readonly pluginId: string;
|
|
746
|
-
readonly url: string;
|
|
747
|
-
}, "forIn", undefined>, import("@flint.fyi/core").Rule<{
|
|
435
|
+
}, "forIn", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
748
436
|
readonly description: "Reports for-in loops without an if statement to filter inherited properties.";
|
|
749
437
|
readonly id: "forInGuards";
|
|
750
|
-
} & {
|
|
751
|
-
readonly pluginId: string;
|
|
752
|
-
readonly url: string;
|
|
753
|
-
}, "missingGuard", undefined>, import("@flint.fyi/core").Rule<{
|
|
438
|
+
}, "missingGuard", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
754
439
|
readonly description: "Prefer the spread operator over `.apply()` calls.";
|
|
755
440
|
readonly id: "functionApplySpreads";
|
|
756
441
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
757
|
-
} & {
|
|
758
|
-
readonly pluginId: string;
|
|
759
|
-
readonly url: string;
|
|
760
|
-
}, "preferSpread", undefined>, import("@flint.fyi/core").Rule<{
|
|
442
|
+
}, "preferSpread", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
761
443
|
readonly description: "Reports reassigning variables declared with function declarations.";
|
|
762
444
|
readonly id: "functionAssignments";
|
|
763
445
|
readonly presets: readonly ["javascript"];
|
|
764
|
-
} & {
|
|
765
|
-
readonly pluginId: string;
|
|
766
|
-
readonly url: string;
|
|
767
|
-
}, "noFunctionAssignment", undefined>, import("@flint.fyi/core").Rule<{
|
|
446
|
+
}, "noFunctionAssignment", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
768
447
|
readonly description: "Reports using `.apply()` or `.call()` or when the context (`this` value) provides no benefit.";
|
|
769
448
|
readonly id: "functionCurryingRedundancy";
|
|
770
449
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
771
|
-
} & {
|
|
772
|
-
readonly pluginId: string;
|
|
773
|
-
readonly url: string;
|
|
774
|
-
}, "unnecessaryCall", undefined>, import("@flint.fyi/core").Rule<{
|
|
450
|
+
}, "unnecessaryCall", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
775
451
|
readonly description: "Reports functions that don't match the configured style (declaration vs expression).";
|
|
776
452
|
readonly id: "functionDeclarationStyles";
|
|
777
|
-
} & {
|
|
778
|
-
readonly pluginId: string;
|
|
779
|
-
readonly url: string;
|
|
780
453
|
}, "preferDeclaration" | "preferExpression", {
|
|
781
454
|
allowArrowFunctions: import("zod/v4").ZodDefault<import("zod/v4").ZodBoolean>;
|
|
782
455
|
style: import("zod/v4").ZodDefault<import("zod/v4").ZodEnum<{
|
|
783
456
|
expression: "expression";
|
|
784
457
|
declaration: "declaration";
|
|
785
458
|
}>>;
|
|
786
|
-
}>, import("@flint.fyi/core").Rule<{
|
|
459
|
+
}>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
787
460
|
readonly description: "Reports function names that don't match the variable or property they're assigned to.";
|
|
788
461
|
readonly id: "functionNameMatches";
|
|
789
462
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
790
|
-
} & {
|
|
791
|
-
readonly pluginId: string;
|
|
792
|
-
readonly url: string;
|
|
793
|
-
}, "mismatch", undefined>, import("@flint.fyi/core").Rule<{
|
|
463
|
+
}, "mismatch", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
794
464
|
readonly description: "Reports using the Function constructor to create functions from strings.";
|
|
795
465
|
readonly id: "functionNewCalls";
|
|
796
466
|
readonly presets: readonly ["logical"];
|
|
797
|
-
} & {
|
|
798
|
-
readonly pluginId: string;
|
|
799
|
-
readonly url: string;
|
|
800
|
-
}, "noFunctionConstructor", undefined>, import("@flint.fyi/core").Rule<{
|
|
467
|
+
}, "noFunctionConstructor", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
801
468
|
readonly description: "Reports generator functions that do not yield values.";
|
|
802
469
|
readonly id: "generatorFunctionYields";
|
|
803
470
|
readonly presets: readonly ["logical"];
|
|
804
|
-
} & {
|
|
805
|
-
readonly pluginId: string;
|
|
806
|
-
readonly url: string;
|
|
807
|
-
}, "missingYield", undefined>, import("@flint.fyi/core").Rule<{
|
|
471
|
+
}, "missingYield", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
808
472
|
readonly description: "Reports getter functions that do not return values.";
|
|
809
473
|
readonly id: "getterReturns";
|
|
810
474
|
readonly presets: readonly ["javascript"];
|
|
811
|
-
} & {
|
|
812
|
-
readonly pluginId: string;
|
|
813
|
-
readonly url: string;
|
|
814
|
-
}, "missingReturn", undefined>, import("@flint.fyi/core").Rule<{
|
|
475
|
+
}, "missingReturn", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
815
476
|
readonly description: "Reports attempting to assign to read-only global variables such as undefined, NaN, Infinity, Object, etc.";
|
|
816
477
|
readonly id: "globalAssignments";
|
|
817
478
|
readonly presets: readonly ["javascript"];
|
|
818
|
-
} & {
|
|
819
|
-
readonly pluginId: string;
|
|
820
|
-
readonly url: string;
|
|
821
|
-
}, "noGlobalAssign", undefined>, import("@flint.fyi/core").Rule<{
|
|
479
|
+
}, "noGlobalAssign", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
822
480
|
readonly description: "Reports calling global objects like Math, JSON, or Reflect as functions.";
|
|
823
481
|
readonly id: "globalObjectCalls";
|
|
824
482
|
readonly presets: readonly ["javascript"];
|
|
825
|
-
} & {
|
|
826
|
-
readonly pluginId: string;
|
|
827
|
-
readonly url: string;
|
|
828
|
-
}, "noGlobalObjectCall", undefined>, import("@flint.fyi/core").Rule<{
|
|
483
|
+
}, "noGlobalObjectCall", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
829
484
|
readonly description: "Reports using window, self, or global instead of globalThis.";
|
|
830
485
|
readonly id: "globalThisAliases";
|
|
831
486
|
readonly presets: readonly ["stylisticStrict"];
|
|
832
|
-
} & {
|
|
833
|
-
readonly pluginId: string;
|
|
834
|
-
readonly url: string;
|
|
835
|
-
}, "preferGlobalThis", undefined>, import("@flint.fyi/core").Rule<{
|
|
487
|
+
}, "preferGlobalThis", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
836
488
|
readonly description: "Reports using string arguments in setTimeout, setInterval, setImmediate, execScript, or the Function constructor.";
|
|
837
489
|
readonly id: "impliedEvals";
|
|
838
490
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
839
|
-
} & {
|
|
840
|
-
readonly pluginId: string;
|
|
841
|
-
readonly url: string;
|
|
842
|
-
}, "functionConstructor" | "impliedEval", undefined>, import("@flint.fyi/core").Rule<{
|
|
491
|
+
}, "functionConstructor" | "impliedEval", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
843
492
|
readonly description: "Reports empty named import blocks.";
|
|
844
493
|
readonly id: "importEmptyBlocks";
|
|
845
494
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
846
|
-
} & {
|
|
847
|
-
readonly pluginId: string;
|
|
848
|
-
readonly url: string;
|
|
849
|
-
}, "noEmptyNamedBlocksOnly" | "noEmptyNamedBlocksWithOther", undefined>, import("@flint.fyi/core").Rule<{
|
|
495
|
+
}, "noEmptyNamedBlocksOnly" | "noEmptyNamedBlocksWithOther", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
850
496
|
readonly description: "Reports imports that use inline type qualifiers on all specifiers when a top-level type qualifier should be used instead.";
|
|
851
497
|
readonly id: "importTypeSideEffects";
|
|
852
498
|
readonly presets: readonly ["logical"];
|
|
853
|
-
} & {
|
|
854
|
-
readonly pluginId: string;
|
|
855
|
-
readonly url: string;
|
|
856
|
-
}, "useTopLevelQualifier", undefined>, import("@flint.fyi/core").Rule<{
|
|
499
|
+
}, "useTopLevelQualifier", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
857
500
|
readonly description: "Reports indexed object types that don't match the configured style.";
|
|
858
501
|
readonly id: "indexedObjectTypes";
|
|
859
502
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
860
|
-
} & {
|
|
861
|
-
readonly pluginId: string;
|
|
862
|
-
readonly url: string;
|
|
863
503
|
}, "preferIndexSignature" | "preferRecord", {
|
|
864
504
|
style: import("zod/v4").ZodDefault<import("zod/v4").ZodEnum<{
|
|
865
505
|
record: "record";
|
|
866
506
|
"index-signature": "index-signature";
|
|
867
507
|
}>>;
|
|
868
|
-
}>, import("@flint.fyi/core").Rule<{
|
|
508
|
+
}>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
869
509
|
readonly description: "Reports using `instanceof Array` instead of `Array.isArray()`.";
|
|
870
510
|
readonly id: "instanceOfArrays";
|
|
871
511
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
872
|
-
} & {
|
|
873
|
-
readonly pluginId: string;
|
|
874
|
-
readonly url: string;
|
|
875
|
-
}, "useArrayIsArray", undefined>, import("@flint.fyi/core").Rule<{
|
|
512
|
+
}, "useArrayIsArray", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
876
513
|
readonly description: "Reports irregular whitespace characters that can cause issues with code parsing and display.";
|
|
877
514
|
readonly id: "irregularWhitespaces";
|
|
878
515
|
readonly presets: readonly ["logical"];
|
|
879
|
-
} & {
|
|
880
|
-
readonly pluginId: string;
|
|
881
|
-
readonly url: string;
|
|
882
516
|
}, "irregularWhitespace", {
|
|
883
517
|
skipComments: import("zod/v4").ZodDefault<import("zod/v4").ZodBoolean>;
|
|
884
518
|
skipJSXText: import("zod/v4").ZodDefault<import("zod/v4").ZodBoolean>;
|
|
885
519
|
skipRegularExpressions: import("zod/v4").ZodDefault<import("zod/v4").ZodBoolean>;
|
|
886
520
|
skipTemplates: import("zod/v4").ZodDefault<import("zod/v4").ZodBoolean>;
|
|
887
|
-
}>, import("@flint.fyi/core").Rule<{
|
|
521
|
+
}>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
888
522
|
readonly description: "Reports comparisons with NaN, which should use Number.isNaN() instead.";
|
|
889
523
|
readonly id: "isNaNComparisons";
|
|
890
524
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
891
|
-
} & {
|
|
892
|
-
readonly pluginId: string;
|
|
893
|
-
readonly url: string;
|
|
894
|
-
}, "useIsNaN", undefined>, import("@flint.fyi/core").Rule<{
|
|
525
|
+
}, "useIsNaN", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
895
526
|
readonly description: "Prefers literal syntax over constructor function calls for primitive values.";
|
|
896
527
|
readonly id: "literalConstructorWrappers";
|
|
897
528
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
898
|
-
} & {
|
|
899
|
-
readonly pluginId: string;
|
|
900
|
-
readonly url: string;
|
|
901
|
-
}, "preferLiteral", undefined>, import("@flint.fyi/core").Rule<{
|
|
529
|
+
}, "preferLiteral", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
902
530
|
readonly description: "Prefer modern Math methods over legacy patterns.";
|
|
903
531
|
readonly id: "mathMethods";
|
|
904
532
|
readonly presets: readonly ["stylisticStrict"];
|
|
905
|
-
} & {
|
|
906
|
-
readonly pluginId: string;
|
|
907
|
-
readonly url: string;
|
|
908
|
-
}, "preferModernMath", undefined>, import("@flint.fyi/core").Rule<{
|
|
533
|
+
}, "preferModernMath", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
909
534
|
readonly description: "Reports using the void operator on expressions that are already void or undefined.";
|
|
910
535
|
readonly id: "meaninglessVoidOperators";
|
|
911
536
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
912
|
-
} & {
|
|
913
|
-
readonly pluginId: string;
|
|
914
|
-
readonly url: string;
|
|
915
|
-
}, "meaninglessVoid", undefined>, import("@flint.fyi/core").Rule<{
|
|
537
|
+
}, "meaninglessVoid", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
916
538
|
readonly description: "Require expressions of type void to appear in statement position.";
|
|
917
539
|
readonly id: "misleadingVoidExpressions";
|
|
918
540
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
919
|
-
} & {
|
|
920
|
-
readonly pluginId: string;
|
|
921
|
-
readonly url: string;
|
|
922
|
-
}, "voidExpressionArrow" | "voidExpressionReturn" | "voidExpressionValue", undefined>, import("@flint.fyi/core").Rule<{
|
|
541
|
+
}, "voidExpressionArrow" | "voidExpressionReturn" | "voidExpressionValue", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
923
542
|
readonly description: "Require non-empty specifier lists in import and export statements.";
|
|
924
543
|
readonly id: "moduleSpecifierLists";
|
|
925
544
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
926
|
-
} & {
|
|
927
|
-
readonly pluginId: string;
|
|
928
|
-
readonly url: string;
|
|
929
|
-
}, "emptyExportSpecifiers" | "emptyImportSpecifiers", undefined>, import("@flint.fyi/core").Rule<{
|
|
545
|
+
}, "emptyExportSpecifiers" | "emptyImportSpecifiers", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
930
546
|
readonly description: "Reports ambiguous multiline expressions that could be misinterpreted.";
|
|
931
547
|
readonly id: "multilineAmbiguities";
|
|
932
548
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
933
|
-
} & {
|
|
934
|
-
readonly pluginId: string;
|
|
935
|
-
readonly url: string;
|
|
936
|
-
}, "ambiguity", undefined>, import("@flint.fyi/core").Rule<{
|
|
549
|
+
}, "ambiguity", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
937
550
|
readonly description: "Reports anonymous functions and classes as the default export.";
|
|
938
551
|
readonly id: "namedDefaultExports";
|
|
939
552
|
readonly presets: readonly ["stylisticStrict"];
|
|
940
|
-
} & {
|
|
941
|
-
readonly pluginId: string;
|
|
942
|
-
readonly url: string;
|
|
943
|
-
}, "anonymousClass" | "anonymousFunction", undefined>, import("@flint.fyi/core").Rule<{
|
|
553
|
+
}, "anonymousClass" | "anonymousFunction", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
944
554
|
readonly description: "Reports using legacy `namespace` declarations.";
|
|
945
555
|
readonly id: "namespaceDeclarations";
|
|
946
556
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
947
|
-
} & {
|
|
948
|
-
readonly pluginId: string;
|
|
949
|
-
readonly url: string;
|
|
950
557
|
}, "preferModules", {
|
|
951
558
|
allowDeclarations: import("zod/v4").ZodDefault<import("zod/v4").ZodBoolean>;
|
|
952
559
|
allowDefinitionFiles: import("zod/v4").ZodDefault<import("zod/v4").ZodBoolean>;
|
|
953
|
-
}>, import("@flint.fyi/core").Rule<{
|
|
560
|
+
}>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
954
561
|
readonly description: "Reports declared namespaces that implicitly export all members.";
|
|
955
562
|
readonly id: "namespaceImplicitAmbientImports";
|
|
956
563
|
readonly presets: readonly ["stylisticStrict"];
|
|
957
|
-
} & {
|
|
958
|
-
readonly pluginId: string;
|
|
959
|
-
readonly url: string;
|
|
960
|
-
}, "implicitExports", undefined>, import("@flint.fyi/core").Rule<{
|
|
564
|
+
}, "implicitExports", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
961
565
|
readonly description: "Reports extending the prototype of native JavaScript objects.";
|
|
962
566
|
readonly id: "nativeObjectExtensions";
|
|
963
567
|
readonly presets: readonly ["javascript"];
|
|
964
|
-
} & {
|
|
965
|
-
readonly pluginId: string;
|
|
966
|
-
readonly url: string;
|
|
967
|
-
}, "noExtendNative", undefined>, import("@flint.fyi/core").Rule<{
|
|
568
|
+
}, "noExtendNative", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
968
569
|
readonly description: "Prefer negative index over `.length - index` for `at`, `slice`, `splice`, and similar methods.";
|
|
969
570
|
readonly id: "negativeIndexLengthMethods";
|
|
970
571
|
readonly presets: readonly ["stylisticStrict"];
|
|
971
|
-
} & {
|
|
972
|
-
readonly pluginId: string;
|
|
973
|
-
readonly url: string;
|
|
974
|
-
}, "preferNegativeIndex", undefined>, import("@flint.fyi/core").Rule<{
|
|
572
|
+
}, "preferNegativeIndex", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
975
573
|
readonly description: "Reports comparisons with -0 that may not behave as expected.";
|
|
976
574
|
readonly id: "negativeZeroComparisons";
|
|
977
575
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
978
|
-
} & {
|
|
979
|
-
readonly pluginId: string;
|
|
980
|
-
readonly url: string;
|
|
981
|
-
}, "unexpectedNegativeZeroComparison", undefined>, import("@flint.fyi/core").Rule<{
|
|
576
|
+
}, "unexpectedNegativeZeroComparison", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
982
577
|
readonly description: "Reports `if` statements that are the only statement inside an `else` block or inside another `if` without an `else`.";
|
|
983
578
|
readonly id: "nestedStandaloneIfs";
|
|
984
579
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
985
|
-
} & {
|
|
986
|
-
readonly pluginId: string;
|
|
987
|
-
readonly url: string;
|
|
988
|
-
}, "lonelyIfInElse" | "lonelyIfInIf", undefined>, import("@flint.fyi/core").Rule<{
|
|
580
|
+
}, "lonelyIfInElse" | "lonelyIfInIf", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
989
581
|
readonly description: "Reports misleading constructor and `new` definitions in interfaces and classes.";
|
|
990
582
|
readonly id: "newDefinitions";
|
|
991
583
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
992
|
-
} & {
|
|
993
|
-
readonly pluginId: string;
|
|
994
|
-
readonly url: string;
|
|
995
|
-
}, "classMethodNamedNew" | "interfaceConstructSignature" | "interfaceMethodNamedConstructor", undefined>, import("@flint.fyi/core").Rule<{
|
|
584
|
+
}, "classMethodNamedNew" | "interfaceConstructSignature" | "interfaceMethodNamedConstructor", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
996
585
|
readonly description: "Reports standalone new expressions that don't use the constructed object.";
|
|
997
586
|
readonly id: "newExpressions";
|
|
998
587
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
999
|
-
} & {
|
|
1000
|
-
readonly pluginId: string;
|
|
1001
|
-
readonly url: string;
|
|
1002
|
-
}, "noStandaloneNew", undefined>, import("@flint.fyi/core").Rule<{
|
|
588
|
+
}, "noStandaloneNew", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1003
589
|
readonly description: "Disallows using `new` with global non-constructor functions like Symbol and BigInt.";
|
|
1004
590
|
readonly id: "newNativeNonConstructors";
|
|
1005
591
|
readonly presets: readonly ["javascript"];
|
|
1006
|
-
} & {
|
|
1007
|
-
readonly pluginId: string;
|
|
1008
|
-
readonly url: string;
|
|
1009
|
-
}, "noNewNonConstructor", undefined>, import("@flint.fyi/core").Rule<{
|
|
592
|
+
}, "noNewNonConstructor", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1010
593
|
readonly description: "Reports type assertions that can be replaced with non-null assertions.";
|
|
1011
594
|
readonly id: "nonNullableTypeAssertions";
|
|
1012
595
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1013
|
-
} & {
|
|
1014
|
-
readonly pluginId: string;
|
|
1015
|
-
readonly url: string;
|
|
1016
|
-
}, "preferNonNullAssertion", undefined>, import("@flint.fyi/core").Rule<{
|
|
596
|
+
}, "preferNonNullAssertion", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1017
597
|
readonly description: "Reports non-null assertions on the left side of nullish coalescing operators.";
|
|
1018
598
|
readonly id: "nonNullAssertedNullishCoalesces";
|
|
1019
599
|
readonly presets: readonly ["logicalStrict"];
|
|
1020
|
-
} & {
|
|
1021
|
-
readonly pluginId: string;
|
|
1022
|
-
readonly url: string;
|
|
1023
|
-
}, "unnecessaryNonNullAssertion", undefined>, import("@flint.fyi/core").Rule<{
|
|
600
|
+
}, "unnecessaryNonNullAssertion", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1024
601
|
readonly description: "Reports non-null assertions on optional chain expressions.";
|
|
1025
602
|
readonly id: "nonNullAssertedOptionalChains";
|
|
1026
603
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1027
|
-
} & {
|
|
1028
|
-
readonly pluginId: string;
|
|
1029
|
-
readonly url: string;
|
|
1030
|
-
}, "nonNullOptionalChain", undefined>, import("@flint.fyi/core").Rule<{
|
|
604
|
+
}, "nonNullOptionalChain", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1031
605
|
readonly description: "Reports confusing placement of non-null assertions next to comparison or assignment operators.";
|
|
1032
606
|
readonly id: "nonNullAssertionPlacement";
|
|
1033
607
|
readonly presets: readonly ["stylisticStrict"];
|
|
1034
|
-
} & {
|
|
1035
|
-
readonly pluginId: string;
|
|
1036
|
-
readonly url: string;
|
|
1037
|
-
}, "confusingAssign" | "confusingEqual" | "confusingOperator", undefined>, import("@flint.fyi/core").Rule<{
|
|
608
|
+
}, "confusingAssign" | "confusingEqual" | "confusingOperator", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1038
609
|
readonly description: "Reports non-octal decimal escape sequences (\\8 and \\9) in string literals.";
|
|
1039
610
|
readonly id: "nonOctalDecimalEscapes";
|
|
1040
611
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1041
|
-
} & {
|
|
1042
|
-
readonly pluginId: string;
|
|
1043
|
-
readonly url: string;
|
|
1044
|
-
}, "unexpectedEscape", undefined>, import("@flint.fyi/core").Rule<{
|
|
612
|
+
}, "unexpectedEscape", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1045
613
|
readonly description: "Enforces consistent equality operator usage when comparing with null or undefined.";
|
|
1046
614
|
readonly id: "nullishCheckStyle";
|
|
1047
|
-
} & {
|
|
1048
|
-
readonly pluginId: string;
|
|
1049
|
-
readonly url: string;
|
|
1050
615
|
}, "preferLooseNull" | "preferLooseNullish" | "preferLooseUndefined" | "preferStrictNullish", {
|
|
1051
616
|
looseNullishComparisonStyle: import("zod/v4").ZodDefault<import("zod/v4").ZodEnum<{
|
|
1052
617
|
"prefer-null": "prefer-null";
|
|
@@ -1058,13 +623,10 @@ declare const ts: import("@flint.fyi/core").Plugin<import("@flint.fyi/core").Rul
|
|
|
1058
623
|
"double-equals": "double-equals";
|
|
1059
624
|
"triple-equals": "triple-equals";
|
|
1060
625
|
}>>;
|
|
1061
|
-
}>, import("@flint.fyi/core").Rule<{
|
|
626
|
+
}>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1062
627
|
readonly description: "Prefer nullish coalescing operator (??) over logical OR (||) for nullish values.";
|
|
1063
628
|
readonly id: "nullishCoalescingOperators";
|
|
1064
629
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1065
|
-
} & {
|
|
1066
|
-
readonly pluginId: string;
|
|
1067
|
-
readonly url: string;
|
|
1068
630
|
}, "preferNullish" | "preferNullishAssignment" | "preferNullishTernary", {
|
|
1069
631
|
ignoreConditionalTests: import("zod/v4").ZodDefault<import("zod/v4").ZodBoolean>;
|
|
1070
632
|
ignoreIfStatements: import("zod/v4").ZodDefault<import("zod/v4").ZodBoolean>;
|
|
@@ -1076,741 +638,426 @@ declare const ts: import("@flint.fyi/core").Plugin<import("@flint.fyi/core").Rul
|
|
|
1076
638
|
boolean: "boolean";
|
|
1077
639
|
}>, import("zod/v4").ZodBoolean>]>>;
|
|
1078
640
|
ignoreTernaryTests: import("zod/v4").ZodDefault<import("zod/v4").ZodBoolean>;
|
|
1079
|
-
}>, import("@flint.fyi/core").Rule<{
|
|
641
|
+
}>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1080
642
|
readonly description: "Reports when number method arguments are outside their valid range.";
|
|
1081
643
|
readonly id: "numberMethodRanges";
|
|
1082
644
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1083
|
-
} & {
|
|
1084
|
-
readonly pluginId: string;
|
|
1085
|
-
readonly url: string;
|
|
1086
|
-
}, "outOfRange", undefined>, import("@flint.fyi/core").Rule<{
|
|
645
|
+
}, "outOfRange", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1087
646
|
readonly description: "Reports using legacy global functions instead of `Number` static methods.";
|
|
1088
647
|
readonly id: "numberStaticMethods";
|
|
1089
648
|
readonly presets: readonly ["logicalStrict"];
|
|
1090
|
-
} & {
|
|
1091
|
-
readonly pluginId: string;
|
|
1092
|
-
readonly url: string;
|
|
1093
|
-
}, "preferNumberMethod", undefined>, import("@flint.fyi/core").Rule<{
|
|
649
|
+
}, "preferNumberMethod", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1094
650
|
readonly description: "Reports operations that always result in zero, such as multiplication by zero.";
|
|
1095
651
|
readonly id: "numericErasingOperations";
|
|
1096
652
|
readonly presets: readonly ["logicalStrict"];
|
|
1097
|
-
} & {
|
|
1098
|
-
readonly pluginId: string;
|
|
1099
|
-
readonly url: string;
|
|
1100
|
-
}, "erasingOperation", undefined>, import("@flint.fyi/core").Rule<{
|
|
653
|
+
}, "erasingOperation", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1101
654
|
readonly description: "Reports parseInt calls with binary, hexadecimal, or octal strings that can be replaced with numeric literals.";
|
|
1102
655
|
readonly id: "numericLiteralParsing";
|
|
1103
656
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1104
|
-
} & {
|
|
1105
|
-
readonly pluginId: string;
|
|
1106
|
-
readonly url: string;
|
|
1107
|
-
}, "preferLiteral", undefined>, import("@flint.fyi/core").Rule<{
|
|
657
|
+
}, "preferLiteral", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1108
658
|
readonly description: "Reports numeric literals that lose precision when converted to JavaScript numbers.";
|
|
1109
659
|
readonly id: "numericPrecision";
|
|
1110
660
|
readonly presets: readonly ["logicalStrict"];
|
|
1111
|
-
} & {
|
|
1112
|
-
readonly pluginId: string;
|
|
1113
|
-
readonly url: string;
|
|
1114
|
-
}, "lossOfPrecision", undefined>, import("@flint.fyi/core").Rule<{
|
|
661
|
+
}, "lossOfPrecision", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1115
662
|
readonly description: "Reports numeric literals with inconsistent separator grouping.";
|
|
1116
663
|
readonly id: "numericSeparatorGroups";
|
|
1117
664
|
readonly presets: readonly ["stylisticStrict"];
|
|
1118
|
-
} & {
|
|
1119
|
-
readonly pluginId: string;
|
|
1120
|
-
readonly url: string;
|
|
1121
|
-
}, "invalidGrouping", undefined>, import("@flint.fyi/core").Rule<{
|
|
665
|
+
}, "invalidGrouping", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1122
666
|
readonly description: "Prefer object spread syntax over `Object.assign()` when the first argument is an object literal.";
|
|
1123
667
|
readonly id: "objectAssignSpreads";
|
|
1124
668
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1125
|
-
} & {
|
|
1126
|
-
readonly pluginId: string;
|
|
1127
|
-
readonly url: string;
|
|
1128
|
-
}, "preferObjectLiteral" | "preferObjectSpread", undefined>, import("@flint.fyi/core").Rule<{
|
|
669
|
+
}, "preferObjectLiteral" | "preferObjectSpread", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1129
670
|
readonly description: "Prefer `{}` object literal notation or `Object.create` instead of calling or constructing `Object`.";
|
|
1130
671
|
readonly id: "objectCalls";
|
|
1131
672
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1132
|
-
} & {
|
|
1133
|
-
readonly pluginId: string;
|
|
1134
|
-
readonly url: string;
|
|
1135
|
-
}, "preferObjectLiteral", undefined>, import("@flint.fyi/core").Rule<{
|
|
673
|
+
}, "preferObjectLiteral", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1136
674
|
readonly description: "Prefer Object.fromEntries() over reduce patterns that build objects from key-value pairs.";
|
|
1137
675
|
readonly id: "objectEntriesMethods";
|
|
1138
676
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1139
|
-
} & {
|
|
1140
|
-
readonly pluginId: string;
|
|
1141
|
-
readonly url: string;
|
|
1142
|
-
}, "preferFromEntries", undefined>, import("@flint.fyi/core").Rule<{
|
|
677
|
+
}, "preferFromEntries", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1143
678
|
readonly description: "Prefer Object.hasOwn() over Object.prototype.hasOwnProperty.call() for checking own properties.";
|
|
1144
679
|
readonly id: "objectHasOwns";
|
|
1145
680
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1146
|
-
} & {
|
|
1147
|
-
readonly pluginId: string;
|
|
1148
|
-
readonly url: string;
|
|
1149
|
-
}, "preferHasOwn", undefined>, import("@flint.fyi/core").Rule<{
|
|
681
|
+
}, "preferHasOwn", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1150
682
|
readonly description: "Reports unnecessary duplicate keys that override previous values.";
|
|
1151
683
|
readonly id: "objectKeyDuplicates";
|
|
1152
684
|
readonly presets: readonly ["javascript"];
|
|
1153
|
-
} & {
|
|
1154
|
-
readonly pluginId: string;
|
|
1155
|
-
readonly url: string;
|
|
1156
|
-
}, "duplicateKey", undefined>, import("@flint.fyi/core").Rule<{
|
|
685
|
+
}, "duplicateKey", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1157
686
|
readonly description: "Reports using the deprecated __proto__ property to access or modify an object's prototype.";
|
|
1158
687
|
readonly id: "objectProto";
|
|
1159
688
|
readonly presets: readonly ["javascript"];
|
|
1160
|
-
} & {
|
|
1161
|
-
readonly pluginId: string;
|
|
1162
|
-
readonly url: string;
|
|
1163
|
-
}, "noProto", undefined>, import("@flint.fyi/core").Rule<{
|
|
689
|
+
}, "noProto", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1164
690
|
readonly description: "Reports direct calls to Object.prototype methods on object instances.";
|
|
1165
691
|
readonly id: "objectPrototypeBuiltIns";
|
|
1166
692
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1167
|
-
} & {
|
|
1168
|
-
readonly pluginId: string;
|
|
1169
|
-
readonly url: string;
|
|
1170
|
-
}, "prototypeBuiltIn", undefined>, import("@flint.fyi/core").Rule<{
|
|
693
|
+
}, "prototypeBuiltIn", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1171
694
|
readonly description: "Object property and method definitions can use shorthand syntax when the key matches the value identifier or when a function expression is assigned.";
|
|
1172
695
|
readonly id: "objectShorthand";
|
|
1173
696
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1174
|
-
} & {
|
|
1175
|
-
readonly pluginId: string;
|
|
1176
|
-
readonly url: string;
|
|
1177
|
-
}, "expectedMethodShorthand" | "expectedPropertyShorthand", undefined>, import("@flint.fyi/core").Rule<{
|
|
697
|
+
}, "expectedMethodShorthand" | "expectedPropertyShorthand", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1178
698
|
readonly description: "Reports empty object fallbacks in object spread expressions that have no effect.";
|
|
1179
699
|
readonly id: "objectSpreadUnnecessaryFallbacks";
|
|
1180
700
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1181
|
-
} & {
|
|
1182
|
-
readonly pluginId: string;
|
|
1183
|
-
readonly url: string;
|
|
1184
|
-
}, "unnecessaryFallback", undefined>, import("@flint.fyi/core").Rule<{
|
|
701
|
+
}, "unnecessaryFallback", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1185
702
|
readonly description: "Prefer interface declarations over type aliases for object types.";
|
|
1186
703
|
readonly id: "objectTypeDefinitions";
|
|
1187
704
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1188
|
-
} & {
|
|
1189
|
-
readonly pluginId: string;
|
|
1190
|
-
readonly url: string;
|
|
1191
|
-
}, "preferInterface", undefined>, import("@flint.fyi/core").Rule<{
|
|
705
|
+
}, "preferInterface", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1192
706
|
readonly description: "Reports using octal escape sequences in string literals.";
|
|
1193
707
|
readonly id: "octalEscapes";
|
|
1194
708
|
readonly presets: readonly ["javascript"];
|
|
1195
|
-
} & {
|
|
1196
|
-
readonly pluginId: string;
|
|
1197
|
-
readonly url: string;
|
|
1198
|
-
}, "noOctalEscape", undefined>, import("@flint.fyi/core").Rule<{
|
|
709
|
+
}, "noOctalEscape", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1199
710
|
readonly description: "Prefer assignment operator shorthand where possible.";
|
|
1200
711
|
readonly id: "operatorAssignmentShorthand";
|
|
1201
712
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1202
|
-
} & {
|
|
1203
|
-
readonly pluginId: string;
|
|
1204
|
-
readonly url: string;
|
|
1205
|
-
}, "preferShorthand", undefined>, import("@flint.fyi/core").Rule<{
|
|
713
|
+
}, "preferShorthand", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1206
714
|
readonly description: "Require that function overload signatures be consecutive.";
|
|
1207
715
|
readonly id: "overloadSignaturesAdjacent";
|
|
1208
716
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1209
|
-
} & {
|
|
1210
|
-
readonly pluginId: string;
|
|
1211
|
-
readonly url: string;
|
|
1212
|
-
}, "overloadSignatureSeparated", undefined>, import("@flint.fyi/core").Rule<{
|
|
717
|
+
}, "overloadSignatureSeparated", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1213
718
|
readonly description: "Disallow reassignment of function parameters.";
|
|
1214
719
|
readonly id: "parameterReassignments";
|
|
1215
720
|
readonly presets: readonly ["logical"];
|
|
1216
|
-
} & {
|
|
1217
|
-
readonly pluginId: string;
|
|
1218
|
-
readonly url: string;
|
|
1219
|
-
}, "parameterReassignment", undefined>, import("@flint.fyi/core").Rule<{
|
|
721
|
+
}, "parameterReassignment", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1220
722
|
readonly description: "Reports parseInt calls that are missing or have an invalid radix parameter.";
|
|
1221
723
|
readonly id: "parseIntRadixes";
|
|
1222
724
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1223
|
-
} & {
|
|
1224
|
-
readonly pluginId: string;
|
|
1225
|
-
readonly url: string;
|
|
1226
|
-
}, "invalidRadix" | "missingRadix", undefined>, import("@flint.fyi/core").Rule<{
|
|
725
|
+
}, "invalidRadix" | "missingRadix", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1227
726
|
readonly description: "Reports bracket notation property access when dot notation can be used.";
|
|
1228
727
|
readonly id: "propertyAccessNotation";
|
|
1229
728
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1230
|
-
} & {
|
|
1231
|
-
readonly pluginId: string;
|
|
1232
|
-
readonly url: string;
|
|
1233
729
|
}, "preferDotNotation", {
|
|
1234
730
|
allowIndexSignaturePropertyAccess: import("zod/v4").ZodDefault<import("zod/v4").ZodBoolean>;
|
|
1235
|
-
}>, import("@flint.fyi/core").Rule<{
|
|
731
|
+
}>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1236
732
|
readonly description: "Reports function parameters that are only used in recursive calls.";
|
|
1237
733
|
readonly id: "recursionOnlyArguments";
|
|
1238
734
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1239
|
-
} & {
|
|
1240
|
-
readonly pluginId: string;
|
|
1241
|
-
readonly url: string;
|
|
1242
|
-
}, "onlyUsedInRecursion", undefined>, import("@flint.fyi/core").Rule<{
|
|
735
|
+
}, "onlyUsedInRecursion", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1243
736
|
readonly description: "Reports union and intersection type constituents that are redundant or override other types.";
|
|
1244
737
|
readonly id: "redundantTypeConstituents";
|
|
1245
738
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1246
|
-
} & {
|
|
1247
|
-
readonly pluginId: string;
|
|
1248
|
-
readonly url: string;
|
|
1249
|
-
}, "errorTypeOverrides" | "literalOverridden" | "overridden" | "overrides" | "primitiveOverridden", undefined>, import("@flint.fyi/core").Rule<{
|
|
739
|
+
}, "errorTypeOverrides" | "literalOverridden" | "overridden" | "overrides" | "primitiveOverridden", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1250
740
|
readonly description: "Reports `matchAll()` and `replaceAll()` calls with regex arguments missing the global flag.";
|
|
1251
741
|
readonly id: "regexAllGlobalFlags";
|
|
1252
742
|
readonly presets: readonly ["logical"];
|
|
1253
|
-
} & {
|
|
1254
|
-
readonly pluginId: string;
|
|
1255
|
-
readonly url: string;
|
|
1256
|
-
}, "missingGlobalFlag", undefined>, import("@flint.fyi/core").Rule<{
|
|
743
|
+
}, "missingGlobalFlag", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1257
744
|
readonly description: "Reports regex patterns that use ambiguous or invalid syntax from Annex B.";
|
|
1258
745
|
readonly id: "regexAmbiguousInvalidity";
|
|
1259
746
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1260
|
-
} & {
|
|
1261
|
-
readonly pluginId: string;
|
|
1262
|
-
readonly url: string;
|
|
1263
|
-
}, "incompleteBackreference" | "incompleteEscapeSequence" | "invalidControlEscape" | "invalidPropertyEscape" | "invalidRange" | "octalEscape" | "quantifiedAssertion" | "regexMessage" | "unescapedSourceCharacter" | "uselessEscape", undefined>, import("@flint.fyi/core").Rule<{
|
|
747
|
+
}, "incompleteBackreference" | "incompleteEscapeSequence" | "invalidControlEscape" | "invalidPropertyEscape" | "invalidRange" | "octalEscape" | "quantifiedAssertion" | "regexMessage" | "unescapedSourceCharacter" | "uselessEscape", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1264
748
|
readonly description: "Reports regex alternations that can be simplified to character classes.";
|
|
1265
749
|
readonly id: "regexCharacterClasses";
|
|
1266
750
|
readonly presets: readonly ["stylisticStrict"];
|
|
1267
|
-
} & {
|
|
1268
|
-
readonly pluginId: string;
|
|
1269
|
-
readonly url: string;
|
|
1270
|
-
}, "preferCharacterClass", undefined>, import("@flint.fyi/core").Rule<{
|
|
751
|
+
}, "preferCharacterClass", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1271
752
|
readonly description: "Reports character class elements that can be simplified to ranges.";
|
|
1272
753
|
readonly id: "regexCharacterClassRanges";
|
|
1273
754
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1274
|
-
} & {
|
|
1275
|
-
readonly pluginId: string;
|
|
1276
|
-
readonly url: string;
|
|
1277
|
-
}, "preferRange", undefined>, import("@flint.fyi/core").Rule<{
|
|
755
|
+
}, "preferRange", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1278
756
|
readonly description: "Reports lookarounds that can be replaced with character class set operations.";
|
|
1279
757
|
readonly id: "regexCharacterClassSetOperations";
|
|
1280
758
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1281
|
-
} & {
|
|
1282
|
-
readonly pluginId: string;
|
|
1283
|
-
readonly url: string;
|
|
1284
|
-
}, "preferSetOperation", undefined>, import("@flint.fyi/core").Rule<{
|
|
759
|
+
}, "preferSetOperation", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1285
760
|
readonly description: "Reports negated character classes that can use shorthand escapes.";
|
|
1286
761
|
readonly id: "regexConciseCharacterClassNegations";
|
|
1287
762
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1288
|
-
} & {
|
|
1289
|
-
readonly pluginId: string;
|
|
1290
|
-
readonly url: string;
|
|
1291
|
-
}, "preferNegatedEscape", undefined>, import("@flint.fyi/core").Rule<{
|
|
763
|
+
}, "preferNegatedEscape", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1292
764
|
readonly description: "Reports elements in regular expressions that contradict assertions.";
|
|
1293
765
|
readonly id: "regexContradictoryAssertions";
|
|
1294
766
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1295
|
-
} & {
|
|
1296
|
-
readonly pluginId: string;
|
|
1297
|
-
readonly url: string;
|
|
1298
|
-
}, "alwaysEnter" | "cannotEnter", undefined>, import("@flint.fyi/core").Rule<{
|
|
767
|
+
}, "alwaysEnter" | "cannotEnter", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1299
768
|
readonly description: "Reports control characters that are not escaped using standard escape sequences.";
|
|
1300
769
|
readonly id: "regexControlCharacterEscapes";
|
|
1301
770
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1302
|
-
} & {
|
|
1303
|
-
readonly pluginId: string;
|
|
1304
|
-
readonly url: string;
|
|
1305
|
-
}, "preferStandardEscape", undefined>, import("@flint.fyi/core").Rule<{
|
|
771
|
+
}, "preferStandardEscape", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1306
772
|
readonly description: "Reports control characters in regular expressions.";
|
|
1307
773
|
readonly id: "regexControlCharacters";
|
|
1308
774
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1309
|
-
} & {
|
|
1310
|
-
readonly pluginId: string;
|
|
1311
|
-
readonly url: string;
|
|
1312
|
-
}, "unexpectedControlChar", undefined>, import("@flint.fyi/core").Rule<{
|
|
775
|
+
}, "unexpectedControlChar", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1313
776
|
readonly description: "Reports character classes with multiple adjacent characters that could use a range instead.";
|
|
1314
777
|
readonly id: "regexDigitMatchers";
|
|
1315
778
|
readonly presets: readonly ["stylisticStrict"];
|
|
1316
|
-
} & {
|
|
1317
|
-
readonly pluginId: string;
|
|
1318
|
-
readonly url: string;
|
|
1319
|
-
}, "preferRange", undefined>, import("@flint.fyi/core").Rule<{
|
|
779
|
+
}, "preferRange", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1320
780
|
readonly description: "Reports replacement strings with unescaped `$` that should use `$$`.";
|
|
1321
781
|
readonly id: "regexDollarEscapes";
|
|
1322
782
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1323
|
-
} & {
|
|
1324
|
-
readonly pluginId: string;
|
|
1325
|
-
readonly url: string;
|
|
1326
|
-
}, "unescapedDollar", undefined>, import("@flint.fyi/core").Rule<{
|
|
783
|
+
}, "unescapedDollar", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1327
784
|
readonly description: "Reports duplicate characters in regular expression character classes.";
|
|
1328
785
|
readonly id: "regexDuplicateCharacterClassCharacters";
|
|
1329
786
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1330
|
-
} & {
|
|
1331
|
-
readonly pluginId: string;
|
|
1332
|
-
readonly url: string;
|
|
1333
|
-
}, "duplicate" | "includedInRange", undefined>, import("@flint.fyi/core").Rule<{
|
|
787
|
+
}, "duplicate" | "includedInRange", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1334
788
|
readonly description: "Reports empty alternatives in regular expressions that may indicate a mistake.";
|
|
1335
789
|
readonly id: "regexEmptyAlternatives";
|
|
1336
790
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1337
|
-
} & {
|
|
1338
|
-
readonly pluginId: string;
|
|
1339
|
-
readonly url: string;
|
|
1340
|
-
}, "emptyAlternative", undefined>, import("@flint.fyi/core").Rule<{
|
|
791
|
+
}, "emptyAlternative", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1341
792
|
readonly description: "Reports capturing groups that only capture empty strings.";
|
|
1342
793
|
readonly id: "regexEmptyCapturingGroups";
|
|
1343
794
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1344
|
-
} & {
|
|
1345
|
-
readonly pluginId: string;
|
|
1346
|
-
readonly url: string;
|
|
1347
|
-
}, "emptyCapture", undefined>, import("@flint.fyi/core").Rule<{
|
|
795
|
+
}, "emptyCapture", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1348
796
|
readonly description: "Reports character classes that match no characters.";
|
|
1349
797
|
readonly id: "regexEmptyCharacterClasses";
|
|
1350
798
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1351
|
-
} & {
|
|
1352
|
-
readonly pluginId: string;
|
|
1353
|
-
readonly url: string;
|
|
1354
|
-
}, "empty", undefined>, import("@flint.fyi/core").Rule<{
|
|
799
|
+
}, "empty", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1355
800
|
readonly description: "Reports empty groups in regular expressions.";
|
|
1356
801
|
readonly id: "regexEmptyGroups";
|
|
1357
802
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1358
|
-
} & {
|
|
1359
|
-
readonly pluginId: string;
|
|
1360
|
-
readonly url: string;
|
|
1361
|
-
}, "emptyGroup", undefined>, import("@flint.fyi/core").Rule<{
|
|
803
|
+
}, "emptyGroup", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1362
804
|
readonly description: "Reports lazy quantifiers at the end of regular expressions.";
|
|
1363
805
|
readonly id: "regexEmptyLazyQuantifiers";
|
|
1364
806
|
readonly presets: readonly ["logical"];
|
|
1365
|
-
} & {
|
|
1366
|
-
readonly pluginId: string;
|
|
1367
|
-
readonly url: string;
|
|
1368
|
-
}, "uselessElement" | "uselessQuantifier" | "uselessRange", undefined>, import("@flint.fyi/core").Rule<{
|
|
807
|
+
}, "uselessElement" | "uselessQuantifier" | "uselessRange", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1369
808
|
readonly description: "Reports empty lookahead and lookbehind assertions in regular expressions.";
|
|
1370
809
|
readonly id: "regexEmptyLookaroundsAssertions";
|
|
1371
810
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1372
|
-
} & {
|
|
1373
|
-
readonly pluginId: string;
|
|
1374
|
-
readonly url: string;
|
|
1375
|
-
}, "emptyLookaround", undefined>, import("@flint.fyi/core").Rule<{
|
|
811
|
+
}, "emptyLookaround", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1376
812
|
readonly description: "Reports empty string literals in character classes.";
|
|
1377
813
|
readonly id: "regexEmptyStringLiterals";
|
|
1378
814
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1379
|
-
} & {
|
|
1380
|
-
readonly pluginId: string;
|
|
1381
|
-
readonly url: string;
|
|
1382
|
-
}, "emptyStringLiteral", undefined>, import("@flint.fyi/core").Rule<{
|
|
815
|
+
}, "emptyStringLiteral", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1383
816
|
readonly description: "Reports escape backspace (`[\\b]`) in character classes.";
|
|
1384
817
|
readonly id: "regexEscapeBackspaces";
|
|
1385
818
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1386
|
-
} & {
|
|
1387
|
-
readonly pluginId: string;
|
|
1388
|
-
readonly url: string;
|
|
1389
|
-
}, "escapeBackspace", undefined>, import("@flint.fyi/core").Rule<{
|
|
819
|
+
}, "escapeBackspace", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1390
820
|
readonly description: "Reports String.prototype.match calls that can be replaced with RegExp.prototype.exec.";
|
|
1391
821
|
readonly id: "regexExecutors";
|
|
1392
822
|
readonly presets: readonly ["stylisticStrict"];
|
|
1393
|
-
} & {
|
|
1394
|
-
readonly pluginId: string;
|
|
1395
|
-
readonly url: string;
|
|
1396
|
-
}, "preferExec", undefined>, import("@flint.fyi/core").Rule<{
|
|
823
|
+
}, "preferExec", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1397
824
|
readonly description: "Reports string literals inside character classes with the `v` flag that contain multiple graphemes.";
|
|
1398
825
|
readonly id: "regexGraphemeStringLiterals";
|
|
1399
826
|
readonly presets: readonly ["stylisticStrict"];
|
|
1400
|
-
} & {
|
|
1401
|
-
readonly pluginId: string;
|
|
1402
|
-
readonly url: string;
|
|
1403
|
-
}, "multipleGraphemes", undefined>, import("@flint.fyi/core").Rule<{
|
|
827
|
+
}, "multipleGraphemes", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1404
828
|
readonly description: "Reports regex character escapes that can be expressed more consistently using hexadecimal escapes.";
|
|
1405
829
|
readonly id: "regexHexadecimalEscapes";
|
|
1406
830
|
readonly presets: readonly ["stylisticStrict"];
|
|
1407
|
-
} & {
|
|
1408
|
-
readonly pluginId: string;
|
|
1409
|
-
readonly url: string;
|
|
1410
|
-
}, "preferHexEscape", undefined>, import("@flint.fyi/core").Rule<{
|
|
831
|
+
}, "preferHexEscape", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1411
832
|
readonly description: "Reports regex patterns that can be simplified by using the i (ignore case) flag.";
|
|
1412
833
|
readonly id: "regexIgnoreCaseFlags";
|
|
1413
834
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1414
|
-
} & {
|
|
1415
|
-
readonly pluginId: string;
|
|
1416
|
-
readonly url: string;
|
|
1417
|
-
}, "useIgnoreCase", undefined>, import("@flint.fyi/core").Rule<{
|
|
835
|
+
}, "useIgnoreCase", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1418
836
|
readonly description: "Reports invisible characters in regex patterns that should use escape sequences instead.";
|
|
1419
837
|
readonly id: "regexInvisibleCharacters";
|
|
1420
838
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1421
|
-
} & {
|
|
1422
|
-
readonly pluginId: string;
|
|
1423
|
-
readonly url: string;
|
|
1424
|
-
}, "unexpectedInvisible", undefined>, import("@flint.fyi/core").Rule<{
|
|
839
|
+
}, "unexpectedInvisible", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1425
840
|
readonly description: "Reports inconsistent letter casing in regex sequences.";
|
|
1426
841
|
readonly id: "regexLetterCasing";
|
|
1427
842
|
readonly presets: readonly ["stylisticStrict"];
|
|
1428
|
-
} & {
|
|
1429
|
-
readonly pluginId: string;
|
|
1430
|
-
readonly url: string;
|
|
1431
|
-
}, "unexpectedCase", undefined>, import("@flint.fyi/core").Rule<{
|
|
843
|
+
}, "unexpectedCase", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1432
844
|
readonly description: "Use a regular expression literal when the pattern is static.";
|
|
1433
845
|
readonly id: "regexLiterals";
|
|
1434
846
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1435
|
-
} & {
|
|
1436
|
-
readonly pluginId: string;
|
|
1437
|
-
readonly url: string;
|
|
1438
|
-
}, "preferLiteral", undefined>, import("@flint.fyi/core").Rule<{
|
|
847
|
+
}, "preferLiteral", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1439
848
|
readonly description: "Reports capturing groups at pattern boundaries that can be replaced with lookaround assertions.";
|
|
1440
849
|
readonly id: "regexLookaroundAssertions";
|
|
1441
850
|
readonly presets: readonly ["stylisticStrict"];
|
|
1442
|
-
} & {
|
|
1443
|
-
readonly pluginId: string;
|
|
1444
|
-
readonly url: string;
|
|
1445
|
-
}, "preferLookaround", undefined>, import("@flint.fyi/core").Rule<{
|
|
851
|
+
}, "preferLookaround", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1446
852
|
readonly description: "Reports non-constant quantifiers in lookaround assertions that could be simplified.";
|
|
1447
853
|
readonly id: "regexLookaroundQuantifierOptimizations";
|
|
1448
854
|
readonly presets: readonly ["logical"];
|
|
1449
|
-
} & {
|
|
1450
|
-
readonly pluginId: string;
|
|
1451
|
-
readonly url: string;
|
|
1452
|
-
}, "replace" | "remove", undefined>, import("@flint.fyi/core").Rule<{
|
|
855
|
+
}, "replace" | "remove", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1453
856
|
readonly description: "Reports inconsistent notations for matching any character in regular expressions.";
|
|
1454
857
|
readonly id: "regexMatchNotation";
|
|
1455
858
|
readonly presets: readonly ["stylisticStrict"];
|
|
1456
|
-
} & {
|
|
1457
|
-
readonly pluginId: string;
|
|
1458
|
-
readonly url: string;
|
|
1459
|
-
}, "unexpected", undefined>, import("@flint.fyi/core").Rule<{
|
|
859
|
+
}, "unexpected", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1460
860
|
readonly description: "Reports capturing groups that capture less text than their pattern suggests.";
|
|
1461
861
|
readonly id: "regexMisleadingCapturingGroups";
|
|
1462
862
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1463
|
-
} & {
|
|
1464
|
-
readonly pluginId: string;
|
|
1465
|
-
readonly url: string;
|
|
1466
|
-
}, "misleadingEnd" | "misleadingStart", undefined>, import("@flint.fyi/core").Rule<{
|
|
863
|
+
}, "misleadingEnd" | "misleadingStart", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1467
864
|
readonly description: "Reports quantifiers whose minimum implies they must match but whose element can match empty.";
|
|
1468
865
|
readonly id: "regexMisleadingQuantifiers";
|
|
1469
866
|
readonly presets: readonly ["logical"];
|
|
1470
|
-
} & {
|
|
1471
|
-
readonly pluginId: string;
|
|
1472
|
-
readonly url: string;
|
|
1473
|
-
}, "confusing", undefined>, import("@flint.fyi/core").Rule<{
|
|
867
|
+
}, "confusing", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1474
868
|
readonly description: "Reports characters in regex character classes that appear as single visual characters but are made of multiple code points.";
|
|
1475
869
|
readonly id: "regexMisleadingUnicodeCharacters";
|
|
1476
870
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1477
|
-
} & {
|
|
1478
|
-
readonly pluginId: string;
|
|
1479
|
-
readonly url: string;
|
|
1480
|
-
}, "combiningClass" | "emojiModifier" | "regionalIndicatorSymbol" | "surrogatePair" | "surrogatePairWithoutUFlag" | "zwj", undefined>, import("@flint.fyi/core").Rule<{
|
|
871
|
+
}, "combiningClass" | "emojiModifier" | "regionalIndicatorSymbol" | "surrogatePair" | "surrogatePairWithoutUFlag" | "zwj", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1481
872
|
readonly description: "Reports backreferences that do not use the name of their referenced capturing group.";
|
|
1482
873
|
readonly id: "regexNamedBackreferences";
|
|
1483
874
|
readonly presets: readonly ["stylisticStrict"];
|
|
1484
|
-
} & {
|
|
1485
|
-
readonly pluginId: string;
|
|
1486
|
-
readonly url: string;
|
|
1487
|
-
}, "preferNamed", undefined>, import("@flint.fyi/core").Rule<{
|
|
875
|
+
}, "preferNamed", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1488
876
|
readonly description: "Reports capturing groups in regular expressions that do not have a name.";
|
|
1489
877
|
readonly id: "regexNamedCaptureGroups";
|
|
1490
|
-
} & {
|
|
1491
|
-
readonly pluginId: string;
|
|
1492
|
-
readonly url: string;
|
|
1493
|
-
}, "preferNamed", undefined>, import("@flint.fyi/core").Rule<{
|
|
878
|
+
}, "preferNamed", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1494
879
|
readonly description: "Reports indexed references in replacement strings that should use named references.";
|
|
1495
880
|
readonly id: "regexNamedReplacements";
|
|
1496
881
|
readonly presets: readonly ["stylisticStrict"];
|
|
1497
|
-
} & {
|
|
1498
|
-
readonly pluginId: string;
|
|
1499
|
-
readonly url: string;
|
|
1500
|
-
}, "preferNamed", undefined>, import("@flint.fyi/core").Rule<{
|
|
882
|
+
}, "preferNamed", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1501
883
|
readonly description: "Reports non-standard regular expression flags.";
|
|
1502
884
|
readonly id: "regexNonStandardFlags";
|
|
1503
885
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1504
|
-
} & {
|
|
1505
|
-
readonly pluginId: string;
|
|
1506
|
-
readonly url: string;
|
|
1507
|
-
}, "unexpected", undefined>, import("@flint.fyi/core").Rule<{
|
|
886
|
+
}, "unexpected", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1508
887
|
readonly description: "Reports obscure character ranges in regular expressions.";
|
|
1509
888
|
readonly id: "regexObscureRanges";
|
|
1510
889
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1511
|
-
} & {
|
|
1512
|
-
readonly pluginId: string;
|
|
1513
|
-
readonly url: string;
|
|
1514
|
-
}, "obscure", undefined>, import("@flint.fyi/core").Rule<{
|
|
890
|
+
}, "obscure", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1515
891
|
readonly description: "Reports octal escape sequences in regular expressions.";
|
|
1516
892
|
readonly id: "regexOctalEscapes";
|
|
1517
893
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1518
|
-
} & {
|
|
1519
|
-
readonly pluginId: string;
|
|
1520
|
-
readonly url: string;
|
|
1521
|
-
}, "unexpected", undefined>, import("@flint.fyi/core").Rule<{
|
|
894
|
+
}, "unexpected", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1522
895
|
readonly description: "Reports quantifiers `{1,}` in regular expressions that should use `+` instead.";
|
|
1523
896
|
readonly id: "regexPlusQuantifiers";
|
|
1524
897
|
readonly presets: readonly ["stylisticStrict"];
|
|
1525
|
-
} & {
|
|
1526
|
-
readonly pluginId: string;
|
|
1527
|
-
readonly url: string;
|
|
1528
|
-
}, "preferPlus", undefined>, import("@flint.fyi/core").Rule<{
|
|
898
|
+
}, "preferPlus", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1529
899
|
readonly description: "Reports regex lookarounds that can be replaced with predefined assertions.";
|
|
1530
900
|
readonly id: "regexPredefinedAssertions";
|
|
1531
901
|
readonly presets: readonly ["stylistic"];
|
|
1532
|
-
} & {
|
|
1533
|
-
readonly pluginId: string;
|
|
1534
|
-
readonly url: string;
|
|
1535
|
-
}, "preferPredefinedAssertion", undefined>, import("@flint.fyi/core").Rule<{
|
|
902
|
+
}, "preferPredefinedAssertion", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1536
903
|
readonly description: "Reports quantifiers `{0,1}` in regular expressions that should use `?` instead.";
|
|
1537
904
|
readonly id: "regexQuestionQuantifiers";
|
|
1538
905
|
readonly presets: readonly ["stylisticStrict"];
|
|
1539
|
-
} & {
|
|
1540
|
-
readonly pluginId: string;
|
|
1541
|
-
readonly url: string;
|
|
1542
|
-
}, "preferOptionalGroup" | "preferQuestion", undefined>, import("@flint.fyi/core").Rule<{
|
|
906
|
+
}, "preferOptionalGroup" | "preferQuestion", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1543
907
|
readonly description: "Reports consecutive identical elements in regular expressions that should use quantifiers.";
|
|
1544
908
|
readonly id: "regexRepeatQuantifiers";
|
|
1545
909
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1546
|
-
} & {
|
|
1547
|
-
readonly pluginId: string;
|
|
1548
|
-
readonly url: string;
|
|
1549
|
-
}, "preferQuantifier", undefined>, import("@flint.fyi/core").Rule<{
|
|
910
|
+
}, "preferQuantifier", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1550
911
|
readonly description: "Reports indexed access on regex result arrays when named capturing groups should be used.";
|
|
1551
912
|
readonly id: "regexResultArrayGroups";
|
|
1552
913
|
readonly presets: readonly ["stylisticStrict"];
|
|
1553
|
-
} & {
|
|
1554
|
-
readonly pluginId: string;
|
|
1555
|
-
readonly url: string;
|
|
1556
|
-
}, "preferGroups", undefined>, import("@flint.fyi/core").Rule<{
|
|
914
|
+
}, "preferGroups", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1557
915
|
readonly description: "Reports set operations in regular expressions that can be simplified.";
|
|
1558
916
|
readonly id: "regexSetOperationOptimizations";
|
|
1559
917
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1560
|
-
} & {
|
|
1561
|
-
readonly pluginId: string;
|
|
1562
|
-
readonly url: string;
|
|
1563
|
-
}, "toIntersection" | "toNegationOfConjunction" | "toNegationOfDisjunction" | "toSubtraction", undefined>, import("@flint.fyi/core").Rule<{
|
|
918
|
+
}, "toIntersection" | "toNegationOfConjunction" | "toNegationOfDisjunction" | "toSubtraction", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1564
919
|
readonly description: "Reports standalone backslashes in regex patterns that look like incomplete escape sequences.";
|
|
1565
920
|
readonly id: "regexStandaloneBackslashes";
|
|
1566
921
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1567
|
-
} & {
|
|
1568
|
-
readonly pluginId: string;
|
|
1569
|
-
readonly url: string;
|
|
1570
|
-
}, "standaloneBackslash", undefined>, import("@flint.fyi/core").Rule<{
|
|
922
|
+
}, "standaloneBackslash", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1571
923
|
readonly description: "Reports quantifiers `{0,}` in regular expressions that should use `*` instead.";
|
|
1572
924
|
readonly id: "regexStarQuantifiers";
|
|
1573
925
|
readonly presets: readonly ["stylisticStrict"];
|
|
1574
|
-
} & {
|
|
1575
|
-
readonly pluginId: string;
|
|
1576
|
-
readonly url: string;
|
|
1577
|
-
}, "preferStar", undefined>, import("@flint.fyi/core").Rule<{
|
|
926
|
+
}, "preferStar", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1578
927
|
readonly description: "Reports regular expressions with exponential or polynomial backtracking.";
|
|
1579
928
|
readonly id: "regexSuperLinearBacktracking";
|
|
1580
929
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1581
|
-
} & {
|
|
1582
|
-
readonly pluginId: string;
|
|
1583
|
-
readonly url: string;
|
|
1584
|
-
}, "self" | "trade", undefined>, import("@flint.fyi/core").Rule<{
|
|
930
|
+
}, "self" | "trade", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1585
931
|
readonly description: "Reports quantifiers that can cause quadratic regex matching time.";
|
|
1586
932
|
readonly id: "regexSuperLinearMoves";
|
|
1587
933
|
readonly presets: readonly ["logical"];
|
|
1588
|
-
} & {
|
|
1589
|
-
readonly pluginId: string;
|
|
1590
|
-
readonly url: string;
|
|
1591
|
-
}, "superLinear", undefined>, import("@flint.fyi/core").Rule<{
|
|
934
|
+
}, "superLinear", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1592
935
|
readonly description: "Reports match() and exec() calls that should use RegExp.prototype.test() for boolean checks.";
|
|
1593
936
|
readonly id: "regexTestMethods";
|
|
1594
937
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1595
|
-
} & {
|
|
1596
|
-
readonly pluginId: string;
|
|
1597
|
-
readonly url: string;
|
|
1598
|
-
}, "preferTest", undefined>, import("@flint.fyi/core").Rule<{
|
|
938
|
+
}, "preferTest", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1599
939
|
readonly description: "Reports surrogate pair escapes in regular expressions that can be replaced with Unicode codepoint escapes.";
|
|
1600
940
|
readonly id: "regexUnicodeCodepointEscapes";
|
|
1601
941
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1602
|
-
} & {
|
|
1603
|
-
readonly pluginId: string;
|
|
1604
|
-
readonly url: string;
|
|
1605
|
-
}, "useSurrogatePair", undefined>, import("@flint.fyi/core").Rule<{
|
|
942
|
+
}, "useSurrogatePair", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1606
943
|
readonly description: "Enforces consistent Unicode escape style in regex patterns by preferring codepoint escapes.";
|
|
1607
944
|
readonly id: "regexUnicodeEscapes";
|
|
1608
|
-
} & {
|
|
1609
|
-
readonly pluginId: string;
|
|
1610
|
-
readonly url: string;
|
|
1611
|
-
}, "preferCodepointEscape", undefined>, import("@flint.fyi/core").Rule<{
|
|
945
|
+
}, "preferCodepointEscape", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1612
946
|
readonly description: "Require regex patterns to have the unicode ('u') or unicodeSets ('v') flag for proper Unicode character handling.";
|
|
1613
947
|
readonly id: "regexUnicodeFlag";
|
|
1614
|
-
} & {
|
|
1615
|
-
readonly pluginId: string;
|
|
1616
|
-
readonly url: string;
|
|
1617
|
-
}, "missing", undefined>, import("@flint.fyi/core").Rule<{
|
|
948
|
+
}, "missing", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1618
949
|
readonly description: "Reports inconsistent Unicode property names in regular expressions.";
|
|
1619
950
|
readonly id: "regexUnicodeProperties";
|
|
1620
951
|
readonly presets: readonly ["stylistic"];
|
|
1621
|
-
} & {
|
|
1622
|
-
readonly pluginId: string;
|
|
1623
|
-
readonly url: string;
|
|
1624
|
-
}, "preferLongScript" | "unnecessaryPrefix", undefined>, import("@flint.fyi/core").Rule<{
|
|
952
|
+
}, "preferLongScript" | "unnecessaryPrefix", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1625
953
|
readonly description: "Reports assertions in regular expressions that always reject.";
|
|
1626
954
|
readonly id: "regexUnnecessaryAssertions";
|
|
1627
955
|
readonly presets: readonly ["logical"];
|
|
1628
|
-
} & {
|
|
1629
|
-
readonly pluginId: string;
|
|
1630
|
-
readonly url: string;
|
|
1631
|
-
}, "endAnchor" | "negatedWordBoundary" | "startAnchor" | "wordBoundary", undefined>, import("@flint.fyi/core").Rule<{
|
|
956
|
+
}, "endAnchor" | "negatedWordBoundary" | "startAnchor" | "wordBoundary", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1632
957
|
readonly description: "Reports backreferences in regular expressions that will always match empty or fail.";
|
|
1633
958
|
readonly id: "regexUnnecessaryBackreferences";
|
|
1634
959
|
readonly presets: readonly ["logical"];
|
|
1635
|
-
} & {
|
|
1636
|
-
readonly pluginId: string;
|
|
1637
|
-
readonly url: string;
|
|
1638
|
-
}, "nested" | "disjunctive" | "intoNegativeLookaround" | "forward" | "backward", undefined>, import("@flint.fyi/core").Rule<{
|
|
960
|
+
}, "nested" | "disjunctive" | "intoNegativeLookaround" | "forward" | "backward", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1639
961
|
readonly description: "Reports character classes that wrap a single element that does not require brackets.";
|
|
1640
962
|
readonly id: "regexUnnecessaryCharacterClasses";
|
|
1641
963
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1642
|
-
} & {
|
|
1643
|
-
readonly pluginId: string;
|
|
1644
|
-
readonly url: string;
|
|
1645
|
-
}, "unnecessary", undefined>, import("@flint.fyi/core").Rule<{
|
|
964
|
+
}, "unnecessary", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1646
965
|
readonly description: "Reports character class ranges that span only one or two characters.";
|
|
1647
966
|
readonly id: "regexUnnecessaryCharacterRanges";
|
|
1648
967
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1649
|
-
} & {
|
|
1650
|
-
readonly pluginId: string;
|
|
1651
|
-
readonly url: string;
|
|
1652
|
-
}, "adjacent" | "identity", undefined>, import("@flint.fyi/core").Rule<{
|
|
968
|
+
}, "adjacent" | "identity", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1653
969
|
readonly description: "Reports single-character alternatives in string disjunctions.";
|
|
1654
970
|
readonly id: "regexUnnecessaryDisjunctions";
|
|
1655
971
|
readonly presets: readonly ["logical"];
|
|
1656
|
-
} & {
|
|
1657
|
-
readonly pluginId: string;
|
|
1658
|
-
readonly url: string;
|
|
1659
|
-
}, "unnecessary", undefined>, import("@flint.fyi/core").Rule<{
|
|
972
|
+
}, "unnecessary", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1660
973
|
readonly description: "Reports replacement string references to capturing groups that do not exist in the pattern.";
|
|
1661
974
|
readonly id: "regexUnnecessaryDollarReplacements";
|
|
1662
975
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1663
|
-
} & {
|
|
1664
|
-
readonly pluginId: string;
|
|
1665
|
-
readonly url: string;
|
|
1666
|
-
}, "namedNotFound" | "numericNotFound", undefined>, import("@flint.fyi/core").Rule<{
|
|
976
|
+
}, "namedNotFound" | "numericNotFound", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1667
977
|
readonly description: "Reports unnecessary escape sequences in regular expressions.";
|
|
1668
978
|
readonly id: "regexUnnecessaryEscapes";
|
|
1669
979
|
readonly presets: readonly ["stylistic"];
|
|
1670
|
-
} & {
|
|
1671
|
-
readonly pluginId: string;
|
|
1672
|
-
readonly url: string;
|
|
1673
|
-
}, "unnecessary", undefined>, import("@flint.fyi/core").Rule<{
|
|
980
|
+
}, "unnecessary", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1674
981
|
readonly description: "Reports unnecessary nested lookaround assertions in regular expressions.";
|
|
1675
982
|
readonly id: "regexUnnecessaryLookaroundAssertions";
|
|
1676
983
|
readonly presets: readonly ["logical"];
|
|
1677
|
-
} & {
|
|
1678
|
-
readonly pluginId: string;
|
|
1679
|
-
readonly url: string;
|
|
1680
|
-
}, "lookahead" | "lookbehind", undefined>, import("@flint.fyi/core").Rule<{
|
|
984
|
+
}, "lookahead" | "lookbehind", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1681
985
|
readonly description: "Reports trivially nested assertions in regular expressions that can be simplified.";
|
|
1682
986
|
readonly id: "regexUnnecessaryNestedAssertions";
|
|
1683
987
|
readonly presets: readonly ["logical"];
|
|
1684
|
-
} & {
|
|
1685
|
-
readonly pluginId: string;
|
|
1686
|
-
readonly url: string;
|
|
1687
|
-
}, "unnecessaryNesting", undefined>, import("@flint.fyi/core").Rule<{
|
|
988
|
+
}, "unnecessaryNesting", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1688
989
|
readonly description: "Reports trivially nested quantifiers in regular expressions that can be simplified.";
|
|
1689
990
|
readonly id: "regexUnnecessaryNestedQuantifiers";
|
|
1690
991
|
readonly presets: readonly ["logical"];
|
|
1691
|
-
} & {
|
|
1692
|
-
readonly pluginId: string;
|
|
1693
|
-
readonly url: string;
|
|
1694
|
-
}, "unnecessaryNestedQuantifiers", undefined>, import("@flint.fyi/core").Rule<{
|
|
992
|
+
}, "unnecessaryNestedQuantifiers", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1695
993
|
readonly description: "Reports non-capturing groups that can be removed without changing the meaning of the regex.";
|
|
1696
994
|
readonly id: "regexUnnecessaryNonCapturingGroups";
|
|
1697
995
|
readonly presets: readonly ["stylistic"];
|
|
1698
|
-
} & {
|
|
1699
|
-
readonly pluginId: string;
|
|
1700
|
-
readonly url: string;
|
|
1701
|
-
}, "unnecessaryGroup", undefined>, import("@flint.fyi/core").Rule<{
|
|
996
|
+
}, "unnecessaryGroup", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1702
997
|
readonly description: "Reports numeric quantifiers like '{n,n}' that can be simplified to '{n}'.";
|
|
1703
998
|
readonly id: "regexUnnecessaryNumericQuantifiers";
|
|
1704
999
|
readonly presets: readonly ["logical"];
|
|
1705
|
-
} & {
|
|
1706
|
-
readonly pluginId: string;
|
|
1707
|
-
readonly url: string;
|
|
1708
|
-
}, "unnecessaryNumericQuantifier", undefined>, import("@flint.fyi/core").Rule<{
|
|
1000
|
+
}, "unnecessaryNumericQuantifier", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1709
1001
|
readonly description: "Reports assertions inside optional quantifiers that have no effect.";
|
|
1710
1002
|
readonly id: "regexUnnecessaryOptionalAssertions";
|
|
1711
1003
|
readonly presets: readonly ["logical"];
|
|
1712
|
-
} & {
|
|
1713
|
-
readonly pluginId: string;
|
|
1714
|
-
readonly url: string;
|
|
1715
|
-
}, "unnecessaryOptionalAssertion", undefined>, import("@flint.fyi/core").Rule<{
|
|
1004
|
+
}, "unnecessaryOptionalAssertion", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1716
1005
|
readonly description: "Reports backreferences that may reference a capturing group that was not matched.";
|
|
1717
1006
|
readonly id: "regexUnnecessaryReferentialBackreferences";
|
|
1718
1007
|
readonly presets: readonly ["logical"];
|
|
1719
|
-
} & {
|
|
1720
|
-
readonly pluginId: string;
|
|
1721
|
-
readonly url: string;
|
|
1722
|
-
}, "potentiallyUselessBackref", undefined>, import("@flint.fyi/core").Rule<{
|
|
1008
|
+
}, "potentiallyUselessBackref", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1723
1009
|
readonly description: "Reports unnecessary operands in regular expression character class set operations.";
|
|
1724
1010
|
readonly id: "regexUnnecessarySetOperands";
|
|
1725
1011
|
readonly presets: readonly ["logical"];
|
|
1726
|
-
} & {
|
|
1727
|
-
readonly pluginId: string;
|
|
1728
|
-
readonly url: string;
|
|
1729
|
-
}, "intersectionDisjoint" | "intersectionSubset" | "subtractionDisjoint" | "subtractionSubset", undefined>, import("@flint.fyi/core").Rule<{
|
|
1012
|
+
}, "intersectionDisjoint" | "intersectionSubset" | "subtractionDisjoint" | "subtractionSubset", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1730
1013
|
readonly description: "Reports capturing groups in regular expressions that are never referenced.";
|
|
1731
1014
|
readonly id: "regexUnusedCapturingGroups";
|
|
1732
1015
|
readonly presets: readonly ["logical"];
|
|
1733
|
-
} & {
|
|
1734
|
-
readonly pluginId: string;
|
|
1735
|
-
readonly url: string;
|
|
1736
|
-
}, "unusedCapture", undefined>, import("@flint.fyi/core").Rule<{
|
|
1016
|
+
}, "unusedCapture", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1737
1017
|
readonly description: "Reports regular expression flags that have no effect on the pattern.";
|
|
1738
1018
|
readonly id: "regexUnusedFlags";
|
|
1739
1019
|
readonly presets: readonly ["logical"];
|
|
1740
|
-
} & {
|
|
1741
|
-
readonly pluginId: string;
|
|
1742
|
-
readonly url: string;
|
|
1743
|
-
}, "unusedDotAll" | "unusedIgnoreCase" | "unusedMultiline", undefined>, import("@flint.fyi/core").Rule<{
|
|
1020
|
+
}, "unusedDotAll" | "unusedIgnoreCase" | "unusedMultiline", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1744
1021
|
readonly description: "Reports lazy quantifiers that have no effect because the quantifier is constant.";
|
|
1745
1022
|
readonly id: "regexUnusedLazyQuantifiers";
|
|
1746
1023
|
readonly presets: readonly ["logical"];
|
|
1747
|
-
} & {
|
|
1748
|
-
readonly pluginId: string;
|
|
1749
|
-
readonly url: string;
|
|
1750
|
-
}, "uselessLazy", undefined>, import("@flint.fyi/core").Rule<{
|
|
1024
|
+
}, "uselessLazy", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1751
1025
|
readonly description: "Reports quantifiers that match exactly once, making them unnecessary.";
|
|
1752
1026
|
readonly id: "regexUnusedQuantifiers";
|
|
1753
1027
|
readonly presets: readonly ["logical"];
|
|
1754
|
-
} & {
|
|
1755
|
-
readonly pluginId: string;
|
|
1756
|
-
readonly url: string;
|
|
1757
|
-
}, "uselessQuantifier", undefined>, import("@flint.fyi/core").Rule<{
|
|
1028
|
+
}, "uselessQuantifier", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1758
1029
|
readonly description: "Reports invalid regular expressions.";
|
|
1759
1030
|
readonly id: "regexValidity";
|
|
1760
1031
|
readonly presets: readonly ["logical"];
|
|
1761
|
-
} & {
|
|
1762
|
-
readonly pluginId: string;
|
|
1763
|
-
readonly url: string;
|
|
1764
|
-
}, "conflictingFlags" | "duplicateFlag" | "invalidFlag" | "invalidPattern", undefined>, import("@flint.fyi/core").Rule<{
|
|
1032
|
+
}, "conflictingFlags" | "duplicateFlag" | "invalidFlag" | "invalidPattern", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1765
1033
|
readonly description: "Reports character classes that match word characters and could use \\w or \\W instead.";
|
|
1766
1034
|
readonly id: "regexWordMatchers";
|
|
1767
1035
|
readonly presets: readonly ["stylisticStrict"];
|
|
1768
|
-
} & {
|
|
1769
|
-
readonly pluginId: string;
|
|
1770
|
-
readonly url: string;
|
|
1771
|
-
}, "preferWord", undefined>, import("@flint.fyi/core").Rule<{
|
|
1036
|
+
}, "preferWord", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1772
1037
|
readonly description: "Reports quantifiers with a maximum of zero, which are useless.";
|
|
1773
1038
|
readonly id: "regexZeroQuantifiers";
|
|
1774
1039
|
readonly presets: readonly ["logical"];
|
|
1775
|
-
} & {
|
|
1776
|
-
readonly pluginId: string;
|
|
1777
|
-
readonly url: string;
|
|
1778
|
-
}, "uselessZero", undefined>, import("@flint.fyi/core").Rule<{
|
|
1040
|
+
}, "uselessZero", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1779
1041
|
readonly description: "Reports CommonJS require() imports in favor of ES module imports.";
|
|
1780
1042
|
readonly id: "requireImports";
|
|
1781
1043
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1782
|
-
} & {
|
|
1783
|
-
readonly pluginId: string;
|
|
1784
|
-
readonly url: string;
|
|
1785
|
-
}, "noRequireImports", undefined>, import("@flint.fyi/core").Rule<{
|
|
1044
|
+
}, "noRequireImports", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1786
1045
|
readonly description: "Reports CommonJS require() imports in favor of ES module imports.";
|
|
1787
1046
|
readonly id: "requireImports";
|
|
1788
1047
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1789
|
-
} & {
|
|
1790
|
-
readonly pluginId: string;
|
|
1791
|
-
readonly url: string;
|
|
1792
|
-
}, "noRequireImports", undefined>, import("@flint.fyi/core").Rule<{
|
|
1048
|
+
}, "noRequireImports", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1793
1049
|
readonly description: "Prefer `Response.json()` over `new Response(JSON.stringify(...))` for JSON responses.";
|
|
1794
1050
|
readonly id: "responseJsonMethods";
|
|
1795
1051
|
readonly presets: readonly ["stylistic"];
|
|
1796
|
-
} & {
|
|
1797
|
-
readonly pluginId: string;
|
|
1798
|
-
readonly url: string;
|
|
1799
|
-
}, "preferResponseJson", undefined>, import("@flint.fyi/core").Rule<{
|
|
1052
|
+
}, "preferResponseJson", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1800
1053
|
readonly description: "Disallows specific identifier names in binding positions.";
|
|
1801
1054
|
readonly id: "restrictedIdentifiers";
|
|
1802
1055
|
readonly presets: readonly ["stylisticStrict"];
|
|
1803
|
-
} & {
|
|
1804
|
-
readonly pluginId: string;
|
|
1805
|
-
readonly url: string;
|
|
1806
1056
|
}, "restricted", {
|
|
1807
1057
|
deny: import("zod/v4").ZodOptional<import("zod/v4").ZodArray<import("zod/v4").ZodString>>;
|
|
1808
|
-
}>, import("@flint.fyi/core").Rule<{
|
|
1058
|
+
}>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1809
1059
|
readonly description: "Restricts specified modules from being imported.";
|
|
1810
1060
|
readonly id: "restrictedImports";
|
|
1811
|
-
} & {
|
|
1812
|
-
readonly pluginId: string;
|
|
1813
|
-
readonly url: string;
|
|
1814
1061
|
}, "restricted" | "moduleRestricted" | "moduleRestrictedWithMessage" | "namespaceRestricted" | "namespaceRestrictedWithMessage" | "restrictedWithMessage", {
|
|
1815
1062
|
restrictions: import("zod/v4").ZodDefault<import("zod/v4").ZodArray<import("zod/v4").ZodObject<{
|
|
1816
1063
|
allowTypeImports: import("zod/v4").ZodOptional<import("zod/v4").ZodBoolean>;
|
|
@@ -1828,179 +1075,107 @@ declare const ts: import("@flint.fyi/core").Plugin<import("@flint.fyi/core").Rul
|
|
|
1828
1075
|
package: import("zod/v4").ZodString;
|
|
1829
1076
|
}, import("zod/v4/core").$strip>]>;
|
|
1830
1077
|
}, import("zod/v4/core").$strip>>>;
|
|
1831
|
-
}>, import("@flint.fyi/core").Rule<{
|
|
1078
|
+
}>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1832
1079
|
readonly description: "Reports using assignment expressions in return statements.";
|
|
1833
1080
|
readonly id: "returnAssignments";
|
|
1834
1081
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1835
|
-
} & {
|
|
1836
|
-
readonly pluginId: string;
|
|
1837
|
-
readonly url: string;
|
|
1838
|
-
}, "noReturnAssign", undefined>, import("@flint.fyi/core").Rule<{
|
|
1082
|
+
}, "noReturnAssign", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1839
1083
|
readonly description: "Enforce that `this` is used when only `this` type is returned.";
|
|
1840
1084
|
readonly id: "returnThisTypes";
|
|
1841
1085
|
readonly presets: readonly ["logical"];
|
|
1842
|
-
} & {
|
|
1843
|
-
readonly pluginId: string;
|
|
1844
|
-
readonly url: string;
|
|
1845
|
-
}, "preferThis", undefined>, import("@flint.fyi/core").Rule<{
|
|
1086
|
+
}, "preferThis", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1846
1087
|
readonly description: "Reports self-assignments which have no effect and are likely errors.";
|
|
1847
1088
|
readonly id: "selfAssignments";
|
|
1848
1089
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1849
|
-
} & {
|
|
1850
|
-
readonly pluginId: string;
|
|
1851
|
-
readonly url: string;
|
|
1852
|
-
}, "selfAssignment", undefined>, import("@flint.fyi/core").Rule<{
|
|
1090
|
+
}, "selfAssignment", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1853
1091
|
readonly description: "Reports using the comma operator in expressions.";
|
|
1854
1092
|
readonly id: "sequences";
|
|
1855
1093
|
readonly presets: readonly ["javascript"];
|
|
1856
|
-
} & {
|
|
1857
|
-
readonly pluginId: string;
|
|
1858
|
-
readonly url: string;
|
|
1859
|
-
}, "noSequences", undefined>, import("@flint.fyi/core").Rule<{
|
|
1094
|
+
}, "noSequences", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1860
1095
|
readonly description: "Prefer `Set.size` over spreading into an array and accessing `.length`.";
|
|
1861
1096
|
readonly id: "setSizeLengthChecks";
|
|
1862
1097
|
readonly presets: readonly ["logical"];
|
|
1863
|
-
} & {
|
|
1864
|
-
readonly pluginId: string;
|
|
1865
|
-
readonly url: string;
|
|
1866
|
-
}, "preferSize", undefined>, import("@flint.fyi/core").Rule<{
|
|
1098
|
+
}, "preferSize", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1867
1099
|
readonly description: "Reports return statements with values inside setters.";
|
|
1868
1100
|
readonly id: "setterReturns";
|
|
1869
1101
|
readonly presets: readonly ["javascript"];
|
|
1870
|
-
} & {
|
|
1871
|
-
readonly pluginId: string;
|
|
1872
|
-
readonly url: string;
|
|
1873
|
-
}, "noSetterReturn", undefined>, import("@flint.fyi/core").Rule<{
|
|
1102
|
+
}, "noSetterReturn", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1874
1103
|
readonly description: "Reports variable declarations that shadow JavaScript's restricted names.";
|
|
1875
1104
|
readonly id: "shadowedRestrictedNames";
|
|
1876
1105
|
readonly presets: readonly ["javascript"];
|
|
1877
|
-
} & {
|
|
1878
|
-
readonly pluginId: string;
|
|
1879
|
-
readonly url: string;
|
|
1880
|
-
}, "shadowedRestrictedName", undefined>, import("@flint.fyi/core").Rule<{
|
|
1106
|
+
}, "shadowedRestrictedName", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1881
1107
|
readonly description: "Enforces one variable per declaration statement.";
|
|
1882
1108
|
readonly id: "singleVariableDeclarations";
|
|
1883
1109
|
readonly presets: readonly ["logical"];
|
|
1884
|
-
} & {
|
|
1885
|
-
readonly pluginId: string;
|
|
1886
|
-
readonly url: string;
|
|
1887
|
-
}, "singleVariable", undefined>, import("@flint.fyi/core").Rule<{
|
|
1110
|
+
}, "singleVariable", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1888
1111
|
readonly description: "Enforce consistent style for `.length` and `.size` checks.";
|
|
1889
1112
|
readonly id: "sizeComparisonOperators";
|
|
1890
1113
|
readonly presets: readonly ["stylisticStrict"];
|
|
1891
|
-
} & {
|
|
1892
|
-
readonly pluginId: string;
|
|
1893
|
-
readonly url: string;
|
|
1894
1114
|
}, "coercionNonZeroCheck" | "coercionZeroCheck" | "explicitNonZeroCheck" | "explicitZeroCheck", {
|
|
1895
1115
|
style: import("zod/v4").ZodDefault<import("zod/v4").ZodEnum<{
|
|
1896
1116
|
coercion: "coercion";
|
|
1897
1117
|
explicit: "explicit";
|
|
1898
1118
|
}>>;
|
|
1899
|
-
}>, import("@flint.fyi/core").Rule<{
|
|
1119
|
+
}>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1900
1120
|
readonly description: "Reports array literals with holes (sparse arrays).";
|
|
1901
1121
|
readonly id: "sparseArrays";
|
|
1902
1122
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
1903
|
-
} & {
|
|
1904
|
-
readonly pluginId: string;
|
|
1905
|
-
readonly url: string;
|
|
1906
|
-
}, "noSparseArray", undefined>, import("@flint.fyi/core").Rule<{
|
|
1123
|
+
}, "noSparseArray", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1907
1124
|
readonly description: "Reports classes that only contain static members.";
|
|
1908
1125
|
readonly id: "staticMemberOnlyClasses";
|
|
1909
1126
|
readonly presets: readonly ["logicalStrict"];
|
|
1910
|
-
} & {
|
|
1911
|
-
readonly pluginId: string;
|
|
1912
|
-
readonly url: string;
|
|
1913
|
-
}, "noStaticOnlyClass", undefined>, import("@flint.fyi/core").Rule<{
|
|
1127
|
+
}, "noStaticOnlyClass", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1914
1128
|
readonly description: "Reports string case method calls compared against literals with mismatched casing.";
|
|
1915
1129
|
readonly id: "stringCaseMismatches";
|
|
1916
1130
|
readonly presets: readonly ["logical"];
|
|
1917
|
-
} & {
|
|
1918
|
-
readonly pluginId: string;
|
|
1919
|
-
readonly url: string;
|
|
1920
|
-
}, "mismatch", undefined>, import("@flint.fyi/core").Rule<{
|
|
1131
|
+
}, "mismatch", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1921
1132
|
readonly description: "Reports usage of charCodeAt and fromCharCode instead of their codePoint equivalents.";
|
|
1922
1133
|
readonly id: "stringCodePoints";
|
|
1923
1134
|
readonly presets: readonly ["logical"];
|
|
1924
|
-
} & {
|
|
1925
|
-
readonly pluginId: string;
|
|
1926
|
-
readonly url: string;
|
|
1927
|
-
}, "preferCodePointAt" | "preferFromCodePoint", undefined>, import("@flint.fyi/core").Rule<{
|
|
1135
|
+
}, "preferCodePointAt" | "preferFromCodePoint", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1928
1136
|
readonly description: "Reports usage of `substring` instead of slice for string operations.";
|
|
1929
1137
|
readonly id: "stringSliceMethods";
|
|
1930
1138
|
readonly presets: readonly ["logical"];
|
|
1931
|
-
} & {
|
|
1932
|
-
readonly pluginId: string;
|
|
1933
|
-
readonly url: string;
|
|
1934
|
-
}, "preferSliceOverSubstring", undefined>, import("@flint.fyi/core").Rule<{
|
|
1139
|
+
}, "preferSliceOverSubstring", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1935
1140
|
readonly description: "Reports regex patterns that can be replaced with `endsWith` or `startsWith`.";
|
|
1936
1141
|
readonly id: "stringStartsEndsWith";
|
|
1937
1142
|
readonly presets: readonly ["stylistic"];
|
|
1938
|
-
} & {
|
|
1939
|
-
readonly pluginId: string;
|
|
1940
|
-
readonly url: string;
|
|
1941
|
-
}, "preferEndsWith" | "preferStartsWith", undefined>, import("@flint.fyi/core").Rule<{
|
|
1143
|
+
}, "preferEndsWith" | "preferStartsWith", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1942
1144
|
readonly description: "Reports JSON.parse(JSON.stringify()) patterns that can use structuredClone.";
|
|
1943
1145
|
readonly id: "structuredCloneMethods";
|
|
1944
1146
|
readonly presets: readonly ["logical"];
|
|
1945
|
-
} & {
|
|
1946
|
-
readonly pluginId: string;
|
|
1947
|
-
readonly url: string;
|
|
1948
|
-
}, "preferStructuredClone", undefined>, import("@flint.fyi/core").Rule<{
|
|
1147
|
+
}, "preferStructuredClone", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1949
1148
|
readonly description: "Reports Symbol() calls without description arguments.";
|
|
1950
1149
|
readonly id: "symbolDescriptions";
|
|
1951
1150
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
1952
|
-
} & {
|
|
1953
|
-
readonly pluginId: string;
|
|
1954
|
-
readonly url: string;
|
|
1955
|
-
}, "missingDescription", undefined>, import("@flint.fyi/core").Rule<{
|
|
1151
|
+
}, "missingDescription", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1956
1152
|
readonly description: "Reports assigning `this` to a variable.";
|
|
1957
1153
|
readonly id: "thisAliases";
|
|
1958
1154
|
readonly presets: readonly ["logical"];
|
|
1959
|
-
} & {
|
|
1960
|
-
readonly pluginId: string;
|
|
1961
|
-
readonly url: string;
|
|
1962
|
-
}, "noThisAlias", undefined>, import("@flint.fyi/core").Rule<{
|
|
1155
|
+
}, "noThisAlias", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1963
1156
|
readonly description: "Reports using `this` or `super` before calling `super()` in derived class constructors.";
|
|
1964
1157
|
readonly id: "thisBeforeSuper";
|
|
1965
1158
|
readonly presets: readonly ["javascript"];
|
|
1966
|
-
} & {
|
|
1967
|
-
readonly pluginId: string;
|
|
1968
|
-
readonly url: string;
|
|
1969
|
-
}, "thisBeforeSuper" | "superBeforeSuper", undefined>, import("@flint.fyi/core").Rule<{
|
|
1159
|
+
}, "thisBeforeSuper" | "superBeforeSuper", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1970
1160
|
readonly description: "Reports throwing values that are not `Error` objects.";
|
|
1971
1161
|
readonly id: "throwErrors";
|
|
1972
1162
|
readonly presets: readonly ["logical"];
|
|
1973
|
-
} & {
|
|
1974
|
-
readonly pluginId: string;
|
|
1975
|
-
readonly url: string;
|
|
1976
|
-
}, "throwError" | "throwUndefined", undefined>, import("@flint.fyi/core").Rule<{
|
|
1163
|
+
}, "throwError" | "throwUndefined", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1977
1164
|
readonly description: "Reports top-level await expressions in files that export values.";
|
|
1978
1165
|
readonly id: "topLevelAwaits";
|
|
1979
1166
|
readonly presets: readonly ["logicalStrict"];
|
|
1980
|
-
} & {
|
|
1981
|
-
readonly pluginId: string;
|
|
1982
|
-
readonly url: string;
|
|
1983
|
-
}, "topLevelAwait", undefined>, import("@flint.fyi/core").Rule<{
|
|
1167
|
+
}, "topLevelAwait", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1984
1168
|
readonly description: "Reports triple-slash reference directives.";
|
|
1985
1169
|
readonly id: "tripleSlashReferences";
|
|
1986
1170
|
readonly presets: readonly ["logical"];
|
|
1987
|
-
} & {
|
|
1988
|
-
readonly pluginId: string;
|
|
1989
|
-
readonly url: string;
|
|
1990
|
-
}, "noTripleSlashReference", undefined>, import("@flint.fyi/core").Rule<{
|
|
1171
|
+
}, "noTripleSlashReference", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1991
1172
|
readonly description: "Reports invalid triple-slash reference directives.";
|
|
1992
1173
|
readonly id: "tripleSlashReferenceValidity";
|
|
1993
1174
|
readonly presets: readonly ["logical"];
|
|
1994
|
-
} & {
|
|
1995
|
-
readonly pluginId: string;
|
|
1996
|
-
readonly url: string;
|
|
1997
|
-
}, "invalidDirective", undefined>, import("@flint.fyi/core").Rule<{
|
|
1175
|
+
}, "invalidDirective", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
1998
1176
|
readonly description: "Reports problematic TypeScript comment directives or requires descriptions after directives.";
|
|
1999
1177
|
readonly id: "tsComments";
|
|
2000
1178
|
readonly presets: readonly ["logical"];
|
|
2001
|
-
} & {
|
|
2002
|
-
readonly pluginId: string;
|
|
2003
|
-
readonly url: string;
|
|
2004
1179
|
}, "descriptionNotMatchPattern" | "directiveComment" | "preferExpectError" | "requiresDescription", {
|
|
2005
1180
|
allowTsExpectError: import("zod/v4").ZodDefault<import("zod/v4").ZodUnion<readonly [import("zod/v4").ZodLiteral<true>, import("zod/v4").ZodLiteral<false>, import("zod/v4").ZodLiteral<"allow-with-description">, import("zod/v4").ZodObject<{
|
|
2006
1181
|
descriptionFormat: import("zod/v4").ZodString;
|
|
@@ -2012,27 +1187,18 @@ declare const ts: import("@flint.fyi/core").Plugin<import("@flint.fyi/core").Rul
|
|
|
2012
1187
|
descriptionFormat: import("zod/v4").ZodString;
|
|
2013
1188
|
}, import("zod/v4/core").$strip>]>>;
|
|
2014
1189
|
minimumDescriptionLength: import("zod/v4").ZodDefault<import("zod/v4").ZodNumber>;
|
|
2015
|
-
}>, import("@flint.fyi/core").Rule<{
|
|
1190
|
+
}>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2016
1191
|
readonly description: "Reports TSLint disable/enable comments.";
|
|
2017
1192
|
readonly id: "tslintComments";
|
|
2018
1193
|
readonly presets: readonly ["logical"];
|
|
2019
|
-
} & {
|
|
2020
|
-
readonly pluginId: string;
|
|
2021
|
-
readonly url: string;
|
|
2022
|
-
}, "tslintComment", undefined>, import("@flint.fyi/core").Rule<{
|
|
1194
|
+
}, "tslintComment", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2023
1195
|
readonly description: "Reports angle-bracket type assertions.";
|
|
2024
1196
|
readonly id: "typeAssertionStyles";
|
|
2025
1197
|
readonly presets: readonly ["stylistic"];
|
|
2026
|
-
} & {
|
|
2027
|
-
readonly pluginId: string;
|
|
2028
|
-
readonly url: string;
|
|
2029
|
-
}, "preferAs", undefined>, import("@flint.fyi/core").Rule<{
|
|
1198
|
+
}, "preferAs", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2030
1199
|
readonly description: "Reports imports that do not match the configured type import style.";
|
|
2031
1200
|
readonly id: "typeImports";
|
|
2032
1201
|
readonly presets: readonly ["logicalStrict"];
|
|
2033
|
-
} & {
|
|
2034
|
-
readonly pluginId: string;
|
|
2035
|
-
readonly url: string;
|
|
2036
1202
|
}, "avoidImportType" | "someImportsAreOnlyTypes" | "typeOverValue", {
|
|
2037
1203
|
fixStyle: import("zod/v4").ZodDefault<import("zod/v4").ZodEnum<{
|
|
2038
1204
|
"inline-type-imports": "inline-type-imports";
|
|
@@ -2042,160 +1208,93 @@ declare const ts: import("@flint.fyi/core").Plugin<import("@flint.fyi/core").Rul
|
|
|
2042
1208
|
"no-type-imports": "no-type-imports";
|
|
2043
1209
|
"type-imports": "type-imports";
|
|
2044
1210
|
}>>;
|
|
2045
|
-
}>, import("@flint.fyi/core").Rule<{
|
|
1211
|
+
}>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2046
1212
|
readonly description: "Reports typeof expressions that compare impossible string literals.";
|
|
2047
1213
|
readonly id: "typeofComparisons";
|
|
2048
1214
|
readonly presets: readonly ["javascript"];
|
|
2049
|
-
} & {
|
|
2050
|
-
readonly pluginId: string;
|
|
2051
|
-
readonly url: string;
|
|
2052
|
-
}, "invalidValue", undefined>, import("@flint.fyi/core").Rule<{
|
|
1215
|
+
}, "invalidValue", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2053
1216
|
readonly description: "Reports variables that are declared but never assigned a value.";
|
|
2054
1217
|
readonly id: "unassignedVariables";
|
|
2055
1218
|
readonly presets: readonly ["javascript"];
|
|
2056
|
-
} & {
|
|
2057
|
-
readonly pluginId: string;
|
|
2058
|
-
readonly url: string;
|
|
2059
|
-
}, "noUnassigned", undefined>, import("@flint.fyi/core").Rule<{
|
|
1219
|
+
}, "noUnassigned", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2060
1220
|
readonly description: "Reports typeof undefined checks.";
|
|
2061
1221
|
readonly id: "undefinedTypeofChecks";
|
|
2062
1222
|
readonly presets: readonly ["stylistic"];
|
|
2063
|
-
} & {
|
|
2064
|
-
readonly pluginId: string;
|
|
2065
|
-
readonly url: string;
|
|
2066
|
-
}, "directComparison", undefined>, import("@flint.fyi/core").Rule<{
|
|
1223
|
+
}, "directComparison", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2067
1224
|
readonly description: "Reports using variables that are not defined.";
|
|
2068
1225
|
readonly id: "undefinedVariables";
|
|
2069
1226
|
readonly presets: readonly ["javascript"];
|
|
2070
|
-
} & {
|
|
2071
|
-
readonly pluginId: string;
|
|
2072
|
-
readonly url: string;
|
|
2073
|
-
}, "undefinedVariable", undefined>, import("@flint.fyi/core").Rule<{
|
|
1227
|
+
}, "undefinedVariable", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2074
1228
|
readonly description: "Reports files with Unicode Byte Order Marks (BOMs).";
|
|
2075
1229
|
readonly id: "unicodeBOMs";
|
|
2076
1230
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
2077
|
-
} & {
|
|
2078
|
-
readonly pluginId: string;
|
|
2079
|
-
readonly url: string;
|
|
2080
|
-
}, "noBOM", undefined>, import("@flint.fyi/core").Rule<{
|
|
1231
|
+
}, "noBOM", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2081
1232
|
readonly description: "Reports unnecessary `.bind()` calls.";
|
|
2082
1233
|
readonly id: "unnecessaryBinds";
|
|
2083
1234
|
readonly presets: readonly ["logical"];
|
|
2084
|
-
} & {
|
|
2085
|
-
readonly pluginId: string;
|
|
2086
|
-
readonly url: string;
|
|
2087
|
-
}, "unnecessaryBinds" | "arrowBind", undefined>, import("@flint.fyi/core").Rule<{
|
|
1235
|
+
}, "unnecessaryBinds" | "arrowBind", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2088
1236
|
readonly description: "Reports standalone block statements that don't create a meaningful scope.";
|
|
2089
1237
|
readonly id: "unnecessaryBlocks";
|
|
2090
1238
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
2091
|
-
} & {
|
|
2092
|
-
readonly pluginId: string;
|
|
2093
|
-
readonly url: string;
|
|
2094
|
-
}, "unnecessaryBlock", undefined>, import("@flint.fyi/core").Rule<{
|
|
1239
|
+
}, "unnecessaryBlock", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2095
1240
|
readonly description: "Reports unnecessary boolean casts.";
|
|
2096
1241
|
readonly id: "unnecessaryBooleanCasts";
|
|
2097
1242
|
readonly presets: readonly ["logical"];
|
|
2098
|
-
} & {
|
|
2099
|
-
readonly pluginId: string;
|
|
2100
|
-
readonly url: string;
|
|
2101
|
-
}, "unnecessary", undefined>, import("@flint.fyi/core").Rule<{
|
|
1243
|
+
}, "unnecessary", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2102
1244
|
readonly description: "Reports catch clauses that only rethrow the caught error without modification.";
|
|
2103
1245
|
readonly id: "unnecessaryCatches";
|
|
2104
1246
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
2105
|
-
} & {
|
|
2106
|
-
readonly pluginId: string;
|
|
2107
|
-
readonly url: string;
|
|
2108
|
-
}, "unnecessaryCatch", undefined>, import("@flint.fyi/core").Rule<{
|
|
1247
|
+
}, "unnecessaryCatch", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2109
1248
|
readonly description: "Reports comparisons that are always true, always false, or can be simplified.";
|
|
2110
1249
|
readonly id: "unnecessaryComparisons";
|
|
2111
1250
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
2112
|
-
} & {
|
|
2113
|
-
readonly pluginId: string;
|
|
2114
|
-
readonly url: string;
|
|
2115
|
-
}, "impossibleRange" | "ineffectiveCheck" | "redundantComparison" | "selfComparison", undefined>, import("@flint.fyi/core").Rule<{
|
|
1251
|
+
}, "impossibleRange" | "ineffectiveCheck" | "redundantComparison" | "selfComparison", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2116
1252
|
readonly description: "Reports string concatenation using the + operator when both operands are string literals.";
|
|
2117
1253
|
readonly id: "unnecessaryConcatenation";
|
|
2118
1254
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
2119
|
-
} & {
|
|
2120
|
-
readonly pluginId: string;
|
|
2121
|
-
readonly url: string;
|
|
2122
|
-
}, "unnecessaryConcatenation", undefined>, import("@flint.fyi/core").Rule<{
|
|
1255
|
+
}, "unnecessaryConcatenation", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2123
1256
|
readonly description: "Reports unnecessary escape sequences in string literals and template strings.";
|
|
2124
1257
|
readonly id: "unnecessaryEscapes";
|
|
2125
1258
|
readonly presets: readonly ["stylistic"];
|
|
2126
|
-
} & {
|
|
2127
|
-
readonly pluginId: string;
|
|
2128
|
-
readonly url: string;
|
|
2129
|
-
}, "unnecessary", undefined>, import("@flint.fyi/core").Rule<{
|
|
1259
|
+
}, "unnecessary", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2130
1260
|
readonly description: "Reports unnecessary Math.min and Math.max calls with constant arguments or incorrect clamping patterns.";
|
|
2131
1261
|
readonly id: "unnecessaryMathClamps";
|
|
2132
1262
|
readonly presets: readonly ["logical"];
|
|
2133
|
-
} & {
|
|
2134
|
-
readonly pluginId: string;
|
|
2135
|
-
readonly url: string;
|
|
2136
|
-
}, "constantArguments" | "incorrectClampOrder", undefined>, import("@flint.fyi/core").Rule<{
|
|
1263
|
+
}, "constantArguments" | "incorrectClampOrder", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2137
1264
|
readonly description: "Reports numeric literals with unnecessary zero fractions or dangling dots.";
|
|
2138
1265
|
readonly id: "unnecessaryNumericFractions";
|
|
2139
1266
|
readonly presets: readonly ["stylistic"];
|
|
2140
|
-
} & {
|
|
2141
|
-
readonly pluginId: string;
|
|
2142
|
-
readonly url: string;
|
|
2143
|
-
}, "danglingDot" | "zeroFraction", undefined>, import("@flint.fyi/core").Rule<{
|
|
1267
|
+
}, "danglingDot" | "zeroFraction", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2144
1268
|
readonly description: "Renames that don't change the identifier name are unnecessary.";
|
|
2145
1269
|
readonly id: "unnecessaryRenames";
|
|
2146
1270
|
readonly presets: readonly ["stylistic"];
|
|
2147
|
-
} & {
|
|
2148
|
-
readonly pluginId: string;
|
|
2149
|
-
readonly url: string;
|
|
2150
|
-
}, "unnecessaryRename", undefined>, import("@flint.fyi/core").Rule<{
|
|
1271
|
+
}, "unnecessaryRename", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2151
1272
|
readonly description: "Reports ternary expressions that can be simplified to boolean expressions or logical operators";
|
|
2152
1273
|
readonly id: "unnecessaryTernaries";
|
|
2153
1274
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
2154
|
-
} & {
|
|
2155
|
-
readonly pluginId: string;
|
|
2156
|
-
readonly url: string;
|
|
2157
|
-
}, "unnecessaryBooleanTernary" | "unnecessaryLogicalTernary", undefined>, import("@flint.fyi/core").Rule<{
|
|
1275
|
+
}, "unnecessaryBooleanTernary" | "unnecessaryLogicalTernary", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2158
1276
|
readonly description: "Reports unnecessary \"use strict\" directives in ES modules and classes.";
|
|
2159
1277
|
readonly id: "unnecessaryUseStricts";
|
|
2160
1278
|
readonly presets: readonly ["logical"];
|
|
2161
|
-
} & {
|
|
2162
|
-
readonly pluginId: string;
|
|
2163
|
-
readonly url: string;
|
|
2164
|
-
}, "unnecessaryUseStrict", undefined>, import("@flint.fyi/core").Rule<{
|
|
1279
|
+
}, "unnecessaryUseStrict", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2165
1280
|
readonly description: "Reports negating the left operand of `in` or `instanceof` relations.";
|
|
2166
1281
|
readonly id: "unsafeNegations";
|
|
2167
1282
|
readonly presets: readonly ["javascript"];
|
|
2168
|
-
} & {
|
|
2169
|
-
readonly pluginId: string;
|
|
2170
|
-
readonly url: string;
|
|
2171
|
-
}, "preferNegatingRelation", undefined>, import("@flint.fyi/core").Rule<{
|
|
1283
|
+
}, "preferNegatingRelation", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2172
1284
|
readonly description: "Reports attempting to delete variables with the delete operator.";
|
|
2173
1285
|
readonly id: "variableDeletions";
|
|
2174
1286
|
readonly presets: readonly ["javascript"];
|
|
2175
|
-
} & {
|
|
2176
|
-
readonly pluginId: string;
|
|
2177
|
-
readonly url: string;
|
|
2178
|
-
}, "noDeleteVar", undefined>, import("@flint.fyi/core").Rule<{
|
|
1287
|
+
}, "noDeleteVar", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2179
1288
|
readonly description: "Reports using the void operator.";
|
|
2180
1289
|
readonly id: "voidOperator";
|
|
2181
1290
|
readonly presets: readonly ["stylistic", "stylisticStrict"];
|
|
2182
|
-
} & {
|
|
2183
|
-
readonly pluginId: string;
|
|
2184
|
-
readonly url: string;
|
|
2185
|
-
}, "noVoid", undefined>, import("@flint.fyi/core").Rule<{
|
|
1291
|
+
}, "noVoid", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2186
1292
|
readonly description: "Reports using with statements";
|
|
2187
1293
|
readonly id: "withStatements";
|
|
2188
1294
|
readonly presets: readonly ["javascript"];
|
|
2189
|
-
} & {
|
|
2190
|
-
readonly pluginId: string;
|
|
2191
|
-
readonly url: string;
|
|
2192
|
-
}, "withStatement", undefined>, import("@flint.fyi/core").Rule<{
|
|
1295
|
+
}, "withStatement", undefined>, import("@flint.fyi/core").Rule<import("@flint.fyi/core").PluginRuleAbout<string> & {
|
|
2193
1296
|
readonly description: "Flags using `new` with `Boolean`, `Number`, or `String`, which creates wrapper objects instead of primitives.";
|
|
2194
1297
|
readonly id: "wrapperObjects";
|
|
2195
1298
|
readonly presets: readonly ["logical", "logicalStrict"];
|
|
2196
|
-
} & {
|
|
2197
|
-
readonly pluginId: string;
|
|
2198
|
-
readonly url: string;
|
|
2199
1299
|
}, "wrapperObject", undefined>]>;
|
|
2200
|
-
//#endregion
|
|
2201
|
-
export { ts };
|
|
1300
|
+
//#endregion
|