runtime-core.d.ts 80 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005
  1. import { camelize } from '@vue/shared';
  2. import { capitalize } from '@vue/shared';
  3. import { ComponentPropsOptions as ComponentPropsOptions_2 } from '@vue/runtime-core';
  4. import { computed } from '@vue/reactivity';
  5. import { ComputedGetter } from '@vue/reactivity';
  6. import { ComputedRef } from '@vue/reactivity';
  7. import { ComputedSetter } from '@vue/reactivity';
  8. import { customRef } from '@vue/reactivity';
  9. import { CustomRefFactory } from '@vue/reactivity';
  10. import { DebuggerEvent } from '@vue/reactivity';
  11. import { DebuggerEventExtraInfo } from '@vue/reactivity';
  12. import { DebuggerOptions } from '@vue/reactivity';
  13. import { DeepReadonly } from '@vue/reactivity';
  14. import { effect } from '@vue/reactivity';
  15. import { EffectScheduler } from '@vue/reactivity';
  16. import { EffectScope } from '@vue/reactivity';
  17. import { effectScope } from '@vue/reactivity';
  18. import { getCurrentScope } from '@vue/reactivity';
  19. import { isProxy } from '@vue/reactivity';
  20. import { isReactive } from '@vue/reactivity';
  21. import { isReadonly } from '@vue/reactivity';
  22. import { isRef } from '@vue/reactivity';
  23. import { markRaw } from '@vue/reactivity';
  24. import { normalizeClass } from '@vue/shared';
  25. import { normalizeProps } from '@vue/shared';
  26. import { normalizeStyle } from '@vue/shared';
  27. import { onScopeDispose } from '@vue/reactivity';
  28. import { proxyRefs } from '@vue/reactivity';
  29. import { reactive } from '@vue/reactivity';
  30. import { ReactiveEffect } from '@vue/reactivity';
  31. import { ReactiveEffectOptions } from '@vue/reactivity';
  32. import { ReactiveEffectRunner } from '@vue/reactivity';
  33. import { ReactiveFlags } from '@vue/reactivity';
  34. import { readonly } from '@vue/reactivity';
  35. import { Ref } from '@vue/reactivity';
  36. import { ref } from '@vue/reactivity';
  37. import { ShallowReactive } from '@vue/reactivity';
  38. import { shallowReactive } from '@vue/reactivity';
  39. import { shallowReadonly } from '@vue/reactivity';
  40. import { ShallowRef } from '@vue/reactivity';
  41. import { shallowRef } from '@vue/reactivity';
  42. import { ShallowUnwrapRef } from '@vue/reactivity';
  43. import { ShapeFlags } from '@vue/shared';
  44. import { SlotFlags } from '@vue/shared';
  45. import { stop as stop_2 } from '@vue/reactivity';
  46. import { toDisplayString } from '@vue/shared';
  47. import { toHandlerKey } from '@vue/shared';
  48. import { toRaw } from '@vue/reactivity';
  49. import { ToRef } from '@vue/reactivity';
  50. import { toRef } from '@vue/reactivity';
  51. import { ToRefs } from '@vue/reactivity';
  52. import { toRefs } from '@vue/reactivity';
  53. import { TrackOpTypes } from '@vue/reactivity';
  54. import { TriggerOpTypes } from '@vue/reactivity';
  55. import { triggerRef } from '@vue/reactivity';
  56. import { unref } from '@vue/reactivity';
  57. import { UnwrapNestedRefs } from '@vue/reactivity';
  58. import { UnwrapRef } from '@vue/reactivity';
  59. import { WritableComputedOptions } from '@vue/reactivity';
  60. import { WritableComputedRef } from '@vue/reactivity';
  61. /**
  62. * Default allowed non-declared props on component in TSX
  63. */
  64. export declare interface AllowedComponentProps {
  65. class?: unknown;
  66. style?: unknown;
  67. }
  68. export declare interface App<HostElement = any> {
  69. version: string;
  70. config: AppConfig;
  71. use(plugin: Plugin_2, ...options: any[]): this;
  72. mixin(mixin: ComponentOptions): this;
  73. component(name: string): Component | undefined;
  74. component(name: string, component: Component): this;
  75. directive(name: string): Directive | undefined;
  76. directive(name: string, directive: Directive): this;
  77. mount(rootContainer: HostElement | string, isHydrate?: boolean, isSVG?: boolean): ComponentPublicInstance;
  78. unmount(): void;
  79. provide<T>(key: InjectionKey<T> | string, value: T): this;
  80. _uid: number;
  81. _component: ConcreteComponent;
  82. _props: Data | null;
  83. _container: HostElement | null;
  84. _context: AppContext;
  85. _instance: ComponentInternalInstance | null;
  86. /**
  87. * v2 compat only
  88. */
  89. filter?(name: string): Function | undefined;
  90. filter?(name: string, filter: Function): this;
  91. /* Excluded from this release type: _createRoot */
  92. }
  93. export declare interface AppConfig {
  94. readonly isNativeTag?: (tag: string) => boolean;
  95. performance: boolean;
  96. optionMergeStrategies: Record<string, OptionMergeFunction>;
  97. globalProperties: Record<string, any>;
  98. errorHandler?: (err: unknown, instance: ComponentPublicInstance | null, info: string) => void;
  99. warnHandler?: (msg: string, instance: ComponentPublicInstance | null, trace: string) => void;
  100. /**
  101. * Options to pass to `@vue/compiler-dom`.
  102. * Only supported in runtime compiler build.
  103. */
  104. compilerOptions: RuntimeCompilerOptions;
  105. /**
  106. * @deprecated use config.compilerOptions.isCustomElement
  107. */
  108. isCustomElement?: (tag: string) => boolean;
  109. /**
  110. * Temporary config for opt-in to unwrap injected refs.
  111. * TODO deprecate in 3.3
  112. */
  113. unwrapInjectedRef?: boolean;
  114. }
  115. export declare interface AppContext {
  116. app: App;
  117. config: AppConfig;
  118. mixins: ComponentOptions[];
  119. components: Record<string, Component>;
  120. directives: Record<string, Directive>;
  121. provides: Record<string | symbol, any>;
  122. /* Excluded from this release type: optionsCache */
  123. /* Excluded from this release type: propsCache */
  124. /* Excluded from this release type: emitsCache */
  125. /* Excluded from this release type: reload */
  126. /* Excluded from this release type: filters */
  127. }
  128. declare interface AppRecord {
  129. id: number;
  130. app: App;
  131. version: string;
  132. types: Record<string, string | Symbol>;
  133. }
  134. export declare type AsyncComponentLoader<T = any> = () => Promise<AsyncComponentResolveResult<T>>;
  135. export declare interface AsyncComponentOptions<T = any> {
  136. loader: AsyncComponentLoader<T>;
  137. loadingComponent?: Component;
  138. errorComponent?: Component;
  139. delay?: number;
  140. timeout?: number;
  141. suspensible?: boolean;
  142. onError?: (error: Error, retry: () => void, fail: () => void, attempts: number) => any;
  143. }
  144. declare type AsyncComponentResolveResult<T = Component> = T | {
  145. default: T;
  146. };
  147. export declare const BaseTransition: new () => {
  148. $props: BaseTransitionProps<any>;
  149. };
  150. export declare interface BaseTransitionProps<HostElement = RendererElement> {
  151. mode?: 'in-out' | 'out-in' | 'default';
  152. appear?: boolean;
  153. persisted?: boolean;
  154. onBeforeEnter?: (el: HostElement) => void;
  155. onEnter?: (el: HostElement, done: () => void) => void;
  156. onAfterEnter?: (el: HostElement) => void;
  157. onEnterCancelled?: (el: HostElement) => void;
  158. onBeforeLeave?: (el: HostElement) => void;
  159. onLeave?: (el: HostElement, done: () => void) => void;
  160. onAfterLeave?: (el: HostElement) => void;
  161. onLeaveCancelled?: (el: HostElement) => void;
  162. onBeforeAppear?: (el: HostElement) => void;
  163. onAppear?: (el: HostElement, done: () => void) => void;
  164. onAfterAppear?: (el: HostElement) => void;
  165. onAppearCancelled?: (el: HostElement) => void;
  166. }
  167. declare const enum BooleanFlags {
  168. shouldCast = 0,
  169. shouldCastTrue = 1
  170. }
  171. export declare function callWithAsyncErrorHandling(fn: Function | Function[], instance: ComponentInternalInstance | null, type: ErrorTypes, args?: unknown[]): any[];
  172. export declare function callWithErrorHandling(fn: Function, instance: ComponentInternalInstance | null, type: ErrorTypes, args?: unknown[]): any;
  173. export { camelize }
  174. export { capitalize }
  175. /**
  176. * Use this for features with the same syntax but with mutually exclusive
  177. * behavior in 2 vs 3. Only warn if compat is enabled.
  178. * e.g. render function
  179. */
  180. declare function checkCompatEnabled(key: DeprecationTypes, instance: ComponentInternalInstance | null, ...args: any[]): boolean;
  181. declare interface ClassComponent {
  182. new (...args: any[]): ComponentPublicInstance<any, any, any, any, any>;
  183. __vccOpts: ComponentOptions;
  184. }
  185. export declare function cloneVNode<T, U>(vnode: VNode<T, U>, extraProps?: (Data & VNodeProps) | null, mergeRef?: boolean): VNode<T, U>;
  186. declare const Comment_2: unique symbol;
  187. export { Comment_2 as Comment }
  188. declare type CompatConfig = Partial<Record<DeprecationTypes, boolean | 'suppress-warning'>> & {
  189. MODE?: 2 | 3 | ((comp: Component | null) => 2 | 3);
  190. };
  191. /* Excluded from this release type: compatUtils */
  192. /**
  193. * @deprecated the default `Vue` export has been removed in Vue 3. The type for
  194. * the default export is provided only for migration purposes. Please use
  195. * named imports instead - e.g. `import { createApp } from 'vue'`.
  196. */
  197. export declare type CompatVue = Pick<App, 'version' | 'component' | 'directive'> & {
  198. configureCompat: typeof configureCompat;
  199. new (options?: ComponentOptions): LegacyPublicInstance;
  200. version: string;
  201. config: AppConfig & LegacyConfig;
  202. nextTick: typeof nextTick;
  203. use(plugin: Plugin_2, ...options: any[]): CompatVue;
  204. mixin(mixin: ComponentOptions): CompatVue;
  205. component(name: string): Component | undefined;
  206. component(name: string, component: Component): CompatVue;
  207. directive(name: string): Directive | undefined;
  208. directive(name: string, directive: Directive): CompatVue;
  209. compile(template: string): RenderFunction;
  210. /**
  211. * @deprecated Vue 3 no longer supports extending constructors.
  212. */
  213. extend: (options?: ComponentOptions) => CompatVue;
  214. /**
  215. * @deprecated Vue 3 no longer needs set() for adding new properties.
  216. */
  217. set(target: any, key: string | number | symbol, value: any): void;
  218. /**
  219. * @deprecated Vue 3 no longer needs delete() for property deletions.
  220. */
  221. delete(target: any, key: string | number | symbol): void;
  222. /**
  223. * @deprecated use `reactive` instead.
  224. */
  225. observable: typeof reactive;
  226. /**
  227. * @deprecated filters have been removed from Vue 3.
  228. */
  229. filter(name: string, arg?: any): null;
  230. /* Excluded from this release type: cid */
  231. /* Excluded from this release type: options */
  232. /* Excluded from this release type: util */
  233. /* Excluded from this release type: super */
  234. };
  235. declare interface CompiledSlotDescriptor {
  236. name: string;
  237. fn: Slot;
  238. }
  239. /**
  240. * A type used in public APIs where a component type is expected.
  241. * The constructor type is an artificial type returned by defineComponent().
  242. */
  243. export declare type Component<Props = any, RawBindings = any, D = any, C extends ComputedOptions = ComputedOptions, M extends MethodOptions = MethodOptions> = ConcreteComponent<Props, RawBindings, D, C, M> | ComponentPublicInstanceConstructor<Props>;
  244. /**
  245. * Interface for declaring custom options.
  246. *
  247. * @example
  248. * ```ts
  249. * declare module '@vue/runtime-core' {
  250. * interface ComponentCustomOptions {
  251. * beforeRouteUpdate?(
  252. * to: Route,
  253. * from: Route,
  254. * next: () => void
  255. * ): void
  256. * }
  257. * }
  258. * ```
  259. */
  260. export declare interface ComponentCustomOptions {
  261. }
  262. /**
  263. * Custom properties added to component instances in any way and can be accessed through `this`
  264. *
  265. * @example
  266. * Here is an example of adding a property `$router` to every component instance:
  267. * ```ts
  268. * import { createApp } from 'vue'
  269. * import { Router, createRouter } from 'vue-router'
  270. *
  271. * declare module '@vue/runtime-core' {
  272. * interface ComponentCustomProperties {
  273. * $router: Router
  274. * }
  275. * }
  276. *
  277. * // effectively adding the router to every component instance
  278. * const app = createApp({})
  279. * const router = createRouter()
  280. * app.config.globalProperties.$router = router
  281. *
  282. * const vm = app.mount('#app')
  283. * // we can access the router from the instance
  284. * vm.$router.push('/')
  285. * ```
  286. */
  287. export declare interface ComponentCustomProperties {
  288. }
  289. /**
  290. * For extending allowed non-declared props on components in TSX
  291. */
  292. export declare interface ComponentCustomProps {
  293. }
  294. declare type ComponentInjectOptions = string[] | ObjectInjectOptions;
  295. /**
  296. * We expose a subset of properties on the internal instance as they are
  297. * useful for advanced external libraries and tools.
  298. */
  299. export declare interface ComponentInternalInstance {
  300. uid: number;
  301. type: ConcreteComponent;
  302. parent: ComponentInternalInstance | null;
  303. root: ComponentInternalInstance;
  304. appContext: AppContext;
  305. /**
  306. * Vnode representing this component in its parent's vdom tree
  307. */
  308. vnode: VNode;
  309. /* Excluded from this release type: next */
  310. /**
  311. * Root vnode of this component's own vdom tree
  312. */
  313. subTree: VNode;
  314. /**
  315. * Render effect instance
  316. */
  317. effect: ReactiveEffect;
  318. /**
  319. * Bound effect runner to be passed to schedulers
  320. */
  321. update: SchedulerJob;
  322. /* Excluded from this release type: render */
  323. /* Excluded from this release type: ssrRender */
  324. /* Excluded from this release type: provides */
  325. /* Excluded from this release type: scope */
  326. /* Excluded from this release type: accessCache */
  327. /* Excluded from this release type: renderCache */
  328. /* Excluded from this release type: components */
  329. /* Excluded from this release type: directives */
  330. /* Excluded from this release type: filters */
  331. /* Excluded from this release type: propsOptions */
  332. /* Excluded from this release type: emitsOptions */
  333. /* Excluded from this release type: inheritAttrs */
  334. /**
  335. * is custom element?
  336. */
  337. isCE?: boolean;
  338. /**
  339. * custom element specific HMR method
  340. */
  341. ceReload?: (newStyles?: string[]) => void;
  342. proxy: ComponentPublicInstance | null;
  343. exposed: Record<string, any> | null;
  344. exposeProxy: Record<string, any> | null;
  345. /* Excluded from this release type: withProxy */
  346. /* Excluded from this release type: ctx */
  347. data: Data;
  348. props: Data;
  349. attrs: Data;
  350. slots: InternalSlots;
  351. refs: Data;
  352. emit: EmitFn;
  353. /* Excluded from this release type: emitted */
  354. /* Excluded from this release type: propsDefaults */
  355. /* Excluded from this release type: setupState */
  356. /* Excluded from this release type: devtoolsRawSetupState */
  357. /* Excluded from this release type: setupContext */
  358. /* Excluded from this release type: suspense */
  359. /* Excluded from this release type: suspenseId */
  360. /* Excluded from this release type: asyncDep */
  361. /* Excluded from this release type: asyncResolved */
  362. isMounted: boolean;
  363. isUnmounted: boolean;
  364. isDeactivated: boolean;
  365. /* Excluded from this release type: bc */
  366. /* Excluded from this release type: c */
  367. /* Excluded from this release type: bm */
  368. /* Excluded from this release type: m */
  369. /* Excluded from this release type: bu */
  370. /* Excluded from this release type: u */
  371. /* Excluded from this release type: bum */
  372. /* Excluded from this release type: um */
  373. /* Excluded from this release type: rtc */
  374. /* Excluded from this release type: rtg */
  375. /* Excluded from this release type: a */
  376. /* Excluded from this release type: da */
  377. /* Excluded from this release type: ec */
  378. /* Excluded from this release type: sp */
  379. }
  380. declare interface ComponentInternalOptions {
  381. /* Excluded from this release type: __scopeId */
  382. /* Excluded from this release type: __cssModules */
  383. /* Excluded from this release type: __hmrId */
  384. /**
  385. * Compat build only, for bailing out of certain compatibility behavior
  386. */
  387. __isBuiltIn?: boolean;
  388. /**
  389. * This one should be exposed so that devtools can make use of it
  390. */
  391. __file?: string;
  392. }
  393. export declare type ComponentObjectPropsOptions<P = Data> = {
  394. [K in keyof P]: Prop<P[K]> | null;
  395. };
  396. export declare type ComponentOptions<Props = {}, RawBindings = any, D = any, C extends ComputedOptions = any, M extends MethodOptions = any, Mixin extends ComponentOptionsMixin = any, Extends extends ComponentOptionsMixin = any, E extends EmitsOptions = any> = ComponentOptionsBase<Props, RawBindings, D, C, M, Mixin, Extends, E> & ThisType<CreateComponentPublicInstance<{}, RawBindings, D, C, M, Mixin, Extends, E, Readonly<Props>>>;
  397. export declare interface ComponentOptionsBase<Props, RawBindings, D, C extends ComputedOptions, M extends MethodOptions, Mixin extends ComponentOptionsMixin, Extends extends ComponentOptionsMixin, E extends EmitsOptions, EE extends string = string, Defaults = {}> extends LegacyOptions<Props, D, C, M, Mixin, Extends>, ComponentInternalOptions, ComponentCustomOptions {
  398. setup?: (this: void, props: Readonly<LooseRequired<Props & UnionToIntersection<ExtractOptionProp<Mixin>> & UnionToIntersection<ExtractOptionProp<Extends>>>>, ctx: SetupContext<E>) => Promise<RawBindings> | RawBindings | RenderFunction | void;
  399. name?: string;
  400. template?: string | object;
  401. render?: Function;
  402. components?: Record<string, Component>;
  403. directives?: Record<string, Directive>;
  404. inheritAttrs?: boolean;
  405. emits?: (E | EE[]) & ThisType<void>;
  406. expose?: string[];
  407. serverPrefetch?(): Promise<any>;
  408. compilerOptions?: RuntimeCompilerOptions;
  409. /* Excluded from this release type: ssrRender */
  410. /* Excluded from this release type: __ssrInlineRender */
  411. /* Excluded from this release type: __asyncLoader */
  412. /* Excluded from this release type: __asyncResolved */
  413. call?: (this: unknown, ...args: unknown[]) => never;
  414. __isFragment?: never;
  415. __isTeleport?: never;
  416. __isSuspense?: never;
  417. __defaults?: Defaults;
  418. }
  419. export declare type ComponentOptionsMixin = ComponentOptionsBase<any, any, any, any, any, any, any, any, any, any>;
  420. export declare type ComponentOptionsWithArrayProps<PropNames extends string = string, RawBindings = {}, D = {}, C extends ComputedOptions = {}, M extends MethodOptions = {}, Mixin extends ComponentOptionsMixin = ComponentOptionsMixin, Extends extends ComponentOptionsMixin = ComponentOptionsMixin, E extends EmitsOptions = EmitsOptions, EE extends string = string, Props = Readonly<{
  421. [key in PropNames]?: any;
  422. }> & EmitsToProps<E>> = ComponentOptionsBase<Props, RawBindings, D, C, M, Mixin, Extends, E, EE, {}> & {
  423. props: PropNames[];
  424. } & ThisType<CreateComponentPublicInstance<Props, RawBindings, D, C, M, Mixin, Extends, E>>;
  425. export declare type ComponentOptionsWithObjectProps<PropsOptions = ComponentObjectPropsOptions, RawBindings = {}, D = {}, C extends ComputedOptions = {}, M extends MethodOptions = {}, Mixin extends ComponentOptionsMixin = ComponentOptionsMixin, Extends extends ComponentOptionsMixin = ComponentOptionsMixin, E extends EmitsOptions = EmitsOptions, EE extends string = string, Props = Readonly<ExtractPropTypes<PropsOptions>> & EmitsToProps<E>, Defaults = ExtractDefaultPropTypes<PropsOptions>> = ComponentOptionsBase<Props, RawBindings, D, C, M, Mixin, Extends, E, EE, Defaults> & {
  426. props: PropsOptions & ThisType<void>;
  427. } & ThisType<CreateComponentPublicInstance<Props, RawBindings, D, C, M, Mixin, Extends, E, Props, Defaults, false>>;
  428. export declare type ComponentOptionsWithoutProps<Props = {}, RawBindings = {}, D = {}, C extends ComputedOptions = {}, M extends MethodOptions = {}, Mixin extends ComponentOptionsMixin = ComponentOptionsMixin, Extends extends ComponentOptionsMixin = ComponentOptionsMixin, E extends EmitsOptions = EmitsOptions, EE extends string = string, PE = Props & EmitsToProps<E>> = ComponentOptionsBase<PE, RawBindings, D, C, M, Mixin, Extends, E, EE, {}> & {
  429. props?: undefined;
  430. } & ThisType<CreateComponentPublicInstance<PE, RawBindings, D, C, M, Mixin, Extends, E>>;
  431. export declare type ComponentPropsOptions<P = Data> = ComponentObjectPropsOptions<P> | string[];
  432. export declare type ComponentPublicInstance<P = {}, // props type extracted from props option
  433. B = {}, // raw bindings returned from setup()
  434. D = {}, // return from data()
  435. C extends ComputedOptions = {}, M extends MethodOptions = {}, E extends EmitsOptions = {}, PublicProps = P, Defaults = {}, MakeDefaultsOptional extends boolean = false, Options = ComponentOptionsBase<any, any, any, any, any, any, any, any, any>> = {
  436. $: ComponentInternalInstance;
  437. $data: D;
  438. $props: MakeDefaultsOptional extends true ? Partial<Defaults> & Omit<P & PublicProps, keyof Defaults> : P & PublicProps;
  439. $attrs: Data;
  440. $refs: Data;
  441. $slots: Slots;
  442. $root: ComponentPublicInstance | null;
  443. $parent: ComponentPublicInstance | null;
  444. $emit: EmitFn<E>;
  445. $el: any;
  446. $options: Options & MergedComponentOptionsOverride;
  447. $forceUpdate: () => void;
  448. $nextTick: typeof nextTick;
  449. $watch(source: string | Function, cb: Function, options?: WatchOptions): WatchStopHandle;
  450. } & P & ShallowUnwrapRef<B> & UnwrapNestedRefs<D> & ExtractComputedReturns<C> & M & ComponentCustomProperties;
  451. declare type ComponentPublicInstanceConstructor<T extends ComponentPublicInstance<Props, RawBindings, D, C, M> = ComponentPublicInstance<any>, Props = any, RawBindings = any, D = any, C extends ComputedOptions = ComputedOptions, M extends MethodOptions = MethodOptions> = {
  452. __isFragment?: never;
  453. __isTeleport?: never;
  454. __isSuspense?: never;
  455. new (...args: any[]): T;
  456. };
  457. declare type ComponentWatchOptionItem = WatchOptionItem | WatchOptionItem[];
  458. declare type ComponentWatchOptions = Record<string, ComponentWatchOptionItem>;
  459. export { computed }
  460. export { ComputedGetter }
  461. export declare type ComputedOptions = Record<string, ComputedGetter<any> | WritableComputedOptions<any>>;
  462. export { ComputedRef }
  463. export { ComputedSetter }
  464. /**
  465. * Concrete component type matches its actual value: it's either an options
  466. * object, or a function. Use this where the code expects to work with actual
  467. * values, e.g. checking if its a function or not. This is mostly for internal
  468. * implementation code.
  469. */
  470. export declare type ConcreteComponent<Props = {}, RawBindings = any, D = any, C extends ComputedOptions = ComputedOptions, M extends MethodOptions = MethodOptions> = ComponentOptions<Props, RawBindings, D, C, M> | FunctionalComponent<Props, any>;
  471. declare function configureCompat(config: CompatConfig): void;
  472. declare interface Constructor<P = any> {
  473. __isFragment?: never;
  474. __isTeleport?: never;
  475. __isSuspense?: never;
  476. new (...args: any[]): {
  477. $props: P;
  478. };
  479. }
  480. export declare type CreateAppFunction<HostElement> = (rootComponent: Component, rootProps?: Data | null) => App<HostElement>;
  481. /**
  482. * Create a block root vnode. Takes the same exact arguments as `createVNode`.
  483. * A block root keeps track of dynamic nodes within the block in the
  484. * `dynamicChildren` array.
  485. *
  486. * @private
  487. */
  488. export declare function createBlock(type: VNodeTypes | ClassComponent, props?: Record<string, any> | null, children?: any, patchFlag?: number, dynamicProps?: string[]): VNode;
  489. /**
  490. * @private
  491. */
  492. export declare function createCommentVNode(text?: string, asBlock?: boolean): VNode;
  493. declare function createCompatVue(createApp: CreateAppFunction<Element>, createSingletonApp: CreateAppFunction<Element>): CompatVue;
  494. declare function createComponentInstance(vnode: VNode, parent: ComponentInternalInstance | null, suspense: SuspenseBoundary | null): ComponentInternalInstance;
  495. export declare type CreateComponentPublicInstance<P = {}, B = {}, D = {}, C extends ComputedOptions = {}, M extends MethodOptions = {}, Mixin extends ComponentOptionsMixin = ComponentOptionsMixin, Extends extends ComponentOptionsMixin = ComponentOptionsMixin, E extends EmitsOptions = {}, PublicProps = P, Defaults = {}, MakeDefaultsOptional extends boolean = false, PublicMixin = IntersectionMixin<Mixin> & IntersectionMixin<Extends>, PublicP = UnwrapMixinsType<PublicMixin, 'P'> & EnsureNonVoid<P>, PublicB = UnwrapMixinsType<PublicMixin, 'B'> & EnsureNonVoid<B>, PublicD = UnwrapMixinsType<PublicMixin, 'D'> & EnsureNonVoid<D>, PublicC extends ComputedOptions = UnwrapMixinsType<PublicMixin, 'C'> & EnsureNonVoid<C>, PublicM extends MethodOptions = UnwrapMixinsType<PublicMixin, 'M'> & EnsureNonVoid<M>, PublicDefaults = UnwrapMixinsType<PublicMixin, 'Defaults'> & EnsureNonVoid<Defaults>> = ComponentPublicInstance<PublicP, PublicB, PublicD, PublicC, PublicM, E, PublicProps, PublicDefaults, MakeDefaultsOptional, ComponentOptionsBase<P, B, D, C, M, Mixin, Extends, E, string, Defaults>>;
  496. /**
  497. * @private
  498. */
  499. export declare function createElementBlock(type: string | typeof Fragment, props?: Record<string, any> | null, children?: any, patchFlag?: number, dynamicProps?: string[], shapeFlag?: number): VNode<RendererNode, RendererElement, {
  500. [key: string]: any;
  501. }>;
  502. export declare function createElementVNode(type: VNodeTypes | ClassComponent | typeof NULL_DYNAMIC_COMPONENT, props?: (Data & VNodeProps) | null, children?: unknown, patchFlag?: number, dynamicProps?: string[] | null, shapeFlag?: number | ShapeFlags, isBlockNode?: boolean, needFullChildrenNormalization?: boolean): VNode<RendererNode, RendererElement, {
  503. [key: string]: any;
  504. }>;
  505. export declare function createHydrationRenderer(options: RendererOptions<Node, Element>): HydrationRenderer;
  506. /* Excluded from this release type: createPropsRestProxy */
  507. declare function createRecord(id: string, initialDef: HMRComponent): boolean;
  508. /**
  509. * The createRenderer function accepts two generic arguments:
  510. * HostNode and HostElement, corresponding to Node and Element types in the
  511. * host environment. For example, for runtime-dom, HostNode would be the DOM
  512. * `Node` interface and HostElement would be the DOM `Element` interface.
  513. *
  514. * Custom renderers can pass in the platform specific types like this:
  515. *
  516. * ``` js
  517. * const { render, createApp } = createRenderer<Node, Element>({
  518. * patchProp,
  519. * ...nodeOps
  520. * })
  521. * ```
  522. */
  523. export declare function createRenderer<HostNode = RendererNode, HostElement = RendererElement>(options: RendererOptions<HostNode, HostElement>): Renderer<HostElement>;
  524. /**
  525. * Compiler runtime helper for creating dynamic slots object
  526. * @private
  527. */
  528. export declare function createSlots(slots: Record<string, Slot>, dynamicSlots: (CompiledSlotDescriptor | CompiledSlotDescriptor[] | undefined)[]): Record<string, Slot>;
  529. /**
  530. * @private
  531. */
  532. export declare function createStaticVNode(content: string, numberOfNodes: number): VNode;
  533. declare function createSuspenseBoundary(vnode: VNode, parent: SuspenseBoundary | null, parentComponent: ComponentInternalInstance | null, container: RendererElement, hiddenContainer: RendererElement, anchor: RendererNode | null, isSVG: boolean, slotScopeIds: string[] | null, optimized: boolean, rendererInternals: RendererInternals, isHydrating?: boolean): SuspenseBoundary;
  534. /**
  535. * @private
  536. */
  537. export declare function createTextVNode(text?: string, flag?: number): VNode;
  538. export declare const createVNode: typeof _createVNode;
  539. declare function _createVNode(type: VNodeTypes | ClassComponent | typeof NULL_DYNAMIC_COMPONENT, props?: (Data & VNodeProps) | null, children?: unknown, patchFlag?: number, dynamicProps?: string[] | null, isBlockNode?: boolean): VNode;
  540. export { customRef }
  541. export { CustomRefFactory }
  542. declare type Data = Record<string, unknown>;
  543. export { DebuggerEvent }
  544. export { DebuggerEventExtraInfo }
  545. declare type DebuggerHook = (e: DebuggerEvent) => void;
  546. export { DebuggerOptions }
  547. export { DeepReadonly }
  548. declare type DefaultFactory<T> = (props: Data) => T | null | undefined;
  549. declare type DefaultKeys<T> = {
  550. [K in keyof T]: T[K] extends {
  551. default: any;
  552. } | BooleanConstructor | {
  553. type: BooleanConstructor;
  554. } ? T[K] extends {
  555. type: BooleanConstructor;
  556. required: true;
  557. } ? never : K : never;
  558. }[keyof T];
  559. export declare function defineAsyncComponent<T extends Component = {
  560. new (): ComponentPublicInstance;
  561. }>(source: AsyncComponentLoader<T> | AsyncComponentOptions<T>): T;
  562. export declare type DefineComponent<PropsOrPropOptions = {}, RawBindings = {}, D = {}, C extends ComputedOptions = ComputedOptions, M extends MethodOptions = MethodOptions, Mixin extends ComponentOptionsMixin = ComponentOptionsMixin, Extends extends ComponentOptionsMixin = ComponentOptionsMixin, E extends EmitsOptions = {}, EE extends string = string, PP = PublicProps, Props = Readonly<PropsOrPropOptions extends ComponentPropsOptions ? ExtractPropTypes<PropsOrPropOptions> : PropsOrPropOptions> & ({} extends E ? {} : EmitsToProps<E>), Defaults = ExtractDefaultPropTypes<PropsOrPropOptions>> = ComponentPublicInstanceConstructor<CreateComponentPublicInstance<Props, RawBindings, D, C, M, Mixin, Extends, E, PP & Props, Defaults, true> & Props> & ComponentOptionsBase<Props, RawBindings, D, C, M, Mixin, Extends, E, EE, Defaults> & PP;
  563. export declare function defineComponent<Props, RawBindings = object>(setup: (props: Readonly<Props>, ctx: SetupContext) => RawBindings | RenderFunction): DefineComponent<Props, RawBindings>;
  564. export declare function defineComponent<Props = {}, RawBindings = {}, D = {}, C extends ComputedOptions = {}, M extends MethodOptions = {}, Mixin extends ComponentOptionsMixin = ComponentOptionsMixin, Extends extends ComponentOptionsMixin = ComponentOptionsMixin, E extends EmitsOptions = EmitsOptions, EE extends string = string>(options: ComponentOptionsWithoutProps<Props, RawBindings, D, C, M, Mixin, Extends, E, EE>): DefineComponent<Props, RawBindings, D, C, M, Mixin, Extends, E, EE>;
  565. export declare function defineComponent<PropNames extends string, RawBindings, D, C extends ComputedOptions = {}, M extends MethodOptions = {}, Mixin extends ComponentOptionsMixin = ComponentOptionsMixin, Extends extends ComponentOptionsMixin = ComponentOptionsMixin, E extends EmitsOptions = Record<string, any>, EE extends string = string>(options: ComponentOptionsWithArrayProps<PropNames, RawBindings, D, C, M, Mixin, Extends, E, EE>): DefineComponent<Readonly<{
  566. [key in PropNames]?: any;
  567. }>, RawBindings, D, C, M, Mixin, Extends, E, EE>;
  568. export declare function defineComponent<PropsOptions extends Readonly<ComponentPropsOptions>, RawBindings, D, C extends ComputedOptions = {}, M extends MethodOptions = {}, Mixin extends ComponentOptionsMixin = ComponentOptionsMixin, Extends extends ComponentOptionsMixin = ComponentOptionsMixin, E extends EmitsOptions = Record<string, any>, EE extends string = string>(options: ComponentOptionsWithObjectProps<PropsOptions, RawBindings, D, C, M, Mixin, Extends, E, EE>): DefineComponent<PropsOptions, RawBindings, D, C, M, Mixin, Extends, E, EE>;
  569. /**
  570. * Vue `<script setup>` compiler macro for declaring a component's emitted
  571. * events. The expected argument is the same as the component `emits` option.
  572. *
  573. * Example runtime declaration:
  574. * ```js
  575. * const emit = defineEmits(['change', 'update'])
  576. * ```
  577. *
  578. * Example type-based declaration:
  579. * ```ts
  580. * const emit = defineEmits<{
  581. * (event: 'change'): void
  582. * (event: 'update', id: number): void
  583. * }>()
  584. *
  585. * emit('change')
  586. * emit('update', 1)
  587. * ```
  588. *
  589. * This is only usable inside `<script setup>`, is compiled away in the
  590. * output and should **not** be actually called at runtime.
  591. */
  592. export declare function defineEmits<EE extends string = string>(emitOptions: EE[]): EmitFn<EE[]>;
  593. export declare function defineEmits<E extends EmitsOptions = EmitsOptions>(emitOptions: E): EmitFn<E>;
  594. export declare function defineEmits<TypeEmit>(): TypeEmit;
  595. /**
  596. * Vue `<script setup>` compiler macro for declaring a component's exposed
  597. * instance properties when it is accessed by a parent component via template
  598. * refs.
  599. *
  600. * `<script setup>` components are closed by default - i.e. varaibles inside
  601. * the `<script setup>` scope is not exposed to parent unless explicitly exposed
  602. * via `defineExpose`.
  603. *
  604. * This is only usable inside `<script setup>`, is compiled away in the
  605. * output and should **not** be actually called at runtime.
  606. */
  607. export declare function defineExpose<Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed): void;
  608. /**
  609. * Vue `<script setup>` compiler macro for declaring component props. The
  610. * expected argument is the same as the component `props` option.
  611. *
  612. * Example runtime declaration:
  613. * ```js
  614. * // using Array syntax
  615. * const props = defineProps(['foo', 'bar'])
  616. * // using Object syntax
  617. * const props = defineProps({
  618. * foo: String,
  619. * bar: {
  620. * type: Number,
  621. * required: true
  622. * }
  623. * })
  624. * ```
  625. *
  626. * Equivalent type-based declaration:
  627. * ```ts
  628. * // will be compiled into equivalent runtime declarations
  629. * const props = defineProps<{
  630. * foo?: string
  631. * bar: number
  632. * }>()
  633. * ```
  634. *
  635. * This is only usable inside `<script setup>`, is compiled away in the
  636. * output and should **not** be actually called at runtime.
  637. */
  638. export declare function defineProps<PropNames extends string = string>(props: PropNames[]): Readonly<{
  639. [key in PropNames]?: any;
  640. }>;
  641. export declare function defineProps<PP extends ComponentObjectPropsOptions = ComponentObjectPropsOptions>(props: PP): Readonly<ExtractPropTypes<PP>>;
  642. export declare function defineProps<TypeProps>(): Readonly<TypeProps>;
  643. export declare const enum DeprecationTypes {
  644. GLOBAL_MOUNT = "GLOBAL_MOUNT",
  645. GLOBAL_MOUNT_CONTAINER = "GLOBAL_MOUNT_CONTAINER",
  646. GLOBAL_EXTEND = "GLOBAL_EXTEND",
  647. GLOBAL_PROTOTYPE = "GLOBAL_PROTOTYPE",
  648. GLOBAL_SET = "GLOBAL_SET",
  649. GLOBAL_DELETE = "GLOBAL_DELETE",
  650. GLOBAL_OBSERVABLE = "GLOBAL_OBSERVABLE",
  651. GLOBAL_PRIVATE_UTIL = "GLOBAL_PRIVATE_UTIL",
  652. CONFIG_SILENT = "CONFIG_SILENT",
  653. CONFIG_DEVTOOLS = "CONFIG_DEVTOOLS",
  654. CONFIG_KEY_CODES = "CONFIG_KEY_CODES",
  655. CONFIG_PRODUCTION_TIP = "CONFIG_PRODUCTION_TIP",
  656. CONFIG_IGNORED_ELEMENTS = "CONFIG_IGNORED_ELEMENTS",
  657. CONFIG_WHITESPACE = "CONFIG_WHITESPACE",
  658. CONFIG_OPTION_MERGE_STRATS = "CONFIG_OPTION_MERGE_STRATS",
  659. INSTANCE_SET = "INSTANCE_SET",
  660. INSTANCE_DELETE = "INSTANCE_DELETE",
  661. INSTANCE_DESTROY = "INSTANCE_DESTROY",
  662. INSTANCE_EVENT_EMITTER = "INSTANCE_EVENT_EMITTER",
  663. INSTANCE_EVENT_HOOKS = "INSTANCE_EVENT_HOOKS",
  664. INSTANCE_CHILDREN = "INSTANCE_CHILDREN",
  665. INSTANCE_LISTENERS = "INSTANCE_LISTENERS",
  666. INSTANCE_SCOPED_SLOTS = "INSTANCE_SCOPED_SLOTS",
  667. INSTANCE_ATTRS_CLASS_STYLE = "INSTANCE_ATTRS_CLASS_STYLE",
  668. OPTIONS_DATA_FN = "OPTIONS_DATA_FN",
  669. OPTIONS_DATA_MERGE = "OPTIONS_DATA_MERGE",
  670. OPTIONS_BEFORE_DESTROY = "OPTIONS_BEFORE_DESTROY",
  671. OPTIONS_DESTROYED = "OPTIONS_DESTROYED",
  672. WATCH_ARRAY = "WATCH_ARRAY",
  673. PROPS_DEFAULT_THIS = "PROPS_DEFAULT_THIS",
  674. V_ON_KEYCODE_MODIFIER = "V_ON_KEYCODE_MODIFIER",
  675. CUSTOM_DIR = "CUSTOM_DIR",
  676. ATTR_FALSE_VALUE = "ATTR_FALSE_VALUE",
  677. ATTR_ENUMERATED_COERCION = "ATTR_ENUMERATED_COERCION",
  678. TRANSITION_CLASSES = "TRANSITION_CLASSES",
  679. TRANSITION_GROUP_ROOT = "TRANSITION_GROUP_ROOT",
  680. COMPONENT_ASYNC = "COMPONENT_ASYNC",
  681. COMPONENT_FUNCTIONAL = "COMPONENT_FUNCTIONAL",
  682. COMPONENT_V_MODEL = "COMPONENT_V_MODEL",
  683. RENDER_FUNCTION = "RENDER_FUNCTION",
  684. FILTERS = "FILTERS",
  685. PRIVATE_APIS = "PRIVATE_APIS"
  686. }
  687. export declare let devtools: DevtoolsHook;
  688. declare interface DevtoolsHook {
  689. enabled?: boolean;
  690. emit: (event: string, ...payload: any[]) => void;
  691. on: (event: string, handler: Function) => void;
  692. once: (event: string, handler: Function) => void;
  693. off: (event: string, handler: Function) => void;
  694. appRecords: AppRecord[];
  695. }
  696. export declare type Directive<T = any, V = any> = ObjectDirective<T, V> | FunctionDirective<T, V>;
  697. export declare type DirectiveArguments = Array<[Directive] | [Directive, any] | [Directive, any, string] | [Directive, any, string, DirectiveModifiers]>;
  698. export declare interface DirectiveBinding<V = any> {
  699. instance: ComponentPublicInstance | null;
  700. value: V;
  701. oldValue: V | null;
  702. arg?: string;
  703. modifiers: DirectiveModifiers;
  704. dir: ObjectDirective<any, V>;
  705. }
  706. export declare type DirectiveHook<T = any, Prev = VNode<any, T> | null, V = any> = (el: T, binding: DirectiveBinding<V>, vnode: VNode<any, T>, prevVNode: Prev) => void;
  707. declare type DirectiveModifiers = Record<string, boolean>;
  708. export { effect }
  709. export { EffectScheduler }
  710. export { EffectScope }
  711. export { effectScope }
  712. declare type EmitFn<Options = ObjectEmitsOptions, Event extends keyof Options = keyof Options> = Options extends Array<infer V> ? (event: V, ...args: any[]) => void : {} extends Options ? (event: string, ...args: any[]) => void : UnionToIntersection<{
  713. [key in Event]: Options[key] extends (...args: infer Args) => any ? (event: key, ...args: Args) => void : (event: key, ...args: any[]) => void;
  714. }[Event]>;
  715. export declare type EmitsOptions = ObjectEmitsOptions | string[];
  716. declare type EmitsToProps<T extends EmitsOptions> = T extends string[] ? {
  717. [K in string & `on${Capitalize<T[number]>}`]?: (...args: any[]) => any;
  718. } : T extends ObjectEmitsOptions ? {
  719. [K in string & `on${Capitalize<string & keyof T>}`]?: K extends `on${infer C}` ? T[Uncapitalize<C>] extends null ? (...args: any[]) => any : (...args: T[Uncapitalize<C>] extends (...args: infer P) => any ? P : never) => any : never;
  720. } : {};
  721. declare type EnsureNonVoid<T> = T extends void ? {} : T;
  722. declare type ErrorCapturedHook<TError = unknown> = (err: TError, instance: ComponentPublicInstance | null, info: string) => boolean | void;
  723. export declare const enum ErrorCodes {
  724. SETUP_FUNCTION = 0,
  725. RENDER_FUNCTION = 1,
  726. WATCH_GETTER = 2,
  727. WATCH_CALLBACK = 3,
  728. WATCH_CLEANUP = 4,
  729. NATIVE_EVENT_HANDLER = 5,
  730. COMPONENT_EVENT_HANDLER = 6,
  731. VNODE_HOOK = 7,
  732. DIRECTIVE_HOOK = 8,
  733. TRANSITION_HOOK = 9,
  734. APP_ERROR_HANDLER = 10,
  735. APP_WARN_HANDLER = 11,
  736. FUNCTION_REF = 12,
  737. ASYNC_COMPONENT_LOADER = 13,
  738. SCHEDULER = 14
  739. }
  740. declare type ErrorTypes = LifecycleHooks | ErrorCodes;
  741. declare type ExtractComputedReturns<T extends any> = {
  742. [key in keyof T]: T[key] extends {
  743. get: (...args: any[]) => infer TReturn;
  744. } ? TReturn : T[key] extends (...args: any[]) => infer TReturn ? TReturn : never;
  745. };
  746. export declare type ExtractDefaultPropTypes<O> = O extends object ? {
  747. [K in DefaultKeys<O>]: InferPropType<O[K]>;
  748. } : {};
  749. declare type ExtractMixin<T> = {
  750. Mixin: MixinToOptionTypes<T>;
  751. }[T extends ComponentOptionsMixin ? 'Mixin' : never];
  752. declare type ExtractOptionProp<T> = T extends ComponentOptionsBase<infer P, // Props
  753. any, // RawBindings
  754. any, // D
  755. any, // C
  756. any, // M
  757. any, // Mixin
  758. any, // Extends
  759. any> ? unknown extends P ? {} : P : {};
  760. export declare type ExtractPropTypes<O> = O extends object ? {
  761. [K in keyof O]?: unknown;
  762. } & // This is needed to keep the relation between the option prop and the props, allowing to use ctrl+click to navigate to the prop options. see: #3656
  763. {
  764. [K in RequiredKeys<O>]: InferPropType<O[K]>;
  765. } & {
  766. [K in OptionalKeys<O>]?: InferPropType<O[K]>;
  767. } : {
  768. [K in string]: any;
  769. };
  770. export declare const Fragment: {
  771. new (): {
  772. $props: VNodeProps;
  773. };
  774. __isFragment: true;
  775. };
  776. export declare interface FunctionalComponent<P = {}, E extends EmitsOptions = {}> extends ComponentInternalOptions {
  777. (props: P, ctx: Omit<SetupContext<E>, 'expose'>): any;
  778. props?: ComponentPropsOptions<P>;
  779. emits?: E | (keyof E)[];
  780. inheritAttrs?: boolean;
  781. displayName?: string;
  782. compatConfig?: CompatConfig;
  783. }
  784. export declare type FunctionDirective<T = any, V = any> = DirectiveHook<T, any, V>;
  785. export declare const getCurrentInstance: () => ComponentInternalInstance | null;
  786. export { getCurrentScope }
  787. export declare function getTransitionRawChildren(children: VNode[], keepComment?: boolean): VNode[];
  788. export declare function guardReactiveProps(props: (Data & VNodeProps) | null): (Data & VNodeProps) | null;
  789. export declare function h(type: string, children?: RawChildren): VNode;
  790. export declare function h(type: string, props?: RawProps | null, children?: RawChildren | RawSlots): VNode;
  791. export declare function h(type: typeof Text_2 | typeof Comment_2, children?: string | number | boolean): VNode;
  792. export declare function h(type: typeof Text_2 | typeof Comment_2, props?: null, children?: string | number | boolean): VNode;
  793. export declare function h(type: typeof Fragment, children?: VNodeArrayChildren): VNode;
  794. export declare function h(type: typeof Fragment, props?: RawProps | null, children?: VNodeArrayChildren): VNode;
  795. export declare function h(type: typeof Teleport, props: RawProps & TeleportProps, children: RawChildren): VNode;
  796. export declare function h(type: typeof Suspense, children?: RawChildren): VNode;
  797. export declare function h(type: typeof Suspense, props?: (RawProps & SuspenseProps) | null, children?: RawChildren | RawSlots): VNode;
  798. export declare function h<P, E extends EmitsOptions = {}>(type: FunctionalComponent<P, E>, props?: (RawProps & P) | ({} extends P ? null : never), children?: RawChildren | RawSlots): VNode;
  799. export declare function h(type: Component, children?: RawChildren): VNode;
  800. export declare function h<P>(type: ConcreteComponent | string, children?: RawChildren): VNode;
  801. export declare function h<P>(type: ConcreteComponent<P> | string, props?: (RawProps & P) | ({} extends P ? null : never), children?: RawChildren): VNode;
  802. export declare function h(type: Component, props: null, children?: RawChildren | RawSlots): VNode;
  803. export declare function h<P>(type: ComponentOptions<P>, props?: (RawProps & P) | ({} extends P ? null : never), children?: RawChildren | RawSlots): VNode;
  804. export declare function h(type: Constructor, children?: RawChildren): VNode;
  805. export declare function h<P>(type: Constructor<P>, props?: (RawProps & P) | ({} extends P ? null : never), children?: RawChildren | RawSlots): VNode;
  806. export declare function h(type: DefineComponent, children?: RawChildren): VNode;
  807. export declare function h<P>(type: DefineComponent<P>, props?: (RawProps & P) | ({} extends P ? null : never), children?: RawChildren | RawSlots): VNode;
  808. export declare function handleError(err: unknown, instance: ComponentInternalInstance | null, type: ErrorTypes, throwInDev?: boolean): void;
  809. declare type HMRComponent = ComponentOptions | ClassComponent;
  810. export declare interface HMRRuntime {
  811. createRecord: typeof createRecord;
  812. rerender: typeof rerender;
  813. reload: typeof reload;
  814. }
  815. declare function hydrateSuspense(node: Node, vnode: VNode, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, isSVG: boolean, slotScopeIds: string[] | null, optimized: boolean, rendererInternals: RendererInternals, hydrateNode: (node: Node, vnode: VNode, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, slotScopeIds: string[] | null, optimized: boolean) => Node | null): Node | null;
  816. declare function hydrateTeleport(node: Node, vnode: TeleportVNode, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, slotScopeIds: string[] | null, optimized: boolean, { o: { nextSibling, parentNode, querySelector } }: RendererInternals<Node, Element>, hydrateChildren: (node: Node | null, vnode: VNode, container: Element, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, slotScopeIds: string[] | null, optimized: boolean) => Node | null): Node | null;
  817. export declare interface HydrationRenderer extends Renderer<Element | ShadowRoot> {
  818. hydrate: RootHydrateFunction;
  819. }
  820. declare type IfAny<T, Y, N> = 0 extends (1 & T) ? Y : N;
  821. declare type InferDefault<P, T> = T extends null | number | string | boolean | symbol | Function ? T : (props: P) => T;
  822. declare type InferDefaults<T> = {
  823. [K in keyof T]?: InferDefault<T, NotUndefined<T[K]>>;
  824. };
  825. declare type InferPropType<T> = [T] extends [null] ? any : [T] extends [{
  826. type: null | true;
  827. }] ? any : [T] extends [ObjectConstructor | {
  828. type: ObjectConstructor;
  829. }] ? Record<string, any> : [T] extends [BooleanConstructor | {
  830. type: BooleanConstructor;
  831. }] ? boolean : [T] extends [DateConstructor | {
  832. type: DateConstructor;
  833. }] ? Date : [T] extends [(infer U)[] | {
  834. type: (infer U)[];
  835. }] ? U extends DateConstructor ? Date | InferPropType<U> : InferPropType<U> : [T] extends [Prop<infer V, infer D>] ? unknown extends V ? IfAny<V, V, D> : V : T;
  836. export declare function initCustomFormatter(): void;
  837. export declare function inject<T>(key: InjectionKey<T> | string): T | undefined;
  838. export declare function inject<T>(key: InjectionKey<T> | string, defaultValue: T, treatDefaultAsFactory?: false): T;
  839. export declare function inject<T>(key: InjectionKey<T> | string, defaultValue: T | (() => T), treatDefaultAsFactory: true): T;
  840. export declare interface InjectionKey<T> extends Symbol {
  841. }
  842. /* Excluded from this release type: InternalRenderFunction */
  843. declare type InternalSlots = {
  844. [name: string]: Slot | undefined;
  845. };
  846. declare type IntersectionMixin<T> = IsDefaultMixinComponent<T> extends true ? OptionTypesType<{}, {}, {}, {}, {}> : UnionToIntersection<ExtractMixin<T>>;
  847. declare type InvalidateCbRegistrator = (cb: () => void) => void;
  848. declare function isCompatEnabled(key: DeprecationTypes, instance: ComponentInternalInstance | null, enableForBuiltIn?: boolean): boolean;
  849. declare type IsDefaultMixinComponent<T> = T extends ComponentOptionsMixin ? ComponentOptionsMixin extends T ? true : false : false;
  850. export declare function isMemoSame(cached: VNode, memo: any[]): boolean;
  851. export { isProxy }
  852. export { isReactive }
  853. export { isReadonly }
  854. export { isRef }
  855. export declare const isRuntimeOnly: () => boolean;
  856. export declare function isVNode(value: any): value is VNode;
  857. export declare const KeepAlive: {
  858. new (): {
  859. $props: VNodeProps & KeepAliveProps;
  860. };
  861. __isKeepAlive: true;
  862. };
  863. export declare interface KeepAliveProps {
  864. include?: MatchPattern;
  865. exclude?: MatchPattern;
  866. max?: number | string;
  867. }
  868. export declare type LegacyConfig = {
  869. /**
  870. * @deprecated `config.silent` option has been removed
  871. */
  872. silent?: boolean;
  873. /**
  874. * @deprecated use __VUE_PROD_DEVTOOLS__ compile-time feature flag instead
  875. * https://github.com/vuejs/vue-next/tree/master/packages/vue#bundler-build-feature-flags
  876. */
  877. devtools?: boolean;
  878. /**
  879. * @deprecated use `config.isCustomElement` instead
  880. * https://v3.vuejs.org/guide/migration/global-api.html#config-ignoredelements-is-now-config-iscustomelement
  881. */
  882. ignoredElements?: (string | RegExp)[];
  883. /**
  884. * @deprecated
  885. * https://v3.vuejs.org/guide/migration/keycode-modifiers.html
  886. */
  887. keyCodes?: Record<string, number | number[]>;
  888. /**
  889. * @deprecated
  890. * https://v3.vuejs.org/guide/migration/global-api.html#config-productiontip-removed
  891. */
  892. productionTip?: boolean;
  893. };
  894. declare interface LegacyOptions<Props, D, C extends ComputedOptions, M extends MethodOptions, Mixin extends ComponentOptionsMixin, Extends extends ComponentOptionsMixin> {
  895. compatConfig?: CompatConfig;
  896. [key: string]: any;
  897. data?: (this: CreateComponentPublicInstance<Props, {}, {}, {}, MethodOptions, Mixin, Extends>, vm: CreateComponentPublicInstance<Props, {}, {}, {}, MethodOptions, Mixin, Extends>) => D;
  898. computed?: C;
  899. methods?: M;
  900. watch?: ComponentWatchOptions;
  901. provide?: Data | Function;
  902. inject?: ComponentInjectOptions;
  903. filters?: Record<string, Function>;
  904. mixins?: Mixin[];
  905. extends?: Extends;
  906. beforeCreate?(): void;
  907. created?(): void;
  908. beforeMount?(): void;
  909. mounted?(): void;
  910. beforeUpdate?(): void;
  911. updated?(): void;
  912. activated?(): void;
  913. deactivated?(): void;
  914. /** @deprecated use `beforeUnmount` instead */
  915. beforeDestroy?(): void;
  916. beforeUnmount?(): void;
  917. /** @deprecated use `unmounted` instead */
  918. destroyed?(): void;
  919. unmounted?(): void;
  920. renderTracked?: DebuggerHook;
  921. renderTriggered?: DebuggerHook;
  922. errorCaptured?: ErrorCapturedHook;
  923. /**
  924. * runtime compile only
  925. * @deprecated use `compilerOptions.delimiters` instead.
  926. */
  927. delimiters?: [string, string];
  928. /**
  929. * #3468
  930. *
  931. * type-only, used to assist Mixin's type inference,
  932. * typescript will try to simplify the inferred `Mixin` type,
  933. * with the `__differenciator`, typescript won't be able to combine different mixins,
  934. * because the `__differenciator` will be different
  935. */
  936. __differentiator?: keyof D | keyof C | keyof M;
  937. }
  938. declare type LegacyPublicInstance = ComponentPublicInstance & LegacyPublicProperties;
  939. declare interface LegacyPublicProperties {
  940. $set(target: object, key: string, value: any): void;
  941. $delete(target: object, key: string): void;
  942. $mount(el?: string | Element): this;
  943. $destroy(): void;
  944. $scopedSlots: Slots;
  945. $on(event: string | string[], fn: Function): this;
  946. $once(event: string, fn: Function): this;
  947. $off(event?: string | string[], fn?: Function): this;
  948. $children: LegacyPublicProperties[];
  949. $listeners: Record<string, Function | Function[]>;
  950. }
  951. declare type LifecycleHook<TFn = Function> = TFn[] | null;
  952. declare const enum LifecycleHooks {
  953. BEFORE_CREATE = "bc",
  954. CREATED = "c",
  955. BEFORE_MOUNT = "bm",
  956. MOUNTED = "m",
  957. BEFORE_UPDATE = "bu",
  958. UPDATED = "u",
  959. BEFORE_UNMOUNT = "bum",
  960. UNMOUNTED = "um",
  961. DEACTIVATED = "da",
  962. ACTIVATED = "a",
  963. RENDER_TRIGGERED = "rtg",
  964. RENDER_TRACKED = "rtc",
  965. ERROR_CAPTURED = "ec",
  966. SERVER_PREFETCH = "sp"
  967. }
  968. declare type LooseRequired<T> = {
  969. [P in string & keyof T]: T[P];
  970. };
  971. declare type MapSources<T, Immediate> = {
  972. [K in keyof T]: T[K] extends WatchSource<infer V> ? Immediate extends true ? V | undefined : V : T[K] extends object ? Immediate extends true ? T[K] | undefined : T[K] : never;
  973. };
  974. export { markRaw }
  975. declare type MatchPattern = string | RegExp | string[] | RegExp[];
  976. declare type MergedComponentOptions = ComponentOptions & MergedComponentOptionsOverride;
  977. declare type MergedComponentOptionsOverride = {
  978. beforeCreate?: MergedHook;
  979. created?: MergedHook;
  980. beforeMount?: MergedHook;
  981. mounted?: MergedHook;
  982. beforeUpdate?: MergedHook;
  983. updated?: MergedHook;
  984. activated?: MergedHook;
  985. deactivated?: MergedHook;
  986. /** @deprecated use `beforeUnmount` instead */
  987. beforeDestroy?: MergedHook;
  988. beforeUnmount?: MergedHook;
  989. /** @deprecated use `unmounted` instead */
  990. destroyed?: MergedHook;
  991. unmounted?: MergedHook;
  992. renderTracked?: MergedHook<DebuggerHook>;
  993. renderTriggered?: MergedHook<DebuggerHook>;
  994. errorCaptured?: MergedHook<ErrorCapturedHook>;
  995. };
  996. /* Excluded from this release type: mergeDefaults */
  997. declare type MergedHook<T = () => void> = T | T[];
  998. export declare function mergeProps(...args: (Data & VNodeProps)[]): Data;
  999. export declare interface MethodOptions {
  1000. [key: string]: Function;
  1001. }
  1002. declare type MixinToOptionTypes<T> = T extends ComponentOptionsBase<infer P, infer B, infer D, infer C, infer M, infer Mixin, infer Extends, any, any, infer Defaults> ? OptionTypesType<P & {}, B & {}, D & {}, C & {}, M & {}, Defaults & {}> & IntersectionMixin<Mixin> & IntersectionMixin<Extends> : never;
  1003. declare type MountChildrenFn = (children: VNodeArrayChildren, container: RendererElement, anchor: RendererNode | null, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, isSVG: boolean, slotScopeIds: string[] | null, optimized: boolean, start?: number) => void;
  1004. declare type MountComponentFn = (initialVNode: VNode, container: RendererElement, anchor: RendererNode | null, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, isSVG: boolean, optimized: boolean) => void;
  1005. declare type MoveFn = (vnode: VNode, container: RendererElement, anchor: RendererNode | null, type: MoveType, parentSuspense?: SuspenseBoundary | null) => void;
  1006. declare function moveTeleport(vnode: VNode, container: RendererElement, parentAnchor: RendererNode | null, { o: { insert }, m: move }: RendererInternals, moveType?: TeleportMoveTypes): void;
  1007. declare const enum MoveType {
  1008. ENTER = 0,
  1009. LEAVE = 1,
  1010. REORDER = 2
  1011. }
  1012. declare type MultiWatchSources = (WatchSource<unknown> | object)[];
  1013. declare type NextFn = (vnode: VNode) => RendererNode | null;
  1014. export declare function nextTick<T = void>(this: T, fn?: (this: T) => void): Promise<void>;
  1015. export { normalizeClass }
  1016. declare type NormalizedProp = null | (PropOptions & {
  1017. [BooleanFlags.shouldCast]?: boolean;
  1018. [BooleanFlags.shouldCastTrue]?: boolean;
  1019. });
  1020. declare type NormalizedProps = Record<string, NormalizedProp>;
  1021. declare type NormalizedPropsOptions = [NormalizedProps, string[]] | [];
  1022. export { normalizeProps }
  1023. export { normalizeStyle }
  1024. declare function normalizeSuspenseChildren(vnode: VNode): void;
  1025. declare function normalizeVNode(child: VNodeChild): VNode;
  1026. declare type NotUndefined<T> = T extends undefined ? never : T;
  1027. declare const NULL_DYNAMIC_COMPONENT: unique symbol;
  1028. export declare interface ObjectDirective<T = any, V = any> {
  1029. created?: DirectiveHook<T, null, V>;
  1030. beforeMount?: DirectiveHook<T, null, V>;
  1031. mounted?: DirectiveHook<T, null, V>;
  1032. beforeUpdate?: DirectiveHook<T, VNode<any, T>, V>;
  1033. updated?: DirectiveHook<T, VNode<any, T>, V>;
  1034. beforeUnmount?: DirectiveHook<T, null, V>;
  1035. unmounted?: DirectiveHook<T, null, V>;
  1036. getSSRProps?: SSRDirectiveHook;
  1037. deep?: boolean;
  1038. }
  1039. export declare type ObjectEmitsOptions = Record<string, ((...args: any[]) => any) | null>;
  1040. declare type ObjectInjectOptions = Record<string | symbol, string | symbol | {
  1041. from?: string | symbol;
  1042. default?: unknown;
  1043. }>;
  1044. declare type ObjectWatchOptionItem = {
  1045. handler: WatchCallback | string;
  1046. } & WatchOptions;
  1047. export declare function onActivated(hook: Function, target?: ComponentInternalInstance | null): void;
  1048. export declare const onBeforeMount: (hook: () => any, target?: ComponentInternalInstance | null) => false | Function | undefined;
  1049. export declare const onBeforeUnmount: (hook: () => any, target?: ComponentInternalInstance | null) => false | Function | undefined;
  1050. export declare const onBeforeUpdate: (hook: () => any, target?: ComponentInternalInstance | null) => false | Function | undefined;
  1051. export declare function onDeactivated(hook: Function, target?: ComponentInternalInstance | null): void;
  1052. export declare function onErrorCaptured<TError = Error>(hook: ErrorCapturedHook<TError>, target?: ComponentInternalInstance | null): void;
  1053. export declare const onMounted: (hook: () => any, target?: ComponentInternalInstance | null) => false | Function | undefined;
  1054. export declare const onRenderTracked: (hook: DebuggerHook, target?: ComponentInternalInstance | null) => false | Function | undefined;
  1055. export declare const onRenderTriggered: (hook: DebuggerHook, target?: ComponentInternalInstance | null) => false | Function | undefined;
  1056. export { onScopeDispose }
  1057. export declare const onServerPrefetch: (hook: () => any, target?: ComponentInternalInstance | null) => false | Function | undefined;
  1058. export declare const onUnmounted: (hook: () => any, target?: ComponentInternalInstance | null) => false | Function | undefined;
  1059. export declare const onUpdated: (hook: () => any, target?: ComponentInternalInstance | null) => false | Function | undefined;
  1060. /**
  1061. * Open a block.
  1062. * This must be called before `createBlock`. It cannot be part of `createBlock`
  1063. * because the children of the block are evaluated before `createBlock` itself
  1064. * is called. The generated code typically looks like this:
  1065. *
  1066. * ```js
  1067. * function render() {
  1068. * return (openBlock(),createBlock('div', null, [...]))
  1069. * }
  1070. * ```
  1071. * disableTracking is true when creating a v-for fragment block, since a v-for
  1072. * fragment always diffs its children.
  1073. *
  1074. * @private
  1075. */
  1076. export declare function openBlock(disableTracking?: boolean): void;
  1077. declare type OptionalKeys<T> = Exclude<keyof T, RequiredKeys<T>>;
  1078. export declare type OptionMergeFunction = (to: unknown, from: unknown) => any;
  1079. declare type OptionTypesKeys = 'P' | 'B' | 'D' | 'C' | 'M' | 'Defaults';
  1080. declare type OptionTypesType<P = {}, B = {}, D = {}, C extends ComputedOptions = {}, M extends MethodOptions = {}, Defaults = {}> = {
  1081. P: P;
  1082. B: B;
  1083. D: D;
  1084. C: C;
  1085. M: M;
  1086. Defaults: Defaults;
  1087. };
  1088. declare type PatchBlockChildrenFn = (oldChildren: VNode[], newChildren: VNode[], fallbackContainer: RendererElement, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, isSVG: boolean, slotScopeIds: string[] | null) => void;
  1089. declare type PatchChildrenFn = (n1: VNode | null, n2: VNode, container: RendererElement, anchor: RendererNode | null, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, isSVG: boolean, slotScopeIds: string[] | null, optimized: boolean) => void;
  1090. declare type PatchFn = (n1: VNode | null, // null means this is a mount
  1091. n2: VNode, container: RendererElement, anchor?: RendererNode | null, parentComponent?: ComponentInternalInstance | null, parentSuspense?: SuspenseBoundary | null, isSVG?: boolean, slotScopeIds?: string[] | null, optimized?: boolean) => void;
  1092. declare type Plugin_2 = (PluginInstallFunction & {
  1093. install?: PluginInstallFunction;
  1094. }) | {
  1095. install: PluginInstallFunction;
  1096. };
  1097. export { Plugin_2 as Plugin }
  1098. declare type PluginInstallFunction = (app: App, ...options: any[]) => any;
  1099. /**
  1100. * Technically we no longer need this after 3.0.8 but we need to keep the same
  1101. * API for backwards compat w/ code generated by compilers.
  1102. * @private
  1103. */
  1104. export declare function popScopeId(): void;
  1105. export declare type Prop<T, D = T> = PropOptions<T, D> | PropType<T>;
  1106. declare type PropConstructor<T = any> = {
  1107. new (...args: any[]): T & {};
  1108. } | {
  1109. (): T;
  1110. } | PropMethod<T>;
  1111. declare type PropMethod<T, TConstructor = any> = [T] extends [
  1112. ((...args: any) => any) | undefined
  1113. ] ? {
  1114. new (): TConstructor;
  1115. (): T;
  1116. readonly prototype: TConstructor;
  1117. } : never;
  1118. declare interface PropOptions<T = any, D = T> {
  1119. type?: PropType<T> | true | null;
  1120. required?: boolean;
  1121. default?: D | DefaultFactory<D> | null | undefined | object;
  1122. validator?(value: unknown): boolean;
  1123. }
  1124. declare type PropsWithDefaults<Base, Defaults> = Base & {
  1125. [K in keyof Defaults]: K extends keyof Base ? NotUndefined<Base[K]> : never;
  1126. };
  1127. export declare type PropType<T> = PropConstructor<T> | PropConstructor<T>[];
  1128. export declare function provide<T>(key: InjectionKey<T> | string | number, value: T): void;
  1129. export { proxyRefs }
  1130. declare type PublicProps = VNodeProps & AllowedComponentProps & ComponentCustomProps;
  1131. /**
  1132. * Set scope id when creating hoisted vnodes.
  1133. * @private compiler helper
  1134. */
  1135. export declare function pushScopeId(id: string | null): void;
  1136. export declare function queuePostFlushCb(cb: SchedulerJobs): void;
  1137. declare type RawChildren = string | number | boolean | VNode | VNodeArrayChildren | (() => any);
  1138. declare type RawProps = VNodeProps & {
  1139. __v_isVNode?: never;
  1140. [Symbol.iterator]?: never;
  1141. } & Record<string, any>;
  1142. declare type RawSlots = {
  1143. [name: string]: unknown;
  1144. $stable?: boolean;
  1145. /* Excluded from this release type: _ctx */
  1146. /* Excluded from this release type: _ */
  1147. };
  1148. export { reactive }
  1149. export { ReactiveEffect }
  1150. export { ReactiveEffectOptions }
  1151. export { ReactiveEffectRunner }
  1152. export { ReactiveFlags }
  1153. export { readonly }
  1154. export { Ref }
  1155. export { ref }
  1156. /**
  1157. * For runtime-dom to register the compiler.
  1158. * Note the exported method uses any to avoid d.ts relying on the compiler types.
  1159. */
  1160. export declare function registerRuntimeCompiler(_compile: any): void;
  1161. declare function reload(id: string, newComp: HMRComponent): void;
  1162. declare type RemoveFn = (vnode: VNode) => void;
  1163. declare function renderComponentRoot(instance: ComponentInternalInstance): VNode;
  1164. export declare interface Renderer<HostElement = RendererElement> {
  1165. render: RootRenderFunction<HostElement>;
  1166. createApp: CreateAppFunction<HostElement>;
  1167. }
  1168. export declare interface RendererElement extends RendererNode {
  1169. }
  1170. declare interface RendererInternals<HostNode = RendererNode, HostElement = RendererElement> {
  1171. p: PatchFn;
  1172. um: UnmountFn;
  1173. r: RemoveFn;
  1174. m: MoveFn;
  1175. mt: MountComponentFn;
  1176. mc: MountChildrenFn;
  1177. pc: PatchChildrenFn;
  1178. pbc: PatchBlockChildrenFn;
  1179. n: NextFn;
  1180. o: RendererOptions<HostNode, HostElement>;
  1181. }
  1182. export declare interface RendererNode {
  1183. [key: string]: any;
  1184. }
  1185. export declare interface RendererOptions<HostNode = RendererNode, HostElement = RendererElement> {
  1186. patchProp(el: HostElement, key: string, prevValue: any, nextValue: any, isSVG?: boolean, prevChildren?: VNode<HostNode, HostElement>[], parentComponent?: ComponentInternalInstance | null, parentSuspense?: SuspenseBoundary | null, unmountChildren?: UnmountChildrenFn): void;
  1187. insert(el: HostNode, parent: HostElement, anchor?: HostNode | null): void;
  1188. remove(el: HostNode): void;
  1189. createElement(type: string, isSVG?: boolean, isCustomizedBuiltIn?: string, vnodeProps?: (VNodeProps & {
  1190. [key: string]: any;
  1191. }) | null): HostElement;
  1192. createText(text: string): HostNode;
  1193. createComment(text: string): HostNode;
  1194. setText(node: HostNode, text: string): void;
  1195. setElementText(node: HostElement, text: string): void;
  1196. parentNode(node: HostNode): HostElement | null;
  1197. nextSibling(node: HostNode): HostNode | null;
  1198. querySelector?(selector: string): HostElement | null;
  1199. setScopeId?(el: HostElement, id: string): void;
  1200. cloneNode?(node: HostNode): HostNode;
  1201. insertStaticContent?(content: string, parent: HostElement, anchor: HostNode | null, isSVG: boolean): [HostNode, HostNode];
  1202. }
  1203. export declare type RenderFunction = () => VNodeChild;
  1204. /**
  1205. * v-for string
  1206. * @private
  1207. */
  1208. export declare function renderList(source: string, renderItem: (value: string, index: number) => VNodeChild): VNodeChild[];
  1209. /**
  1210. * v-for number
  1211. */
  1212. export declare function renderList(source: number, renderItem: (value: number, index: number) => VNodeChild): VNodeChild[];
  1213. /**
  1214. * v-for array
  1215. */
  1216. export declare function renderList<T>(source: T[], renderItem: (value: T, index: number) => VNodeChild): VNodeChild[];
  1217. /**
  1218. * v-for iterable
  1219. */
  1220. export declare function renderList<T>(source: Iterable<T>, renderItem: (value: T, index: number) => VNodeChild): VNodeChild[];
  1221. /**
  1222. * v-for object
  1223. */
  1224. export declare function renderList<T>(source: T, renderItem: <K extends keyof T>(value: T[K], key: K, index: number) => VNodeChild): VNodeChild[];
  1225. /**
  1226. * Compiler runtime helper for rendering `<slot/>`
  1227. * @private
  1228. */
  1229. export declare function renderSlot(slots: Slots, name: string, props?: Data, fallback?: () => VNodeArrayChildren, noSlotted?: boolean): VNode;
  1230. declare type RequiredKeys<T> = {
  1231. [K in keyof T]: T[K] extends {
  1232. required: true;
  1233. } | {
  1234. default: any;
  1235. } | BooleanConstructor | {
  1236. type: BooleanConstructor;
  1237. } ? T[K] extends {
  1238. default: undefined | (() => undefined);
  1239. } ? never : K : never;
  1240. }[keyof T];
  1241. declare function rerender(id: string, newRender?: Function): void;
  1242. /**
  1243. * @private
  1244. */
  1245. export declare function resolveComponent(name: string, maybeSelfReference?: boolean): ConcreteComponent | string;
  1246. /**
  1247. * @private
  1248. */
  1249. export declare function resolveDirective(name: string): Directive | undefined;
  1250. /**
  1251. * @private
  1252. */
  1253. export declare function resolveDynamicComponent(component: unknown): VNodeTypes;
  1254. /* Excluded from this release type: resolveFilter */
  1255. /* Excluded from this release type: resolveFilter_2 */
  1256. export declare function resolveTransitionHooks(vnode: VNode, props: BaseTransitionProps<any>, state: TransitionState, instance: ComponentInternalInstance): TransitionHooks;
  1257. export declare type RootHydrateFunction = (vnode: VNode<Node, Element>, container: Element | ShadowRoot) => void;
  1258. export declare type RootRenderFunction<HostElement = RendererElement> = (vnode: VNode | null, container: HostElement, isSVG?: boolean) => void;
  1259. /**
  1260. * Subset of compiler options that makes sense for the runtime.
  1261. */
  1262. export declare interface RuntimeCompilerOptions {
  1263. isCustomElement?: (tag: string) => boolean;
  1264. whitespace?: 'preserve' | 'condense';
  1265. comments?: boolean;
  1266. delimiters?: [string, string];
  1267. }
  1268. declare interface SchedulerJob extends Function {
  1269. id?: number;
  1270. active?: boolean;
  1271. computed?: boolean;
  1272. /**
  1273. * Indicates whether the effect is allowed to recursively trigger itself
  1274. * when managed by the scheduler.
  1275. *
  1276. * By default, a job cannot trigger itself because some built-in method calls,
  1277. * e.g. Array.prototype.push actually performs reads as well (#1740) which
  1278. * can lead to confusing infinite loops.
  1279. * The allowed cases are component update functions and watch callbacks.
  1280. * Component update functions may update child component props, which in turn
  1281. * trigger flush: "pre" watch callbacks that mutates state that the parent
  1282. * relies on (#1801). Watch callbacks doesn't track its dependencies so if it
  1283. * triggers itself again, it's likely intentional and it is the user's
  1284. * responsibility to perform recursive state mutation that eventually
  1285. * stabilizes (#1727).
  1286. */
  1287. allowRecurse?: boolean;
  1288. /**
  1289. * Attached by renderer.ts when setting up a component's render effect
  1290. * Used to obtain component information when reporting max recursive updates.
  1291. * dev only.
  1292. */
  1293. ownerInstance?: ComponentInternalInstance;
  1294. }
  1295. declare type SchedulerJobs = SchedulerJob | SchedulerJob[];
  1296. /**
  1297. * Block tracking sometimes needs to be disabled, for example during the
  1298. * creation of a tree that needs to be cached by v-once. The compiler generates
  1299. * code like this:
  1300. *
  1301. * ``` js
  1302. * _cache[1] || (
  1303. * setBlockTracking(-1),
  1304. * _cache[1] = createVNode(...),
  1305. * setBlockTracking(1),
  1306. * _cache[1]
  1307. * )
  1308. * ```
  1309. *
  1310. * @private
  1311. */
  1312. export declare function setBlockTracking(value: number): void;
  1313. /**
  1314. * Note: rendering calls maybe nested. The function returns the parent rendering
  1315. * instance if present, which should be restored after the render is done:
  1316. *
  1317. * ```js
  1318. * const prev = setCurrentRenderingInstance(i)
  1319. * // ...render
  1320. * setCurrentRenderingInstance(prev)
  1321. * ```
  1322. */
  1323. declare function setCurrentRenderingInstance(instance: ComponentInternalInstance | null): ComponentInternalInstance | null;
  1324. export declare function setDevtoolsHook(hook: DevtoolsHook, target: any): void;
  1325. export declare function setTransitionHooks(vnode: VNode, hooks: TransitionHooks): void;
  1326. declare function setupComponent(instance: ComponentInternalInstance, isSSR?: boolean): Promise<void> | undefined;
  1327. export declare interface SetupContext<E = EmitsOptions> {
  1328. attrs: Data;
  1329. slots: Slots;
  1330. emit: EmitFn<E>;
  1331. expose: (exposed?: Record<string, any>) => void;
  1332. }
  1333. declare type SetupRenderEffectFn = (instance: ComponentInternalInstance, initialVNode: VNode, container: RendererElement, anchor: RendererNode | null, parentSuspense: SuspenseBoundary | null, isSVG: boolean, optimized: boolean) => void;
  1334. export { ShallowReactive }
  1335. export { shallowReactive }
  1336. export { shallowReadonly }
  1337. export { ShallowRef }
  1338. export { shallowRef }
  1339. export { ShallowUnwrapRef }
  1340. export declare type Slot = (...args: any[]) => VNode[];
  1341. export declare type Slots = Readonly<InternalSlots>;
  1342. /**
  1343. * Use this for features where legacy usage is still possible, but will likely
  1344. * lead to runtime error if compat is disabled. (warn in all cases)
  1345. */
  1346. declare function softAssertCompatEnabled(key: DeprecationTypes, instance: ComponentInternalInstance | null, ...args: any[]): boolean;
  1347. export declare const ssrContextKey: unique symbol;
  1348. declare type SSRDirectiveHook = (binding: DirectiveBinding, vnode: VNode) => Data | undefined;
  1349. /* Excluded from this release type: ssrUtils */
  1350. export declare const Static: unique symbol;
  1351. export { stop_2 as stop }
  1352. export declare const Suspense: {
  1353. new (): {
  1354. $props: VNodeProps & SuspenseProps;
  1355. };
  1356. __isSuspense: true;
  1357. };
  1358. export declare interface SuspenseBoundary {
  1359. vnode: VNode<RendererNode, RendererElement, SuspenseProps>;
  1360. parent: SuspenseBoundary | null;
  1361. parentComponent: ComponentInternalInstance | null;
  1362. isSVG: boolean;
  1363. container: RendererElement;
  1364. hiddenContainer: RendererElement;
  1365. anchor: RendererNode | null;
  1366. activeBranch: VNode | null;
  1367. pendingBranch: VNode | null;
  1368. deps: number;
  1369. pendingId: number;
  1370. timeout: number;
  1371. isInFallback: boolean;
  1372. isHydrating: boolean;
  1373. isUnmounted: boolean;
  1374. effects: Function[];
  1375. resolve(force?: boolean): void;
  1376. fallback(fallbackVNode: VNode): void;
  1377. move(container: RendererElement, anchor: RendererNode | null, type: MoveType): void;
  1378. next(): RendererNode | null;
  1379. registerDep(instance: ComponentInternalInstance, setupRenderEffect: SetupRenderEffectFn): void;
  1380. unmount(parentSuspense: SuspenseBoundary | null, doRemove?: boolean): void;
  1381. }
  1382. declare const SuspenseImpl: {
  1383. name: string;
  1384. __isSuspense: boolean;
  1385. process(n1: VNode | null, n2: VNode, container: RendererElement, anchor: RendererNode | null, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, isSVG: boolean, slotScopeIds: string[] | null, optimized: boolean, rendererInternals: RendererInternals): void;
  1386. hydrate: typeof hydrateSuspense;
  1387. create: typeof createSuspenseBoundary;
  1388. normalize: typeof normalizeSuspenseChildren;
  1389. };
  1390. export declare interface SuspenseProps {
  1391. onResolve?: () => void;
  1392. onPending?: () => void;
  1393. onFallback?: () => void;
  1394. timeout?: string | number;
  1395. }
  1396. export declare const Teleport: {
  1397. new (): {
  1398. $props: VNodeProps & TeleportProps;
  1399. };
  1400. __isTeleport: true;
  1401. };
  1402. declare const TeleportImpl: {
  1403. __isTeleport: boolean;
  1404. process(n1: TeleportVNode | null, n2: TeleportVNode, container: RendererElement, anchor: RendererNode | null, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, isSVG: boolean, slotScopeIds: string[] | null, optimized: boolean, internals: RendererInternals): void;
  1405. remove(vnode: VNode, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, optimized: boolean, { um: unmount, o: { remove: hostRemove } }: RendererInternals, doRemove: Boolean): void;
  1406. move: typeof moveTeleport;
  1407. hydrate: typeof hydrateTeleport;
  1408. };
  1409. declare const enum TeleportMoveTypes {
  1410. TARGET_CHANGE = 0,
  1411. TOGGLE = 1,
  1412. REORDER = 2
  1413. }
  1414. export declare interface TeleportProps {
  1415. to: string | RendererElement | null | undefined;
  1416. disabled?: boolean;
  1417. }
  1418. declare type TeleportVNode = VNode<RendererNode, RendererElement, TeleportProps>;
  1419. declare const Text_2: unique symbol;
  1420. export { Text_2 as Text }
  1421. export { toDisplayString }
  1422. export { toHandlerKey }
  1423. /**
  1424. * For prefixing keys in v-on="obj" with "on"
  1425. * @private
  1426. */
  1427. export declare function toHandlers(obj: Record<string, any>): Record<string, any>;
  1428. export { toRaw }
  1429. export { ToRef }
  1430. export { toRef }
  1431. export { ToRefs }
  1432. export { toRefs }
  1433. export { TrackOpTypes }
  1434. /**
  1435. * Internal API for registering an arguments transform for createVNode
  1436. * used for creating stubs in the test-utils
  1437. * It is *internal* but needs to be exposed for test-utils to pick up proper
  1438. * typings
  1439. */
  1440. export declare function transformVNodeArgs(transformer?: typeof vnodeArgsTransformer): void;
  1441. export declare interface TransitionHooks<HostElement extends RendererElement = RendererElement> {
  1442. mode: BaseTransitionProps['mode'];
  1443. persisted: boolean;
  1444. beforeEnter(el: HostElement): void;
  1445. enter(el: HostElement): void;
  1446. leave(el: HostElement, remove: () => void): void;
  1447. clone(vnode: VNode): TransitionHooks<HostElement>;
  1448. afterLeave?(): void;
  1449. delayLeave?(el: HostElement, earlyRemove: () => void, delayedLeave: () => void): void;
  1450. delayedLeave?(): void;
  1451. }
  1452. export declare interface TransitionState {
  1453. isMounted: boolean;
  1454. isLeaving: boolean;
  1455. isUnmounting: boolean;
  1456. leavingVNodes: Map<any, Record<string, VNode>>;
  1457. }
  1458. export { TriggerOpTypes }
  1459. export { triggerRef }
  1460. declare type UnionToIntersection<U> = (U extends any ? (k: U) => void : never) extends (k: infer I) => void ? I : never;
  1461. declare type UnmountChildrenFn = (children: VNode[], parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, doRemove?: boolean, optimized?: boolean, start?: number) => void;
  1462. declare type UnmountFn = (vnode: VNode, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, doRemove?: boolean, optimized?: boolean) => void;
  1463. export { unref }
  1464. declare type UnwrapMixinsType<T, Type extends OptionTypesKeys> = T extends OptionTypesType ? T[Type] : never;
  1465. export { UnwrapNestedRefs }
  1466. export { UnwrapRef }
  1467. export declare function useAttrs(): SetupContext['attrs'];
  1468. export declare function useSlots(): SetupContext['slots'];
  1469. export declare const useSSRContext: <T = Record<string, any>>() => T | undefined;
  1470. export declare function useTransitionState(): TransitionState;
  1471. export declare const version: string;
  1472. export declare interface VNode<HostNode = RendererNode, HostElement = RendererElement, ExtraProps = {
  1473. [key: string]: any;
  1474. }> {
  1475. /* Excluded from this release type: __v_isVNode */
  1476. /* Excluded from this release type: __v_skip */
  1477. type: VNodeTypes;
  1478. props: (VNodeProps & ExtraProps) | null;
  1479. key: string | number | symbol | null;
  1480. ref: VNodeNormalizedRef | null;
  1481. /**
  1482. * SFC only. This is assigned on vnode creation using currentScopeId
  1483. * which is set alongside currentRenderingInstance.
  1484. */
  1485. scopeId: string | null;
  1486. /* Excluded from this release type: slotScopeIds */
  1487. children: VNodeNormalizedChildren;
  1488. component: ComponentInternalInstance | null;
  1489. dirs: DirectiveBinding[] | null;
  1490. transition: TransitionHooks<HostElement> | null;
  1491. el: HostNode | null;
  1492. anchor: HostNode | null;
  1493. target: HostElement | null;
  1494. targetAnchor: HostNode | null;
  1495. /* Excluded from this release type: staticCount */
  1496. suspense: SuspenseBoundary | null;
  1497. /* Excluded from this release type: ssContent */
  1498. /* Excluded from this release type: ssFallback */
  1499. shapeFlag: number;
  1500. patchFlag: number;
  1501. /* Excluded from this release type: dynamicProps */
  1502. /* Excluded from this release type: dynamicChildren */
  1503. appContext: AppContext | null;
  1504. /* Excluded from this release type: memo */
  1505. /* Excluded from this release type: isCompatRoot */
  1506. /* Excluded from this release type: ce */
  1507. }
  1508. declare let vnodeArgsTransformer: ((args: Parameters<typeof _createVNode>, instance: ComponentInternalInstance | null) => Parameters<typeof _createVNode>) | undefined;
  1509. export declare type VNodeArrayChildren = Array<VNodeArrayChildren | VNodeChildAtom>;
  1510. export declare type VNodeChild = VNodeChildAtom | VNodeArrayChildren;
  1511. declare type VNodeChildAtom = VNode | string | number | boolean | null | undefined | void;
  1512. declare type VNodeMountHook = (vnode: VNode) => void;
  1513. export declare type VNodeNormalizedChildren = string | VNodeArrayChildren | RawSlots | null;
  1514. declare type VNodeNormalizedRef = VNodeNormalizedRefAtom | VNodeNormalizedRefAtom[];
  1515. declare type VNodeNormalizedRefAtom = {
  1516. i: ComponentInternalInstance;
  1517. r: VNodeRef;
  1518. k?: string;
  1519. f?: boolean;
  1520. };
  1521. export declare type VNodeProps = {
  1522. key?: string | number | symbol;
  1523. ref?: VNodeRef;
  1524. ref_for?: boolean;
  1525. ref_key?: string;
  1526. onVnodeBeforeMount?: VNodeMountHook | VNodeMountHook[];
  1527. onVnodeMounted?: VNodeMountHook | VNodeMountHook[];
  1528. onVnodeBeforeUpdate?: VNodeUpdateHook | VNodeUpdateHook[];
  1529. onVnodeUpdated?: VNodeUpdateHook | VNodeUpdateHook[];
  1530. onVnodeBeforeUnmount?: VNodeMountHook | VNodeMountHook[];
  1531. onVnodeUnmounted?: VNodeMountHook | VNodeMountHook[];
  1532. };
  1533. declare type VNodeRef = string | Ref | ((ref: object | null, refs: Record<string, any>) => void);
  1534. export declare type VNodeTypes = string | VNode | Component | typeof Text_2 | typeof Static | typeof Comment_2 | typeof Fragment | typeof TeleportImpl | typeof SuspenseImpl;
  1535. declare type VNodeUpdateHook = (vnode: VNode, oldVNode: VNode) => void;
  1536. export declare function warn(msg: string, ...args: any[]): void;
  1537. declare function warnDeprecation(key: DeprecationTypes, instance: ComponentInternalInstance | null, ...args: any[]): void;
  1538. export declare function watch<T extends MultiWatchSources, Immediate extends Readonly<boolean> = false>(sources: [...T], cb: WatchCallback<MapSources<T, false>, MapSources<T, Immediate>>, options?: WatchOptions<Immediate>): WatchStopHandle;
  1539. export declare function watch<T extends Readonly<MultiWatchSources>, Immediate extends Readonly<boolean> = false>(source: T, cb: WatchCallback<MapSources<T, false>, MapSources<T, Immediate>>, options?: WatchOptions<Immediate>): WatchStopHandle;
  1540. export declare function watch<T, Immediate extends Readonly<boolean> = false>(source: WatchSource<T>, cb: WatchCallback<T, Immediate extends true ? T | undefined : T>, options?: WatchOptions<Immediate>): WatchStopHandle;
  1541. export declare function watch<T extends object, Immediate extends Readonly<boolean> = false>(source: T, cb: WatchCallback<T, Immediate extends true ? T | undefined : T>, options?: WatchOptions<Immediate>): WatchStopHandle;
  1542. export declare type WatchCallback<V = any, OV = any> = (value: V, oldValue: OV, onInvalidate: InvalidateCbRegistrator) => any;
  1543. export declare type WatchEffect = (onInvalidate: InvalidateCbRegistrator) => void;
  1544. export declare function watchEffect(effect: WatchEffect, options?: WatchOptionsBase): WatchStopHandle;
  1545. declare type WatchOptionItem = string | WatchCallback | ObjectWatchOptionItem;
  1546. export declare interface WatchOptions<Immediate = boolean> extends WatchOptionsBase {
  1547. immediate?: Immediate;
  1548. deep?: boolean;
  1549. }
  1550. export declare interface WatchOptionsBase extends DebuggerOptions {
  1551. flush?: 'pre' | 'post' | 'sync';
  1552. }
  1553. export declare function watchPostEffect(effect: WatchEffect, options?: DebuggerOptions): WatchStopHandle;
  1554. export declare type WatchSource<T = any> = Ref<T> | ComputedRef<T> | (() => T);
  1555. export declare type WatchStopHandle = () => void;
  1556. export declare function watchSyncEffect(effect: WatchEffect, options?: DebuggerOptions): WatchStopHandle;
  1557. /* Excluded from this release type: withAsyncContext */
  1558. /**
  1559. * Wrap a slot function to memoize current rendering instance
  1560. * @private compiler helper
  1561. */
  1562. export declare function withCtx(fn: Function, ctx?: ComponentInternalInstance | null, isNonScopedSlot?: boolean): Function;
  1563. /**
  1564. * Vue `<script setup>` compiler macro for providing props default values when
  1565. * using type-based `defineProps` declaration.
  1566. *
  1567. * Example usage:
  1568. * ```ts
  1569. * withDefaults(defineProps<{
  1570. * size?: number
  1571. * labels?: string[]
  1572. * }>(), {
  1573. * size: 3,
  1574. * labels: () => ['default label']
  1575. * })
  1576. * ```
  1577. *
  1578. * This is only usable inside `<script setup>`, is compiled away in the output
  1579. * and should **not** be actually called at runtime.
  1580. */
  1581. export declare function withDefaults<Props, Defaults extends InferDefaults<Props>>(props: Props, defaults: Defaults): PropsWithDefaults<Props, Defaults>;
  1582. /**
  1583. * Adds directives to a VNode.
  1584. */
  1585. export declare function withDirectives<T extends VNode>(vnode: T, directives: DirectiveArguments): T;
  1586. export declare function withMemo(memo: any[], render: () => VNode<any, any>, cache: any[], index: number): VNode<any, any, {
  1587. [key: string]: any;
  1588. }>;
  1589. /**
  1590. * Only for backwards compat
  1591. * @private
  1592. */
  1593. export declare const withScopeId: (_id: string) => typeof withCtx;
  1594. export { WritableComputedOptions }
  1595. export { WritableComputedRef }
  1596. export { }
  1597. // Note: this file is auto concatenated to the end of the bundled d.ts during
  1598. // build.
  1599. declare module '@vue/reactivity' {
  1600. export interface RefUnwrapBailTypes {
  1601. runtimeCoreBailTypes:
  1602. | VNode
  1603. | {
  1604. // directly bailing on ComponentPublicInstance results in recursion
  1605. // so we use this as a bail hint
  1606. $: ComponentInternalInstance
  1607. }
  1608. }
  1609. }
  1610. // Note: this file is auto concatenated to the end of the bundled d.ts during
  1611. // build.
  1612. type _defineProps = typeof defineProps
  1613. type _defineEmits = typeof defineEmits
  1614. type _defineExpose = typeof defineExpose
  1615. type _withDefaults = typeof withDefaults
  1616. declare global {
  1617. const defineProps: _defineProps
  1618. const defineEmits: _defineEmits
  1619. const defineExpose: _defineExpose
  1620. const withDefaults: _withDefaults
  1621. }