TypeScript/tests/cases/compiler/inferenceDoesntCompareAgainstUninstantiatedTypeParameter.ts
Wesley Wigham 38da682de7
Unify contextual signature type parameter assignment (#31574)
* Unify conditional signature type assignment

* Moonomorphism
2019-06-05 14:35:00 -07:00

33 lines
859 B
TypeScript

class ClassA<TEntityClass> {
constructor(private entity?: TEntityClass, public settings?: SettingsInterface<TEntityClass>) {
}
}
export interface ValueInterface<TValueClass> {
func?: (row: TValueClass) => any;
value?: string;
}
export interface SettingsInterface<TClass> {
values?: (row: TClass) => ValueInterface<TClass>[],
}
class ConcreteClass {
theName = 'myClass';
}
var thisGetsTheFalseError = new ClassA(new ConcreteClass(), {
values: o => [
{
value: o.theName,
func: x => 'asdfkjhgfdfghjkjhgfdfghjklkjhgfdfghjklkjhgfghj'
}
]
});
var thisIsOk = new ClassA<ConcreteClass>(new ConcreteClass(), {
values: o => [
{
value: o.theName,
func: x => 'asdfkjhgfdfghjkjhgfdfghjklkjhgfdfghjklkjhgfghj'
}
]
});