You can't just be adding ambiguous syntax to languages because they're not like other languages. There is altogether too much of this "make TypeScript more like C#/VB.NET/Smalltalk" nonsense going on
round here. It's a superset of ECMAScript with early support for syntax from v6 of that language. It's not a damn free-for-all.
"ambiguous" - not at all ambiguous, as Java, C#, C++ and many other languages use public/private access modifiers for classes. I don't believe TypeScript should be just like C#, but I also don't think it should handicap what features it can and can
not have based on a committee over which it has no influence.
"superset" - A superset contains greater than or equal to the number of features of the original language. Saying "this can't be in the language because its not in ECMAScript" is equivalent to saying TypeScript shouldn't exist at all.
In my opinion, the "export" keyword is surprising and non-intuitive. TypeScript already uses public and private modifiers to denote accessibility.
Why should it be any different for class accessibility? It's likely the word "export" was chosen by the committee simply because its the dual of "import" (which is used to load modules). This seems like a weak reason to add inconsistency into