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
|
=== tests/cases/conformance/classes/classDeclarations/classHeritageSpecification/classIsSubtypeOfBaseType.ts ===
class Base<T> {
>Base : Base<T>
foo: T;
>foo : T
}
class Derived extends Base<{ bar: string; }> {
>Derived : Derived
>Base : Base<{ bar: string; }>
>bar : string
foo: {
>foo : { bar: string; baz: number; }
bar: string; baz: number; // ok
>bar : string
>baz : number
}
}
class Derived2 extends Base<{ bar: string; }> {
>Derived2 : Derived2
>Base : Base<{ bar: string; }>
>bar : string
foo: {
>foo : { bar?: string; }
bar?: string; // error
>bar : string
}
}
|