Consider the type:
type GenericFunction = <T>(props: Array<T>) => void
and the arrow function:
const test: GenericFunction = <X>(props: X) => {
let dd: X }
How come that the test function accepts X as argument although the type GenericFunction defines Array<T>
as parameter?