Skip to content

Type Alias: ComponentPublicInstanceType<T>

ts
type ComponentPublicInstanceType<T> = Merge<
  InstanceType<T>,
  ComponentPublicInstance
>;

Utility type that merges a component constructor's instance type with Vue's ComponentPublicInstance. Provides proper typing for component instances that includes both the component's own properties/methods and Vue's public instance API (e.g., $el, $emit, $props, etc.).

Type Parameters

Type ParameterDescription
T extends (...args: any) => anyAn abstract component constructor type

Returns

A merged type combining the component's instance type with ComponentPublicInstance

Example

typescript
export const MyComponent = defineComponent({ ... })
export type MyComponent = ComponentPublicInstanceType<typeof MyComponent>