Skip to content
This repository was archived by the owner on Mar 7, 2025. It is now read-only.

Commit 04c0fa6

Browse files
committed
Update typescript-eslint rules
1 parent da841be commit 04c0fa6

22 files changed

+320
-5
lines changed

src/rules/typescript-eslint/explicit-function-return-type.d.ts

Lines changed: 20 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,29 @@ import type { RuleConfig } from '../rule-config';
44
* Option.
55
*/
66
export interface ExplicitFunctionReturnTypeOption {
7+
/**
8+
* Whether to allow arrow functions that start with the `void` keyword.
9+
*/
10+
allowConciseArrowFunctionExpressionsStartingWithVoid?: boolean;
11+
/**
12+
* Whether to ignore function expressions (functions which are not part of a declaration).
13+
*/
714
allowExpressions?: boolean;
8-
allowTypedFunctionExpressions?: boolean;
15+
/**
16+
* Whether to ignore functions immediately returning another function expression.
17+
*/
918
allowHigherOrderFunctions?: boolean;
19+
/**
20+
* Whether to ignore type annotations on the variable of function expressions.
21+
*/
22+
allowTypedFunctionExpressions?: boolean;
23+
/**
24+
* Whether to ignore arrow functions immediately returning a `as const` value.
25+
*/
1026
allowDirectConstAssertionInArrowFunctions?: boolean;
11-
allowConciseArrowFunctionExpressionsStartingWithVoid?: boolean;
27+
/**
28+
* An array of function/method names that will not have their arguments or return values checked.
29+
*/
1230
allowedNames?: string[];
1331
}
1432

src/rules/typescript-eslint/explicit-module-boundary-types.d.ts

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,10 +4,27 @@ import type { RuleConfig } from '../rule-config';
44
* Option.
55
*/
66
export interface ExplicitModuleBoundaryTypesOption {
7+
/**
8+
* Whether to ignore arguments that are explicitly typed as `any`.
9+
*/
710
allowArgumentsExplicitlyTypedAsAny?: boolean;
11+
/**
12+
* Whether to ignore return type annotations on body-less arrow functions that return an `as const` type assertion.
13+
* You must still type the parameters of the function.
14+
*/
815
allowDirectConstAssertionInArrowFunctions?: boolean;
16+
/**
17+
* An array of function/method names that will not have their arguments or return values checked.
18+
*/
919
allowedNames?: string[];
20+
/**
21+
* Whether to ignore return type annotations on functions immediately returning another function expression.
22+
* You must still type the parameters of the function.
23+
*/
1024
allowHigherOrderFunctions?: boolean;
25+
/**
26+
* Whether to ignore type annotations on the variable of a function expresion.
27+
*/
1128
allowTypedFunctionExpressions?: boolean;
1229
shouldTrackReferences?: boolean;
1330
}

src/rules/typescript-eslint/member-ordering.d.ts

