diff --git a/vue-language-tools/vue-language-core/src/utils/localTypes.ts b/vue-language-tools/vue-language-core/src/utils/localTypes.ts index 259f298f3..fa2294759 100644 --- a/vue-language-tools/vue-language-core/src/utils/localTypes.ts +++ b/vue-language-tools/vue-language-core/src/utils/localTypes.ts @@ -110,8 +110,10 @@ export type GetComponents = export type ComponentProps = ${vueCompilerOptions.strictTemplates ? '' : 'Record &'} ( - T extends new (...args: any) => any ? (T extends new (...args: any) => { $props: infer Props } ? Props : {}) - : T extends (...args: any) => any ? (T extends (...args: any) => { props: infer Props } ? Props : {}) + T extends new (...args: any) => { $props: infer Props } ? Props + : T extends (...args: any) => { props: infer Props } ? Props + : T extends new (...args: any) => any ? {} + : T extends (...args: any) => any ? {} : T // IntrinsicElement ); export type InstanceProps = I extends { $props: infer Props } ? Props & Record : C & Record;