From b73ccfe98d5c552de7eeae80160f683ede987466 Mon Sep 17 00:00:00 2001 From: Andrii Dieiev Date: Mon, 10 Oct 2016 02:32:07 +0300 Subject: [PATCH] Workaround for #1400. Excludes imported properties from error --- src/rules/noUseBeforeDeclareRule.ts | 15 ++++++++++++++- test/rules/no-use-before-declare/test.ts.lint | 9 +++++++++ 2 files changed, 23 insertions(+), 1 deletion(-) diff --git a/src/rules/noUseBeforeDeclareRule.ts b/src/rules/noUseBeforeDeclareRule.ts index 1f126607356..b9504b80a04 100644 --- a/src/rules/noUseBeforeDeclareRule.ts +++ b/src/rules/noUseBeforeDeclareRule.ts @@ -46,6 +46,8 @@ export class Rule extends Lint.Rules.AbstractRule { type VisitedVariables = {[varName: string]: boolean}; class NoUseBeforeDeclareWalker extends Lint.ScopeAwareRuleWalker { + private importedPropertiesPositions: number[] = []; + constructor(sourceFile: ts.SourceFile, options: Lint.IOptions, private languageService: ts.LanguageService) { super(sourceFile, options); } @@ -89,6 +91,9 @@ class NoUseBeforeDeclareWalker extends Lint.ScopeAwareRuleWalker { dog++; }; b({ c: 5 }); } + +import { ITest as ITest0 } from './ImportRegularAlias'; +import {/*ensure comments works*/ ITest as ITest1 } from './ImportAliasWithComment'; +import { + ITest as ITest2 +} from './ImportWithLineBreaks'; +import {First, ITest as ITest3 } from './ImportAliasSecond'; + +import ITest from './InterfaceFile';