diff --git a/packages/runtime-core/src/componentEmits.ts b/packages/runtime-core/src/componentEmits.ts index f3a30f7c953..d56877adb58 100644 --- a/packages/runtime-core/src/componentEmits.ts +++ b/packages/runtime-core/src/componentEmits.ts @@ -38,19 +38,18 @@ export type EmitsOptions = ObjectEmitsOptions | string[] export type EmitsToProps = T extends string[] ? { - [K in string & `on${Capitalize}`]?: (...args: any[]) => any + [K in `on${Capitalize}`]?: (...args: any[]) => any } : T extends ObjectEmitsOptions ? { - [K in string & - `on${Capitalize}`]?: K extends `on${infer C}` - ? T[Uncapitalize] extends null - ? (...args: any[]) => any - : ( - ...args: T[Uncapitalize] extends (...args: infer P) => any - ? P + [K in `on${Capitalize}`]?: K extends `on${infer C}` + ? ( + ...args: T[Uncapitalize] extends (...args: infer P) => any + ? P + : T[Uncapitalize] extends null + ? any[] : never - ) => any + ) => any : never } : {}