@typescript-eslint/eslint-plugin 8.9.1-alpha.1 → 8.9.1-alpha.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (100) hide show
  1. package/dist/rules/class-literal-property-style.js +1 -0
  2. package/dist/rules/class-literal-property-style.js.map +1 -1
  3. package/dist/rules/class-methods-use-this.js +3 -3
  4. package/dist/rules/class-methods-use-this.js.map +1 -1
  5. package/dist/rules/consistent-generic-constructors.js +1 -0
  6. package/dist/rules/consistent-generic-constructors.js.map +1 -1
  7. package/dist/rules/consistent-indexed-object-style.js +1 -0
  8. package/dist/rules/consistent-indexed-object-style.js.map +1 -1
  9. package/dist/rules/consistent-type-definitions.js +1 -0
  10. package/dist/rules/consistent-type-definitions.js.map +1 -1
  11. package/dist/rules/consistent-type-exports.js +10 -4
  12. package/dist/rules/consistent-type-exports.js.map +1 -1
  13. package/dist/rules/explicit-member-accessibility.js +5 -1
  14. package/dist/rules/explicit-member-accessibility.js.map +1 -1
  15. package/dist/rules/explicit-module-boundary-types.js.map +1 -1
  16. package/dist/rules/naming-convention.js +2 -1
  17. package/dist/rules/naming-convention.js.map +1 -1
  18. package/dist/rules/no-invalid-void-type.js +7 -3
  19. package/dist/rules/no-invalid-void-type.js.map +1 -1
  20. package/dist/rules/no-misused-promises.js +7 -1
  21. package/dist/rules/no-misused-promises.js.map +1 -1
  22. package/dist/rules/no-restricted-imports.js +1 -1
  23. package/dist/rules/no-restricted-imports.js.map +1 -1
  24. package/dist/rules/no-restricted-types.js +5 -4
  25. package/dist/rules/no-restricted-types.js.map +1 -1
  26. package/dist/rules/no-unnecessary-condition.js +0 -1
  27. package/dist/rules/no-unnecessary-condition.js.map +1 -1
  28. package/dist/rules/no-unsafe-argument.js +2 -1
  29. package/dist/rules/no-unsafe-argument.js.map +1 -1
  30. package/dist/rules/no-use-before-define.js +4 -1
  31. package/dist/rules/no-use-before-define.js.map +1 -1
  32. package/dist/rules/prefer-destructuring.js +2 -0
  33. package/dist/rules/prefer-destructuring.js.map +1 -1
  34. package/dist/rules/prefer-nullish-coalescing.js +18 -4
  35. package/dist/rules/prefer-nullish-coalescing.js.map +1 -1
  36. package/dist/rules/sort-type-constituents.js +3 -3
  37. package/dist/rules/sort-type-constituents.js.map +1 -1
  38. package/dist/rules/strict-boolean-expressions.js +5 -4
  39. package/dist/rules/strict-boolean-expressions.js.map +1 -1
  40. package/docs/rules/ban-ts-comment.mdx +4 -0
  41. package/docs/rules/class-methods-use-this.mdx +4 -1
  42. package/docs/rules/consistent-generic-constructors.mdx +6 -4
  43. package/docs/rules/consistent-indexed-object-style.mdx +6 -4
  44. package/docs/rules/consistent-type-assertions.mdx +4 -2
  45. package/docs/rules/consistent-type-definitions.mdx +8 -4
  46. package/docs/rules/consistent-type-exports.mdx +2 -1
  47. package/docs/rules/consistent-type-imports.mdx +7 -4
  48. package/docs/rules/dot-notation.mdx +5 -3
  49. package/docs/rules/explicit-function-return-type.mdx +16 -0
  50. package/docs/rules/explicit-member-accessibility.mdx +7 -2
  51. package/docs/rules/explicit-module-boundary-types.mdx +22 -12
  52. package/docs/rules/max-params.mdx +1 -1
  53. package/docs/rules/method-signature-style.mdx +4 -2
  54. package/docs/rules/no-base-to-string.mdx +5 -3
  55. package/docs/rules/no-confusing-void-expression.mdx +4 -0
  56. package/docs/rules/no-duplicate-type-constituents.mdx +4 -0
  57. package/docs/rules/no-empty-interface.mdx +3 -1
  58. package/docs/rules/no-empty-object-type.mdx +8 -3
  59. package/docs/rules/no-explicit-any.mdx +3 -1
  60. package/docs/rules/no-extraneous-class.mdx +4 -4
  61. package/docs/rules/no-floating-promises.mdx +12 -6
  62. package/docs/rules/no-inferrable-types.mdx +2 -2
  63. package/docs/rules/no-invalid-void-type.mdx +4 -3
  64. package/docs/rules/no-magic-numbers.mdx +8 -0
  65. package/docs/rules/no-meaningless-void-operator.mdx +1 -1
  66. package/docs/rules/no-misused-promises.mdx +11 -1
  67. package/docs/rules/no-namespace.mdx +4 -0
  68. package/docs/rules/no-redeclare.mdx +3 -1
  69. package/docs/rules/no-require-imports.mdx +6 -2
  70. package/docs/rules/no-restricted-imports.mdx +4 -1
  71. package/docs/rules/no-restricted-types.mdx +1 -1
  72. package/docs/rules/no-shadow.mdx +4 -2
  73. package/docs/rules/no-this-alias.mdx +4 -0
  74. package/docs/rules/no-type-alias.mdx +8 -8
  75. package/docs/rules/no-unnecessary-boolean-literal-compare.mdx +4 -0
  76. package/docs/rules/no-unnecessary-condition.mdx +6 -0
  77. package/docs/rules/no-unnecessary-type-assertion.mdx +2 -0
  78. package/docs/rules/no-use-before-define.mdx +3 -3
  79. package/docs/rules/no-var-requires.mdx +2 -0
  80. package/docs/rules/parameter-properties.mdx +6 -2
  81. package/docs/rules/prefer-destructuring.mdx +1 -1
  82. package/docs/rules/prefer-literal-enum-member.mdx +1 -1
  83. package/docs/rules/prefer-nullish-coalescing.mdx +6 -4
  84. package/docs/rules/prefer-optional-chain.mdx +37 -28
  85. package/docs/rules/prefer-readonly-parameter-types.mdx +8 -4
  86. package/docs/rules/prefer-readonly.mdx +1 -1
  87. package/docs/rules/prefer-string-starts-ends-with.mdx +2 -0
  88. package/docs/rules/promise-function-async.mdx +8 -9
  89. package/docs/rules/require-array-sort-compare.mdx +2 -0
  90. package/docs/rules/restrict-plus-operands.mdx +12 -0
  91. package/docs/rules/restrict-template-expressions.mdx +9 -7
  92. package/docs/rules/return-await.mdx +4 -0
  93. package/docs/rules/sort-type-constituents.mdx +5 -3
  94. package/docs/rules/strict-boolean-expressions.mdx +22 -12
  95. package/docs/rules/switch-exhaustiveness-check.mdx +6 -2
  96. package/docs/rules/triple-slash-reference.mdx +6 -0
  97. package/docs/rules/typedef.mdx +8 -8
  98. package/docs/rules/unbound-method.mdx +2 -0
  99. package/docs/rules/unified-signatures.mdx +2 -0
  100. package/package.json +7 -7
