Skip to content

Commit a6503e3

Browse files
refactor(types): simplify EmitsToProps types (#9788)
1 parent 376dac4 commit a6503e3

File tree

1 file changed

+8
-9
lines changed

1 file changed

+8
-9
lines changed

packages/runtime-core/src/componentEmits.ts

+8-9
Original file line numberDiff line numberDiff line change
@@ -38,19 +38,18 @@ export type EmitsOptions = ObjectEmitsOptions | string[]
3838

3939
export type EmitsToProps<T extends EmitsOptions> = T extends string[]
4040
? {
41-
[K in string & `on${Capitalize<T[number]>}`]?: (...args: any[]) => any
41+
[K in `on${Capitalize<T[number]>}`]?: (...args: any[]) => any
4242
}
4343
: T extends ObjectEmitsOptions
4444
? {
45-
[K in string &
46-
`on${Capitalize<string & keyof T>}`]?: K extends `on${infer C}`
47-
? T[Uncapitalize<C>] extends null
48-
? (...args: any[]) => any
49-
: (
50-
...args: T[Uncapitalize<C>] extends (...args: infer P) => any
51-
? P
45+
[K in `on${Capitalize<string & keyof T>}`]?: K extends `on${infer C}`
46+
? (
47+
...args: T[Uncapitalize<C>] extends (...args: infer P) => any
48+
? P
49+
: T[Uncapitalize<C>] extends null
50+
? any[]
5251
: never
53-
) => any
52+
) => any
5453
: never
5554
}
5655
: {}

0 commit comments

Comments
 (0)