diff --git a/packages/eslint-plugin/src/configs/strict-type-checked-only.ts b/packages/eslint-plugin/src/configs/strict-type-checked-only.ts index 53f13d96748f..0935496d4c96 100644 --- a/packages/eslint-plugin/src/configs/strict-type-checked-only.ts +++ b/packages/eslint-plugin/src/configs/strict-type-checked-only.ts @@ -64,6 +64,11 @@ export = { allowNever: false, }, ], + 'no-return-await': 'off', + '@typescript-eslint/return-await': [ + 'error', + 'error-handling-correctness-only', + ], '@typescript-eslint/unbound-method': 'error', '@typescript-eslint/use-unknown-in-catch-callback-variable': 'error', }, diff --git a/packages/eslint-plugin/src/configs/strict-type-checked.ts b/packages/eslint-plugin/src/configs/strict-type-checked.ts index 11d65130de62..3703af22c8d9 100644 --- a/packages/eslint-plugin/src/configs/strict-type-checked.ts +++ b/packages/eslint-plugin/src/configs/strict-type-checked.ts @@ -97,6 +97,11 @@ export = { allowNever: false, }, ], + 'no-return-await': 'off', + '@typescript-eslint/return-await': [ + 'error', + 'error-handling-correctness-only', + ], '@typescript-eslint/triple-slash-reference': 'error', '@typescript-eslint/unbound-method': 'error', '@typescript-eslint/unified-signatures': 'error', diff --git a/packages/eslint-plugin/src/rules/return-await.ts b/packages/eslint-plugin/src/rules/return-await.ts index 493bc1ec184c..716962a8a11b 100644 --- a/packages/eslint-plugin/src/rules/return-await.ts +++ b/packages/eslint-plugin/src/rules/return-await.ts @@ -37,6 +37,9 @@ export default createRule({ description: 'Enforce consistent awaiting of returned promises', requiresTypeChecking: true, extendsBaseRule: 'no-return-await', + recommended: { + strict: ['error-handling-correctness-only'], + }, }, fixable: 'code', hasSuggestions: true, diff --git a/packages/typescript-eslint/src/configs/strict-type-checked-only.ts b/packages/typescript-eslint/src/configs/strict-type-checked-only.ts index 415dd3eb342b..4d902ef37e52 100644 --- a/packages/typescript-eslint/src/configs/strict-type-checked-only.ts +++ b/packages/typescript-eslint/src/configs/strict-type-checked-only.ts @@ -73,6 +73,11 @@ export default ( allowNever: false, }, ], + 'no-return-await': 'off', + '@typescript-eslint/return-await': [ + 'error', + 'error-handling-correctness-only', + ], '@typescript-eslint/unbound-method': 'error', '@typescript-eslint/use-unknown-in-catch-callback-variable': 'error', }, diff --git a/packages/typescript-eslint/src/configs/strict-type-checked.ts b/packages/typescript-eslint/src/configs/strict-type-checked.ts index fb53665756e3..c41cef185b4d 100644 --- a/packages/typescript-eslint/src/configs/strict-type-checked.ts +++ b/packages/typescript-eslint/src/configs/strict-type-checked.ts @@ -106,6 +106,11 @@ export default ( allowNever: false, }, ], + 'no-return-await': 'off', + '@typescript-eslint/return-await': [ + 'error', + 'error-handling-correctness-only', + ], '@typescript-eslint/triple-slash-reference': 'error', '@typescript-eslint/unbound-method': 'error', '@typescript-eslint/unified-signatures': 'error', diff --git a/packages/utils/src/ts-eslint/Rule.ts b/packages/utils/src/ts-eslint/Rule.ts index e159ea8c42dc..62cf392d38b3 100644 --- a/packages/utils/src/ts-eslint/Rule.ts +++ b/packages/utils/src/ts-eslint/Rule.ts @@ -11,7 +11,7 @@ export type RuleRecommendation = 'recommended' | 'strict' | 'stylistic'; export interface RuleRecommendationAcrossConfigs< Options extends readonly unknown[], > { - recommended: true; + recommended?: true; strict: Partial; }