feat(types/ide): support find definition for jsx tags, events (#3570)

This commit is contained in:
Johnson Chu 2021-07-02 01:49:16 +08:00 committed by GitHub
parent 81e69b29ec
commit 8ed3ed6c27
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1296,10 +1296,8 @@ export interface Events {
onTransitionstart: TransitionEvent
}
type StringKeyOf<T> = Extract<keyof T, string>
type EventHandlers<E> = {
[K in StringKeyOf<E>]?: E[K] extends Function ? E[K] : (payload: E[K]) => void
[K in keyof E]?: E[K] extends Function ? E[K] : (payload: E[K]) => void
}
// use namespace import to avoid collision with generated types which use
@ -1317,7 +1315,7 @@ type ReservedProps = {
type ElementAttrs<T> = T & ReservedProps
type NativeElements = {
[K in StringKeyOf<IntrinsicElementAttributes>]: ElementAttrs<
[K in keyof IntrinsicElementAttributes]: ElementAttrs<
IntrinsicElementAttributes[K]
>
}