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
|
=== tests/cases/compiler/other.ts ===
type Experiment<Name> = {
>Experiment : Experiment<Name>
name: Name;
>name : Name
};
declare const createExperiment: <Name extends string>(
>createExperiment : <Name extends string>(options: Experiment<Name>) => Experiment<Name>
options: Experiment<Name>
>options : Experiment<Name>
) => Experiment<Name>;
export default createExperiment({
>createExperiment({ name: "foo"}) : Experiment<"foo">
>createExperiment : <Name extends string>(options: Experiment<Name>) => Experiment<Name>
>{ name: "foo"} : { name: "foo"; }
name: "foo"
>name : "foo"
>"foo" : "foo"
});
=== tests/cases/compiler/main.ts ===
import * as other2 from "./other";
>other2 : typeof other2
export const obj = {
>obj : { foo: number; }
>{ [other2.default.name]: 1} : { foo: number; }
[other2.default.name]: 1
>[other2.default.name] : number
>other2.default.name : "foo"
>other2.default : { name: "foo"; }
>other2 : typeof other2
>default : { name: "foo"; }
>name : "foo"
>1 : 1
};
|