From ea49b21c7ca32824b5fd8a03b21f6a366abb593a Mon Sep 17 00:00:00 2001 From: fisker Cheung Date: Mon, 8 Nov 2021 18:37:03 +0800 Subject: [PATCH] `prefer-export-from`: Ignore variables with type (#1580) --- rules/prefer-export-from.js | 1 + test/prefer-export-from.mjs | 13 +++++++++++++ 2 files changed, 14 insertions(+) diff --git a/rules/prefer-export-from.js b/rules/prefer-export-from.js index db03914d9f..cbe47ae16d 100644 --- a/rules/prefer-export-from.js +++ b/rules/prefer-export-from.js @@ -157,6 +157,7 @@ function getExported(identifier, context) { if ( parent.init === identifier && parent.id.type === 'Identifier' + && !parent.id.typeAnnotation && parent.parent.type === 'VariableDeclaration' && parent.parent.kind === 'const' && parent.parent.declarations.length === 1 diff --git a/test/prefer-export-from.mjs b/test/prefer-export-from.mjs index fee5beb222..79adad3bb9 100644 --- a/test/prefer-export-from.mjs +++ b/test/prefer-export-from.mjs @@ -285,3 +285,16 @@ test.snapshot({ `, ], }); + +test.typescript({ + valid: [ + // #1579 + outdent` + import {useDispatch as reduxUseDispatch} from 'react-redux' + type MyDispatchType = Dispatch + + export const useDispatch: () => DispatchAllActions = reduxUseDispatch + `, + ], + invalid: [], +});