diff --git a/src/vueWrapper.ts b/src/vueWrapper.ts index 10734293f..04b29d20a 100644 --- a/src/vueWrapper.ts +++ b/src/vueWrapper.ts @@ -80,12 +80,14 @@ function createVMProxy( type ResolveComponentEmitKeys = keyof ResolveEmitRecord +type ExtractArgType> = T extends { length: 0 } + ? void + : T extends { length: 1 } + ? T[0] + : T + type ExtractEmitType = T extends (...args: infer Args) => any - ? Args extends { length: 0 } - ? void - : Args extends { length: 1 } - ? Args[0] - : Args + ? ExtractArgType : void type ResolveEmitRecord = ExtractComponentEmits extends infer E