TypeScript/tests/cases/compiler/mappedTypeNestedGenericInstantiation.ts

13 lines
295 B
TypeScript
Raw Normal View History

2017-01-09 00:28:38 +01:00
// Repro from #13346
interface Chainable<T> {
value(): T;
mapValues<U>(func: (v: T[keyof T]) => U): Chainable<{[k in keyof T]: U}>;
}
declare function chain<T>(t: T): Chainable<T>;
const square = (x: number) => x * x;
const v = chain({a: 1, b: 2}).mapValues(square).value();