47 lines
1,005 B
TypeScript
47 lines
1,005 B
TypeScript
//// [tests/cases/compiler/declarationEmitWithDefaultAsComputedName.ts] ////
|
|
|
|
//// [other.ts]
|
|
type Experiment<Name> = {
|
|
name: Name;
|
|
};
|
|
declare const createExperiment: <Name extends string>(
|
|
options: Experiment<Name>
|
|
) => Experiment<Name>;
|
|
export default createExperiment({
|
|
name: "foo"
|
|
});
|
|
|
|
//// [main.ts]
|
|
import other from "./other";
|
|
export const obj = {
|
|
[other.name]: 1,
|
|
};
|
|
|
|
//// [other.js]
|
|
"use strict";
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.default = createExperiment({
|
|
name: "foo"
|
|
});
|
|
//// [main.js]
|
|
"use strict";
|
|
var _a;
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.obj = void 0;
|
|
var other_1 = require("./other");
|
|
exports.obj = (_a = {},
|
|
_a[other_1.default.name] = 1,
|
|
_a);
|
|
|
|
|
|
//// [other.d.ts]
|
|
declare type Experiment<Name> = {
|
|
name: Name;
|
|
};
|
|
declare const _default: Experiment<"foo">;
|
|
export default _default;
|
|
//// [main.d.ts]
|
|
export declare const obj: {
|
|
foo: number;
|
|
};
|