TypeScript/tests/baselines/reference/commonJSImportNestedClassTypeReference.js
Nathan Shively-Sanders e350c357d2
Alias for module.exports.x = x (#40228)
* Alias for `module.exports.x = x`

This fixes #40155 in a surprisingly small amount of code.

* Treat any aliasable expression as an alias

* test internal references to exported class
2020-09-10 11:23:48 -07:00

49 lines
769 B
TypeScript

//// [tests/cases/conformance/salsa/commonJSImportNestedClassTypeReference.ts] ////
//// [main.js]
const { K } = require("./mod1");
/** @param {K} k */
function f(k) {
k.values()
}
//// [mod1.js]
var NS = {}
NS.K =class {
values() {
return new NS.K()
}
}
exports.K = NS.K;
//// [mod1.js]
"use strict";
var NS = {};
NS.K = /** @class */ (function () {
function K() {
}
K.prototype.values = function () {
return new NS.K();
};
return K;
}());
exports.K = NS.K;
//// [main.js]
"use strict";
var K = require("./mod1").K;
/** @param {K} k */
function f(k) {
k.values();
}
//// [mod1.d.ts]
export var K: {
new (): {
values(): any;
};
};
//// [main.d.ts]
export {};