From 7518bc19dc73ba46dcf1eef6e23f9e6e75552675 Mon Sep 17 00:00:00 2001 From: Johnson Chu Date: Wed, 4 Sep 2024 20:34:36 +0800 Subject: [PATCH] fix(types): avoid using intersection type in `Readonly<...>` to fix JSDoc emit (#11799) --- packages/runtime-core/src/apiDefineComponent.ts | 3 ++- packages/runtime-core/src/componentOptions.ts | 4 +++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/runtime-core/src/apiDefineComponent.ts b/packages/runtime-core/src/apiDefineComponent.ts index 24a483358b6..0a58954526c 100644 --- a/packages/runtime-core/src/apiDefineComponent.ts +++ b/packages/runtime-core/src/apiDefineComponent.ts @@ -210,7 +210,8 @@ export function defineComponent< : ExtractPropTypes : { [key in RuntimePropsKeys]?: any } : TypeProps, - ResolvedProps = Readonly>, + ResolvedProps = Readonly & + Readonly>, TypeRefs extends Record = {}, >( options: { diff --git a/packages/runtime-core/src/componentOptions.ts b/packages/runtime-core/src/componentOptions.ts index 2a39f45b685..f864f39e419 100644 --- a/packages/runtime-core/src/componentOptions.ts +++ b/packages/runtime-core/src/componentOptions.ts @@ -1279,7 +1279,9 @@ export type ComponentOptionsWithObjectProps< Directives extends Record = {}, Exposed extends string = string, Provide extends ComponentProvideOptions = ComponentProvideOptions, - Props = Prettify & EmitsToProps>>, + Props = Prettify< + Readonly> & Readonly> + >, Defaults = ExtractDefaultPropTypes, > = ComponentOptionsBase< Props,