TypeScript/tests/cases/conformance/types/intersection/intersectionTypeInference2.ts
Anders Hejlsberg 9cc9fb9bd7 Update tests
2019-06-09 08:00:01 -07:00

16 lines
383 B
TypeScript

declare function f<T>(x: { prop: T }): T;
declare const a: { prop: string } & { prop: number };
declare const b: { prop: string & number };
f(a); // never
f(b); // never
// Repro from #18354
declare function f2<T, Key extends keyof T>(obj: {[K in keyof T]: T[K]}, key: Key): T[Key];
declare const obj: { a: string } & { b: string };
f2(obj, 'a');
f2(obj, 'b');