Lines changed: 156 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,19 @@ export interface MemberOrderingOption {
109109
| 'private-static-set'
110110
| 'private-instance-set'
111111
| 'private-abstract-set'
112+
| 'static-initialization'
113+
| 'static-static-initialization'
114+
| 'public-static-static-initialization'
115+
| 'instance-static-initialization'
116+
| 'public-instance-static-initialization'
117+
| 'abstract-static-initialization'
118+
| 'public-abstract-static-initialization'
119+
| 'protected-static-static-initialization'
120+
| 'protected-instance-static-initialization'
121+
| 'protected-abstract-static-initialization'
122+
| 'private-static-static-initialization'
123+
| 'private-instance-static-initialization'
124+
| 'private-abstract-static-initialization'
112125
)
113126
| (
114127
| 'signature'
@@ -212,6 +225,19 @@ export interface MemberOrderingOption {
212225
| 'private-static-set'
213226
| 'private-instance-set'
214227
| 'private-abstract-set'
228+
| 'static-initialization'
229+
| 'static-static-initialization'
230+
| 'public-static-static-initialization'
231+
| 'instance-static-initialization'
232+
| 'public-instance-static-initialization'
233+
| 'abstract-static-initialization'
234+
| 'public-abstract-static-initialization'
235+
| 'protected-static-static-initialization'
236+
| 'protected-instance-static-initialization'
237+
| 'protected-abstract-static-initialization'
238+
| 'private-static-static-initialization'
239+
| 'private-instance-static-initialization'
240+
| 'private-abstract-static-initialization'
215241
)[]
216242
)[]
217243
| {
@@ -319,6 +345,19 @@ export interface MemberOrderingOption {
319345
| 'private-static-set'
320346
| 'private-instance-set'
321347
| 'private-abstract-set'
348+
| 'static-initialization'
349+
| 'static-static-initialization'
350+
| 'public-static-static-initialization'
351+
| 'instance-static-initialization'
352+
| 'public-instance-static-initialization'
353+
| 'abstract-static-initialization'
354+
| 'public-abstract-static-initialization'
355+
| 'protected-static-static-initialization'
356+
| 'protected-instance-static-initialization'
357+
| 'protected-abstract-static-initialization'
358+
| 'private-static-static-initialization'
359+
| 'private-instance-static-initialization'
360+
| 'private-abstract-static-initialization'
322361
)
323362
| (
324363
| 'signature'
@@ -422,6 +461,19 @@ export interface MemberOrderingOption {
422461
| 'private-static-set'
423462
| 'private-instance-set'
424463
| 'private-abstract-set'
464+
| 'static-initialization'
465+
| 'static-static-initialization'
466+
| 'public-static-static-initialization'
467+
| 'instance-static-initialization'
468+
| 'public-instance-static-initialization'
469+
| 'abstract-static-initialization'
470+
| 'public-abstract-static-initialization'
471+
| 'protected-static-static-initialization'
472+
| 'protected-instance-static-initialization'
473+
| 'protected-abstract-static-initialization'
474+
| 'private-static-static-initialization'
475+
| 'private-instance-static-initialization'
476+
| 'private-abstract-static-initialization'
425477
)[]
426478
)[]
427479
| 'never';
@@ -535,6 +587,19 @@ export interface MemberOrderingOption {
535587
| 'private-static-set'
536588
| 'private-instance-set'
537589
| 'private-abstract-set'
590+
| 'static-initialization'
591+
| 'static-static-initialization'
592+
| 'public-static-static-initialization'
593+
| 'instance-static-initialization'
594+
| 'public-instance-static-initialization'
595+
| 'abstract-static-initialization'
596+
| 'public-abstract-static-initialization'
597+
| 'protected-static-static-initialization'
598+
| 'protected-instance-static-initialization'
599+
| 'protected-abstract-static-initialization'
600+
| 'private-static-static-initialization'
601+
| 'private-instance-static-initialization'
602+
| 'private-abstract-static-initialization'
538603
)
539604
| (
540605
| 'signature'
@@ -638,6 +703,19 @@ export interface MemberOrderingOption {
638703
| 'private-static-set'
639704
| 'private-instance-set'
640705
| 'private-abstract-set'
706+
| 'static-initialization'
707+
| 'static-static-initialization'
708+
| 'public-static-static-initialization'
709+
| 'instance-static-initialization'
710+
| 'public-instance-static-initialization'
711+
| 'abstract-static-initialization'
712+
| 'public-abstract-static-initialization'
713+
| 'protected-static-static-initialization'
714+
| 'protected-instance-static-initialization'
715+
| 'protected-abstract-static-initialization'
716+
| 'private-static-static-initialization'
717+
| 'private-instance-static-initialization'
718+
| 'private-abstract-static-initialization'
641719
)[]
642720
)[]
643721
| {
@@ -745,6 +823,19 @@ export interface MemberOrderingOption {
745823
| 'private-static-set'
746824
| 'private-instance-set'
747825
| 'private-abstract-set'
826+
| 'static-initialization'
827+
| 'static-static-initialization'
828+
| 'public-static-static-initialization'
829+
| 'instance-static-initialization'
830+
| 'public-instance-static-initialization'
831+
| 'abstract-static-initialization'
832+
| 'public-abstract-static-initialization'
833+
| 'protected-static-static-initialization'
834+
| 'protected-instance-static-initialization'
835+
| 'protected-abstract-static-initialization'
836+
| 'private-static-static-initialization'
837+
| 'private-instance-static-initialization'
838+
| 'private-abstract-static-initialization'
748839
)
749840
| (
750841
| 'signature'
@@ -848,6 +939,19 @@ export interface MemberOrderingOption {
848939
| 'private-static-set'
849940
| 'private-instance-set'
850941
| 'private-abstract-set'
942+
| 'static-initialization'
943+
| 'static-static-initialization'
944+
| 'public-static-static-initialization'
945+
| 'instance-static-initialization'
946+
| 'public-instance-static-initialization'
947+
| 'abstract-static-initialization'
948+
| 'public-abstract-static-initialization'
949+
| 'protected-static-static-initialization'
950+
| 'protected-instance-static-initialization'
951+
| 'protected-abstract-static-initialization'
952+
| 'private-static-static-initialization'
953+
| 'private-instance-static-initialization'
954+
| 'private-abstract-static-initialization'
851955
)[]
852956
)[]
853957
| 'never';
@@ -961,6 +1065,19 @@ export interface MemberOrderingOption {
9611065
| 'private-static-set'
9621066
| 'private-instance-set'
9631067
| 'private-abstract-set'
1068+
| 'static-initialization'
1069+
| 'static-static-initialization'
1070+
| 'public-static-static-initialization'
1071+
| 'instance-static-initialization'
1072+
| 'public-instance-static-initialization'
1073+
| 'abstract-static-initialization'
1074+
| 'public-abstract-static-initialization'
1075+
| 'protected-static-static-initialization'
1076+
| 'protected-instance-static-initialization'
1077+
| 'protected-abstract-static-initialization'
1078+
| 'private-static-static-initialization'
1079+
| 'private-instance-static-initialization'
1080+
| 'private-abstract-static-initialization'
9641081
)
9651082
| (
9661083
| 'signature'
@@ -1064,6 +1181,19 @@ export interface MemberOrderingOption {
10641181
| 'private-static-set'
10651182
| 'private-instance-set'
10661183
| 'private-abstract-set'
1184+
| 'static-initialization'
1185+
| 'static-static-initialization'
1186+
| 'public-static-static-initialization'
1187+
| 'instance-static-initialization'
1188+
| 'public-instance-static-initialization'
1189+
| 'abstract-static-initialization'
1190+
| 'public-abstract-static-initialization'
1191+
| 'protected-static-static-initialization'
1192+
| 'protected-instance-static-initialization'
1193+
| 'protected-abstract-static-initialization'
1194+
| 'private-static-static-initialization'
1195+
| 'private-instance-static-initialization'
1196+
| 'private-abstract-static-initialization'
10671197
)[]
10681198
)[]
10691199
| {
@@ -1171,6 +1301,19 @@ export interface MemberOrderingOption {
11711301
| 'private-static-set'
11721302
| 'private-instance-set'
11731303
| 'private-abstract-set'
1304+
| 'static-initialization'
1305+
| 'static-static-initialization'
1306+
| 'public-static-static-initialization'
1307+
| 'instance-static-initialization'
1308+
| 'public-instance-static-initialization'
1309+
| 'abstract-static-initialization'
1310+
| 'public-abstract-static-initialization'
1311+
| 'protected-static-static-initialization'
1312+
| 'protected-instance-static-initialization'
1313+
| 'protected-abstract-static-initialization'
1314+
| 'private-static-static-initialization'
1315+
| 'private-instance-static-initialization'
1316+
| 'private-abstract-static-initialization'
11741317
)
11751318
| (
11761319
| 'signature'
@@ -1274,6 +1417,19 @@ export interface MemberOrderingOption {
12741417
| 'private-static-set'
12751418
| 'private-instance-set'
12761419
| 'private-abstract-set'
1420+
| 'static-initialization'
1421+
| 'static-static-initialization'
1422+
| 'public-static-static-initialization'
1423+
| 'instance-static-initialization'
1424+
| 'public-instance-static-initialization'
1425+
| 'abstract-static-initialization'
1426+
| 'public-abstract-static-initialization'
1427+
| 'protected-static-static-initialization'
1428+
| 'protected-instance-static-initialization'
1429+
| 'protected-abstract-static-initialization'
1430+
| 'private-static-static-initialization'
1431+
| 'private-instance-static-initialization'
1432+
| 'private-abstract-static-initialization'
12771433
)[]
12781434
)[]
12791435
| 'never';

src/rules/typescript-eslint/no-explicit-any.d.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,13 @@ import type { RuleConfig } from '../rule-config';
44
* Option.
55
*/
66
export interface NoExplicitAnyOption {
7+
/**
8+
* Whether to enable auto-fixing in which the `any` type is converted to the `unknown` type.
9+
*/
710
fixToUnknown?: boolean;
11+
/**
12+
* Whether to ignore rest parameter arrays.
13+
*/
814
ignoreRestArgs?: boolean;
915
}
1016

src/rules/typescript-eslint/no-extraneous-class.d.ts

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,21 @@ import type { RuleConfig } from '../rule-config';
44
* Option.
55
*/
66
export interface NoExtraneousClassOption {
7+
/**
8+
* Whether to allow extraneous classes that contain only a constructor.
9+
*/
710
allowConstructorOnly?: boolean;
11+
/**
12+
* Whether to allow extraneous classes that have no body (i.e. are empty).
13+
*/
814
allowEmpty?: boolean;
15+
/**
16+
* Whether to allow extraneous classes that only contain static members.
17+
*/
918
allowStaticOnly?: boolean;
19+
/**
20+
* Whether to allow extraneous classes that include a decorator.
21+
*/
1022
allowWithDecorator?: boolean;
1123
}
1224

src/rules/typescript-eslint/no-floating-promises.d.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,13 @@ import type { RuleConfig } from '../rule-config';
44
* Option.
55
*/
66
export interface NoFloatingPromisesOption {
7+
/**
8+
* Whether to ignore `void` expressions.
9+
*/
710
ignoreVoid?: boolean;
11+
/**
12+
* Whether to ignore async IIFEs (Immediately Invocated Function Expressions).
13+
*/
814
ignoreIIFE?: boolean;
915
}
1016

src/rules/typescript-eslint/no-implicit-any-catch.d.ts

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@ import type { RuleConfig } from '../rule-config';
44
* Option.
55
*/
66
export interface NoImplicitAnyCatchOption {
7+
/**
8+
* Whether to disallow specifying `: any` as the error type as well. See also `no-explicit-any`.
9+
*/
710
allowExplicitAny?: boolean;
811
}
912

src/rules/typescript-eslint/no-namespace.d.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,13 @@ import type { RuleConfig } from '../rule-config';
44
* Option.
55
*/
66
export interface NoNamespaceOption {
7+
/**
8+
* Whether to allow `declare` with custom TypeScript namespaces.
9+
*/
710
allowDeclarations?: boolean;
11+
/**
12+
* Whether to allow `declare` with custom TypeScript namespaces inside definition files.
13+
*/
814
allowDefinitionFiles?: boolean;
915
}
1016

src/rules/typescript-eslint/no-this-alias.d.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,13 @@ import type { RuleConfig } from '../rule-config';
44
* Option.
55
*/
66
export interface NoThisAliasOption {
7+
/**
8+
* Whether to ignore destructurings, such as `const { props, state } = this`.
9+
*/
710
allowDestructuring?: boolean;
11+
/**
12+
* Names to ignore, such as ["self"] for `const self = this;`.
13+
*/
814
allowedNames?: string[];
915
}
1016

0 commit comments

Comments
 (0)