Closed
Description
TypeScript Version: 2.1.4
Code
interface A<T> { value: T }
interface B extends A<string> { }
abstract class C<T extends A<any>> {
private t: T;
get a(): this['t']['value'] { return this.t.value };
}
class D extends C<B> {
get b() { return this.a; }
}
Expected behavior:
I would expect that the type of D.b
would be string
.
Actual behavior:
Type of D.b
is any