@@ -2,6 +2,7 @@ import { Vue, CreateElement, CombinedVueInstance } from './vue'
22import { VNode , VNodeData , VNodeDirective , NormalizedScopedSlot } from './vnode'
33import { SetupContext } from './v3-setup-context'
44import { DebuggerEvent } from './v3-generated'
5+ import { DefineComponent } from './v3-define-component'
56
67type Constructor = {
78 new ( ...args : any [ ] ) : any
@@ -19,6 +20,7 @@ export type Component<
1920 | typeof Vue
2021 | FunctionalComponentOptions < Props >
2122 | ComponentOptions < never , Data , Methods , Computed , Props , SetupBindings >
23+ | DefineComponent < any , any , any , any , any >
2224
2325type EsModule < T > = T | { default : T }
2426
@@ -174,7 +176,10 @@ export interface ComponentOptions<
174176 el ?: Element | string
175177 template ?: string
176178 // hack is for functional component type inference, should not be used in user code
177- render ?( createElement : CreateElement , hack : RenderContext < Props > ) : VNode
179+ render ?(
180+ createElement : CreateElement ,
181+ hack : RenderContext < Props >
182+ ) : VNode | null | void
178183 renderError ?( createElement : CreateElement , err : Error ) : VNode
179184 staticRenderFns ?: ( ( createElement : CreateElement ) => VNode ) [ ]
180185
@@ -198,6 +203,7 @@ export interface ComponentOptions<
198203 [ key : string ] :
199204 | Component < any , any , any , any >
200205 | AsyncComponent < any , any , any , any >
206+ | DefineComponent < any , any , any , any , any , any , any , any , any , any >
201207 }
202208 transitions ?: { [ key : string ] : object }
203209 filters ?: { [ key : string ] : Function }
0 commit comments