swc/crates/swc_ecma_parser/tests/tsc/TwoInternalModulesThatMergeEachWithExportedAndNonExportedClassesOfTheSameName.ts

40 lines
582 B
TypeScript

module A {
export class Point {
x: number;
y: number;
}
}
module A {
class Point {
fromCarthesian(p: A.Point) {
return { x: p.x, y: p.y };
}
}
}
// ensure merges as expected
var p: { x: number; y: number; };
var p: A.Point;
module X.Y.Z {
export class Line {
length: number;
}
}
module X {
export module Y {
export module Z {
class Line {
name: string;
}
}
}
}
// ensure merges as expected
var l: { length: number; }
var l: X.Y.Z.Line;