@@ -81,7 +81,7 @@ exports.default = (0, util_1.createRule)({
81
81
  properties: {
82
82
  allowAny: {
83
83
  type: 'boolean',
84
- description: 'Whether to allow `any` in a boolean context.',
84
+ description: 'Whether to allow `any`s in a boolean context.',
85
85
  },
86
86
  allowNullableBoolean: {
87
87
  type: 'boolean',
@@ -97,7 +97,7 @@ exports.default = (0, util_1.createRule)({
97
97
  },
98
98
  allowNullableObject: {
99
99
  type: 'boolean',
100
- description: 'Whether to allow nullable `object`s in a boolean context.',
100
+ description: 'Whether to allow nullable `object`s, `symbol`s, and functions in a boolean context.',
101
101
  },
102
102
  allowNullableString: {
103
103
  type: 'boolean',
@@ -105,14 +105,15 @@ exports.default = (0, util_1.createRule)({
105
105
  },
106
106
  allowNumber: {
107
107
  type: 'boolean',
108
- description: 'Whether to allow `number` in a boolean context.',
108
+ description: 'Whether to allow `number`s in a boolean context.',
109
109
  },
110
110
  allowRuleToRunWithoutStrictNullChecksIKnowWhatIAmDoing: {
111
111
  type: 'boolean',
112
+ description: 'Unless this is set to `true`, the rule will error on every file whose `tsconfig.json` does _not_ have the `strictNullChecks` compiler option (or `strict`) set to `true`.',
112
113
  },
113
114
  allowString: {
114
115
  type: 'boolean',
115
- description: 'Whether to allow `string` in a boolean context.',
116
+ description: 'Whether to allow `string`s in a boolean context.',
116
117
  },
117
118
  },
118
119
  },
@@ -1 +1 @@
1
- {"version":3,"file":"strict-boolean-expressions.js","sourceRoot":"","sources":["../../src/rules/strict-boolean-expressions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"strict-boolean-expressions.js","sourceRoot":"","sources":["../../src/rules/strict-boolean-expressions.ts"],"names":[],"mappings":"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"}
@@ -97,6 +97,8 @@ if (false) {
97
97
  </Tabs>
98
98
  ### `descriptionFormat`
99
99
 
100
+ {/* insert option description */}
101
+
100
102
  For each directive type, you can specify a custom format in the form of a regular expression. Only description that matches the pattern will be allowed.
101
103
 
102
104
  For example, with `{ 'ts-expect-error': { descriptionFormat: '^: TS\\d+ because .+$' } }`:
@@ -124,6 +126,8 @@ const a = doSomething('hello');
124
126
 
125
127
  ### `minimumDescriptionLength`
126
128
 
129
+ {/* insert option description */}
130
+
127
131
  Use `minimumDescriptionLength` to set a minimum length for descriptions when using the `allow-with-description` option for a directive.
128
132
 
129
133
  For example, with `{ 'ts-expect-error': 'allow-with-description', minimumDescriptionLength: 10 }` the following pattern is:
@@ -31,6 +31,8 @@ const defaultOptions: Options = {
31
31
 
32
32
  ### `ignoreOverrideMethods`
33
33
 
34
+ {/* insert option description */}
35
+
34
36
  Makes the rule ignore any class member explicitly marked with `override`.
35
37
 
36
38
  Example of a correct code when `ignoreOverrideMethods` is set to `true`:
@@ -44,7 +46,8 @@ class X {
44
46
 
45
47
  ### `ignoreClassesThatImplementAnInterface`
46
48
 
47
- Makes the rule ignore class members that are defined within a class that `implements` a type.
49
+ {/* insert option description */}
50
+
48
51
  If specified, it can be either:
49
52
 
50
53
  - `true`: Ignore all classes that implement an interface
@@ -27,10 +27,12 @@ Keeping to one side consistently improve code readability.
27
27
 
28
28
  ## Options
29
29
 
30
- - `constructor` _(default)_: type arguments that **only** appear on the type annotation are disallowed.
31
- - `type-annotation`: type arguments that **only** appear on the constructor are disallowed.
30
+ - `'constructor'` _(default)_: type arguments that **only** appear on the type annotation are disallowed.
31
+ - `'type-annotation'`: type arguments that **only** appear on the constructor are disallowed.
32
32
 
33
- ### `constructor`
33
+ ### `'constructor'`
34
+
35
+ {/* insert option description */}
34
36
 
35
37
  <Tabs>
36
38
  <TabItem value="❌ Incorrect">
@@ -54,7 +56,7 @@ const set: Set<string> = new Set<string>();
54
56
  </TabItem>
55
57
  </Tabs>
56
58
 
57
- ### `type-annotation`
59
+ ### `'type-annotation'`
58
60
 
59
61
  <Tabs>
60
62
  <TabItem value="❌ Incorrect">
@@ -27,10 +27,12 @@ Using one declaration form consistently improves code readability.
27
27
 
28
28
  ## Options
29
29
 
30
- - `"record"` _(default)_: only allow the `Record` type.
31
- - `"index-signature"`: only allow index signatures.
30
+ - `'record'` _(default)_: only allow the `Record` type.
31
+ - `'index-signature'`: only allow index signatures.
32
32
 
33
- ### `record`
33
+ ### `'record'`
34
+
35
+ {/* insert option description */}
34
36
 
35
37
  <Tabs>
36
38
  <TabItem value="❌ Incorrect">
@@ -55,7 +57,7 @@ type Foo = Record<string, unknown>;
55
57
  </TabItem>
56
58
  </Tabs>
57
59
 
58
- ### `index-signature`
60
+ ### `'index-signature'`
59
61
 
60
62
  <Tabs>
61
63
  <TabItem value="❌ Incorrect">
@@ -30,7 +30,9 @@ Examples of them include `let x = "hello" as const;` and `let x = <const>"hello"
30
30
 
31
31
  ### `assertionStyle`
32
32
 
33
- The expected assertion style to enforce. Valid values for `assertionStyle` are:
33
+ {/* insert option description */}
34
+
35
+ Valid values for `assertionStyle` are:
34
36
 
35
37
  - `as` will enforce that you always use `... as foo`.
36
38
  - `angle-bracket` will enforce that you always use `<foo>...`
@@ -42,7 +44,7 @@ Some codebases like to go for an extra level of type safety, and ban assertions
42
44
 
43
45
  ### `objectLiteralTypeAssertions`
44
46
 
45
- Whether to always prefer type declarations for object literals used as variable initializers, rather than type assertions.
47
+ {/* insert option description */}
46
48
 
47
49
  For example, this would prefer `const x: T = { ... };` to `const x = { ... } as T;` (or similar with angle brackets).
48
50
  The type assertion in the latter case is either unnecessary or will probably hide an error.
@@ -30,10 +30,12 @@ Using the same type declaration style consistently helps with code readability.
30
30
 
31
31
  ## Options
32
32
 
33
- - `"interface"` _(default)_: enforce using `interface`s for object type definitions.
34
- - `"type"`: enforce using `type`s for object type definitions.
33
+ - `'interface'` _(default)_: enforce using `interface`s for object type definitions.
34
+ - `'type'`: enforce using `type`s for object type definitions.
35
35
 
36
- ### `interface`
36
+ ### `'interface'`
37
+
38
+ {/* insert option description */}
37
39
 
38
40
  <Tabs>
39
41
  <TabItem value="❌ Incorrect">
@@ -57,7 +59,9 @@ interface T {
57
59
  </TabItem>
58
60
  </Tabs>
59
61
 
60
- ### `type`
62
+ ### `'type'`
63
+
64
+ {/* insert option description */}
61
65
 
62
66
  <Tabs>
63
67
  <TabItem value="❌ Incorrect">
@@ -54,7 +54,8 @@ export type { ButtonProps };
54
54
 
55
55
  ### `fixMixedExportsWithInlineTypeSpecifier`
56
56
 
57
- Whether the rule will autofix "mixed" export cases using TS inline type specifiers.
57
+ {/* insert option description */}
58
+
58
59
  If you are using a TypeScript version less than 4.5, then you will not be able to use this option.
59
60
 
60
61
  For example the following code:
@@ -18,7 +18,9 @@ This allows transpilers to drop imports without knowing the types of the depende
18
18
 
19
19
  ### `prefer`
20
20
 
21
- The expected import kind for type-only imports. Valid values for `prefer` are:
21
+ {/* insert option description */}
22
+
23
+ Valid values for `prefer` are:
22
24
 
23
25
  - `type-imports` will enforce that you always use `import type Foo from '...'` except referenced by metadata of decorators. It is the default.
24
26
  - `no-type-imports` will enforce that you always use `import Foo from '...'`.
@@ -43,7 +45,9 @@ const x: Bar = 1;
43
45
 
44
46
  ### `fixStyle`
45
47
 
46
- The expected type modifier to be added when an import is detected as used only in the type position. Valid values for `fixStyle` are:
48
+ {/* insert option description */}
49
+
50
+ Valid values for `fixStyle` are:
47
51
 
48
52
  - `separate-type-imports` will add the type keyword after the import keyword `import type { A } from '...'`. It is the default.
49
53
  - `inline-type-imports` will inline the type keyword `import { type A } from '...'` and is only available in TypeScript 4.5 and onwards. See [documentation here](https://www.typescriptlang.org/docs/handbook/release-notes/typescript-4-5.html#type-modifiers-on-import-names 'TypeScript 4.5 documentation on type modifiers and import names').
@@ -83,8 +87,7 @@ const x: Bar = 1;
83
87
 
84
88
  ### `disallowTypeAnnotations`
85
89
 
86
- Whether to disallow type imports in type annotations (`import()`).
87
- Default is `true`.
90
+ {/* insert option description */}
88
91
 
89
92
  Examples of **incorrect** code with `{disallowTypeAnnotations: true}`:
90
93
 
@@ -38,7 +38,8 @@ If the TypeScript compiler option `noPropertyAccessFromIndexSignature` is set to
38
38
 
39
39
  ### `allowPrivateClassPropertyAccess`
40
40
 
41
- Whether to allow accessing class members marked as `private` with array notation.
41
+ {/* insert option description */}
42
+
42
43
  This can be useful because TypeScript will report a type error on dot notation but not array notation.
43
44
 
44
45
  Example of a correct code when `allowPrivateClassPropertyAccess` is set to `true`:
@@ -54,7 +55,8 @@ x['priv_prop'] = 123;
54
55
 
55
56
  ### `allowProtectedClassPropertyAccess`
56
57
 
57
- Whether to allow accessing class members marked as `protected` with array notation.
58
+ {/* insert option description */}
59
+
58
60
  This can be useful because TypeScript will report a type error on dot notation but not array notation.
59
61
 
60
62
  Example of a correct code when `allowProtectedClassPropertyAccess` is set to `true`:
@@ -70,7 +72,7 @@ x['protected_prop'] = 123;
70
72
 
71
73
  ### `allowIndexSignaturePropertyAccess`
72
74
 
73
- Whether to allow accessing properties matching an index signature with array notation.
75
+ {/* insert option description */}
74
76
 
75
77
  Example of correct code when `allowIndexSignaturePropertyAccess` is set to `true`:
76
78
 
@@ -98,6 +98,8 @@ If you are working on a codebase within which you lint non-TypeScript code (i.e.
98
98
 
99
99
  ### `allowExpressions`
100
100
 
101
+ {/* insert option description */}
102
+
101
103
  Examples of code for this rule with `{ allowExpressions: true }`:
102
104
 
103
105
  <Tabs>
@@ -127,6 +129,8 @@ const foo = arr.map(i => i * i);
127
129
 
128
130
  ### `allowTypedFunctionExpressions`
129
131
 
132
+ {/* insert option description */}
133
+
130
134
  Examples of code for this rule with `{ allowTypedFunctionExpressions: true }`:
131
135
 
132
136
  <Tabs>
@@ -188,6 +192,8 @@ functionWithObjectArg({
188
192
 
189
193
  ### `allowHigherOrderFunctions`
190
194
 
195
+ {/* insert option description */}
196
+
191
197
  Examples of code for this rule with `{ allowHigherOrderFunctions: true }`:
192
198
 
193
199
  <Tabs>
@@ -217,6 +223,8 @@ function fn() {
217
223
 
218
224
  ### `allowDirectConstAssertionInArrowFunctions`
219
225
 
226
+ {/* insert option description */}
227
+
220
228
  Examples of code for this rule with `{ allowDirectConstAssertionInArrowFunctions: true }`:
221
229
 
222
230
  <Tabs>
@@ -240,6 +248,8 @@ const func = () => x as const;
240
248
 
241
249
  ### `allowConciseArrowFunctionExpressionsStartingWithVoid`
242
250
 
251
+ {/* insert option description */}
252
+
243
253
  Examples of code for this rule with `{ allowConciseArrowFunctionExpressionsStartingWithVoid: true }`:
244
254
 
245
255
  <Tabs>
@@ -265,6 +275,8 @@ var log = (message: string) => void console.log(message);
265
275
 
266
276
  ### `allowFunctionsWithoutTypeParameters`
267
277
 
278
+ {/* insert option description */}
279
+
268
280
  Examples of code for this rule with `{ allowFunctionsWithoutTypeParameters: true }`:
269
281
 
270
282
  <Tabs>
@@ -300,6 +312,8 @@ const allowedArrow = (x: string) => x;
300
312
 
301
313
  ### `allowedNames`
302
314
 
315
+ {/* insert option description */}
316
+
303
317
  You may pass function/method names you would like this rule to ignore, like so:
304
318
 
305
319
  ```json
@@ -315,6 +329,8 @@ You may pass function/method names you would like this rule to ignore, like so:
315
329
 
316
330
  ### `allowIIFEs`
317
331
 
332
+ {/* insert option description */}
333
+
318
334
  Examples of code for this rule with `{ allowIIFEs: true }`:
319
335
 
320
336
  <Tabs>
@@ -49,6 +49,8 @@ If you are working on a codebase within which you lint non-TypeScript code (i.e.
49
49
 
50
50
  ### `accessibility`
51
51
 
52
+ {/* insert option description */}
53
+
52
54
  This rule in its default state requires no configuration and will enforce that every class member has an accessibility modifier. If you would like to allow for some implicit public members then you have the following options:
53
55
 
54
56
  ```jsonc
@@ -169,6 +171,8 @@ class Animal {
169
171
 
170
172
  ### `overrides`
171
173
 
174
+ {/* insert option description */}
175
+
172
176
  There are three ways in which an override can be used.
173
177
 
174
178
  - To disallow the use of public on a given member.
@@ -317,8 +321,9 @@ class Animal {
317
321
 
318
322
  ### `ignoredMethodNames`
319
323
 
320
- Specific method names that may be ignored.
321
- Note that this option does not care for the context, and will ignore every method with these names, which could lead to it missing some cases. You should use this sparingly.
324
+ {/* insert option description */}
325
+
326
+ Note that this option does not care about context, and will ignore every method with these names, which could lead to it missing some cases. You should use this sparingly.
322
327
  e.g. `[ { ignoredMethodNames: ['specificMethod', 'whateverMethod'] } ]`
323
328
 
324
329
  ```ts option='{ "ignoredMethodNames": ["specificMethod", "whateverMethod"] }' showPlaygroundButton
@@ -97,17 +97,19 @@ If you are working on a codebase within which you lint non-TypeScript code (i.e.
97
97
 
98
98
  ### `allowArgumentsExplicitlyTypedAsAny`
99
99
 
100
- When this option is `true`, the rule ignores arguments that are explicitly typed as any.
100
+ {/* insert option description */}
101
+
102
+ Examples of code for this rule with `{ allowArgumentsExplicitlyTypedAsAny: false }`:
101
103
 
102
104
  <Tabs>
103
- <TabItem value="❌ Incorrect for `allowArgumentsExplicitlyTypedAsAny: false`">
105
+ <TabItem value="❌ Incorrect">
104
106
 
105
107
  ```ts option='{ "allowArgumentsExplicitlyTypedAsAny": false }'
106
108
  export const func = (value: any): number => value + 1;
107
109
  ```
108
110
 
109
111
  </TabItem>
110
- <TabItem value="✅ Correct for `allowArgumentsExplicitlyTypedAsAny: true`">
112
+ <TabItem value="✅ Correct">
111
113
 
112
114
  ```ts option='{ "allowArgumentsExplicitlyTypedAsAny": true }'
113
115
  export const func = (value: any): number => value + 1;
@@ -118,10 +120,12 @@ export const func = (value: any): number => value + 1;
118
120
 
119
121
  ### `allowDirectConstAssertionInArrowFunctions`
120
122
 
121
- When this option is `true`, the rule ignores return type annotations on body-less arrow functions that return an `as const` type assertion.
123
+ {/* insert option description */}
124
+
125
+ Examples of code for this rule with `{ allowDirectConstAssertionInArrowFunctions: false }`:
122
126
 
123
127
  <Tabs>
124
- <TabItem value="❌ Incorrect for `allowDirectConstAssertionInArrowFunctions: false`">
128
+ <TabItem value="❌ Incorrect">
125
129
 
126
130
  ```ts option='{ "allowDirectConstAssertionInArrowFunctions": false }'
127
131
  export const func = (value: number) => ({ type: 'X', value });
@@ -132,7 +136,7 @@ export const bar = () => 1;
132
136
  ```
133
137
 
134
138
  </TabItem>
135
- <TabItem value="✅ Correct for `allowDirectConstAssertionInArrowFunctions: true`">
139
+ <TabItem value="✅ Correct">
136
140
 
137
141
  ```ts option='{ "allowDirectConstAssertionInArrowFunctions": true }'
138
142
  export const func = (value: number) => ({ type: 'X', value }) as const;
@@ -148,6 +152,8 @@ export const bar = () => 1 as const;
148
152
 
149
153
  ### `allowedNames`
150
154
 
155
+ {/* insert option description */}
156
+
151
157
  You may pass function/method names you would like this rule to ignore, like so:
152
158
 
153
159
  ```json
@@ -163,10 +169,12 @@ You may pass function/method names you would like this rule to ignore, like so:
163
169
 
164
170
  ### `allowHigherOrderFunctions`
165
171
 
166
- When this option is `true`, the rule ignores return type annotations on function, which is immediately returning another function expression.
172
+ {/* insert option description */}
173
+
174
+ Examples of code for this rule with `{ allowHigherOrderFunctions: false }`:
167
175
 
168
176
  <Tabs>
169
- <TabItem value="❌ Incorrect for `allowHigherOrderFunctions: false`">
177
+ <TabItem value="❌ Incorrect">
170
178
 
171
179
  ```ts option='{ "allowHigherOrderFunctions": false }'
172
180
  export const arrowFn = () => () => {};
@@ -181,7 +189,7 @@ export function foo(outer: string) {
181
189
  ```
182
190
 
183
191
  </TabItem>
184
- <TabItem value="✅ Correct for `allowHigherOrderFunctions: true`">
192
+ <TabItem value="✅ Correct">
185
193
 
186
194
  ```ts option='{ "allowHigherOrderFunctions": true }'
187
195
  export const arrowFn = () => (): void => {};
@@ -200,10 +208,12 @@ export function foo(outer: string) {
200
208
 
201
209
  ### `allowTypedFunctionExpressions`
202
210
 
203
- When this option is `true`, the rule ignores type annotations on the variable of a function expression.
211
+ {/* insert option description */}
212
+
213
+ Examples of code for this rule with `{ allowTypedFunctionExpressions: false }`:
204
214
 
205
215
  <Tabs>
206
- <TabItem value="❌ Incorrect for `allowTypedFunctionExpressions: false`">
216
+ <TabItem value="❌ Incorrect">
207
217
 
208
218
  ```ts option='{ "allowTypedFunctionExpressions": false }'
209
219
  export let arrowFn = () => 'test';
@@ -220,7 +230,7 @@ export const foo = bar => {};
220
230
  ```
221
231
 
222
232
  </TabItem>
223
- <TabItem value="✅ Correct for `allowTypedFunctionExpressions: true`">
233
+ <TabItem value="✅ Correct">
224
234
 
225
235
  ```ts option='{ "allowTypedFunctionExpressions": true }'
226
236
  type FuncType = () => string;
@@ -29,7 +29,7 @@ const defaultOptions: Options = {
29
29
 
30
30
  ### `countVoidThis`
31
31
 
32
- Whether to count a `this` declaration when the type is `void`.
32
+ {/* insert option description */}
33
33
 
34
34
  Example of a code when `countVoidThis` is set to `false` and `max` is `1`:
35
35
 
@@ -39,10 +39,10 @@ This rule accepts one string option:
39
39
  - `"property"`: Enforce using property signature for functions. Use this to enforce maximum correctness together with TypeScript's strict mode.
40
40
  - `"method"`: Enforce using method signature for functions. Use this if you aren't using TypeScript's strict mode and prefer this style.
41
41
 
42
- The default is `"property"`.
43
-
44
42
  ### `property`
45
43
 
44
+ {/* insert option description */}
45
+
46
46
  Examples of code with `property` option.
47
47
 
48
48
  <Tabs>
@@ -85,6 +85,8 @@ interface T3 {
85
85
 
86
86
  ### `method`
87
87
 
88
+ {/* insert option description */}
89
+
88
90
  Examples of code with `method` option.
89
91
 
90
92
  <Tabs>
@@ -66,9 +66,10 @@ const literalWithToString = {
66
66
 
67
67
  ### `ignoredTypeNames`
68
68
 
69
- Stringified regular expressions of type names to ignore.
70
- This is useful for types missing `toString()` (but actually has `toString()`).
71
- There are some types missing `toString()` in old version TypeScript, like `RegExp`, `URL`, `URLSearchParams` etc.
69
+ {/* insert option description */}
70
+
71
+ This is useful for types whose declarations missing `toString()`, but are known to actually have `toString()`.
72
+ There are some types missing `toString()` in TypeScript, like `RegExp`, `URL`, `URLSearchParams` etc.
72
73
 
73
74
  The following patterns are considered correct with the default options `{ ignoredTypeNames: ["RegExp"] }`:
74
75
 
@@ -93,3 +94,4 @@ If you don't mind a risk of `"[object Object]"` or incorrect type coercions in y
93
94
  ## Further Reading
94
95
 
95
96
  - [`Object.prototype.toString()` MDN documentation](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/toString)
97
+ - [Microsoft/TypeScript Add missing toString declarations for base types that have them](https://github.com/microsoft/TypeScript/issues/38347)
@@ -77,6 +77,8 @@ cond ? console.log('true') : console.error('false');
77
77
 
78
78
  ### `ignoreArrowShorthand`
79
79
 
80
+ {/* insert option description */}
81
+
80
82
  Whether to ignore "shorthand" `() =>` arrow functions: those without `{ ... }` braces.
81
83
 
82
84
  It might be undesirable to wrap every arrow function shorthand expression.
@@ -90,6 +92,8 @@ promise.then(value => window.postMessage(value));
90
92
 
91
93
  ### `ignoreVoidOperator`
92
94
 
95
+ {/* insert option description */}
96
+
93
97
  Whether to ignore returns that start with the `void` operator.
94
98
 
95
99
  It might be preferable to only use some distinct syntax
@@ -67,10 +67,14 @@ const fn = (a?: string) => {};
67
67
 
68
68
  ### `ignoreIntersections`
69
69
 
70
+ {/* insert option description */}
71
+
70
72
  When set to true, duplicate checks on intersection type constituents are ignored.
71
73
 
72
74
  ### `ignoreUnions`
73
75
 
76
+ {/* insert option description */}
77
+
74
78
  When set to true, duplicate checks on union type constituents are ignored.
75
79
 
76
80
  ## When Not To Use It
@@ -62,7 +62,9 @@ interface Baz extends Foo, Bar {}
62
62
 
63
63
  ### `allowSingleExtends`
64
64
 
65
- `allowSingleExtends: true` will silence warnings about extending a single interface without adding additional members
65
+ {/* insert option description */}
66
+
67
+ `allowSingleExtends: true` will silence warnings about extending a single interface without adding additional members.
66
68
 
67
69
  ## When Not To Use It
68
70