Closed
Description
export function keyOf<a>(value: { key: a; }): a {
return value.key;
}
export interface Data {
key: number;
value: Date;
}
var data: Data[] = [];
export function toKeys<a>(values: a[], toKey: (value: a) => string): string[] {
return undefined;
}
toKeys(data, keyOf); // <-- actual ok, expected error, since `keyOf` should be inferred as `number` rather than `string`