1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106
|
//// [tests/cases/conformance/externalModules/typeOnly/exportNamespace5.ts] ////
//// [a.ts]
export class A {}
export class B {}
export class X {}
//// [b.ts]
export type * from "./a";
export { X } from "./a";
//// [c.ts]
import { A, B as C, X } from "./b";
let _: A = new A(); // Error
let __: C = new C(); // Error
let ___: X = new X(); // Ok
//// [d.ts]
export type * from "./a";
export * from "./a";
//// [e.ts]
import { A, B, X } from "./d";
let _: A = new A(); // Ok
let __: B = new B(); // Ok
let ___: X = new X(); // Ok
//// [a.js]
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.X = exports.B = exports.A = void 0;
var A = /** @class */ (function () {
function A() {
}
return A;
}());
exports.A = A;
var B = /** @class */ (function () {
function B() {
}
return B;
}());
exports.B = B;
var X = /** @class */ (function () {
function X() {
}
return X;
}());
exports.X = X;
//// [b.js]
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.X = void 0;
var a_1 = require("./a");
Object.defineProperty(exports, "X", { enumerable: true, get: function () { return a_1.X; } });
//// [c.js]
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var b_1 = require("./b");
var _ = new A(); // Error
var __ = new C(); // Error
var ___ = new b_1.X(); // Ok
//// [d.js]
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __exportStar = (this && this.__exportStar) || function(m, exports) {
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
};
Object.defineProperty(exports, "__esModule", { value: true });
__exportStar(require("./a"), exports);
//// [e.js]
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var d_1 = require("./d");
var _ = new d_1.A(); // Ok
var __ = new d_1.B(); // Ok
var ___ = new d_1.X(); // Ok
//// [a.d.ts]
export declare class A {
}
export declare class B {
}
export declare class X {
}
//// [b.d.ts]
export type * from "./a";
export { X } from "./a";
//// [c.d.ts]
export {};
//// [d.d.ts]
export type * from "./a";
export * from "./a";
//// [e.d.ts]
export {};
|