Microsoft/TypeScript

Inconsistent behavior of "export as" symbols.

Open

#30,223 opened on Mar 5, 2019

View on GitHub
 (6 comments) (0 reactions) (0 assignees)TypeScript (48,455 stars) (6,726 forks)batch import
BugDomain: Error MessagesHelp Wanted

Description

TypeScript Version: 3.4.0-dev.20190305

Search Terms: export alias

Code

This is file of some-lib:

export { LongNameOfInnerClass as PublicNameClass } from './long-name-of-inner-class';

This is other file, that import above lib:

import { PublicNameClass } from 'some-lib';

new PublicNameClass(); // Here hints is OK

new PublicNameClass(wrongArgument); // Error ref to LongNameOfInnerClass

Expected behavior: TypeScript hints have same "export as" aliases for working code and for errors.

Actual behavior: TypeScript hints for the working code are different from the hints for errors.

Related Issues: Not sure, but it seems that this issue has a similar problem: symbolToName does handle exports of namespaces

Contributor guide