Use import types to refer to declarations in declaration emit (#24071)

* Stand up a simple implementation using import types for exports of modules which are otherwise inaccessible

* Ensure references exist to link to modules containing utilized ambient modules

* Accept baselines with new import type usage

* Fix lint
This commit is contained in:
Wesley Wigham
2018-05-17 13:08:22 -07:00
committed by GitHub
parent 09b9ec43e3
commit 3fc727b256
77 changed files with 1154 additions and 1637 deletions
+93 -60
View File
@@ -2794,6 +2794,14 @@ namespace ts {
}
return hasAccessibleDeclarations;
}
else {
if (some(symbol.declarations, hasExternalModuleSymbol)) {
// Any meaning of a module symbol is always accessible via an `import` type
return {
accessibility: SymbolAccessibility.Accessible
};
}
}
// If we haven't got the accessible symbol, it doesn't mean the symbol is actually inaccessible.
// It could be a qualified symbol and hence verify the path
@@ -3164,9 +3172,9 @@ namespace ts {
return createTypeReferenceNode(name, /*typeArguments*/ undefined);
}
if (!inTypeAlias && type.aliasSymbol && (context.flags & NodeBuilderFlags.UseAliasDefinedOutsideCurrentScope || isTypeSymbolAccessible(type.aliasSymbol, context.enclosingDeclaration))) {
const name = symbolToTypeReferenceName(type.aliasSymbol);
const typeArgumentNodes = mapToTypeNodes(type.aliasTypeArguments, context);
return createTypeReferenceNode(name, typeArgumentNodes);
if (isReservedMemberName(type.aliasSymbol.escapedName) && !(type.aliasSymbol.flags & SymbolFlags.Class)) return createTypeReferenceNode(createIdentifier(""), typeArgumentNodes);
return symbolToTypeNode(type.aliasSymbol, context, SymbolFlags.Type, typeArgumentNodes);
}
if (type.flags & (TypeFlags.Union | TypeFlags.Intersection)) {
const types = type.flags & TypeFlags.Union ? formatUnionTypes((<UnionType>type).types) : (<IntersectionType>type).types;
@@ -3329,12 +3337,6 @@ namespace ts {
return setEmitFlags(typeLiteralNode, (context.flags & NodeBuilderFlags.MultilineObjectLiterals) ? 0 : EmitFlags.SingleLine);
}
function symbolToTypeReferenceName(symbol: Symbol) {
// Unnamed function expressions and arrow functions have reserved names that we don't want to display
const entityName = symbol.flags & SymbolFlags.Class || !isReservedMemberName(symbol.escapedName) ? symbolToName(symbol, context, SymbolFlags.Type, /*expectsIdentifier*/ false) : createIdentifier("");
return entityName;
}
function typeReferenceToTypeNode(type: TypeReference) {
const typeArguments: Type[] = type.typeArguments || emptyArray;
if (type.target === globalArrayType) {
@@ -3369,7 +3371,7 @@ namespace ts {
else {
const outerTypeParameters = type.target.outerTypeParameters;
let i = 0;
let qualifiedName: QualifiedName | undefined;
let resultType: TypeReferenceNode | ImportTypeNode;
if (outerTypeParameters) {
const length = outerTypeParameters.length;
while (i < length) {
@@ -3383,64 +3385,66 @@ namespace ts {
// the default outer type arguments), we don't show the group.
if (!rangeEquals(outerTypeParameters, typeArguments, start, i)) {
const typeArgumentSlice = mapToTypeNodes(typeArguments.slice(start, i), context);
const typeArgumentNodes = typeArgumentSlice && createNodeArray(typeArgumentSlice);
const namePart = symbolToTypeReferenceName(parent);
(namePart.kind === SyntaxKind.Identifier ? namePart : namePart.right).typeArguments = typeArgumentNodes;
if (qualifiedName) {
Debug.assert(!qualifiedName.right);
qualifiedName = addToQualifiedNameMissingRightIdentifier(qualifiedName, namePart);
qualifiedName = createQualifiedName(qualifiedName, /*right*/ undefined);
}
else {
qualifiedName = createQualifiedName(namePart, /*right*/ undefined);
}
const flags = context.flags;
context.flags |= NodeBuilderFlags.ForbidIndexedAccessSymbolReferences;
const ref = symbolToTypeNode(parent, context, SymbolFlags.Type, typeArgumentSlice) as TypeReferenceNode | ImportTypeNode;
context.flags = flags;
resultType = !resultType ? ref : appendReferenceToType(resultType, ref as TypeReferenceNode);
}
}
}
let entityName: EntityName;
const nameIdentifier = symbolToTypeReferenceName(type.symbol);
if (qualifiedName) {
Debug.assert(!qualifiedName.right);
qualifiedName = addToQualifiedNameMissingRightIdentifier(qualifiedName, nameIdentifier);
entityName = qualifiedName;
}
else {
entityName = nameIdentifier;
}
let typeArgumentNodes: ReadonlyArray<TypeNode> | undefined;
if (typeArguments.length > 0) {
const typeParameterCount = (type.target.typeParameters || emptyArray).length;
typeArgumentNodes = mapToTypeNodes(typeArguments.slice(i, typeParameterCount), context);
}
if (typeArgumentNodes) {
const lastIdentifier = entityName.kind === SyntaxKind.Identifier ? entityName : entityName.right;
lastIdentifier.typeArguments = undefined;
}
return createTypeReferenceNode(entityName, typeArgumentNodes);
const flags = context.flags;
context.flags |= NodeBuilderFlags.ForbidIndexedAccessSymbolReferences;
const finalRef = symbolToTypeNode(type.symbol, context, SymbolFlags.Type, typeArgumentNodes);
context.flags = flags;
return !resultType ? finalRef : appendReferenceToType(resultType, finalRef as TypeReferenceNode);
}
}
function addToQualifiedNameMissingRightIdentifier(left: QualifiedName, right: Identifier | QualifiedName) {
Debug.assert(left.right === undefined);
if (right.kind === SyntaxKind.Identifier) {
left.right = right;
return left;
function appendReferenceToType(root: TypeReferenceNode | ImportTypeNode, ref: TypeReferenceNode): TypeReferenceNode | ImportTypeNode {
if (isImportTypeNode(root)) {
// first shift type arguments
const innerParams = root.typeArguments;
if (root.qualifier) {
(isIdentifier(root.qualifier) ? root.qualifier : root.qualifier.right).typeArguments = innerParams;
}
root.typeArguments = ref.typeArguments;
// then move qualifiers
const ids = getAccessStack(ref);
for (const id of ids) {
root.qualifier = root.qualifier ? createQualifiedName(root.qualifier, id) : id;
}
return root;
}
let rightPart = right;
while (rightPart.left.kind !== SyntaxKind.Identifier) {
rightPart = rightPart.left;
else {
// first shift type arguments
const innerParams = root.typeArguments;
(isIdentifier(root.typeName) ? root.typeName : root.typeName.right).typeArguments = innerParams;
root.typeArguments = ref.typeArguments;
// then move qualifiers
const ids = getAccessStack(ref);
for (const id of ids) {
root.typeName = createQualifiedName(root.typeName, id);
}
return root;
}
}
left.right = rightPart.left;
rightPart.left = left;
return right;
function getAccessStack(ref: TypeReferenceNode): Identifier[] {
let state = ref.typeName;
const ids = [];
while (!isIdentifier(state)) {
ids.unshift(state.right);
state = state.left;
}
ids.unshift(state);
return ids;
}
function createTypeNodesFromResolvedType(resolvedType: ResolvedType): TypeElement[] {
@@ -3674,7 +3678,7 @@ namespace ts {
}
}
function lookupSymbolChain(symbol: Symbol, context: NodeBuilderContext, meaning: SymbolFlags) {
function lookupSymbolChain(symbol: Symbol, context: NodeBuilderContext, meaning: SymbolFlags, yieldModuleSymbol?: boolean) {
context.tracker.trackSymbol(symbol, context.enclosingDeclaration, meaning);
// Try to get qualified name if the symbol is not a type parameter and there is an enclosing declaration.
let chain: Symbol[];
@@ -3714,7 +3718,7 @@ namespace ts {
// If this is the last part of outputting the symbol, always output. The cases apply only to parent symbols.
endOfChain ||
// If a parent symbol is an external module, don't write it. (We prefer just `x` vs `"foo/bar".x`.)
!(!parentSymbol && forEach(symbol.declarations, hasExternalModuleSymbol)) &&
(yieldModuleSymbol || !(!parentSymbol && forEach(symbol.declarations, hasExternalModuleSymbol))) &&
// If a parent symbol is an anonymous type, don't write it.
!(symbol.flags & (SymbolFlags.TypeLiteral | SymbolFlags.ObjectLiteral))) {
@@ -3762,8 +3766,8 @@ namespace ts {
return top;
}
function symbolToTypeNode(symbol: Symbol, context: NodeBuilderContext, meaning: SymbolFlags): TypeNode {
const chain = lookupSymbolChain(symbol, context, meaning);
function symbolToTypeNode(symbol: Symbol, context: NodeBuilderContext, meaning: SymbolFlags, overrideTypeArguments?: ReadonlyArray<TypeNode>): TypeNode {
const chain = lookupSymbolChain(symbol, context, meaning, !(context.flags & NodeBuilderFlags.UseAliasDefinedOutsideCurrentScope)); // If we're using aliases outside the current scope, dont bother with the module
context.flags |= NodeBuilderFlags.InInitialEntityName;
const rootName = getNameOfSymbolAsWritten(chain[0], context);
@@ -3773,9 +3777,13 @@ namespace ts {
if (ambientModuleSymbolRegex.test(rootName)) {
// module is root, must use `ImportTypeNode`
const nonRootParts = chain.length > 1 ? createAccessFromSymbolChain(chain, chain.length - 1, 1) : undefined;
const typeParameterNodes = lookupTypeParameterNodes(chain, 0, context);
const typeParameterNodes = overrideTypeArguments || lookupTypeParameterNodes(chain, 0, context);
const lit = createLiteralTypeNode(createLiteral(rootName.substring(1, rootName.length - 1)));
if (!nonRootParts || isEntityName(nonRootParts)) {
if (nonRootParts) {
const lastId = isIdentifier(nonRootParts) ? nonRootParts : (nonRootParts as QualifiedName).right;
lastId.typeArguments = undefined;
}
return createImportTypeNode(lit, nonRootParts as EntityName, typeParameterNodes as ReadonlyArray<TypeNode>, isTypeOf);
}
else {
@@ -3789,10 +3797,18 @@ namespace ts {
if (isIndexedAccessTypeNode(entityName)) {
return entityName; // Indexed accesses can never be `typeof`
}
return isTypeOf ? createTypeQueryNode(entityName) : createTypeReferenceNode(entityName, /*typeArguments*/ undefined);
if (isTypeOf) {
return createTypeQueryNode(entityName);
}
else {
const lastId = isIdentifier(entityName) ? entityName : entityName.right;
const lastTypeArgs = lastId.typeArguments;
lastId.typeArguments = undefined;
return createTypeReferenceNode(entityName, lastTypeArgs as NodeArray<TypeNode>);
}
function createAccessFromSymbolChain(chain: Symbol[], index: number, stopper: number): EntityName | IndexedAccessTypeNode {
const typeParameterNodes = lookupTypeParameterNodes(chain, index, context);
const typeParameterNodes = index === (chain.length - 1) ? overrideTypeArguments : lookupTypeParameterNodes(chain, index, context);
const symbol = chain[index];
if (index === 0) {
@@ -3804,7 +3820,7 @@ namespace ts {
}
const parent = chain[index - 1];
if (parent && getMembersOfSymbol(parent) && getMembersOfSymbol(parent).get(symbol.escapedName) === symbol) {
if (!(context.flags & NodeBuilderFlags.ForbidIndexedAccessSymbolReferences) && parent && getMembersOfSymbol(parent) && getMembersOfSymbol(parent).get(symbol.escapedName) === symbol) {
// Should use an indexed access
const LHS = createAccessFromSymbolChain(chain, index - 1, stopper);
if (isIndexedAccessTypeNode(LHS)) {
@@ -4007,6 +4023,23 @@ namespace ts {
return "default";
}
if (symbol.declarations && symbol.declarations.length) {
if (some(symbol.declarations, hasExternalModuleSymbol) && context.enclosingDeclaration) {
const file = getDeclarationOfKind<SourceFile>(symbol, SyntaxKind.SourceFile);
if (!file || !context.tracker.moduleResolverHost) {
if (context.tracker.trackReferencedAmbientModule) {
const ambientDecls = filter(symbol.declarations, isAmbientModule);
if (length(ambientDecls)) {
for (const decl of ambientDecls) {
context.tracker.trackReferencedAmbientModule(decl);
}
}
}
// ambient module, just use declaration/symbol name (fallthrough)
}
else {
return `"${getResolvedExternalModuleName(context.tracker.moduleResolverHost, file, getSourceFileOfNode(getOriginalNode(context.enclosingDeclaration)))}"`;
}
}
const declaration = symbol.declarations[0];
const name = getNameOfDeclaration(declaration);
if (name) {
+12 -4
View File
@@ -37,20 +37,23 @@ namespace ts {
let lateStatementReplacementMap: Map<VisitResult<LateVisibilityPaintedStatement>>;
let suppressNewDiagnosticContexts: boolean;
const host = context.getEmitHost();
const symbolTracker: SymbolTracker = {
trackSymbol,
reportInaccessibleThisError,
reportInaccessibleUniqueSymbolError,
reportPrivateInBaseOfClassExpression
reportPrivateInBaseOfClassExpression,
moduleResolverHost: host,
trackReferencedAmbientModule,
};
let errorNameNode: DeclarationName | undefined;
let currentSourceFile: SourceFile;
let refs: Map<SourceFile>;
const resolver = context.getEmitResolver();
const options = context.getCompilerOptions();
const newLine = getNewLineCharacter(options);
const { noResolve, stripInternal } = options;
const host = context.getEmitHost();
return transformRoot;
function recordTypeReferenceDirectivesIfNecessary(typeReferenceDirectives: string[]): void {
@@ -63,6 +66,11 @@ namespace ts {
}
}
function trackReferencedAmbientModule(node: ModuleDeclaration) {
const container = getSourceFileOfNode(node);
refs.set("" + getOriginalNodeId(container), container);
}
function handleSymbolAccessibilityError(symbolAccessibilityResult: SymbolAccessibilityResult) {
if (symbolAccessibilityResult.accessibility === SymbolAccessibility.Accessible) {
// Add aliases back onto the possible imports list if they're not there so we can try them again with updated visibility info
@@ -197,13 +205,13 @@ namespace ts {
lateMarkedStatements = undefined;
lateStatementReplacementMap = createMap();
necessaryTypeRefernces = undefined;
const refs = collectReferences(currentSourceFile, createMap());
refs = collectReferences(currentSourceFile, createMap());
const references: FileReference[] = [];
const outputFilePath = getDirectoryPath(normalizeSlashes(getOutputPathsFor(node, host, /*forceDtsPaths*/ true).declarationFilePath));
const referenceVisitor = mapReferencesIntoArray(references, outputFilePath);
refs.forEach(referenceVisitor);
const statements = visitNodes(node.statements, visitDeclarationStatements);
let combinedStatements = setTextRange(createNodeArray(transformAndReplaceLatePaintedStatements(statements)), node.statements);
refs.forEach(referenceVisitor);
const emittedImports = filter(combinedStatements, isAnyImportSyntax);
if (isExternalModule(node) && (!resultHasExternalModuleIndicator || (needsScopeFixMarker && !resultHasScopeMarker))) {
combinedStatements = setTextRange(createNodeArray([...combinedStatements, createExportDeclaration(/*decorators*/ undefined, /*modifiers*/ undefined, createNamedExports([]), /*moduleSpecifier*/ undefined)]), combinedStatements);
+12 -1
View File
@@ -3093,7 +3093,7 @@ namespace ts {
WriteArrayAsGenericType = 1 << 1, // Write Array<T> instead T[]
GenerateNamesForShadowedTypeParams = 1 << 2, // When a type parameter T is shadowing another T, generate a name for it so it can still be referenced
UseStructuralFallback = 1 << 3, // When an alias cannot be named by its symbol, rather than report an error, fallback to a structural printout if possible
// empty space
ForbidIndexedAccessSymbolReferences = 1 << 4, // Forbid references like `I["a"]["b"]` - print `typeof I.a<x>.b<y>` instead
WriteTypeArgumentsOfSignature = 1 << 5, // Write the type arguments instead of type parameters of the signature
UseFullyQualifiedType = 1 << 6, // Write out the fully qualified type name (eg. Module.Type, instead of Type)
UseOnlyExternalAliasing = 1 << 7, // Only use external aliases for a symbol
@@ -5258,6 +5258,13 @@ namespace ts {
isAtStartOfLine(): boolean;
}
/* @internal */
export interface ModuleNameResolverHost {
getCanonicalFileName(f: string): string;
getCommonSourceDirectory(): string;
getCurrentDirectory(): string;
}
/** @deprecated See comment on SymbolWriter */
// Note: this has non-deprecated internal uses.
export interface SymbolTracker {
@@ -5268,6 +5275,10 @@ namespace ts {
reportInaccessibleThisError?(): void;
reportPrivateInBaseOfClassExpression?(propertyName: string): void;
reportInaccessibleUniqueSymbolError?(): void;
/* @internal */
moduleResolverHost?: ModuleNameResolverHost;
/* @internal */
trackReferencedAmbientModule?(decl: ModuleDeclaration): void;
}
export interface TextSpan {
+7 -6
View File
@@ -2878,11 +2878,11 @@ namespace ts {
};
}
export function getResolvedExternalModuleName(host: EmitHost, file: SourceFile): string {
return file.moduleName || getExternalModuleNameFromPath(host, file.fileName);
export function getResolvedExternalModuleName(host: ModuleNameResolverHost, file: SourceFile, referenceFile?: SourceFile): string {
return file.moduleName || getExternalModuleNameFromPath(host, file.fileName, referenceFile && referenceFile.fileName);
}
export function getExternalModuleNameFromDeclaration(host: EmitHost, resolver: EmitResolver, declaration: ImportEqualsDeclaration | ImportDeclaration | ExportDeclaration | ModuleDeclaration | ImportTypeNode): string {
export function getExternalModuleNameFromDeclaration(host: ModuleNameResolverHost, resolver: EmitResolver, declaration: ImportEqualsDeclaration | ImportDeclaration | ExportDeclaration | ModuleDeclaration | ImportTypeNode): string {
const file = resolver.getExternalModuleFileFromDeclaration(declaration);
if (!file || file.isDeclarationFile) {
return undefined;
@@ -2893,12 +2893,13 @@ namespace ts {
/**
* Resolves a local path to a path which is absolute to the base of the emit
*/
export function getExternalModuleNameFromPath(host: EmitHost, fileName: string): string {
export function getExternalModuleNameFromPath(host: ModuleNameResolverHost, fileName: string, referencePath?: string): string {
const getCanonicalFileName = (f: string) => host.getCanonicalFileName(f);
const dir = toPath(host.getCommonSourceDirectory(), host.getCurrentDirectory(), getCanonicalFileName);
const dir = toPath(referencePath ? getDirectoryPath(referencePath) : host.getCommonSourceDirectory(), host.getCurrentDirectory(), getCanonicalFileName);
const filePath = getNormalizedAbsolutePath(fileName, host.getCurrentDirectory());
const relativePath = getRelativePathToDirectoryOrUrl(dir, filePath, dir, getCanonicalFileName, /*isAbsolutePathAnUrl*/ false);
return removeFileExtension(relativePath);
const extensionless = removeFileExtension(relativePath);
return referencePath ? ensurePathIsNonModuleName(extensionless) : extensionless;
}
export function getOwnEmitOutputFilePath(sourceFile: SourceFile, host: EmitHost, extension: string) {
@@ -1,6 +1,6 @@
=== tests/cases/compiler/Class.ts ===
import { Configurable } from "./Configurable"
>Configurable : <T extends new (...args: any[]) => {}>(base: T) => T
>Configurable : <T extends import("tests/cases/compiler/Configurable").Constructor<{}>>(base: T) => T
export class HiddenClass {}
>HiddenClass : HiddenClass
@@ -8,7 +8,7 @@ export class HiddenClass {}
export class ActualClass extends Configurable(HiddenClass) {}
>ActualClass : ActualClass
>Configurable(HiddenClass) : HiddenClass
>Configurable : <T extends new (...args: any[]) => {}>(base: T) => T
>Configurable : <T extends import("tests/cases/compiler/Configurable").Constructor<{}>>(base: T) => T
>HiddenClass : typeof HiddenClass
=== tests/cases/compiler/Configurable.ts ===
+1
View File
@@ -1900,6 +1900,7 @@ declare namespace ts {
WriteArrayAsGenericType = 2,
GenerateNamesForShadowedTypeParams = 4,
UseStructuralFallback = 8,
ForbidIndexedAccessSymbolReferences = 16,
WriteTypeArgumentsOfSignature = 32,
UseFullyQualifiedType = 64,
UseOnlyExternalAliasing = 128,
+1
View File
@@ -1900,6 +1900,7 @@ declare namespace ts {
WriteArrayAsGenericType = 2,
GenerateNamesForShadowedTypeParams = 4,
UseStructuralFallback = 8,
ForbidIndexedAccessSymbolReferences = 16,
WriteTypeArgumentsOfSignature = 32,
UseFullyQualifiedType = 64,
UseOnlyExternalAliasing = 128,
@@ -18,7 +18,7 @@ declare module "express" {
function e(): e.Express;
>e : typeof e
>e : any
>Express : Express
>Express : e.Express
namespace e {
>e : typeof e
@@ -36,24 +36,9 @@ exports["default"] = fp.l10ns;
//// [app.d.ts]
declare const _default: {
ar?: {
weekdays: {
shorthand: [string, string, string, string, string, string, string];
longhand: [string, string, string, string, string, string, string];
};
};
bg?: {
weekdays: {
shorthand: [string, string, string, string, string, string, string];
longhand: [string, string, string, string, string, string, string];
};
};
ar?: import("./locale").CustomLocale;
bg?: import("./locale").CustomLocale;
} & {
default: {
weekdays: {
shorthand: [string, string, string, string, string, string, string];
longhand: [string, string, string, string, string, string, string];
};
};
default: import("./locale").Locale;
};
export default _default;
@@ -62,7 +62,7 @@ const fp = { l10ns: {} } as FlatpickrFn;
>FlatpickrFn : FlatpickrFn
export default fp.l10ns;
>fp.l10ns : { ar?: { weekdays: { shorthand: [string, string, string, string, string, string, string]; longhand: [string, string, string, string, string, string, string]; }; }; bg?: { weekdays: { shorthand: [string, string, string, string, string, string, string]; longhand: [string, string, string, string, string, string, string]; }; }; } & { default: { weekdays: { shorthand: [string, string, string, string, string, string, string]; longhand: [string, string, string, string, string, string, string]; }; }; }
>fp.l10ns : { ar?: import("tests/cases/compiler/locale").CustomLocale; bg?: import("tests/cases/compiler/locale").CustomLocale; } & { default: import("tests/cases/compiler/locale").Locale; }
>fp : FlatpickrFn
>l10ns : { ar?: { weekdays: { shorthand: [string, string, string, string, string, string, string]; longhand: [string, string, string, string, string, string, string]; }; }; bg?: { weekdays: { shorthand: [string, string, string, string, string, string, string]; longhand: [string, string, string, string, string, string, string]; }; }; } & { default: { weekdays: { shorthand: [string, string, string, string, string, string, string]; longhand: [string, string, string, string, string, string, string]; }; }; }
>l10ns : { ar?: import("tests/cases/compiler/locale").CustomLocale; bg?: import("tests/cases/compiler/locale").CustomLocale; } & { default: import("tests/cases/compiler/locale").Locale; }
@@ -22,5 +22,5 @@ exports.v = v;
//// [0.d.ts]
export declare type Data = string | boolean;
//// [1.d.ts]
declare let v: string | boolean;
declare let v: import("./0").Data;
export { v };
@@ -9,11 +9,11 @@ let obj: Data = true;
=== tests/cases/compiler/1.ts ===
let v = "str" || true;
>v : string | boolean
>v : import("tests/cases/compiler/0").Data
>"str" || true : true | "str"
>"str" : "str"
>true : true
export { v }
>v : string | boolean
>v : import("tests/cases/compiler/0").Data
@@ -0,0 +1,48 @@
//// [tests/cases/compiler/declarationsForInferredTypeFromOtherFile.ts] ////
//// [file1.ts]
export class Foo {}
//// [file2.ts]
export function foo(): import("./file1").Foo {
return null as any;
}
//// [file3.ts]
import {foo} from "./file2";
export function bar() {
return foo();
}
//// [file1.js]
"use strict";
exports.__esModule = true;
var Foo = /** @class */ (function () {
function Foo() {
}
return Foo;
}());
exports.Foo = Foo;
//// [file2.js]
"use strict";
exports.__esModule = true;
function foo() {
return null;
}
exports.foo = foo;
//// [file3.js]
"use strict";
exports.__esModule = true;
var file2_1 = require("./file2");
function bar() {
return file2_1.foo();
}
exports.bar = bar;
//// [file1.d.ts]
export declare class Foo {
}
//// [file2.d.ts]
export declare function foo(): import("./file1").Foo;
//// [file3.d.ts]
export declare function bar(): import("./file1").Foo;
@@ -0,0 +1,22 @@
=== tests/cases/compiler/file1.ts ===
export class Foo {}
>Foo : Symbol(Foo, Decl(file1.ts, 0, 0))
=== tests/cases/compiler/file2.ts ===
export function foo(): import("./file1").Foo {
>foo : Symbol(foo, Decl(file2.ts, 0, 0))
>Foo : Symbol(Foo, Decl(file1.ts, 0, 0))
return null as any;
}
=== tests/cases/compiler/file3.ts ===
import {foo} from "./file2";
>foo : Symbol(foo, Decl(file3.ts, 0, 8))
export function bar() {
>bar : Symbol(bar, Decl(file3.ts, 0, 28))
return foo();
>foo : Symbol(foo, Decl(file3.ts, 0, 8))
}
@@ -0,0 +1,25 @@
=== tests/cases/compiler/file1.ts ===
export class Foo {}
>Foo : Foo
=== tests/cases/compiler/file2.ts ===
export function foo(): import("./file1").Foo {
>foo : () => import("tests/cases/compiler/file1").Foo
>Foo : import("tests/cases/compiler/file1").Foo
return null as any;
>null as any : any
>null : null
}
=== tests/cases/compiler/file3.ts ===
import {foo} from "./file2";
>foo : () => import("tests/cases/compiler/file1").Foo
export function bar() {
>bar : () => import("tests/cases/compiler/file1").Foo
return foo();
>foo() : import("tests/cases/compiler/file1").Foo
>foo : () => import("tests/cases/compiler/file1").Foo
}
@@ -4,39 +4,39 @@ type Constructor = new (...args: any[]) => {};
>args : any[]
const Mixin1 = <C extends Constructor>(Base: C) => class extends Base { private _fooPrivate: {}; }
>Mixin1 : <C extends Constructor>(Base: C) => { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); } & C
><C extends Constructor>(Base: C) => class extends Base { private _fooPrivate: {}; } : <C extends Constructor>(Base: C) => { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); } & C
>Mixin1 : <C extends Constructor>(Base: C) => { new (...args: any[]): (Anonymous class); prototype: Mixin1<any>.(Anonymous class); } & C
><C extends Constructor>(Base: C) => class extends Base { private _fooPrivate: {}; } : <C extends Constructor>(Base: C) => { new (...args: any[]): (Anonymous class); prototype: Mixin1<any>.(Anonymous class); } & C
>C : C
>Constructor : Constructor
>Base : C
>C : C
>class extends Base { private _fooPrivate: {}; } : { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); } & C
>class extends Base { private _fooPrivate: {}; } : { new (...args: any[]): (Anonymous class); prototype: Mixin1<any>.(Anonymous class); } & C
>Base : {}
>_fooPrivate : {}
type FooConstructor = typeof Mixin1 extends (a: Constructor) => infer Cls ? Cls : never;
>FooConstructor : { new (...args: any[]): <Constructor>.(Anonymous class); prototype: <any>.(Anonymous class); } & Constructor
>Mixin1 : <C extends Constructor>(Base: C) => { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); } & C
>FooConstructor : { new (...args: any[]): Mixin1<Constructor>.(Anonymous class); prototype: Mixin1<any>.(Anonymous class); } & Constructor
>Mixin1 : <C extends Constructor>(Base: C) => { new (...args: any[]): (Anonymous class); prototype: Mixin1<any>.(Anonymous class); } & C
>a : Constructor
>Constructor : Constructor
>Cls : Cls
>Cls : Cls
const Mixin2 = <C extends FooConstructor>(Base: C) => class extends Base {};
>Mixin2 : <C extends { new (...args: any[]): <Constructor>.(Anonymous class); prototype: <any>.(Anonymous class); } & Constructor>(Base: C) => { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); } & C
><C extends FooConstructor>(Base: C) => class extends Base {} : <C extends { new (...args: any[]): <Constructor>.(Anonymous class); prototype: <any>.(Anonymous class); } & Constructor>(Base: C) => { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); } & C
>Mixin2 : <C extends { new (...args: any[]): Mixin1<Constructor>.(Anonymous class); prototype: Mixin1<any>.(Anonymous class); } & Constructor>(Base: C) => { new (...args: any[]): (Anonymous class); prototype: Mixin2<any>.(Anonymous class); } & C
><C extends FooConstructor>(Base: C) => class extends Base {} : <C extends { new (...args: any[]): Mixin1<Constructor>.(Anonymous class); prototype: Mixin1<any>.(Anonymous class); } & Constructor>(Base: C) => { new (...args: any[]): (Anonymous class); prototype: Mixin2<any>.(Anonymous class); } & C
>C : C
>FooConstructor : { new (...args: any[]): <Constructor>.(Anonymous class); prototype: <any>.(Anonymous class); } & Constructor
>FooConstructor : { new (...args: any[]): Mixin1<Constructor>.(Anonymous class); prototype: Mixin1<any>.(Anonymous class); } & Constructor
>Base : C
>C : C
>class extends Base {} : { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); } & C
>Base : <Constructor>.(Anonymous class)
>class extends Base {} : { new (...args: any[]): (Anonymous class); prototype: Mixin2<any>.(Anonymous class); } & C
>Base : Mixin1<Constructor>.(Anonymous class)
class C extends Mixin2(Mixin1(Object)) {}
>C : C
>Mixin2(Mixin1(Object)) : <{ new (...args: any[]): <ObjectConstructor>.(Anonymous class); prototype: <any>.(Anonymous class); } & ObjectConstructor>.(Anonymous class) & <ObjectConstructor>.(Anonymous class) & Object
>Mixin2 : <C extends { new (...args: any[]): <Constructor>.(Anonymous class); prototype: <any>.(Anonymous class); } & Constructor>(Base: C) => { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); } & C
>Mixin1(Object) : { new (...args: any[]): <ObjectConstructor>.(Anonymous class); prototype: <any>.(Anonymous class); } & ObjectConstructor
>Mixin1 : <C extends Constructor>(Base: C) => { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); } & C
>Mixin2(Mixin1(Object)) : Mixin2<{ new (...args: any[]): Mixin1<ObjectConstructor>.(Anonymous class); prototype: Mixin1<any>.(Anonymous class); } & ObjectConstructor>.(Anonymous class) & Mixin1<ObjectConstructor>.(Anonymous class) & Object
>Mixin2 : <C extends { new (...args: any[]): Mixin1<Constructor>.(Anonymous class); prototype: Mixin1<any>.(Anonymous class); } & Constructor>(Base: C) => { new (...args: any[]): (Anonymous class); prototype: Mixin2<any>.(Anonymous class); } & C
>Mixin1(Object) : { new (...args: any[]): Mixin1<ObjectConstructor>.(Anonymous class); prototype: Mixin1<any>.(Anonymous class); } & ObjectConstructor
>Mixin1 : <C extends Constructor>(Base: C) => { new (...args: any[]): (Anonymous class); prototype: Mixin1<any>.(Anonymous class); } & C
>Object : ObjectConstructor
@@ -1,4 +1,4 @@
/src/a.ts(5,3): error TS2345: Argument of type 'X' is not assignable to parameter of type 'X'.
/src/a.ts(5,3): error TS2345: Argument of type 'import("/node_modules/c/node_modules/x/index").default' is not assignable to parameter of type 'import("/node_modules/a/node_modules/x/index").default'.
Types have separate declarations of a private property 'x'.
@@ -9,7 +9,7 @@
a(b); // Works
a(c); // Error, these are from different versions of the library.
~
!!! error TS2345: Argument of type 'X' is not assignable to parameter of type 'X'.
!!! error TS2345: Argument of type 'import("/node_modules/c/node_modules/x/index").default' is not assignable to parameter of type 'import("/node_modules/a/node_modules/x/index").default'.
!!! error TS2345: Types have separate declarations of a private property 'x'.
==== /node_modules/a/index.d.ts (0 errors) ====
@@ -1,22 +1,22 @@
=== /src/a.ts ===
import { a } from "a";
>a : (x: default) => void
>a : (x: import("/node_modules/a/node_modules/x/index").default) => void
import { b } from "b";
>b : default
>b : import("/node_modules/a/node_modules/x/index").default
import { c } from "c";
>c : default
>c : import("/node_modules/c/node_modules/x/index").default
a(b); // Works
>a(b) : void
>a : (x: default) => void
>b : default
>a : (x: import("/node_modules/a/node_modules/x/index").default) => void
>b : import("/node_modules/a/node_modules/x/index").default
a(c); // Error, these are from different versions of the library.
>a(c) : void
>a : (x: default) => void
>c : default
>a : (x: import("/node_modules/a/node_modules/x/index").default) => void
>c : import("/node_modules/c/node_modules/x/index").default
=== /node_modules/a/index.d.ts ===
import X from "x";
@@ -1,14 +1,14 @@
=== /index.ts ===
import { use } from "foo/use";
>use : (o: C) => void
>use : (o: import("/node_modules/foo/index").C) => void
import { o } from "a";
>o : C
>o : import("/node_modules/foo/index").C
use(o);
>use(o) : void
>use : (o: C) => void
>o : C
>use : (o: import("/node_modules/foo/index").C) => void
>o : import("/node_modules/foo/index").C
=== /node_modules/a/node_modules/foo/index.d.ts ===
export class C {
@@ -1,14 +1,14 @@
=== /index.ts ===
import { use } from "@foo/bar/use";
>use : (o: C) => void
>use : (o: import("/node_modules/@foo/bar/index").C) => void
import { o } from "a";
>o : C
>o : import("/node_modules/@foo/bar/index").C
use(o);
>use(o) : void
>use : (o: C) => void
>o : C
>use : (o: import("/node_modules/@foo/bar/index").C) => void
>o : import("/node_modules/@foo/bar/index").C
=== /node_modules/a/node_modules/@foo/bar/index.d.ts ===
export class C {
@@ -1,6 +1,6 @@
=== tests/cases/compiler/es5ExportEquals.ts ===
export function f() { }
>f : typeof f
>f : typeof import("tests/cases/compiler/es5ExportEquals").f
export = f;
>f : () => void
@@ -1,6 +1,6 @@
=== tests/cases/compiler/es6ExportEquals.ts ===
export function f() { }
>f : typeof f
>f : typeof import("tests/cases/compiler/es6ExportEquals").f
export = f;
>f : () => void
@@ -114,7 +114,7 @@ export declare function MyMixin<T extends Constructor<MyBaseClass<any>>>(base: T
//// [FinalClass.d.ts]
import { MyBaseClass } from './BaseClass';
import { MyMixin } from './MixinClass';
declare const MyExtendedClass_base: typeof MyBaseClass & (new (...args: any[]) => MyMixin);
declare const MyExtendedClass_base: typeof MyBaseClass & import("./BaseClass").Constructor<MyMixin>;
export declare class MyExtendedClass extends MyExtendedClass_base<string> {
extendedClassProperty: number;
}
@@ -52,12 +52,12 @@ import { MyBaseClass } from './BaseClass';
>MyBaseClass : typeof MyBaseClass
import { MyMixin } from './MixinClass';
>MyMixin : <T extends new (...args: any[]) => MyBaseClass<any>>(base: T) => T & (new (...args: any[]) => MyMixin)
>MyMixin : <T extends import("tests/cases/compiler/BaseClass").Constructor<MyBaseClass<any>>>(base: T) => T & import("tests/cases/compiler/BaseClass").Constructor<MyMixin>
export class MyExtendedClass extends MyMixin(MyBaseClass)<string> {
>MyExtendedClass : MyExtendedClass
>MyMixin(MyBaseClass) : MyBaseClass<string> & MyMixin
>MyMixin : <T extends new (...args: any[]) => MyBaseClass<any>>(base: T) => T & (new (...args: any[]) => MyMixin)
>MyMixin : <T extends import("tests/cases/compiler/BaseClass").Constructor<MyBaseClass<any>>>(base: T) => T & import("tests/cases/compiler/BaseClass").Constructor<MyMixin>
>MyBaseClass : typeof MyBaseClass
extendedClassProperty: number;
@@ -68,7 +68,7 @@ import { MyExtendedClass } from './FinalClass';
>MyExtendedClass : typeof MyExtendedClass
import { MyMixin } from './MixinClass';
>MyMixin : <T extends new (...args: any[]) => MyBaseClass<any>>(base: T) => T & (new (...args: any[]) => MyMixin)
>MyMixin : <T extends import("tests/cases/compiler/BaseClass").Constructor<import("tests/cases/compiler/BaseClass").MyBaseClass<any>>>(base: T) => T & import("tests/cases/compiler/BaseClass").Constructor<MyMixin>
const myExtendedClass = new MyExtendedClass('string');
>myExtendedClass : MyExtendedClass
@@ -77,8 +77,8 @@ const myExtendedClass = new MyExtendedClass('string');
>'string' : "string"
const AnotherMixedClass = MyMixin(MyExtendedClass);
>AnotherMixedClass : typeof MyExtendedClass & (new (...args: any[]) => MyMixin)
>MyMixin(MyExtendedClass) : typeof MyExtendedClass & (new (...args: any[]) => MyMixin)
>MyMixin : <T extends new (...args: any[]) => MyBaseClass<any>>(base: T) => T & (new (...args: any[]) => MyMixin)
>AnotherMixedClass : typeof MyExtendedClass & import("tests/cases/compiler/BaseClass").Constructor<MyMixin>
>MyMixin(MyExtendedClass) : typeof MyExtendedClass & import("tests/cases/compiler/BaseClass").Constructor<MyMixin>
>MyMixin : <T extends import("tests/cases/compiler/BaseClass").Constructor<import("tests/cases/compiler/BaseClass").MyBaseClass<any>>>(base: T) => T & import("tests/cases/compiler/BaseClass").Constructor<MyMixin>
>MyExtendedClass : typeof MyExtendedClass
+1 -1
View File
@@ -870,7 +870,7 @@ export interface eI {
>pa2 : any
}
export module eM {
>eM : typeof eM
>eM : typeof import("tests/cases/compiler/giant").eM
var V;
>V : any
@@ -13,12 +13,12 @@ async function foo() {
class C extends (await import("./0")).B {}
>C : C
>(await import("./0")).B : B
>(await import("./0")).B : import("tests/cases/conformance/dynamicImport/0").B
>(await import("./0")) : typeof import("tests/cases/conformance/dynamicImport/0")
>await import("./0") : typeof import("tests/cases/conformance/dynamicImport/0")
>import("./0") : Promise<typeof import("tests/cases/conformance/dynamicImport/0")>
>"./0" : "./0"
>B : typeof B
>B : typeof import("tests/cases/conformance/dynamicImport/0").B
var c = new C();
>c : C
@@ -1,10 +0,0 @@
tests/cases/conformance/dynamicImport/1.ts(1,5): error TS4023: Exported variable 'p1' has or is using name '"tests/cases/conformance/dynamicImport/0"' from external module "tests/cases/conformance/dynamicImport/0" but cannot be named.
==== tests/cases/conformance/dynamicImport/0.ts (0 errors) ====
export function foo() { return "foo"; }
==== tests/cases/conformance/dynamicImport/1.ts (1 errors) ====
var p1 = import("./0");
~~
!!! error TS4023: Exported variable 'p1' has or is using name '"tests/cases/conformance/dynamicImport/0"' from external module "tests/cases/conformance/dynamicImport/0" but cannot be named.
@@ -14,3 +14,5 @@ var p1 = import("./0");
//// [0.d.ts]
export declare function foo(): string;
//// [1.d.ts]
declare var p1: Promise<typeof import("./0")>;
@@ -13,12 +13,12 @@ async function foo() {
class C extends (await import("./0")).B {}
>C : C
>(await import("./0")).B : B
>(await import("./0")).B : import("tests/cases/conformance/dynamicImport/0").B
>(await import("./0")) : typeof import("tests/cases/conformance/dynamicImport/0")
>await import("./0") : typeof import("tests/cases/conformance/dynamicImport/0")
>import("./0") : Promise<typeof import("tests/cases/conformance/dynamicImport/0")>
>"./0" : "./0"
>B : typeof B
>B : typeof import("tests/cases/conformance/dynamicImport/0").B
var c = new C();
>c : C
@@ -13,12 +13,12 @@ async function foo() {
class C extends (await import("./0")).B {}
>C : C
>(await import("./0")).B : B
>(await import("./0")).B : import("tests/cases/conformance/dynamicImport/0").B
>(await import("./0")) : typeof import("tests/cases/conformance/dynamicImport/0")
>await import("./0") : typeof import("tests/cases/conformance/dynamicImport/0")
>import("./0") : Promise<typeof import("tests/cases/conformance/dynamicImport/0")>
>"./0" : "./0"
>B : typeof B
>B : typeof import("tests/cases/conformance/dynamicImport/0").B
var c = new C();
>c : C
@@ -13,12 +13,12 @@ async function foo() {
class C extends (await import("./0")).B {}
>C : C
>(await import("./0")).B : B
>(await import("./0")).B : import("tests/cases/conformance/dynamicImport/0").B
>(await import("./0")) : typeof import("tests/cases/conformance/dynamicImport/0")
>await import("./0") : typeof import("tests/cases/conformance/dynamicImport/0")
>import("./0") : Promise<typeof import("tests/cases/conformance/dynamicImport/0")>
>"./0" : "./0"
>B : typeof B
>B : typeof import("tests/cases/conformance/dynamicImport/0").B
var c = new C();
>c : C
@@ -13,12 +13,12 @@ async function foo() {
class C extends (await import("./0")).B {}
>C : C
>(await import("./0")).B : B
>(await import("./0")).B : import("tests/cases/conformance/dynamicImport/0").B
>(await import("./0")) : typeof import("tests/cases/conformance/dynamicImport/0")
>await import("./0") : typeof import("tests/cases/conformance/dynamicImport/0")
>import("./0") : Promise<typeof import("tests/cases/conformance/dynamicImport/0")>
>"./0" : "./0"
>B : typeof B
>B : typeof import("tests/cases/conformance/dynamicImport/0").B
var c = new C();
>c : C
@@ -21,6 +21,4 @@ exports.thing = umd_1.makeThing();
//// [index.d.ts]
export declare const thing: {
a: number;
};
export declare const thing: import("./node_modules/umd").Thing;
@@ -15,10 +15,10 @@ export declare function makeThing(): Thing;
=== tests/cases/compiler/index.ts ===
import { makeThing } from "umd";
>makeThing : () => { a: number; }
>makeThing : () => import("tests/cases/compiler/node_modules/umd").Thing
export const thing = makeThing();
>thing : { a: number; }
>makeThing() : { a: number; }
>makeThing : () => { a: number; }
>thing : import("tests/cases/compiler/node_modules/umd").Thing
>makeThing() : import("tests/cases/compiler/node_modules/umd").Thing
>makeThing : () => import("tests/cases/compiler/node_modules/umd").Thing
+9 -9
View File
@@ -1,18 +1,18 @@
=== tests/cases/conformance/types/localTypes/localTypes5.ts ===
function foo<A>() {
>foo : <A>() => X.m<number, boolean>.<Date>.Y<string>
>foo : <A>() => X.m<number, boolean>.(Anonymous function)<Date>.Y<string>
>A : A
class X {
>X : X
m<B, C>() {
>m : <B, C>() => <Date>.Y<string>
>m : <B, C>() => (Anonymous function)<Date>.Y<string>
>B : B
>C : C
return (function <D>() {
>(function <D>() { class Y<E> { } return new Y<string>(); })<Date>() : <Date>.Y<string>
>(function <D>() { class Y<E> { } return new Y<string>(); })<Date>() : (Anonymous function)<Date>.Y<string>
>(function <D>() { class Y<E> { } return new Y<string>(); }) : <D>() => Y<string>
>function <D>() { class Y<E> { } return new Y<string>(); } : <D>() => Y<string>
>D : D
@@ -35,13 +35,13 @@ function foo<A>() {
>X : typeof X
return x.m<number, boolean>();
>x.m<number, boolean>() : X.m<number, boolean>.<Date>.Y<string>
>x.m : <B, C>() => X.m<B, C>.<Date>.Y<string>
>x.m<number, boolean>() : X.m<number, boolean>.(Anonymous function)<Date>.Y<string>
>x.m : <B, C>() => X.m<B, C>.(Anonymous function)<Date>.Y<string>
>x : X
>m : <B, C>() => X.m<B, C>.<Date>.Y<string>
>m : <B, C>() => X.m<B, C>.(Anonymous function)<Date>.Y<string>
}
var x = foo<void>();
>x : foo<void>.X.m<number, boolean>.<Date>.Y<string>
>foo<void>() : foo<void>.X.m<number, boolean>.<Date>.Y<string>
>foo : <A>() => X.m<number, boolean>.<Date>.Y<string>
>x : foo<void>.X.m<number, boolean>.(Anonymous function)<Date>.Y<string>
>foo<void>() : foo<void>.X.m<number, boolean>.(Anonymous function)<Date>.Y<string>
>foo : <A>() => X.m<number, boolean>.(Anonymous function)<Date>.Y<string>
@@ -33,7 +33,7 @@ interface d {}
>d : d
export class d {}
>d : d
>d : import("tests/cases/compiler/mergedDeclarationExports").d
// both namespaces
namespace N { }
@@ -51,7 +51,7 @@ const Printable = <T extends Constructor<Base>>(superClass: T): Constructor<Prin
>T : T
class extends superClass {
>class extends superClass { static message = "hello"; print() { const output = this.x + "," + this.y; } } : { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); message: string; } & T
>class extends superClass { static message = "hello"; print() { const output = this.x + "," + this.y; } } : { new (...args: any[]): (Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & T
>superClass : Base
static message = "hello";
@@ -31,14 +31,14 @@ class Derived extends Base {
}
const Printable = <T extends Constructor<Base>>(superClass: T) => class extends superClass {
>Printable : <T extends Constructor<Base>>(superClass: T) => { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); message: string; } & T
><T extends Constructor<Base>>(superClass: T) => class extends superClass { static message = "hello"; print() { const output = this.x + "," + this.y; }} : <T extends Constructor<Base>>(superClass: T) => { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); message: string; } & T
>Printable : <T extends Constructor<Base>>(superClass: T) => { new (...args: any[]): (Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & T
><T extends Constructor<Base>>(superClass: T) => class extends superClass { static message = "hello"; print() { const output = this.x + "," + this.y; }} : <T extends Constructor<Base>>(superClass: T) => { new (...args: any[]): (Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & T
>T : T
>Constructor : Constructor<T>
>Base : Base
>superClass : T
>T : T
>class extends superClass { static message = "hello"; print() { const output = this.x + "," + this.y; }} : { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); message: string; } & T
>class extends superClass { static message = "hello"; print() { const output = this.x + "," + this.y; }} : { new (...args: any[]): (Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & T
>superClass : Base
static message = "hello";
@@ -104,16 +104,16 @@ const Thing1 = Tagged(Derived);
>Derived : typeof Derived
const Thing2 = Tagged(Printable(Derived));
>Thing2 : { new (...args: any[]): Tagged<{ new (...args: any[]): <typeof Derived>.(Anonymous class); prototype: <any>.(Anonymous class); message: string; } & typeof Derived>.C; prototype: Tagged<any>.C; } & { new (...args: any[]): <typeof Derived>.(Anonymous class); prototype: <any>.(Anonymous class); message: string; } & typeof Derived
>Tagged(Printable(Derived)) : { new (...args: any[]): Tagged<{ new (...args: any[]): <typeof Derived>.(Anonymous class); prototype: <any>.(Anonymous class); message: string; } & typeof Derived>.C; prototype: Tagged<any>.C; } & { new (...args: any[]): <typeof Derived>.(Anonymous class); prototype: <any>.(Anonymous class); message: string; } & typeof Derived
>Thing2 : { new (...args: any[]): Tagged<{ new (...args: any[]): Printable<typeof Derived>.(Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & typeof Derived>.C; prototype: Tagged<any>.C; } & { new (...args: any[]): Printable<typeof Derived>.(Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & typeof Derived
>Tagged(Printable(Derived)) : { new (...args: any[]): Tagged<{ new (...args: any[]): Printable<typeof Derived>.(Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & typeof Derived>.C; prototype: Tagged<any>.C; } & { new (...args: any[]): Printable<typeof Derived>.(Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & typeof Derived
>Tagged : <T extends Constructor<{}>>(superClass: T) => { new (...args: any[]): C; prototype: Tagged<any>.C; } & T
>Printable(Derived) : { new (...args: any[]): <typeof Derived>.(Anonymous class); prototype: <any>.(Anonymous class); message: string; } & typeof Derived
>Printable : <T extends Constructor<Base>>(superClass: T) => { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); message: string; } & T
>Printable(Derived) : { new (...args: any[]): Printable<typeof Derived>.(Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & typeof Derived
>Printable : <T extends Constructor<Base>>(superClass: T) => { new (...args: any[]): (Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & T
>Derived : typeof Derived
Thing2.message;
>Thing2.message : string
>Thing2 : { new (...args: any[]): Tagged<{ new (...args: any[]): <typeof Derived>.(Anonymous class); prototype: <any>.(Anonymous class); message: string; } & typeof Derived>.C; prototype: Tagged<any>.C; } & { new (...args: any[]): <typeof Derived>.(Anonymous class); prototype: <any>.(Anonymous class); message: string; } & typeof Derived
>Thing2 : { new (...args: any[]): Tagged<{ new (...args: any[]): Printable<typeof Derived>.(Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & typeof Derived>.C; prototype: Tagged<any>.C; } & { new (...args: any[]): Printable<typeof Derived>.(Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & typeof Derived
>message : string
function f1() {
@@ -142,40 +142,40 @@ function f2() {
>f2 : () => void
const thing = new Thing2(1, 2, 3);
>thing : Tagged<{ new (...args: any[]): <typeof Derived>.(Anonymous class); prototype: <any>.(Anonymous class); message: string; } & typeof Derived>.C & <typeof Derived>.(Anonymous class) & Derived
>new Thing2(1, 2, 3) : Tagged<{ new (...args: any[]): <typeof Derived>.(Anonymous class); prototype: <any>.(Anonymous class); message: string; } & typeof Derived>.C & <typeof Derived>.(Anonymous class) & Derived
>Thing2 : { new (...args: any[]): Tagged<{ new (...args: any[]): <typeof Derived>.(Anonymous class); prototype: <any>.(Anonymous class); message: string; } & typeof Derived>.C; prototype: Tagged<any>.C; } & { new (...args: any[]): <typeof Derived>.(Anonymous class); prototype: <any>.(Anonymous class); message: string; } & typeof Derived
>thing : Tagged<{ new (...args: any[]): Printable<typeof Derived>.(Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & typeof Derived>.C & Printable<typeof Derived>.(Anonymous class) & Derived
>new Thing2(1, 2, 3) : Tagged<{ new (...args: any[]): Printable<typeof Derived>.(Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & typeof Derived>.C & Printable<typeof Derived>.(Anonymous class) & Derived
>Thing2 : { new (...args: any[]): Tagged<{ new (...args: any[]): Printable<typeof Derived>.(Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & typeof Derived>.C; prototype: Tagged<any>.C; } & { new (...args: any[]): Printable<typeof Derived>.(Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & typeof Derived
>1 : 1
>2 : 2
>3 : 3
thing.x;
>thing.x : number
>thing : Tagged<{ new (...args: any[]): <typeof Derived>.(Anonymous class); prototype: <any>.(Anonymous class); message: string; } & typeof Derived>.C & <typeof Derived>.(Anonymous class) & Derived
>thing : Tagged<{ new (...args: any[]): Printable<typeof Derived>.(Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & typeof Derived>.C & Printable<typeof Derived>.(Anonymous class) & Derived
>x : number
thing._tag;
>thing._tag : string
>thing : Tagged<{ new (...args: any[]): <typeof Derived>.(Anonymous class); prototype: <any>.(Anonymous class); message: string; } & typeof Derived>.C & <typeof Derived>.(Anonymous class) & Derived
>thing : Tagged<{ new (...args: any[]): Printable<typeof Derived>.(Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & typeof Derived>.C & Printable<typeof Derived>.(Anonymous class) & Derived
>_tag : string
thing.print();
>thing.print() : void
>thing.print : () => void
>thing : Tagged<{ new (...args: any[]): <typeof Derived>.(Anonymous class); prototype: <any>.(Anonymous class); message: string; } & typeof Derived>.C & <typeof Derived>.(Anonymous class) & Derived
>thing : Tagged<{ new (...args: any[]): Printable<typeof Derived>.(Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & typeof Derived>.C & Printable<typeof Derived>.(Anonymous class) & Derived
>print : () => void
}
class Thing3 extends Thing2 {
>Thing3 : Thing3
>Thing2 : Tagged<{ new (...args: any[]): <typeof Derived>.(Anonymous class); prototype: <any>.(Anonymous class); message: string; } & typeof Derived>.C & <typeof Derived>.(Anonymous class) & Derived
>Thing2 : Tagged<{ new (...args: any[]): Printable<typeof Derived>.(Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & typeof Derived>.C & Printable<typeof Derived>.(Anonymous class) & Derived
constructor(tag: string) {
>tag : string
super(10, 20, 30);
>super(10, 20, 30) : void
>super : { new (...args: any[]): Tagged<{ new (...args: any[]): <typeof Derived>.(Anonymous class); prototype: <any>.(Anonymous class); message: string; } & typeof Derived>.C; prototype: Tagged<any>.C; } & { new (...args: any[]): <typeof Derived>.(Anonymous class); prototype: <any>.(Anonymous class); message: string; } & typeof Derived
>super : { new (...args: any[]): Tagged<{ new (...args: any[]): Printable<typeof Derived>.(Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & typeof Derived>.C; prototype: Tagged<any>.C; } & { new (...args: any[]): Printable<typeof Derived>.(Anonymous class); prototype: Printable<any>.(Anonymous class); message: string; } & typeof Derived
>10 : 10
>20 : 20
>30 : 30
@@ -201,15 +201,15 @@ class Thing3 extends Thing2 {
// Repro from #13805
const Timestamped = <CT extends Constructor<object>>(Base: CT) => {
>Timestamped : <CT extends Constructor<object>>(Base: CT) => { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); } & CT
><CT extends Constructor<object>>(Base: CT) => { return class extends Base { timestamp = new Date(); };} : <CT extends Constructor<object>>(Base: CT) => { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); } & CT
>Timestamped : <CT extends Constructor<object>>(Base: CT) => { new (...args: any[]): (Anonymous class); prototype: Timestamped<any>.(Anonymous class); } & CT
><CT extends Constructor<object>>(Base: CT) => { return class extends Base { timestamp = new Date(); };} : <CT extends Constructor<object>>(Base: CT) => { new (...args: any[]): (Anonymous class); prototype: Timestamped<any>.(Anonymous class); } & CT
>CT : CT
>Constructor : Constructor<T>
>Base : CT
>CT : CT
return class extends Base {
>class extends Base { timestamp = new Date(); } : { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); } & CT
>class extends Base { timestamp = new Date(); } : { new (...args: any[]): (Anonymous class); prototype: Timestamped<any>.(Anonymous class); } & CT
>Base : object
timestamp = new Date();
@@ -52,9 +52,9 @@ let a: A;
let b = a.foo().n;
>b : number
>a.foo().n : number
>a.foo() : B
>a.foo : () => B
>a.foo() : import("tests/cases/compiler/f2").B
>a.foo : () => import("tests/cases/compiler/f2").B
>a : A
>foo : () => B
>foo : () => import("tests/cases/compiler/f2").B
>n : number
@@ -81,10 +81,10 @@ let a: A;
let b = a.foo().n;
>b : number
>a.foo().n : number
>a.foo() : B
>a.foo : () => B
>a.foo() : import("tests/cases/compiler/f2").B
>a.foo : () => import("tests/cases/compiler/f2").B
>a : A
>foo : () => B
>foo : () => import("tests/cases/compiler/f2").B
>n : number
let c = a.bar().a;
@@ -81,10 +81,10 @@ let a: A;
let b = a.foo().n;
>b : number
>a.foo().n : number
>a.foo() : B
>a.foo : () => B
>a.foo() : import("tests/cases/compiler/f2").B
>a.foo : () => import("tests/cases/compiler/f2").B
>a : A
>foo : () => B
>foo : () => import("tests/cases/compiler/f2").B
>n : number
let c = a.bar().a;
@@ -81,10 +81,10 @@ let a: A;
let b = a.foo().n;
>b : number
>a.foo().n : number
>a.foo() : B
>a.foo : () => B
>a.foo() : import("tests/cases/compiler/f2").B
>a.foo : () => import("tests/cases/compiler/f2").B
>a : A
>foo : () => B
>foo : () => import("tests/cases/compiler/f2").B
>n : number
let c = a.bar().a;
@@ -10,10 +10,10 @@ let x: Observable;
x.foo().x;
>x.foo().x : number
>x.foo() : Cls
>x.foo : () => Cls
>x.foo() : import("M").Cls
>x.foo : () => import("M").Cls
>x : Observable
>foo : () => Cls
>foo : () => import("M").Cls
>x : number
=== tests/cases/compiler/O.d.ts ===
@@ -11,10 +11,10 @@ let x: Observable;
x.foo().x;
>x.foo().x : number
>x.foo() : Cls
>x.foo : () => Cls
>x.foo() : import("M").Cls
>x.foo : () => import("M").Cls
>x : Observable
>foo : () => Cls
>foo : () => import("M").Cls
>x : number
=== tests/cases/compiler/O.d.ts ===
@@ -11,18 +11,18 @@ let x: Observable;
x.foo().x;
>x.foo().x : number
>x.foo() : Cls
>x.foo : () => Cls
>x.foo() : import("M").Cls
>x.foo : () => import("M").Cls
>x : Observable
>foo : () => Cls
>foo : () => import("M").Cls
>x : number
x.foo2().x2;
>x.foo2().x2 : number
>x.foo2() : Cls2
>x.foo2 : () => Cls2
>x.foo2() : import("Map").Cls2
>x.foo2 : () => import("Map").Cls2
>x : Observable
>foo2 : () => Cls2
>foo2 : () => import("Map").Cls2
>x2 : number
=== tests/cases/compiler/O.d.ts ===
@@ -12,18 +12,18 @@ let x: Observable;
x.foo().x;
>x.foo().x : number
>x.foo() : Cls
>x.foo : () => Cls
>x.foo() : import("M").Cls
>x.foo : () => import("M").Cls
>x : Observable
>foo : () => Cls
>foo : () => import("M").Cls
>x : number
x.foo2().x2;
>x.foo2().x2 : number
>x.foo2() : Cls2
>x.foo2 : () => Cls2
>x.foo2() : import("Map").Cls2
>x.foo2 : () => import("Map").Cls2
>x : Observable
>foo2 : () => Cls2
>foo2 : () => import("Map").Cls2
>x2 : number
=== tests/cases/compiler/O.d.ts ===
@@ -10,10 +10,10 @@ let x = [1];
let y = x.getA().x;
>y : number
>x.getA().x : number
>x.getA() : A
>x.getA : () => A
>x.getA() : import("A").A
>x.getA : () => import("A").A
>x : number[]
>getA : () => A
>getA : () => import("A").A
>x : number
=== tests/cases/compiler/array.d.ts ===
@@ -150,10 +150,10 @@ c.baz1().x.toExponential();
>c.baz1().x.toExponential() : string
>c.baz1().x.toExponential : (fractionDigits?: number) => string
>c.baz1().x : number
>c.baz1() : C1
>c.baz1 : () => C1
>c.baz1() : import("tests/cases/compiler/m3").C1
>c.baz1 : () => import("tests/cases/compiler/m3").C1
>c : Cls
>baz1 : () => C1
>baz1 : () => import("tests/cases/compiler/m3").C1
>x : number
>toExponential : (fractionDigits?: number) => string
@@ -161,10 +161,10 @@ c.baz2().x.toLowerCase();
>c.baz2().x.toLowerCase() : string
>c.baz2().x.toLowerCase : () => string
>c.baz2().x : string
>c.baz2() : C2
>c.baz2 : () => C2
>c.baz2() : import("tests/cases/compiler/m3").C2
>c.baz2 : () => import("tests/cases/compiler/m3").C2
>c : Cls
>baz2 : () => C2
>baz2 : () => import("tests/cases/compiler/m3").C2
>x : string
>toLowerCase : () => string
@@ -87,10 +87,10 @@ let b = a.getB().x.toFixed();
>a.getB().x.toFixed() : string
>a.getB().x.toFixed : (fractionDigits?: number) => string
>a.getB().x : number
>a.getB() : B
>a.getB : () => B
>a.getB() : import("tests/cases/compiler/b").B
>a.getB : () => import("tests/cases/compiler/b").B
>a : A
>getB : () => B
>getB : () => import("tests/cases/compiler/b").B
>x : number
>toFixed : (fractionDigits?: number) => string
@@ -99,10 +99,10 @@ let c = a.getCls().y.toLowerCase();
>a.getCls().y.toLowerCase() : string
>a.getCls().y.toLowerCase : () => string
>a.getCls().y : string
>a.getCls() : Cls
>a.getCls : () => Cls
>a.getCls() : import("C").Cls
>a.getCls : () => import("C").Cls
>a : A
>getCls : () => Cls
>getCls : () => import("C").Cls
>y : string
>toLowerCase : () => string
@@ -92,10 +92,10 @@ let b = a.getB().x.toFixed();
>a.getB().x.toFixed() : string
>a.getB().x.toFixed : (fractionDigits?: number) => string
>a.getB().x : number
>a.getB() : B
>a.getB : () => B
>a.getB() : import("tests/cases/compiler/b").B
>a.getB : () => import("tests/cases/compiler/b").B
>a : A
>getB : () => B
>getB : () => import("tests/cases/compiler/b").B
>x : number
>toFixed : (fractionDigits?: number) => string
@@ -104,10 +104,10 @@ let c = a.getCls().y.toLowerCase();
>a.getCls().y.toLowerCase() : string
>a.getCls().y.toLowerCase : () => string
>a.getCls().y : string
>a.getCls() : Cls
>a.getCls : () => Cls
>a.getCls() : import("C").Cls
>a.getCls : () => import("C").Cls
>a : A
>getCls : () => Cls
>getCls : () => import("C").Cls
>y : string
>toLowerCase : () => string
@@ -15,10 +15,10 @@ let b = a.getB().x.toFixed();
>a.getB().x.toFixed() : string
>a.getB().x.toFixed : (fractionDigits?: number) => string
>a.getB().x : number
>a.getB() : B
>a.getB : () => B
>a.getB() : import("tests/cases/compiler/b").B
>a.getB : () => import("tests/cases/compiler/b").B
>a : A
>getB : () => B
>getB : () => import("tests/cases/compiler/b").B
>x : number
>toFixed : (fractionDigits?: number) => string
@@ -27,10 +27,10 @@ let c = a.getCls().y.toLowerCase();
>a.getCls().y.toLowerCase() : string
>a.getCls().y.toLowerCase : () => string
>a.getCls().y : string
>a.getCls() : Cls
>a.getCls : () => Cls
>a.getCls() : import("C").Cls
>a.getCls : () => import("C").Cls
>a : A
>getCls : () => Cls
>getCls : () => import("C").Cls
>y : string
>toLowerCase : () => string
@@ -16,10 +16,10 @@ let b = a.getB().x.toFixed();
>a.getB().x.toFixed() : string
>a.getB().x.toFixed : (fractionDigits?: number) => string
>a.getB().x : number
>a.getB() : B
>a.getB : () => B
>a.getB() : import("tests/cases/compiler/b").B
>a.getB : () => import("tests/cases/compiler/b").B
>a : A
>getB : () => B
>getB : () => import("tests/cases/compiler/b").B
>x : number
>toFixed : (fractionDigits?: number) => string
@@ -28,10 +28,10 @@ let c = a.getCls().y.toLowerCase();
>a.getCls().y.toLowerCase() : string
>a.getCls().y.toLowerCase : () => string
>a.getCls().y : string
>a.getCls() : Cls
>a.getCls : () => Cls
>a.getCls() : import("C").Cls
>a.getCls : () => import("C").Cls
>a : A
>getCls : () => Cls
>getCls : () => import("C").Cls
>y : string
>toLowerCase : () => string
@@ -46,7 +46,7 @@ export class Kettle {
}
export class Kettle { // Should error
>Kettle : Kettle
>Kettle : import("tests/cases/compiler/moduleDuplicateIdentifiers").Kettle
member2 = 42;
>member2 : number
@@ -1,4 +1,4 @@
/app/app.ts(9,1): error TS2719: Type 'C' is not assignable to type 'C'. Two different types with this name exist, but they are unrelated.
/app/app.ts(9,1): error TS2322: Type 'import("/app/node_modules/linked2/index").C' is not assignable to type 'import("/app/node_modules/linked/index").C'.
Types have separate declarations of a private property 'x'.
@@ -13,8 +13,8 @@
// Should fail. We no longer resolve any symlinks.
x = new C2();
~
!!! error TS2719: Type 'C' is not assignable to type 'C'. Two different types with this name exist, but they are unrelated.
!!! error TS2719: Types have separate declarations of a private property 'x'.
!!! error TS2322: Type 'import("/app/node_modules/linked2/index").C' is not assignable to type 'import("/app/node_modules/linked/index").C'.
!!! error TS2322: Types have separate declarations of a private property 'x'.
==== /linked/index.d.ts (0 errors) ====
export { real } from "real";
@@ -1,6 +1,6 @@
=== tests/cases/conformance/es6/modules/m1.ts ===
export default class foo {
>foo : foo
>foo : import("tests/cases/conformance/es6/modules/m1").default
}
@@ -4,5 +4,5 @@ export default class C {
}
export default class C {
>C : C
>C : import("tests/cases/conformance/es6/modules/multipleDefaultExports03").default
}
@@ -9,6 +9,6 @@ export default {
};
export default class C { }
>C : C
>C : import("tests/cases/conformance/externalModules/multipleExportDefault3").default
@@ -3,5 +3,5 @@ export default function bar() { }
>bar : () => void
export default class C {}
>C : C
>C : import("tests/cases/conformance/externalModules/multipleExportDefault5").default
@@ -8,14 +8,14 @@ type Constructor<T> = new (...args: any[]) => T;
>T : T
const WithLocation = <T extends Constructor<Point>>(Base: T) => class extends Base {
>WithLocation : <T extends Constructor<Point>>(Base: T) => { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); } & T
><T extends Constructor<Point>>(Base: T) => class extends Base { getLocation(): [number, number] { const [x,y] = super.getLocation(); return [this.x | x, this.y | y]; }} : <T extends Constructor<Point>>(Base: T) => { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); } & T
>WithLocation : <T extends Constructor<Point>>(Base: T) => { new (...args: any[]): (Anonymous class); prototype: WithLocation<any>.(Anonymous class); } & T
><T extends Constructor<Point>>(Base: T) => class extends Base { getLocation(): [number, number] { const [x,y] = super.getLocation(); return [this.x | x, this.y | y]; }} : <T extends Constructor<Point>>(Base: T) => { new (...args: any[]): (Anonymous class); prototype: WithLocation<any>.(Anonymous class); } & T
>T : T
>Constructor : Constructor<T>
>Point : Point
>Base : T
>T : T
>class extends Base { getLocation(): [number, number] { const [x,y] = super.getLocation(); return [this.x | x, this.y | y]; }} : { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); } & T
>class extends Base { getLocation(): [number, number] { const [x,y] = super.getLocation(); return [this.x | x, this.y | y]; }} : { new (...args: any[]): (Anonymous class); prototype: WithLocation<any>.(Anonymous class); } & T
>Base : Point
getLocation(): [number, number] {
@@ -63,8 +63,8 @@ class Point {
class Foo extends WithLocation(Point) {
>Foo : Foo
>WithLocation(Point) : <typeof Point>.(Anonymous class) & Point
>WithLocation : <T extends Constructor<Point>>(Base: T) => { new (...args: any[]): (Anonymous class); prototype: <any>.(Anonymous class); } & T
>WithLocation(Point) : WithLocation<typeof Point>.(Anonymous class) & Point
>WithLocation : <T extends Constructor<Point>>(Base: T) => { new (...args: any[]): (Anonymous class); prototype: WithLocation<any>.(Anonymous class); } & T
>Point : typeof Point
calculate() {
@@ -85,7 +85,7 @@ class Foo extends WithLocation(Point) {
return super.getLocation()
>super.getLocation() : [number, number]
>super.getLocation : () => [number, number]
>super : <typeof Point>.(Anonymous class) & Point
>super : WithLocation<typeof Point>.(Anonymous class) & Point
>getLocation : () => [number, number]
}
whereAmI() {
@@ -1,160 +0,0 @@
tests/cases/compiler/privacyCannotNameAccessorDeclFile_consumer.ts(3,16): error TS4038: Return type of public static getter 'myPublicStaticMethod' from exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyCannotNameAccessorDeclFile_consumer.ts(9,9): error TS4041: Return type of public getter 'myPublicMethod' from exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyCannotNameAccessorDeclFile_consumer.ts(15,16): error TS4038: Return type of public static getter 'myPublicStaticMethod1' from exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyCannotNameAccessorDeclFile_consumer.ts(21,9): error TS4041: Return type of public getter 'myPublicMethod1' from exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyCannotNameAccessorDeclFile_consumer.ts(57,16): error TS4038: Return type of public static getter 'myPublicStaticMethod' from exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyCannotNameAccessorDeclFile_consumer.ts(60,9): error TS4041: Return type of public getter 'myPublicMethod' from exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyCannotNameAccessorDeclFile_consumer.ts(63,16): error TS4038: Return type of public static getter 'myPublicStaticMethod1' from exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyCannotNameAccessorDeclFile_consumer.ts(66,9): error TS4041: Return type of public getter 'myPublicMethod1' from exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
==== tests/cases/compiler/privacyCannotNameAccessorDeclFile_consumer.ts (8 errors) ====
import exporter = require("./privacyCannotNameAccessorDeclFile_exporter");
export class publicClassWithWithPrivateGetAccessorTypes {
static get myPublicStaticMethod() { // Error
~~~~~~~~~~~~~~~~~~~~
!!! error TS4038: Return type of public static getter 'myPublicStaticMethod' 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
~~~~~~~~~~~~~~
!!! error TS4041: Return type of public getter 'myPublicMethod' 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
~~~~~~~~~~~~~~~~~~~~~
!!! error TS4038: Return type of public static getter 'myPublicStaticMethod1' 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
~~~~~~~~~~~~~~~
!!! error TS4041: Return type of public getter 'myPublicMethod1' 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
~~~~~~~~~~~~~~~~~~~~
!!! error TS4038: Return type of public static getter 'myPublicStaticMethod' 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
~~~~~~~~~~~~~~
!!! error TS4041: Return type of public getter 'myPublicMethod' 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
~~~~~~~~~~~~~~~~~~~~~
!!! error TS4038: Return type of public static getter 'myPublicStaticMethod1' from exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
return exporter.createExportedWidget4();
}
get myPublicMethod1() { // Error
~~~~~~~~~~~~~~~
!!! error TS4041: Return type of public getter 'myPublicMethod1' 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) ====
///<reference path='privacyCannotNameAccessorDeclFile_GlobalWidgets.ts'/>
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();
}
@@ -414,3 +414,21 @@ export declare function createExportedWidget1(): Widgets.Widget1;
export declare function createExportedWidget2(): Widgets.SpecializedWidget.Widget2;
export declare function createExportedWidget3(): Widgets1.Widget3;
export declare function createExportedWidget4(): Widgets1.SpecializedGlobalWidget.Widget4;
//// [privacyCannotNameAccessorDeclFile_consumer.d.ts]
/// <reference path="privacyCannotNameAccessorDeclFile_GlobalWidgets.d.ts" />
export declare class publicClassWithWithPrivateGetAccessorTypes {
static readonly myPublicStaticMethod: import("./privacyCannotNameAccessorDeclFile_Widgets").Widget1;
private static readonly myPrivateStaticMethod;
readonly myPublicMethod: import("./privacyCannotNameAccessorDeclFile_Widgets").Widget1;
private readonly myPrivateMethod;
static readonly myPublicStaticMethod1: import("GlobalWidgets").Widget3;
private static readonly myPrivateStaticMethod1;
readonly myPublicMethod1: import("GlobalWidgets").Widget3;
private readonly myPrivateMethod1;
}
export declare class publicClassWithPrivateModuleGetAccessorTypes {
static readonly myPublicStaticMethod: import("./privacyCannotNameAccessorDeclFile_Widgets").SpecializedWidget.Widget2;
readonly myPublicMethod: import("./privacyCannotNameAccessorDeclFile_Widgets").SpecializedWidget.Widget2;
static readonly myPublicStaticMethod1: import("GlobalWidgets").SpecializedGlobalWidget.Widget4;
readonly myPublicMethod1: import("GlobalWidgets").SpecializedGlobalWidget.Widget4;
}
@@ -6,76 +6,76 @@ export class publicClassWithWithPrivateGetAccessorTypes {
>publicClassWithWithPrivateGetAccessorTypes : publicClassWithWithPrivateGetAccessorTypes
static get myPublicStaticMethod() { // Error
>myPublicStaticMethod : Widget1
>myPublicStaticMethod : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
return exporter.createExportedWidget1();
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
}
private static get myPrivateStaticMethod() {
>myPrivateStaticMethod : Widget1
>myPrivateStaticMethod : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
return exporter.createExportedWidget1();
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
}
get myPublicMethod() { // Error
>myPublicMethod : Widget1
>myPublicMethod : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
return exporter.createExportedWidget1();
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
}
private get myPrivateMethod() {
>myPrivateMethod : Widget1
>myPrivateMethod : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
return exporter.createExportedWidget1();
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
}
static get myPublicStaticMethod1() { // Error
>myPublicStaticMethod1 : Widget3
>myPublicStaticMethod1 : import("GlobalWidgets").Widget3
return exporter.createExportedWidget3();
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
private static get myPrivateStaticMethod1() {
>myPrivateStaticMethod1 : Widget3
>myPrivateStaticMethod1 : import("GlobalWidgets").Widget3
return exporter.createExportedWidget3();
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
get myPublicMethod1() { // Error
>myPublicMethod1 : Widget3
>myPublicMethod1 : import("GlobalWidgets").Widget3
return exporter.createExportedWidget3();
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
private get myPrivateMethod1() {
>myPrivateMethod1 : Widget3
>myPrivateMethod1 : import("GlobalWidgets").Widget3
return exporter.createExportedWidget3();
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
}
@@ -83,76 +83,76 @@ class privateClassWithWithPrivateGetAccessorTypes {
>privateClassWithWithPrivateGetAccessorTypes : privateClassWithWithPrivateGetAccessorTypes
static get myPublicStaticMethod() {
>myPublicStaticMethod : Widget1
>myPublicStaticMethod : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
return exporter.createExportedWidget1();
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
}
private static get myPrivateStaticMethod() {
>myPrivateStaticMethod : Widget1
>myPrivateStaticMethod : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
return exporter.createExportedWidget1();
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
}
get myPublicMethod() {
>myPublicMethod : Widget1
>myPublicMethod : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
return exporter.createExportedWidget1();
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
}
private get myPrivateMethod() {
>myPrivateMethod : Widget1
>myPrivateMethod : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
return exporter.createExportedWidget1();
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").Widget1
}
static get myPublicStaticMethod1() {
>myPublicStaticMethod1 : Widget3
>myPublicStaticMethod1 : import("GlobalWidgets").Widget3
return exporter.createExportedWidget3();
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
private static get myPrivateStaticMethod1() {
>myPrivateStaticMethod1 : Widget3
>myPrivateStaticMethod1 : import("GlobalWidgets").Widget3
return exporter.createExportedWidget3();
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
get myPublicMethod1() {
>myPublicMethod1 : Widget3
>myPublicMethod1 : import("GlobalWidgets").Widget3
return exporter.createExportedWidget3();
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
private get myPrivateMethod1() {
>myPrivateMethod1 : Widget3
>myPrivateMethod1 : import("GlobalWidgets").Widget3
return exporter.createExportedWidget3();
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
}
@@ -160,40 +160,40 @@ export class publicClassWithPrivateModuleGetAccessorTypes {
>publicClassWithPrivateModuleGetAccessorTypes : publicClassWithPrivateModuleGetAccessorTypes
static get myPublicStaticMethod() { // Error
>myPublicStaticMethod : SpecializedWidget.Widget2
>myPublicStaticMethod : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").SpecializedWidget.Widget2
return exporter.createExportedWidget2();
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").SpecializedWidget.Widget2
}
get myPublicMethod() { // Error
>myPublicMethod : SpecializedWidget.Widget2
>myPublicMethod : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").SpecializedWidget.Widget2
return exporter.createExportedWidget2();
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").SpecializedWidget.Widget2
}
static get myPublicStaticMethod1() { // Error
>myPublicStaticMethod1 : SpecializedGlobalWidget.Widget4
>myPublicStaticMethod1 : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
return exporter.createExportedWidget4();
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
get myPublicMethod1() { // Error
>myPublicMethod1 : SpecializedGlobalWidget.Widget4
>myPublicMethod1 : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
return exporter.createExportedWidget4();
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
}
@@ -201,40 +201,40 @@ class privateClassWithPrivateModuleGetAccessorTypes {
>privateClassWithPrivateModuleGetAccessorTypes : privateClassWithPrivateModuleGetAccessorTypes
static get myPublicStaticMethod() {
>myPublicStaticMethod : SpecializedWidget.Widget2
>myPublicStaticMethod : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").SpecializedWidget.Widget2
return exporter.createExportedWidget2();
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").SpecializedWidget.Widget2
}
get myPublicMethod() {
>myPublicMethod : SpecializedWidget.Widget2
>myPublicMethod : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").SpecializedWidget.Widget2
return exporter.createExportedWidget2();
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameAccessorDeclFile_Widgets").SpecializedWidget.Widget2
}
static get myPublicStaticMethod1() {
>myPublicStaticMethod1 : SpecializedGlobalWidget.Widget4
>myPublicStaticMethod1 : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
return exporter.createExportedWidget4();
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
get myPublicMethod1() {
>myPublicMethod1 : SpecializedGlobalWidget.Widget4
>myPublicMethod1 : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
return exporter.createExportedWidget4();
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
}
=== tests/cases/compiler/privacyCannotNameAccessorDeclFile_GlobalWidgets.ts ===
@@ -1,135 +0,0 @@
tests/cases/compiler/privacyCannotNameVarTypeDeclFile_consumer.ts(3,12): error TS4026: Public static property 'myPublicStaticProperty' of exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyCannotNameVarTypeDeclFile_consumer.ts(5,5): error TS4029: Public property 'myPublicProperty' of exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyCannotNameVarTypeDeclFile_consumer.ts(8,12): error TS4026: Public static property 'myPublicStaticProperty1' of exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyCannotNameVarTypeDeclFile_consumer.ts(10,5): error TS4029: Public property 'myPublicProperty1' of exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyCannotNameVarTypeDeclFile_consumer.ts(26,12): error TS4023: Exported variable 'publicVarWithPrivatePropertyTypes' has or is using name 'Widget1' from external module "tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyCannotNameVarTypeDeclFile_consumer.ts(28,12): error TS4023: Exported variable 'publicVarWithPrivatePropertyTypes1' has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyCannotNameVarTypeDeclFile_consumer.ts(32,12): error TS4026: Public static property 'myPublicStaticProperty' of exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyCannotNameVarTypeDeclFile_consumer.ts(33,5): error TS4029: Public property 'myPublicProperty' of exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyCannotNameVarTypeDeclFile_consumer.ts(34,12): error TS4026: Public static property 'myPublicStaticProperty1' of exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyCannotNameVarTypeDeclFile_consumer.ts(35,5): error TS4029: Public property 'myPublicProperty1' of exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyCannotNameVarTypeDeclFile_consumer.ts(37,12): error TS4023: Exported variable 'publicVarWithPrivateModulePropertyTypes' has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyCannotNameVarTypeDeclFile_consumer.ts(38,12): error TS4023: Exported variable 'publicVarWithPrivateModulePropertyTypes1' has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
==== tests/cases/compiler/privacyCannotNameVarTypeDeclFile_consumer.ts (12 errors) ====
import exporter = require("./privacyCannotNameVarTypeDeclFile_exporter");
export class publicClassWithWithPrivatePropertyTypes {
static myPublicStaticProperty = exporter.createExportedWidget1(); // Error
~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4026: Public static property 'myPublicStaticProperty' of exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets" but cannot be named.
private static myPrivateStaticProperty = exporter.createExportedWidget1();
myPublicProperty = exporter.createExportedWidget1(); // Error
~~~~~~~~~~~~~~~~
!!! error TS4029: Public property 'myPublicProperty' of exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets" but cannot be named.
private myPrivateProperty = exporter.createExportedWidget1();
static myPublicStaticProperty1 = exporter.createExportedWidget3(); // Error
~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4026: Public static property 'myPublicStaticProperty1' of exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
private static myPrivateStaticProperty1 = exporter.createExportedWidget3();
myPublicProperty1 = exporter.createExportedWidget3(); // Error
~~~~~~~~~~~~~~~~~
!!! error TS4029: Public property 'myPublicProperty1' of exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
private myPrivateProperty1 = exporter.createExportedWidget3();
}
class privateClassWithWithPrivatePropertyTypes {
static myPublicStaticProperty = exporter.createExportedWidget1();
private static myPrivateStaticProperty = exporter.createExportedWidget1();
myPublicProperty = exporter.createExportedWidget1();
private myPrivateProperty = exporter.createExportedWidget1();
static myPublicStaticProperty1 = exporter.createExportedWidget3();
private static myPrivateStaticProperty1 = exporter.createExportedWidget3();
myPublicProperty1 = exporter.createExportedWidget3();
private myPrivateProperty1 = exporter.createExportedWidget3();
}
export var publicVarWithPrivatePropertyTypes= exporter.createExportedWidget1(); // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4023: Exported variable 'publicVarWithPrivatePropertyTypes' has or is using name 'Widget1' from external module "tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets" but cannot be named.
var privateVarWithPrivatePropertyTypes= exporter.createExportedWidget1();
export var publicVarWithPrivatePropertyTypes1 = exporter.createExportedWidget3(); // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4023: Exported variable 'publicVarWithPrivatePropertyTypes1' has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
var privateVarWithPrivatePropertyTypes1 = exporter.createExportedWidget3();
export class publicClassWithPrivateModulePropertyTypes {
static myPublicStaticProperty= exporter.createExportedWidget2(); // Error
~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4026: Public static property 'myPublicStaticProperty' of exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets" but cannot be named.
myPublicProperty = exporter.createExportedWidget2(); // Error
~~~~~~~~~~~~~~~~
!!! error TS4029: Public property 'myPublicProperty' of exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets" but cannot be named.
static myPublicStaticProperty1 = exporter.createExportedWidget4(); // Error
~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4026: Public static property 'myPublicStaticProperty1' of exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
myPublicProperty1 = exporter.createExportedWidget4(); // Error
~~~~~~~~~~~~~~~~~
!!! error TS4029: Public property 'myPublicProperty1' of exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
}
export var publicVarWithPrivateModulePropertyTypes= exporter.createExportedWidget2(); // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4023: Exported variable 'publicVarWithPrivateModulePropertyTypes' has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets" but cannot be named.
export var publicVarWithPrivateModulePropertyTypes1 = exporter.createExportedWidget4(); // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4023: Exported variable 'publicVarWithPrivateModulePropertyTypes1' has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
class privateClassWithPrivateModulePropertyTypes {
static myPublicStaticProperty= exporter.createExportedWidget2();
myPublicProperty= exporter.createExportedWidget2();
static myPublicStaticProperty1 = exporter.createExportedWidget4();
myPublicProperty1 = exporter.createExportedWidget4();
}
var privateVarWithPrivateModulePropertyTypes= exporter.createExportedWidget2();
var privateVarWithPrivateModulePropertyTypes1 = exporter.createExportedWidget4();
==== tests/cases/compiler/privacyCannotNameVarTypeDeclFile_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/privacyCannotNameVarTypeDeclFile_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/privacyCannotNameVarTypeDeclFile_exporter.ts (0 errors) ====
///<reference path='privacyCannotNameVarTypeDeclFile_GlobalWidgets.ts'/>
import Widgets = require("./privacyCannotNameVarTypeDeclFile_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();
}
@@ -241,3 +241,25 @@ export declare function createExportedWidget1(): Widgets.Widget1;
export declare function createExportedWidget2(): Widgets.SpecializedWidget.Widget2;
export declare function createExportedWidget3(): Widgets1.Widget3;
export declare function createExportedWidget4(): Widgets1.SpecializedGlobalWidget.Widget4;
//// [privacyCannotNameVarTypeDeclFile_consumer.d.ts]
/// <reference path="privacyCannotNameVarTypeDeclFile_GlobalWidgets.d.ts" />
export declare class publicClassWithWithPrivatePropertyTypes {
static myPublicStaticProperty: import("./privacyCannotNameVarTypeDeclFile_Widgets").Widget1;
private static myPrivateStaticProperty;
myPublicProperty: import("./privacyCannotNameVarTypeDeclFile_Widgets").Widget1;
private myPrivateProperty;
static myPublicStaticProperty1: import("GlobalWidgets").Widget3;
private static myPrivateStaticProperty1;
myPublicProperty1: import("GlobalWidgets").Widget3;
private myPrivateProperty1;
}
export declare var publicVarWithPrivatePropertyTypes: import("./privacyCannotNameVarTypeDeclFile_Widgets").Widget1;
export declare var publicVarWithPrivatePropertyTypes1: import("GlobalWidgets").Widget3;
export declare class publicClassWithPrivateModulePropertyTypes {
static myPublicStaticProperty: import("./privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2;
myPublicProperty: import("./privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2;
static myPublicStaticProperty1: import("GlobalWidgets").SpecializedGlobalWidget.Widget4;
myPublicProperty1: import("GlobalWidgets").SpecializedGlobalWidget.Widget4;
}
export declare var publicVarWithPrivateModulePropertyTypes: import("./privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2;
export declare var publicVarWithPrivateModulePropertyTypes1: import("GlobalWidgets").SpecializedGlobalWidget.Widget4;
@@ -6,239 +6,239 @@ export class publicClassWithWithPrivatePropertyTypes {
>publicClassWithWithPrivatePropertyTypes : publicClassWithWithPrivatePropertyTypes
static myPublicStaticProperty = exporter.createExportedWidget1(); // Error
>myPublicStaticProperty : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>myPublicStaticProperty : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
private static myPrivateStaticProperty = exporter.createExportedWidget1();
>myPrivateStaticProperty : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>myPrivateStaticProperty : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
myPublicProperty = exporter.createExportedWidget1(); // Error
>myPublicProperty : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>myPublicProperty : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
private myPrivateProperty = exporter.createExportedWidget1();
>myPrivateProperty : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>myPrivateProperty : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
static myPublicStaticProperty1 = exporter.createExportedWidget3(); // Error
>myPublicStaticProperty1 : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>myPublicStaticProperty1 : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
private static myPrivateStaticProperty1 = exporter.createExportedWidget3();
>myPrivateStaticProperty1 : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>myPrivateStaticProperty1 : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
myPublicProperty1 = exporter.createExportedWidget3(); // Error
>myPublicProperty1 : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>myPublicProperty1 : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
private myPrivateProperty1 = exporter.createExportedWidget3();
>myPrivateProperty1 : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>myPrivateProperty1 : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
class privateClassWithWithPrivatePropertyTypes {
>privateClassWithWithPrivatePropertyTypes : privateClassWithWithPrivatePropertyTypes
static myPublicStaticProperty = exporter.createExportedWidget1();
>myPublicStaticProperty : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>myPublicStaticProperty : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
private static myPrivateStaticProperty = exporter.createExportedWidget1();
>myPrivateStaticProperty : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>myPrivateStaticProperty : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
myPublicProperty = exporter.createExportedWidget1();
>myPublicProperty : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>myPublicProperty : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
private myPrivateProperty = exporter.createExportedWidget1();
>myPrivateProperty : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>myPrivateProperty : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
static myPublicStaticProperty1 = exporter.createExportedWidget3();
>myPublicStaticProperty1 : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>myPublicStaticProperty1 : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
private static myPrivateStaticProperty1 = exporter.createExportedWidget3();
>myPrivateStaticProperty1 : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>myPrivateStaticProperty1 : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
myPublicProperty1 = exporter.createExportedWidget3();
>myPublicProperty1 : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>myPublicProperty1 : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
private myPrivateProperty1 = exporter.createExportedWidget3();
>myPrivateProperty1 : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>myPrivateProperty1 : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
export var publicVarWithPrivatePropertyTypes= exporter.createExportedWidget1(); // Error
>publicVarWithPrivatePropertyTypes : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>publicVarWithPrivatePropertyTypes : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
var privateVarWithPrivatePropertyTypes= exporter.createExportedWidget1();
>privateVarWithPrivatePropertyTypes : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>privateVarWithPrivatePropertyTypes : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").Widget1
export var publicVarWithPrivatePropertyTypes1 = exporter.createExportedWidget3(); // Error
>publicVarWithPrivatePropertyTypes1 : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>publicVarWithPrivatePropertyTypes1 : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
var privateVarWithPrivatePropertyTypes1 = exporter.createExportedWidget3();
>privateVarWithPrivatePropertyTypes1 : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>privateVarWithPrivatePropertyTypes1 : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
export class publicClassWithPrivateModulePropertyTypes {
>publicClassWithPrivateModulePropertyTypes : publicClassWithPrivateModulePropertyTypes
static myPublicStaticProperty= exporter.createExportedWidget2(); // Error
>myPublicStaticProperty : SpecializedWidget.Widget2
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>myPublicStaticProperty : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
myPublicProperty = exporter.createExportedWidget2(); // Error
>myPublicProperty : SpecializedWidget.Widget2
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>myPublicProperty : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
static myPublicStaticProperty1 = exporter.createExportedWidget4(); // Error
>myPublicStaticProperty1 : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>myPublicStaticProperty1 : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
myPublicProperty1 = exporter.createExportedWidget4(); // Error
>myPublicProperty1 : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>myPublicProperty1 : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
export var publicVarWithPrivateModulePropertyTypes= exporter.createExportedWidget2(); // Error
>publicVarWithPrivateModulePropertyTypes : SpecializedWidget.Widget2
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>publicVarWithPrivateModulePropertyTypes : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
export var publicVarWithPrivateModulePropertyTypes1 = exporter.createExportedWidget4(); // Error
>publicVarWithPrivateModulePropertyTypes1 : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>publicVarWithPrivateModulePropertyTypes1 : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
class privateClassWithPrivateModulePropertyTypes {
>privateClassWithPrivateModulePropertyTypes : privateClassWithPrivateModulePropertyTypes
static myPublicStaticProperty= exporter.createExportedWidget2();
>myPublicStaticProperty : SpecializedWidget.Widget2
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>myPublicStaticProperty : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
myPublicProperty= exporter.createExportedWidget2();
>myPublicProperty : SpecializedWidget.Widget2
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>myPublicProperty : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
static myPublicStaticProperty1 = exporter.createExportedWidget4();
>myPublicStaticProperty1 : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>myPublicStaticProperty1 : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
myPublicProperty1 = exporter.createExportedWidget4();
>myPublicProperty1 : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>myPublicProperty1 : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
var privateVarWithPrivateModulePropertyTypes= exporter.createExportedWidget2();
>privateVarWithPrivateModulePropertyTypes : SpecializedWidget.Widget2
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>privateVarWithPrivateModulePropertyTypes : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyCannotNameVarTypeDeclFile_Widgets").SpecializedWidget.Widget2
var privateVarWithPrivateModulePropertyTypes1 = exporter.createExportedWidget4();
>privateVarWithPrivateModulePropertyTypes1 : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>privateVarWithPrivateModulePropertyTypes1 : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
=== tests/cases/compiler/privacyCannotNameVarTypeDeclFile_GlobalWidgets.ts ===
declare module "GlobalWidgets" {
@@ -1,227 +0,0 @@
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(3,33): error TS4068: Parameter 'param' of public static method from exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(7,20): error TS4071: Parameter 'param' of public method from exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(11,17): error TS4061: Parameter 'param' of constructor from exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(11,59): error TS4061: Parameter 'param1' of constructor from exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(11,110): error TS4061: Parameter 'param2' of constructor from exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(15,33): error TS4068: Parameter 'param' of public static method from exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(19,20): error TS4071: Parameter 'param' of public method from exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(23,17): error TS4061: Parameter 'param' of constructor from exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(23,59): error TS4061: Parameter 'param1' of constructor from exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(23,110): error TS4061: Parameter 'param2' of constructor from exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(52,56): error TS4076: Parameter 'param' of exported function has or is using name 'Widget1' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(56,57): error TS4076: Parameter 'param' of exported function has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(63,33): error TS4068: Parameter 'param' of public static method from exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(65,20): error TS4071: Parameter 'param' of public method from exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(67,17): error TS4061: Parameter 'param' of constructor from exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(67,58): error TS4061: Parameter 'param1' of constructor from exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(67,108): error TS4061: Parameter 'param2' of constructor from exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(71,33): error TS4068: Parameter 'param' of public static method from exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(73,20): error TS4071: Parameter 'param' of public method from exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(75,17): error TS4061: Parameter 'param' of constructor from exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(75,58): error TS4061: Parameter 'param1' of constructor from exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(75,108): error TS4061: Parameter 'param2' of constructor from exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(78,63): error TS4076: Parameter 'param' of exported function has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts(80,64): error TS4076: Parameter 'param' of exported function has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
==== tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_consumer.ts (24 errors) ====
import exporter = require("./privacyFunctionCannotNameParameterTypeDeclFile_exporter");
export class publicClassWithWithPrivateParmeterTypes {
static myPublicStaticMethod(param = exporter.createExportedWidget1()) { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4068: Parameter 'param' of public static method from exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
}
private static myPrivateStaticMethod(param = exporter.createExportedWidget1()) {
}
myPublicMethod(param = exporter.createExportedWidget1()) { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4071: Parameter 'param' of public method from exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
}
private myPrivateMethod(param = exporter.createExportedWidget1()) {
}
constructor(param = exporter.createExportedWidget1(), private param1 = exporter.createExportedWidget1(), public param2 = exporter.createExportedWidget1()) { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4061: Parameter 'param' of constructor from exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4061: Parameter 'param1' of constructor from exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4061: Parameter 'param2' of constructor from exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
}
}
export class publicClassWithWithPrivateParmeterTypes1 {
static myPublicStaticMethod(param = exporter.createExportedWidget3()) { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4068: Parameter 'param' of public static method from exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
}
private static myPrivateStaticMethod(param = exporter.createExportedWidget3()) {
}
myPublicMethod(param = exporter.createExportedWidget3()) { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4071: Parameter 'param' of public method from exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
}
private myPrivateMethod(param = exporter.createExportedWidget3()) {
}
constructor(param = exporter.createExportedWidget3(), private param1 = exporter.createExportedWidget3(), public param2 = exporter.createExportedWidget3()) { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4061: Parameter 'param' of constructor from exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4061: Parameter 'param1' of constructor from exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4061: Parameter 'param2' of constructor from exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
}
}
class privateClassWithWithPrivateParmeterTypes {
static myPublicStaticMethod(param = exporter.createExportedWidget1()) {
}
private static myPrivateStaticMethod(param = exporter.createExportedWidget1()) {
}
myPublicMethod(param = exporter.createExportedWidget1()) {
}
private myPrivateMethod(param = exporter.createExportedWidget1()) {
}
constructor(param = exporter.createExportedWidget1(), private param1 = exporter.createExportedWidget1(), public param2 = exporter.createExportedWidget1()) {
}
}
class privateClassWithWithPrivateParmeterTypes2 {
static myPublicStaticMethod(param = exporter.createExportedWidget3()) {
}
private static myPrivateStaticMethod(param = exporter.createExportedWidget3()) {
}
myPublicMethod(param = exporter.createExportedWidget3()) {
}
private myPrivateMethod(param = exporter.createExportedWidget3()) {
}
constructor(param = exporter.createExportedWidget3(), private param1 = exporter.createExportedWidget3(), public param2 = exporter.createExportedWidget3()) {
}
}
export function publicFunctionWithPrivateParmeterTypes(param = exporter.createExportedWidget1()) { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4076: Parameter 'param' of exported function has or is using name 'Widget1' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
}
function privateFunctionWithPrivateParmeterTypes(param = exporter.createExportedWidget1()) {
}
export function publicFunctionWithPrivateParmeterTypes1(param = exporter.createExportedWidget3()) { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4076: Parameter 'param' of exported function has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
}
function privateFunctionWithPrivateParmeterTypes1(param = exporter.createExportedWidget3()) {
}
export class publicClassWithPrivateModuleParameterTypes {
static myPublicStaticMethod(param= exporter.createExportedWidget2()) { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4068: Parameter 'param' of public static method from exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
}
myPublicMethod(param= exporter.createExportedWidget2()) { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4071: Parameter 'param' of public method from exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
}
constructor(param= exporter.createExportedWidget2(), private param1= exporter.createExportedWidget2(), public param2= exporter.createExportedWidget2()) { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4061: Parameter 'param' of constructor from exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4061: Parameter 'param1' of constructor from exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4061: Parameter 'param2' of constructor from exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
}
}
export class publicClassWithPrivateModuleParameterTypes2 {
static myPublicStaticMethod(param= exporter.createExportedWidget4()) { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4068: Parameter 'param' of public static method from exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
}
myPublicMethod(param= exporter.createExportedWidget4()) { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4071: Parameter 'param' of public method from exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
}
constructor(param= exporter.createExportedWidget4(), private param1= exporter.createExportedWidget4(), public param2= exporter.createExportedWidget4()) { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4061: Parameter 'param' of constructor from exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4061: Parameter 'param1' of constructor from exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4061: Parameter 'param2' of constructor from exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
}
}
export function publicFunctionWithPrivateModuleParameterTypes(param= exporter.createExportedWidget2()) { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4076: Parameter 'param' of exported function has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets" but cannot be named.
}
export function publicFunctionWithPrivateModuleParameterTypes1(param= exporter.createExportedWidget4()) { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4076: Parameter 'param' of exported function has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
}
class privateClassWithPrivateModuleParameterTypes {
static myPublicStaticMethod(param= exporter.createExportedWidget2()) {
}
myPublicMethod(param= exporter.createExportedWidget2()) {
}
constructor(param= exporter.createExportedWidget2(), private param1= exporter.createExportedWidget2(), public param2= exporter.createExportedWidget2()) {
}
}
class privateClassWithPrivateModuleParameterTypes1 {
static myPublicStaticMethod(param= exporter.createExportedWidget4()) {
}
myPublicMethod(param= exporter.createExportedWidget4()) {
}
constructor(param= exporter.createExportedWidget4(), private param1= exporter.createExportedWidget4(), public param2= exporter.createExportedWidget4()) {
}
}
function privateFunctionWithPrivateModuleParameterTypes(param= exporter.createExportedWidget2()) {
}
function privateFunctionWithPrivateModuleParameterTypes1(param= exporter.createExportedWidget4()) {
}
==== tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_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/privacyFunctionCannotNameParameterTypeDeclFile_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/privacyFunctionCannotNameParameterTypeDeclFile_exporter.ts (0 errors) ====
///<reference path='privacyFunctionCannotNameParameterTypeDeclFile_GlobalWidgets.ts'/>
import Widgets = require("./privacyFunctionCannotNameParameterTypeDeclFile_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();
}
@@ -427,3 +427,41 @@ export declare function createExportedWidget1(): Widgets.Widget1;
export declare function createExportedWidget2(): Widgets.SpecializedWidget.Widget2;
export declare function createExportedWidget3(): Widgets1.Widget3;
export declare function createExportedWidget4(): Widgets1.SpecializedGlobalWidget.Widget4;
//// [privacyFunctionCannotNameParameterTypeDeclFile_consumer.d.ts]
/// <reference path="privacyFunctionCannotNameParameterTypeDeclFile_GlobalWidgets.d.ts" />
export declare class publicClassWithWithPrivateParmeterTypes {
private param1;
param2: import("./privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1;
static myPublicStaticMethod(param?: import("./privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1): void;
private static myPrivateStaticMethod;
myPublicMethod(param?: import("./privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1): void;
private myPrivateMethod;
constructor(param?: import("./privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1, param1?: import("./privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1, param2?: import("./privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1);
}
export declare class publicClassWithWithPrivateParmeterTypes1 {
private param1;
param2: import("GlobalWidgets").Widget3;
static myPublicStaticMethod(param?: import("GlobalWidgets").Widget3): void;
private static myPrivateStaticMethod;
myPublicMethod(param?: import("GlobalWidgets").Widget3): void;
private myPrivateMethod;
constructor(param?: import("GlobalWidgets").Widget3, param1?: import("GlobalWidgets").Widget3, param2?: import("GlobalWidgets").Widget3);
}
export declare function publicFunctionWithPrivateParmeterTypes(param?: import("./privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1): void;
export declare function publicFunctionWithPrivateParmeterTypes1(param?: import("GlobalWidgets").Widget3): void;
export declare class publicClassWithPrivateModuleParameterTypes {
private param1;
param2: import("./privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2;
static myPublicStaticMethod(param?: import("./privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2): void;
myPublicMethod(param?: import("./privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2): void;
constructor(param?: import("./privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2, param1?: import("./privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2, param2?: import("./privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2);
}
export declare class publicClassWithPrivateModuleParameterTypes2 {
private param1;
param2: import("GlobalWidgets").SpecializedGlobalWidget.Widget4;
static myPublicStaticMethod(param?: import("GlobalWidgets").SpecializedGlobalWidget.Widget4): void;
myPublicMethod(param?: import("GlobalWidgets").SpecializedGlobalWidget.Widget4): void;
constructor(param?: import("GlobalWidgets").SpecializedGlobalWidget.Widget4, param1?: import("GlobalWidgets").SpecializedGlobalWidget.Widget4, param2?: import("GlobalWidgets").SpecializedGlobalWidget.Widget4);
}
export declare function publicFunctionWithPrivateModuleParameterTypes(param?: import("./privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2): void;
export declare function publicFunctionWithPrivateModuleParameterTypes1(param?: import("GlobalWidgets").SpecializedGlobalWidget.Widget4): void;
@@ -6,106 +6,106 @@ export class publicClassWithWithPrivateParmeterTypes {
>publicClassWithWithPrivateParmeterTypes : publicClassWithWithPrivateParmeterTypes
static myPublicStaticMethod(param = exporter.createExportedWidget1()) { // Error
>myPublicStaticMethod : (param?: Widget1) => void
>param : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>myPublicStaticMethod : (param?: import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1) => void
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
}
private static myPrivateStaticMethod(param = exporter.createExportedWidget1()) {
>myPrivateStaticMethod : (param?: Widget1) => void
>param : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>myPrivateStaticMethod : (param?: import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1) => void
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
}
myPublicMethod(param = exporter.createExportedWidget1()) { // Error
>myPublicMethod : (param?: Widget1) => void
>param : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>myPublicMethod : (param?: import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1) => void
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
}
private myPrivateMethod(param = exporter.createExportedWidget1()) {
>myPrivateMethod : (param?: Widget1) => void
>param : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>myPrivateMethod : (param?: import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1) => void
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
}
constructor(param = exporter.createExportedWidget1(), private param1 = exporter.createExportedWidget1(), public param2 = exporter.createExportedWidget1()) { // Error
>param : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>param1 : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>param1 : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>param2 : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>param2 : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
}
}
export class publicClassWithWithPrivateParmeterTypes1 {
>publicClassWithWithPrivateParmeterTypes1 : publicClassWithWithPrivateParmeterTypes1
static myPublicStaticMethod(param = exporter.createExportedWidget3()) { // Error
>myPublicStaticMethod : (param?: Widget3) => void
>param : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>myPublicStaticMethod : (param?: import("GlobalWidgets").Widget3) => void
>param : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
private static myPrivateStaticMethod(param = exporter.createExportedWidget3()) {
>myPrivateStaticMethod : (param?: Widget3) => void
>param : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>myPrivateStaticMethod : (param?: import("GlobalWidgets").Widget3) => void
>param : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
myPublicMethod(param = exporter.createExportedWidget3()) { // Error
>myPublicMethod : (param?: Widget3) => void
>param : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>myPublicMethod : (param?: import("GlobalWidgets").Widget3) => void
>param : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
private myPrivateMethod(param = exporter.createExportedWidget3()) {
>myPrivateMethod : (param?: Widget3) => void
>param : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>myPrivateMethod : (param?: import("GlobalWidgets").Widget3) => void
>param : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
constructor(param = exporter.createExportedWidget3(), private param1 = exporter.createExportedWidget3(), public param2 = exporter.createExportedWidget3()) { // Error
>param : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>param : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>param1 : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
>param1 : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>param2 : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
>param2 : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
}
@@ -113,140 +113,140 @@ class privateClassWithWithPrivateParmeterTypes {
>privateClassWithWithPrivateParmeterTypes : privateClassWithWithPrivateParmeterTypes
static myPublicStaticMethod(param = exporter.createExportedWidget1()) {
>myPublicStaticMethod : (param?: Widget1) => void
>param : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>myPublicStaticMethod : (param?: import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1) => void
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
}
private static myPrivateStaticMethod(param = exporter.createExportedWidget1()) {
>myPrivateStaticMethod : (param?: Widget1) => void
>param : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>myPrivateStaticMethod : (param?: import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1) => void
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
}
myPublicMethod(param = exporter.createExportedWidget1()) {
>myPublicMethod : (param?: Widget1) => void
>param : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>myPublicMethod : (param?: import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1) => void
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
}
private myPrivateMethod(param = exporter.createExportedWidget1()) {
>myPrivateMethod : (param?: Widget1) => void
>param : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>myPrivateMethod : (param?: import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1) => void
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
}
constructor(param = exporter.createExportedWidget1(), private param1 = exporter.createExportedWidget1(), public param2 = exporter.createExportedWidget1()) {
>param : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>param1 : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>param1 : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>param2 : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>param2 : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
}
}
class privateClassWithWithPrivateParmeterTypes2 {
>privateClassWithWithPrivateParmeterTypes2 : privateClassWithWithPrivateParmeterTypes2
static myPublicStaticMethod(param = exporter.createExportedWidget3()) {
>myPublicStaticMethod : (param?: Widget3) => void
>param : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>myPublicStaticMethod : (param?: import("GlobalWidgets").Widget3) => void
>param : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
private static myPrivateStaticMethod(param = exporter.createExportedWidget3()) {
>myPrivateStaticMethod : (param?: Widget3) => void
>param : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>myPrivateStaticMethod : (param?: import("GlobalWidgets").Widget3) => void
>param : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
myPublicMethod(param = exporter.createExportedWidget3()) {
>myPublicMethod : (param?: Widget3) => void
>param : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>myPublicMethod : (param?: import("GlobalWidgets").Widget3) => void
>param : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
private myPrivateMethod(param = exporter.createExportedWidget3()) {
>myPrivateMethod : (param?: Widget3) => void
>param : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>myPrivateMethod : (param?: import("GlobalWidgets").Widget3) => void
>param : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
constructor(param = exporter.createExportedWidget3(), private param1 = exporter.createExportedWidget3(), public param2 = exporter.createExportedWidget3()) {
>param : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>param : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>param1 : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
>param1 : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>param2 : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
>param2 : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
}
export function publicFunctionWithPrivateParmeterTypes(param = exporter.createExportedWidget1()) { // Error
>publicFunctionWithPrivateParmeterTypes : (param?: Widget1) => void
>param : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>publicFunctionWithPrivateParmeterTypes : (param?: import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1) => void
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
}
function privateFunctionWithPrivateParmeterTypes(param = exporter.createExportedWidget1()) {
>privateFunctionWithPrivateParmeterTypes : (param?: Widget1) => void
>param : Widget1
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>privateFunctionWithPrivateParmeterTypes : (param?: import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1) => void
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").Widget1
}
export function publicFunctionWithPrivateParmeterTypes1(param = exporter.createExportedWidget3()) { // Error
>publicFunctionWithPrivateParmeterTypes1 : (param?: Widget3) => void
>param : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>publicFunctionWithPrivateParmeterTypes1 : (param?: import("GlobalWidgets").Widget3) => void
>param : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
function privateFunctionWithPrivateParmeterTypes1(param = exporter.createExportedWidget3()) {
>privateFunctionWithPrivateParmeterTypes1 : (param?: Widget3) => void
>param : Widget3
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>privateFunctionWithPrivateParmeterTypes1 : (param?: import("GlobalWidgets").Widget3) => void
>param : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
@@ -254,91 +254,91 @@ export class publicClassWithPrivateModuleParameterTypes {
>publicClassWithPrivateModuleParameterTypes : publicClassWithPrivateModuleParameterTypes
static myPublicStaticMethod(param= exporter.createExportedWidget2()) { // Error
>myPublicStaticMethod : (param?: SpecializedWidget.Widget2) => void
>param : SpecializedWidget.Widget2
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>myPublicStaticMethod : (param?: import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2) => void
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
}
myPublicMethod(param= exporter.createExportedWidget2()) { // Error
>myPublicMethod : (param?: SpecializedWidget.Widget2) => void
>param : SpecializedWidget.Widget2
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>myPublicMethod : (param?: import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2) => void
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
}
constructor(param= exporter.createExportedWidget2(), private param1= exporter.createExportedWidget2(), public param2= exporter.createExportedWidget2()) { // Error
>param : SpecializedWidget.Widget2
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>param1 : SpecializedWidget.Widget2
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>param1 : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>param2 : SpecializedWidget.Widget2
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>param2 : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
}
}
export class publicClassWithPrivateModuleParameterTypes2 {
>publicClassWithPrivateModuleParameterTypes2 : publicClassWithPrivateModuleParameterTypes2
static myPublicStaticMethod(param= exporter.createExportedWidget4()) { // Error
>myPublicStaticMethod : (param?: SpecializedGlobalWidget.Widget4) => void
>param : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>myPublicStaticMethod : (param?: import("GlobalWidgets").SpecializedGlobalWidget.Widget4) => void
>param : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
myPublicMethod(param= exporter.createExportedWidget4()) { // Error
>myPublicMethod : (param?: SpecializedGlobalWidget.Widget4) => void
>param : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>myPublicMethod : (param?: import("GlobalWidgets").SpecializedGlobalWidget.Widget4) => void
>param : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
constructor(param= exporter.createExportedWidget4(), private param1= exporter.createExportedWidget4(), public param2= exporter.createExportedWidget4()) { // Error
>param : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>param : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>param1 : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>param1 : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>param2 : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>param2 : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
}
export function publicFunctionWithPrivateModuleParameterTypes(param= exporter.createExportedWidget2()) { // Error
>publicFunctionWithPrivateModuleParameterTypes : (param?: SpecializedWidget.Widget2) => void
>param : SpecializedWidget.Widget2
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>publicFunctionWithPrivateModuleParameterTypes : (param?: import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2) => void
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
}
export function publicFunctionWithPrivateModuleParameterTypes1(param= exporter.createExportedWidget4()) { // Error
>publicFunctionWithPrivateModuleParameterTypes1 : (param?: SpecializedGlobalWidget.Widget4) => void
>param : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>publicFunctionWithPrivateModuleParameterTypes1 : (param?: import("GlobalWidgets").SpecializedGlobalWidget.Widget4) => void
>param : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
@@ -346,91 +346,91 @@ class privateClassWithPrivateModuleParameterTypes {
>privateClassWithPrivateModuleParameterTypes : privateClassWithPrivateModuleParameterTypes
static myPublicStaticMethod(param= exporter.createExportedWidget2()) {
>myPublicStaticMethod : (param?: SpecializedWidget.Widget2) => void
>param : SpecializedWidget.Widget2
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>myPublicStaticMethod : (param?: import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2) => void
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
}
myPublicMethod(param= exporter.createExportedWidget2()) {
>myPublicMethod : (param?: SpecializedWidget.Widget2) => void
>param : SpecializedWidget.Widget2
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>myPublicMethod : (param?: import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2) => void
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
}
constructor(param= exporter.createExportedWidget2(), private param1= exporter.createExportedWidget2(), public param2= exporter.createExportedWidget2()) {
>param : SpecializedWidget.Widget2
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>param1 : SpecializedWidget.Widget2
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>param1 : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>param2 : SpecializedWidget.Widget2
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>param2 : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
}
}
class privateClassWithPrivateModuleParameterTypes1 {
>privateClassWithPrivateModuleParameterTypes1 : privateClassWithPrivateModuleParameterTypes1
static myPublicStaticMethod(param= exporter.createExportedWidget4()) {
>myPublicStaticMethod : (param?: SpecializedGlobalWidget.Widget4) => void
>param : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>myPublicStaticMethod : (param?: import("GlobalWidgets").SpecializedGlobalWidget.Widget4) => void
>param : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
myPublicMethod(param= exporter.createExportedWidget4()) {
>myPublicMethod : (param?: SpecializedGlobalWidget.Widget4) => void
>param : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>myPublicMethod : (param?: import("GlobalWidgets").SpecializedGlobalWidget.Widget4) => void
>param : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
constructor(param= exporter.createExportedWidget4(), private param1= exporter.createExportedWidget4(), public param2= exporter.createExportedWidget4()) {
>param : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>param : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>param1 : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>param1 : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>param2 : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>param2 : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
}
function privateFunctionWithPrivateModuleParameterTypes(param= exporter.createExportedWidget2()) {
>privateFunctionWithPrivateModuleParameterTypes : (param?: SpecializedWidget.Widget2) => void
>param : SpecializedWidget.Widget2
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>privateFunctionWithPrivateModuleParameterTypes : (param?: import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2) => void
>param : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_Widgets").SpecializedWidget.Widget2
}
function privateFunctionWithPrivateModuleParameterTypes1(param= exporter.createExportedWidget4()) {
>privateFunctionWithPrivateModuleParameterTypes1 : (param?: SpecializedGlobalWidget.Widget4) => void
>param : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>privateFunctionWithPrivateModuleParameterTypes1 : (param?: import("GlobalWidgets").SpecializedGlobalWidget.Widget4) => void
>param : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
=== tests/cases/compiler/privacyFunctionCannotNameParameterTypeDeclFile_GlobalWidgets.ts ===
declare module "GlobalWidgets" {
@@ -1,198 +0,0 @@
tests/cases/compiler/privacyFunctionReturnTypeDeclFile_consumer.ts(3,12): error TS4050: Return type of public static method from exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyFunctionReturnTypeDeclFile_consumer.ts(9,5): error TS4053: Return type of public method from exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyFunctionReturnTypeDeclFile_consumer.ts(15,12): error TS4050: Return type of public static method from exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyFunctionReturnTypeDeclFile_consumer.ts(21,5): error TS4053: Return type of public method from exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyFunctionReturnTypeDeclFile_consumer.ts(56,17): error TS4058: Return type of exported function has or is using name 'Widget1' from external module "tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyFunctionReturnTypeDeclFile_consumer.ts(62,17): error TS4058: Return type of exported function has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyFunctionReturnTypeDeclFile_consumer.ts(70,12): error TS4050: Return type of public static method from exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyFunctionReturnTypeDeclFile_consumer.ts(73,5): error TS4053: Return type of public method from exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyFunctionReturnTypeDeclFile_consumer.ts(76,12): error TS4050: Return type of public static method from exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyFunctionReturnTypeDeclFile_consumer.ts(79,5): error TS4053: Return type of public method from exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
tests/cases/compiler/privacyFunctionReturnTypeDeclFile_consumer.ts(83,17): error TS4058: Return type of exported function has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets" but cannot be named.
tests/cases/compiler/privacyFunctionReturnTypeDeclFile_consumer.ts(86,17): error TS4058: Return type of exported function has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
==== tests/cases/compiler/privacyFunctionReturnTypeDeclFile_consumer.ts (12 errors) ====
import exporter = require("./privacyFunctionReturnTypeDeclFile_exporter");
export class publicClassWithWithPrivateParmeterTypes {
static myPublicStaticMethod() { // Error
~~~~~~~~~~~~~~~~~~~~
!!! error TS4050: Return type of public static method from exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets" but cannot be named.
return exporter.createExportedWidget1();
}
private static myPrivateStaticMethod() {
return exporter.createExportedWidget1();;
}
myPublicMethod() { // Error
~~~~~~~~~~~~~~
!!! error TS4053: Return type of public method from exported class has or is using name 'Widget1' from external module "tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets" but cannot be named.
return exporter.createExportedWidget1();;
}
private myPrivateMethod() {
return exporter.createExportedWidget1();;
}
static myPublicStaticMethod1() { // Error
~~~~~~~~~~~~~~~~~~~~~
!!! error TS4050: Return type of public static method from exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
return exporter.createExportedWidget3();
}
private static myPrivateStaticMethod1() {
return exporter.createExportedWidget3();;
}
myPublicMethod1() { // Error
~~~~~~~~~~~~~~~
!!! error TS4053: Return type of public method from exported class has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
return exporter.createExportedWidget3();;
}
private myPrivateMethod1() {
return exporter.createExportedWidget3();;
}
}
class privateClassWithWithPrivateParmeterTypes {
static myPublicStaticMethod() {
return exporter.createExportedWidget1();
}
private static myPrivateStaticMethod() {
return exporter.createExportedWidget1();;
}
myPublicMethod() {
return exporter.createExportedWidget1();;
}
private myPrivateMethod() {
return exporter.createExportedWidget1();;
}
static myPublicStaticMethod1() {
return exporter.createExportedWidget3();
}
private static myPrivateStaticMethod1() {
return exporter.createExportedWidget3();;
}
myPublicMethod1() {
return exporter.createExportedWidget3();;
}
private myPrivateMethod1() {
return exporter.createExportedWidget3();;
}
}
export function publicFunctionWithPrivateParmeterTypes() { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4058: Return type of exported function has or is using name 'Widget1' from external module "tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets" but cannot be named.
return exporter.createExportedWidget1();
}
function privateFunctionWithPrivateParmeterTypes() {
return exporter.createExportedWidget1();
}
export function publicFunctionWithPrivateParmeterTypes1() { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4058: Return type of exported function has or is using name 'Widget3' from external module "GlobalWidgets" but cannot be named.
return exporter.createExportedWidget3();
}
function privateFunctionWithPrivateParmeterTypes1() {
return exporter.createExportedWidget3();
}
export class publicClassWithPrivateModuleReturnTypes {
static myPublicStaticMethod() { // Error
~~~~~~~~~~~~~~~~~~~~
!!! error TS4050: Return type of public static method from exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets" but cannot be named.
return exporter.createExportedWidget2();
}
myPublicMethod() { // Error
~~~~~~~~~~~~~~
!!! error TS4053: Return type of public method from exported class has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets" but cannot be named.
return exporter.createExportedWidget2();
}
static myPublicStaticMethod1() { // Error
~~~~~~~~~~~~~~~~~~~~~
!!! error TS4050: Return type of public static method from exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
return exporter.createExportedWidget4();
}
myPublicMethod1() { // Error
~~~~~~~~~~~~~~~
!!! error TS4053: Return type of public method from exported class has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
return exporter.createExportedWidget4();
}
}
export function publicFunctionWithPrivateModuleReturnTypes() { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4058: Return type of exported function has or is using name 'SpecializedWidget.Widget2' from external module "tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets" but cannot be named.
return exporter.createExportedWidget2();
}
export function publicFunctionWithPrivateModuleReturnTypes1() { // Error
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS4058: Return type of exported function has or is using name 'SpecializedGlobalWidget.Widget4' from external module "GlobalWidgets" but cannot be named.
return exporter.createExportedWidget4();
}
class privateClassWithPrivateModuleReturnTypes {
static myPublicStaticMethod() {
return exporter.createExportedWidget2();
}
myPublicMethod() {
return exporter.createExportedWidget2();
}
static myPublicStaticMethod1() { // Error
return exporter.createExportedWidget4();
}
myPublicMethod1() { // Error
return exporter.createExportedWidget4();
}
}
function privateFunctionWithPrivateModuleReturnTypes() {
return exporter.createExportedWidget2();
}
function privateFunctionWithPrivateModuleReturnTypes1() {
return exporter.createExportedWidget4();
}
==== tests/cases/compiler/privacyFunctionReturnTypeDeclFile_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/privacyFunctionReturnTypeDeclFile_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/privacyFunctionReturnTypeDeclFile_exporter.ts (0 errors) ====
///<reference path='privacyFunctionReturnTypeDeclFile_GlobalWidgets.ts'/>
import Widgets = require("./privacyFunctionReturnTypeDeclFile_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();
}
@@ -384,3 +384,25 @@ export declare function createExportedWidget1(): Widgets.Widget1;
export declare function createExportedWidget2(): Widgets.SpecializedWidget.Widget2;
export declare function createExportedWidget3(): Widgets1.Widget3;
export declare function createExportedWidget4(): Widgets1.SpecializedGlobalWidget.Widget4;
//// [privacyFunctionReturnTypeDeclFile_consumer.d.ts]
/// <reference path="privacyFunctionReturnTypeDeclFile_GlobalWidgets.d.ts" />
export declare class publicClassWithWithPrivateParmeterTypes {
static myPublicStaticMethod(): import("./privacyFunctionReturnTypeDeclFile_Widgets").Widget1;
private static myPrivateStaticMethod;
myPublicMethod(): import("./privacyFunctionReturnTypeDeclFile_Widgets").Widget1;
private myPrivateMethod;
static myPublicStaticMethod1(): import("GlobalWidgets").Widget3;
private static myPrivateStaticMethod1;
myPublicMethod1(): import("GlobalWidgets").Widget3;
private myPrivateMethod1;
}
export declare function publicFunctionWithPrivateParmeterTypes(): import("./privacyFunctionReturnTypeDeclFile_Widgets").Widget1;
export declare function publicFunctionWithPrivateParmeterTypes1(): import("GlobalWidgets").Widget3;
export declare class publicClassWithPrivateModuleReturnTypes {
static myPublicStaticMethod(): import("./privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2;
myPublicMethod(): import("./privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2;
static myPublicStaticMethod1(): import("GlobalWidgets").SpecializedGlobalWidget.Widget4;
myPublicMethod1(): import("GlobalWidgets").SpecializedGlobalWidget.Widget4;
}
export declare function publicFunctionWithPrivateModuleReturnTypes(): import("./privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2;
export declare function publicFunctionWithPrivateModuleReturnTypes1(): import("GlobalWidgets").SpecializedGlobalWidget.Widget4;
@@ -6,76 +6,76 @@ export class publicClassWithWithPrivateParmeterTypes {
>publicClassWithWithPrivateParmeterTypes : publicClassWithWithPrivateParmeterTypes
static myPublicStaticMethod() { // Error
>myPublicStaticMethod : () => Widget1
>myPublicStaticMethod : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
return exporter.createExportedWidget1();
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
}
private static myPrivateStaticMethod() {
>myPrivateStaticMethod : () => Widget1
>myPrivateStaticMethod : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
return exporter.createExportedWidget1();;
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
}
myPublicMethod() { // Error
>myPublicMethod : () => Widget1
>myPublicMethod : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
return exporter.createExportedWidget1();;
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
}
private myPrivateMethod() {
>myPrivateMethod : () => Widget1
>myPrivateMethod : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
return exporter.createExportedWidget1();;
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
}
static myPublicStaticMethod1() { // Error
>myPublicStaticMethod1 : () => Widget3
>myPublicStaticMethod1 : () => import("GlobalWidgets").Widget3
return exporter.createExportedWidget3();
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
private static myPrivateStaticMethod1() {
>myPrivateStaticMethod1 : () => Widget3
>myPrivateStaticMethod1 : () => import("GlobalWidgets").Widget3
return exporter.createExportedWidget3();;
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
myPublicMethod1() { // Error
>myPublicMethod1 : () => Widget3
>myPublicMethod1 : () => import("GlobalWidgets").Widget3
return exporter.createExportedWidget3();;
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
private myPrivateMethod1() {
>myPrivateMethod1 : () => Widget3
>myPrivateMethod1 : () => import("GlobalWidgets").Widget3
return exporter.createExportedWidget3();;
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
}
@@ -83,232 +83,232 @@ class privateClassWithWithPrivateParmeterTypes {
>privateClassWithWithPrivateParmeterTypes : privateClassWithWithPrivateParmeterTypes
static myPublicStaticMethod() {
>myPublicStaticMethod : () => Widget1
>myPublicStaticMethod : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
return exporter.createExportedWidget1();
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
}
private static myPrivateStaticMethod() {
>myPrivateStaticMethod : () => Widget1
>myPrivateStaticMethod : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
return exporter.createExportedWidget1();;
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
}
myPublicMethod() {
>myPublicMethod : () => Widget1
>myPublicMethod : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
return exporter.createExportedWidget1();;
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
}
private myPrivateMethod() {
>myPrivateMethod : () => Widget1
>myPrivateMethod : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
return exporter.createExportedWidget1();;
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
}
static myPublicStaticMethod1() {
>myPublicStaticMethod1 : () => Widget3
>myPublicStaticMethod1 : () => import("GlobalWidgets").Widget3
return exporter.createExportedWidget3();
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
private static myPrivateStaticMethod1() {
>myPrivateStaticMethod1 : () => Widget3
>myPrivateStaticMethod1 : () => import("GlobalWidgets").Widget3
return exporter.createExportedWidget3();;
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
myPublicMethod1() {
>myPublicMethod1 : () => Widget3
>myPublicMethod1 : () => import("GlobalWidgets").Widget3
return exporter.createExportedWidget3();;
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
private myPrivateMethod1() {
>myPrivateMethod1 : () => Widget3
>myPrivateMethod1 : () => import("GlobalWidgets").Widget3
return exporter.createExportedWidget3();;
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
}
export function publicFunctionWithPrivateParmeterTypes() { // Error
>publicFunctionWithPrivateParmeterTypes : () => Widget1
>publicFunctionWithPrivateParmeterTypes : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
return exporter.createExportedWidget1();
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
}
function privateFunctionWithPrivateParmeterTypes() {
>privateFunctionWithPrivateParmeterTypes : () => Widget1
>privateFunctionWithPrivateParmeterTypes : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
return exporter.createExportedWidget1();
>exporter.createExportedWidget1() : Widget1
>exporter.createExportedWidget1 : () => Widget1
>exporter.createExportedWidget1() : import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter.createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
>exporter : typeof exporter
>createExportedWidget1 : () => Widget1
>createExportedWidget1 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").Widget1
}
export function publicFunctionWithPrivateParmeterTypes1() { // Error
>publicFunctionWithPrivateParmeterTypes1 : () => Widget3
>publicFunctionWithPrivateParmeterTypes1 : () => import("GlobalWidgets").Widget3
return exporter.createExportedWidget3();
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
function privateFunctionWithPrivateParmeterTypes1() {
>privateFunctionWithPrivateParmeterTypes1 : () => Widget3
>privateFunctionWithPrivateParmeterTypes1 : () => import("GlobalWidgets").Widget3
return exporter.createExportedWidget3();
>exporter.createExportedWidget3() : Widget3
>exporter.createExportedWidget3 : () => Widget3
>exporter.createExportedWidget3() : import("GlobalWidgets").Widget3
>exporter.createExportedWidget3 : () => import("GlobalWidgets").Widget3
>exporter : typeof exporter
>createExportedWidget3 : () => Widget3
>createExportedWidget3 : () => import("GlobalWidgets").Widget3
}
export class publicClassWithPrivateModuleReturnTypes {
>publicClassWithPrivateModuleReturnTypes : publicClassWithPrivateModuleReturnTypes
static myPublicStaticMethod() { // Error
>myPublicStaticMethod : () => SpecializedWidget.Widget2
>myPublicStaticMethod : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
return exporter.createExportedWidget2();
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
}
myPublicMethod() { // Error
>myPublicMethod : () => SpecializedWidget.Widget2
>myPublicMethod : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
return exporter.createExportedWidget2();
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
}
static myPublicStaticMethod1() { // Error
>myPublicStaticMethod1 : () => SpecializedGlobalWidget.Widget4
>myPublicStaticMethod1 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
return exporter.createExportedWidget4();
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
myPublicMethod1() { // Error
>myPublicMethod1 : () => SpecializedGlobalWidget.Widget4
>myPublicMethod1 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
return exporter.createExportedWidget4();
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
}
export function publicFunctionWithPrivateModuleReturnTypes() { // Error
>publicFunctionWithPrivateModuleReturnTypes : () => SpecializedWidget.Widget2
>publicFunctionWithPrivateModuleReturnTypes : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
return exporter.createExportedWidget2();
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
}
export function publicFunctionWithPrivateModuleReturnTypes1() { // Error
>publicFunctionWithPrivateModuleReturnTypes1 : () => SpecializedGlobalWidget.Widget4
>publicFunctionWithPrivateModuleReturnTypes1 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
return exporter.createExportedWidget4();
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
class privateClassWithPrivateModuleReturnTypes {
>privateClassWithPrivateModuleReturnTypes : privateClassWithPrivateModuleReturnTypes
static myPublicStaticMethod() {
>myPublicStaticMethod : () => SpecializedWidget.Widget2
>myPublicStaticMethod : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
return exporter.createExportedWidget2();
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
}
myPublicMethod() {
>myPublicMethod : () => SpecializedWidget.Widget2
>myPublicMethod : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
return exporter.createExportedWidget2();
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
}
static myPublicStaticMethod1() { // Error
>myPublicStaticMethod1 : () => SpecializedGlobalWidget.Widget4
>myPublicStaticMethod1 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
return exporter.createExportedWidget4();
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
myPublicMethod1() { // Error
>myPublicMethod1 : () => SpecializedGlobalWidget.Widget4
>myPublicMethod1 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
return exporter.createExportedWidget4();
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
}
function privateFunctionWithPrivateModuleReturnTypes() {
>privateFunctionWithPrivateModuleReturnTypes : () => SpecializedWidget.Widget2
>privateFunctionWithPrivateModuleReturnTypes : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
return exporter.createExportedWidget2();
>exporter.createExportedWidget2() : SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => SpecializedWidget.Widget2
>exporter.createExportedWidget2() : import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter.createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
>exporter : typeof exporter
>createExportedWidget2 : () => SpecializedWidget.Widget2
>createExportedWidget2 : () => import("tests/cases/compiler/privacyFunctionReturnTypeDeclFile_Widgets").SpecializedWidget.Widget2
}
function privateFunctionWithPrivateModuleReturnTypes1() {
>privateFunctionWithPrivateModuleReturnTypes1 : () => SpecializedGlobalWidget.Widget4
>privateFunctionWithPrivateModuleReturnTypes1 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
return exporter.createExportedWidget4();
>exporter.createExportedWidget4() : SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4() : import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter.createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
>exporter : typeof exporter
>createExportedWidget4 : () => SpecializedGlobalWidget.Widget4
>createExportedWidget4 : () => import("GlobalWidgets").SpecializedGlobalWidget.Widget4
}
=== tests/cases/compiler/privacyFunctionReturnTypeDeclFile_GlobalWidgets.ts ===
@@ -1207,7 +1207,7 @@ module m2 {
}
export module m3 {
>m3 : typeof m3
>m3 : typeof import("tests/cases/compiler/privacyImportParseErrors").m3
import m3 = require("use_glo_M1_public");
>m3 : any
@@ -86,17 +86,17 @@ export function C() {
=== tests/cases/conformance/salsa/c.js ===
const { C } = require("./c-ext");
>C : typeof C
>C : typeof import("tests/cases/conformance/salsa/c-ext").C
>require("./c-ext") : typeof import("tests/cases/conformance/salsa/c-ext")
>require : (id: string) => any
>"./c-ext" : "./c-ext"
/** @param {C} p */
function c(p) { p.x; }
>c : (p: C) => void
>p : C
>c : (p: import("tests/cases/conformance/salsa/c-ext").C) => void
>p : import("tests/cases/conformance/salsa/c-ext").C
>p.x : number
>p : C
>p : import("tests/cases/conformance/salsa/c-ext").C
>x : number
=== tests/cases/conformance/salsa/d-ext.js ===
@@ -144,17 +144,17 @@ export class E {
=== tests/cases/conformance/salsa/e.js ===
const { E } = require("./e-ext");
>E : typeof E
>E : typeof import("tests/cases/conformance/salsa/e-ext").E
>require("./e-ext") : typeof import("tests/cases/conformance/salsa/e-ext")
>require : (id: string) => any
>"./e-ext" : "./e-ext"
/** @param {E} p */
function e(p) { p.x; }
>e : (p: E) => void
>p : E
>e : (p: import("tests/cases/conformance/salsa/e-ext").E) => void
>p : import("tests/cases/conformance/salsa/e-ext").E
>p.x : number
>p : E
>p : import("tests/cases/conformance/salsa/e-ext").E
>x : number
=== tests/cases/conformance/salsa/f.js ===
@@ -2,8 +2,8 @@
/// <reference path="node_modules/math2d/index.d.ts" />
/// <reference path="math2d-augment.d.ts" />
let v = new Math2d.Vector(3, 2);
>v : Vector
>new Math2d.Vector(3, 2) : Vector
>v : import("tests/cases/conformance/externalModules/node_modules/math2d/index").Vector
>new Math2d.Vector(3, 2) : import("tests/cases/conformance/externalModules/node_modules/math2d/index").Vector
>Math2d.Vector : typeof Math2d.Vector
>Math2d : typeof Math2d
>Vector : typeof Math2d.Vector
@@ -13,19 +13,19 @@ let v = new Math2d.Vector(3, 2);
let magnitude = Math2d.getLength(v);
>magnitude : number
>Math2d.getLength(v) : number
>Math2d.getLength : (p: Vector) => number
>Math2d.getLength : (p: import("tests/cases/conformance/externalModules/node_modules/math2d/index").Vector) => number
>Math2d : typeof Math2d
>getLength : (p: Vector) => number
>v : Vector
>getLength : (p: import("tests/cases/conformance/externalModules/node_modules/math2d/index").Vector) => number
>v : import("tests/cases/conformance/externalModules/node_modules/math2d/index").Vector
let p: Math2d.Point = v.translate(5, 5);
>p : Math2d.Point
>Math2d : any
>Point : Math2d.Point
>v.translate(5, 5) : Vector
>v.translate : (dx: number, dy: number) => Vector
>v : Vector
>translate : (dx: number, dy: number) => Vector
>v.translate(5, 5) : import("tests/cases/conformance/externalModules/node_modules/math2d/index").Vector
>v.translate : (dx: number, dy: number) => import("tests/cases/conformance/externalModules/node_modules/math2d/index").Vector
>v : import("tests/cases/conformance/externalModules/node_modules/math2d/index").Vector
>translate : (dx: number, dy: number) => import("tests/cases/conformance/externalModules/node_modules/math2d/index").Vector
>5 : 5
>5 : 5
@@ -34,7 +34,7 @@ p = v.reverse();
>p : Math2d.Point
>v.reverse() : Math2d.Point
>v.reverse : () => Math2d.Point
>v : Vector
>v : import("tests/cases/conformance/externalModules/node_modules/math2d/index").Vector
>reverse : () => Math2d.Point
var t = p.x;
@@ -7,16 +7,16 @@ var ex = require('./ex')
// values work
var crunch = new ex.Crunch(1);
>crunch : Crunch
>new ex.Crunch(1) : Crunch
>ex.Crunch : typeof Crunch
>crunch : import("tests/cases/conformance/salsa/ex").Crunch
>new ex.Crunch(1) : import("tests/cases/conformance/salsa/ex").Crunch
>ex.Crunch : typeof import("tests/cases/conformance/salsa/ex").Crunch
>ex : typeof import("tests/cases/conformance/salsa/ex")
>Crunch : typeof Crunch
>Crunch : typeof import("tests/cases/conformance/salsa/ex").Crunch
>1 : 1
crunch.n
>crunch.n : number
>crunch : Crunch
>crunch : import("tests/cases/conformance/salsa/ex").Crunch
>n : number
@@ -25,12 +25,12 @@ crunch.n
* @param {ex.Crunch} wrap
*/
function f(wrap) {
>f : (wrap: Crunch) => void
>wrap : Crunch
>f : (wrap: import("tests/cases/conformance/salsa/ex").Crunch) => void
>wrap : import("tests/cases/conformance/salsa/ex").Crunch
wrap.n
>wrap.n : number
>wrap : Crunch
>wrap : import("tests/cases/conformance/salsa/ex").Crunch
>n : number
}
@@ -7,16 +7,16 @@ var ex = require('./ex')
// values work
var crunch = new ex.Crunch(1);
>crunch : Crunch
>new ex.Crunch(1) : Crunch
>ex.Crunch : typeof Crunch
>crunch : import("tests/cases/conformance/salsa/ex").Crunch
>new ex.Crunch(1) : import("tests/cases/conformance/salsa/ex").Crunch
>ex.Crunch : typeof import("tests/cases/conformance/salsa/ex").Crunch
>ex : typeof import("tests/cases/conformance/salsa/ex")
>Crunch : typeof Crunch
>Crunch : typeof import("tests/cases/conformance/salsa/ex").Crunch
>1 : 1
crunch.n
>crunch.n : number
>crunch : Crunch
>crunch : import("tests/cases/conformance/salsa/ex").Crunch
>n : number
@@ -26,18 +26,18 @@ crunch.n
* @param {ex.Crunch} wrap
*/
function f(greatest, wrap) {
>f : (greatest: { day: 1; }, wrap: Crunch) => void
>greatest : { day: 1; }
>wrap : Crunch
>f : (greatest: import("tests/cases/conformance/salsa/ex").Greatest, wrap: import("tests/cases/conformance/salsa/ex").Crunch) => void
>greatest : import("tests/cases/conformance/salsa/ex").Greatest
>wrap : import("tests/cases/conformance/salsa/ex").Crunch
greatest.day
>greatest.day : 1
>greatest : { day: 1; }
>greatest : import("tests/cases/conformance/salsa/ex").Greatest
>day : 1
wrap.n
>wrap.n : number
>wrap : Crunch
>wrap : import("tests/cases/conformance/salsa/ex").Crunch
>n : number
}
@@ -0,0 +1,12 @@
// @declaration: true
// @filename: file1.ts
export class Foo {}
// @filename: file2.ts
export function foo(): import("./file1").Foo {
return null as any;
}
// @filename: file3.ts
import {foo} from "./file2";
export function bar() {
return foo();
}