Data,
Component,
SetupContext,
- RenderFunction
+ RenderFunction,
+ SFCInternalOptions
} from './component'
import {
isFunction,
D,
C extends ComputedOptions,
M extends MethodOptions
-> extends LegacyOptions<Props, RawBindings, D, C, M> {
+> extends LegacyOptions<Props, RawBindings, D, C, M>, SFCInternalOptions {
setup?: (
this: null,
props: Props,
directives?: Record<string, Directive>
inheritAttrs?: boolean
- // SFC & dev only
- __scopeId?: string
- __hmrId?: string
- __hmrUpdated?: boolean
-
// type-only differentiator to separate OptionWithoutProps from a constructor
// type returned by createComponent() or FunctionalComponent
call?: never
export type Data = { [key: string]: unknown }
-export interface FunctionalComponent<P = {}> {
+export interface SFCInternalOptions {
+ __scopeId?: string
+ __hmrId?: string
+ __hmrUpdated?: boolean
+}
+
+export interface FunctionalComponent<P = {}> extends SFCInternalOptions {
(props: P, ctx: SetupContext): VNodeChild
props?: ComponentPropsOptions<P>
inheritAttrs?: boolean
displayName?: string
-
- // internal HMR related flags
- __hmrId?: string
- __hmrUpdated?: boolean
}
export type Component = ComponentOptions | FunctionalComponent