Interface ComponentOptionsBase<Props, RawBindings, D, C, M, Mixin, Extends, E, EE, Defaults, I, II, S, LC, Directives, Exposed, Provide> interface  ComponentOptionsBase < Props ,  RawBindings ,  D ,  C ,  M ,  Mixin ,  Extends ,  E ,  EE ,  Defaults ,  I ,  II ,  S ,  LC ,  Directives ,  Exposed ,  Provide >  {       __defaults ?:  Defaults ;       __differentiator ?:  keyof  D  |  keyof  C  |  keyof  M ;       __file ?:  string ;       __isBuiltIn ?:  boolean ;       __isFragment ?:  undefined ;       __isSuspense ?:  undefined ;       __isTeleport ?:  undefined ;       __name ?:  string ;       call ?:  ( ( this :  unknown , 
... args :  unknown [] )  =>  never ) ;       compatConfig ?:  CompatConfig ;       compilerOptions ?:  RuntimeCompilerOptions ;       components ?:  LC  &  Record < string ,  Component < any ,  any ,  any ,  ComputedOptions ,  MethodOptions ,  {} ,  any > > ;       computed ?:  C ;       data ?:  ( ( this :  CreateComponentPublicInstanceWithMixins < Props ,  {} ,  {} ,  {} ,  MethodOptions ,  Mixin ,  Extends ,  {} ,  Props ,  {} ,  false ,  {} ,  {} ,  {} ,  {} ,  string ,  {} ,  any ,  ComponentProvideOptions ,  IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "P" >  &  EnsureNonVoid < Props > ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "B" >  &  {} ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "D" >  &  {} ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "C" >  &  {} ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "M" >  &  MethodOptions ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "Defaults" >  &  {} > , 
vm :  CreateComponentPublicInstanceWithMixins < Props ,  {} ,  {} ,  {} ,  MethodOptions ,  Mixin ,  Extends ,  {} ,  Props ,  {} ,  false ,  {} ,  {} ,  {} ,  {} ,  string ,  {} ,  any ,  ComponentProvideOptions ,  IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "P" >  &  EnsureNonVoid < Props > ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "B" >  &  {} ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "D" >  &  {} ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "C" >  &  {} ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "M" >  &  MethodOptions ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "Defaults" >  &  {} > )  =>  D ) ;       delimiters ?:  [ string ,  string ] ;       directives ?:  Directives  &  Record < string ,  vue . Directive < any ,  any ,  string ,  string > > ;       emits ?:  (E | EE[]) & ThisType<void>
;       errorCaptured ?:  ErrorCapturedHook < unknown > ;       expose ?:  Exposed [] ;       extends ?:  Extends ;       filters ?:  Record < string ,  Function > ;       inheritAttrs ?:  boolean ;       inject ?:  I  |  II [] ;       methods ?:  M ;       mixins ?:  Mixin [] ;       name ?:  string ;       provide ?:  Provide ;       render ?:  Function ;       renderTracked ?:  DebuggerHook ;       renderTriggered ?:  DebuggerHook ;       setup ?:  ( ( this :  void , 
props :  LooseRequired < Props  &  {          [ K  in  string  |  number  |  symbol ] :  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "P" > [ K ]      } > , 
ctx :  SetupContext < E ,  S > )  =>           |  void          |  RawBindings          |  RenderFunction          |  Promise < RawBindings > ) ;       slots ?:  S ;       template ?:  string  |  object ;       watch ?:  ComponentWatchOptions ;       activated ? ( ) :  void ;       beforeCreate ? ( ) :  void ;       beforeDestroy ? ( ) :  void ;       beforeMount ? ( ) :  void ;       beforeUnmount ? ( ) :  void ;       beforeUpdate ? ( ) :  void ;       created ? ( ) :  void ;       deactivated ? ( ) :  void ;       destroyed ? ( ) :  void ;       mounted ? ( ) :  void ;       serverPrefetch ? ( ) :  void  |  Promise < any > ;       unmounted ? ( ) :  void ;       updated ? ( ) :  void ;  } Defined in node_modules/@vue/runtime-core/dist/runtime-core.d.ts:806 Optional__defaults Defined in node_modules/@vue/runtime-core/dist/runtime-core.d.ts:823 Optional__differentiator __differentiator ?:  keyof  D  |  keyof  C  |  keyof  M Optional__file __file ?:  string 
Optional__is __is ?:  boolean 
Optional__is __is ?:  undefined 
Defined in node_modules/@vue/runtime-core/dist/runtime-core.d.ts:820 Optional__is __is ?:  undefined 
Defined in node_modules/@vue/runtime-core/dist/runtime-core.d.ts:822 Optional__is __is ?:  undefined 
Defined in node_modules/@vue/runtime-core/dist/runtime-core.d.ts:821 Optional__name __name ?:  string 
Optionalcall call ?:  ( ( this :  unknown , ... args :  unknown [] )  =>  never ) 
Defined in node_modules/@vue/runtime-core/dist/runtime-core.d.ts:819 Optionalcompat compat ?:  CompatConfig 
Optionalcompiler Defined in node_modules/@vue/runtime-core/dist/runtime-core.d.ts:818 Optionalcomponents Defined in node_modules/@vue/runtime-core/dist/runtime-core.d.ts:811 Optionaldata data ?:  ( ( this :  CreateComponentPublicInstanceWithMixins < Props ,  {} ,  {} ,  {} ,  MethodOptions ,  Mixin ,  Extends ,  {} ,  Props ,  {} ,  false ,  {} ,  {} ,  {} ,  {} ,  string ,  {} ,  any ,  ComponentProvideOptions ,  IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "P" >  &  EnsureNonVoid < Props > ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "B" >  &  {} ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "D" >  &  {} ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "C" >  &  {} ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "M" >  &  MethodOptions ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "Defaults" >  &  {} > , 
vm :  CreateComponentPublicInstanceWithMixins < Props ,  {} ,  {} ,  {} ,  MethodOptions ,  Mixin ,  Extends ,  {} ,  Props ,  {} ,  false ,  {} ,  {} ,  {} ,  {} ,  string ,  {} ,  any ,  ComponentProvideOptions ,  IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "P" >  &  EnsureNonVoid < Props > ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "B" >  &  {} ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "D" >  &  {} ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "C" >  &  {} ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "M" >  &  MethodOptions ,  UnwrapMixinsType < IntersectionMixin < Mixin >  &  IntersectionMixin < Extends > ,  "Defaults" >  &  {} > )  =>  D ) Optionaldelimiters delimiters ?:  [ string ,  string ] 
Optionaldirectives Defined in node_modules/@vue/runtime-core/dist/runtime-core.d.ts:812 Optionalemits emits ?:  (E | EE[]) & ThisType<void>
Defined in node_modules/@vue/runtime-core/dist/runtime-core.d.ts:814 Optionalerror error ?:  ErrorCapturedHook < unknown > 
Optionalexpose Defined in node_modules/@vue/runtime-core/dist/runtime-core.d.ts:816 Optionalfilters filters ?:  Record < string ,  Function > 
Optionalinherit inherit ?:  boolean 
Defined in node_modules/@vue/runtime-core/dist/runtime-core.d.ts:813 Optionalname name ?:  string 
Defined in node_modules/@vue/runtime-core/dist/runtime-core.d.ts:808 Optionalrender render ?:  Function 
Defined in node_modules/@vue/runtime-core/dist/runtime-core.d.ts:810 Optionalrender render ?:  DebuggerHook 
Optionalrender render ?:  DebuggerHook 
Optionalsetup Defined in node_modules/@vue/runtime-core/dist/runtime-core.d.ts:807 Optionalslots Defined in node_modules/@vue/runtime-core/dist/runtime-core.d.ts:815 Optionaltemplate template ?:  string  |  object 
Defined in node_modules/@vue/runtime-core/dist/runtime-core.d.ts:809 Optionalwatch watch ?:  ComponentWatchOptions 
Optionalactivated activated ( ) :  void Returns void  Optionalbefore before ( ) :  void Returns void  Optionalbefore before ( ) :  void Returns void  Optionalbefore before ( ) :  void Returns void  Optionalbefore before ( ) :  void Returns void  Optionalbefore before ( ) :  void Returns void  Optionalcreated created ( ) :  void Returns void  Optionaldeactivated deactivated ( ) :  void Returns void  Optionaldestroyed destroyed ( ) :  void Returns void  Optionalmounted mounted ( ) :  void Returns void  Optionalserver server ( ) :  void  |  Promise < any > Returns void  |  Promise < any >  Defined in node_modules/@vue/runtime-core/dist/runtime-core.d.ts:817 Optionalunmounted unmounted ( ) :  void Returns void  Optionalupdated updated ( ) :  void Returns void  
Interface for declaring custom options.
Example