]> git.ipfire.org Git - thirdparty/vuejs/core.git/commitdiff
chore: fix types
authorEvan You <yyx990803@gmail.com>
Fri, 8 Dec 2023 14:34:47 +0000 (22:34 +0800)
committerEvan You <yyx990803@gmail.com>
Fri, 8 Dec 2023 14:34:47 +0000 (22:34 +0800)
packages/runtime-core/src/component.ts

index b7bc8afbd6f3dc271fcd9f5f9c5393b7660027d6..b0f3bf82ea861e8fdc6228487ba8d1d49df4336b 100644 (file)
@@ -99,23 +99,23 @@ export type Data = Record<string, unknown>
 export type ComponentInstance<T> = T extends { new (): ComponentPublicInstance }
   ? InstanceType<T>
   : T extends FunctionalComponent<infer Props, infer Emits>
-  ? ComponentPublicInstance<Props, {}, {}, {}, {}, Emits>
-  : T extends Component<
-      infer Props,
-      infer RawBindings,
-      infer D,
-      infer C,
-      infer M
-    >
-  ? // NOTE we override Props/RawBindings/D to make sure is not `unknown`
-    ComponentPublicInstance<
-      unknown extends Props ? {} : Props,
-      unknown extends RawBindings ? {} : RawBindings,
-      unknown extends D ? {} : D,
-      C,
-      M
-    >
-  : never // not a vue Component
+    ? ComponentPublicInstance<Props, {}, {}, {}, {}, ShortEmitsToObject<Emits>>
+    : T extends Component<
+          infer Props,
+          infer RawBindings,
+          infer D,
+          infer C,
+          infer M
+        >
+      ? // NOTE we override Props/RawBindings/D to make sure is not `unknown`
+        ComponentPublicInstance<
+          unknown extends Props ? {} : Props,
+          unknown extends RawBindings ? {} : RawBindings,
+          unknown extends D ? {} : D,
+          C,
+          M
+        >
+      : never // not a vue Component
 
 /**
  * For extending allowed non-declared props on components in TSX