Open jhsware opened 1 year ago
Yes this is very legit issue.
This issue origins roots to the fact that Inferno JSX typings are based on React Jsx.
In my opinion it would be awesome if we could provide InfernoJs native typings for JSX too and make all these extra types unnecessary.
I haven't found any easy way to implement that and that is why there are so many types / interfaces for similar things
There is nowdays JSX documentation in typescript compiler site: https://www.typescriptlang.org/docs/handbook/jsx.html
We have a very, very rich set of types in Inferno and many types have similar names. This can make it hard to pick an appropriate type in application code.
It would be great if we could create a limited set of type aliases with intuitive names that can be used by application developers.
Use case:
What is the correct type for the the component? Is it:
IComponent<any, any> | Function
Component | Function
Component<any> | Inferno.StatelessComponent<any>
ComponentType
So a type alias could be:
This would save time, encourage type safety and make application code more readable.