From 571af48abfa465ddfecde2a06a85892ad52ba353 Mon Sep 17 00:00:00 2001 From: David Brito <39559632+davbrito@users.noreply.github.com> Date: Thu, 9 Oct 2025 16:55:36 +0000 Subject: [PATCH] [lint] improve type safety on flat config --- .../eslint-plugin-react-hooks/src/index.ts | 23 +++++++++---------- 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/packages/eslint-plugin-react-hooks/src/index.ts b/packages/eslint-plugin-react-hooks/src/index.ts index 6d72c1daa57a9..5bd5b23c293d7 100644 --- a/packages/eslint-plugin-react-hooks/src/index.ts +++ b/packages/eslint-plugin-react-hooks/src/index.ts @@ -57,11 +57,6 @@ const recommendedLatestRuleConfigs: Linter.RulesRecord = { const plugins = ['react-hooks']; -type ReactHooksFlatConfig = { - plugins: {react: any}; - rules: Linter.RulesRecord; -}; - const configs = { recommended: { plugins, @@ -71,7 +66,7 @@ const configs = { plugins, rules: recommendedLatestRuleConfigs, }, - flat: {} as Record, + flat: {} as typeof flatConfigs, }; const plugin = { @@ -83,15 +78,19 @@ const plugin = { configs, }; -Object.assign(configs.flat, { +const pluginUnknown: unknown = plugin; + +const flatConfigs = { 'recommended-latest': { - plugins: {'react-hooks': plugin}, - rules: configs['recommended-latest'].rules, + plugins: {'react-hooks': pluginUnknown}, + rules: recommendedLatestRuleConfigs, }, recommended: { - plugins: {'react-hooks': plugin}, - rules: configs.recommended.rules, + plugins: {'react-hooks': pluginUnknown}, + rules: recommendedRuleConfigs, }, -}); +}; + +configs.flat = flatConfigs; export default plugin;