[WIP] Parametrized generic version of TS typing #89
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is WIP at the moment - but I would love to finish it if this is something you'd like to see merged in.
By accepting a generic parameter (& TS dark magic) we can create
mitt
instance which has a nice intellisense support and type checking traits - it can know that only certain types can be emitted and that data has certain shape for that particular type. This is demonstrated intypescript/index.ts
test.*
doesnt play nicely with this - I mean, it can be types but it's not possible (according to my knowledge to narrow types down in such a way that it would know that type & data are depending on each other. So the only option to type is to accept union of types as type as union of datas as data but this which makes wildcard handler somewhat type-unsafe.If you would be interested in this I could bring back the previous typings as default (totally unsafe) typing.