==== tests/cases/compiler/privacyCannotNameAccessorDeclFile_consumer.ts (8 errors) ==== import exporter = require("privacyCannotNameAccessorDeclFile_exporter"); export class publicClassWithWithPrivateGetAccessorTypes { static get myPublicStaticMethod() { // Error ~~~~~~~~~~~~~~~~~~~~ !!! Return type of public static property getter from exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets" but cannot be named. return exporter.createExportedWidget1(); } private static get myPrivateStaticMethod() { return exporter.createExportedWidget1(); } get myPublicMethod() { // Error ~~~~~~~~~~~~~~ !!! Return type of public property getter from exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets" but cannot be named. return exporter.createExportedWidget1(); } private get myPrivateMethod() { return exporter.createExportedWidget1(); } static get myPublicStaticMethod1() { // Error ~~~~~~~~~~~~~~~~~~~~~ !!! Return type of public static property getter from exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named. return exporter.createExportedWidget3(); } private static get myPrivateStaticMethod1() { return exporter.createExportedWidget3(); } get myPublicMethod1() { // Error ~~~~~~~~~~~~~~~ !!! Return type of public property getter from exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named. return exporter.createExportedWidget3(); } private get myPrivateMethod1() { return exporter.createExportedWidget3(); } } class privateClassWithWithPrivateGetAccessorTypes { static get myPublicStaticMethod() { return exporter.createExportedWidget1(); } private static get myPrivateStaticMethod() { return exporter.createExportedWidget1(); } get myPublicMethod() { return exporter.createExportedWidget1(); } private get myPrivateMethod() { return exporter.createExportedWidget1(); } static get myPublicStaticMethod1() { return exporter.createExportedWidget3(); } private static get myPrivateStaticMethod1() { return exporter.createExportedWidget3(); } get myPublicMethod1() { return exporter.createExportedWidget3(); } private get myPrivateMethod1() { return exporter.createExportedWidget3(); } } export class publicClassWithPrivateModuleGetAccessorTypes { static get myPublicStaticMethod() { // Error ~~~~~~~~~~~~~~~~~~~~ !!! Return type of public static property getter from exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets" but cannot be named. return exporter.createExportedWidget2(); } get myPublicMethod() { // Error ~~~~~~~~~~~~~~ !!! Return type of public property getter from exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets" but cannot be named. return exporter.createExportedWidget2(); } static get myPublicStaticMethod1() { // Error ~~~~~~~~~~~~~~~~~~~~~ !!! Return type of public static property getter from exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named. return exporter.createExportedWidget4(); } get myPublicMethod1() { // Error ~~~~~~~~~~~~~~~ !!! Return type of public property getter from exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named. return exporter.createExportedWidget4(); } } class privateClassWithPrivateModuleGetAccessorTypes { static get myPublicStaticMethod() { return exporter.createExportedWidget2(); } get myPublicMethod() { return exporter.createExportedWidget2(); } static get myPublicStaticMethod1() { return exporter.createExportedWidget4(); } get myPublicMethod1() { return exporter.createExportedWidget4(); } } ==== tests/cases/compiler/privacyCannotNameAccessorDeclFile_GlobalWidgets.ts (0 errors) ==== declare module "GlobalWidgets" { export class Widget3 { name: string; } export function createWidget3(): Widget3; export module SpecializedGlobalWidget { export class Widget4 { name: string; } function createWidget4(): Widget4; } } ==== tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets.ts (0 errors) ==== export class Widget1 { name = 'one'; } export function createWidget1() { return new Widget1(); } export module SpecializedWidget { export class Widget2 { name = 'one'; } export function createWidget2() { return new Widget2(); } } ==== tests/cases/compiler/privacyCannotNameAccessorDeclFile_exporter.ts (0 errors) ==== /// import Widgets = require("privacyCannotNameAccessorDeclFile_Widgets"); import Widgets1 = require("GlobalWidgets"); export function createExportedWidget1() { return Widgets.createWidget1(); } export function createExportedWidget2() { return Widgets.SpecializedWidget.createWidget2(); } export function createExportedWidget3() { return Widgets1.createWidget3(); } export function createExportedWidget4() { return Widgets1.SpecializedGlobalWidget.createWidget4(); }