12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832 |
- import { computed as computed$1, Ref, OnCleanup, WatchStopHandle, ShallowUnwrapRef, UnwrapNestedRefs, DebuggerEvent, ComputedGetter, WritableComputedOptions, WatchCallback, ReactiveEffect, DebuggerOptions, WatchEffect, WatchHandle, WatchSource, ReactiveMarker, ShallowRef, WatchErrorCodes, reactive } from '@vue/reactivity';
- export { ComputedGetter, ComputedRef, ComputedSetter, CustomRefFactory, DebuggerEvent, DebuggerEventExtraInfo, DebuggerOptions, DeepReadonly, EffectScheduler, EffectScope, MaybeRef, MaybeRefOrGetter, Raw, Reactive, ReactiveEffect, ReactiveEffectOptions, ReactiveEffectRunner, ReactiveFlags, Ref, ShallowReactive, ShallowRef, ShallowUnwrapRef, ToRef, ToRefs, TrackOpTypes, TriggerOpTypes, UnwrapNestedRefs, UnwrapRef, WatchCallback, WatchEffect, WatchHandle, WatchSource, WatchStopHandle, WritableComputedOptions, WritableComputedRef, customRef, effect, effectScope, getCurrentScope, getCurrentWatcher, isProxy, isReactive, isReadonly, isRef, isShallow, markRaw, onScopeDispose, onWatcherCleanup, proxyRefs, reactive, readonly, ref, shallowReactive, shallowReadonly, shallowRef, stop, toRaw, toRef, toRefs, toValue, triggerRef, unref } from '@vue/reactivity';
- import { IfAny, Prettify, LooseRequired, UnionToIntersection, OverloadParameters, IsKeyValues } from '@vue/shared';
- export { camelize, capitalize, normalizeClass, normalizeProps, normalizeStyle, toDisplayString, toHandlerKey } from '@vue/shared';
- export declare const computed: typeof computed$1;
- export type Slot<T extends any = any> = (...args: IfAny<T, any[], [T] | (T extends undefined ? [] : never)>) => VNode[];
- type InternalSlots = {
- [name: string]: Slot | undefined;
- };
- export type Slots = Readonly<InternalSlots>;
- declare const SlotSymbol: unique symbol;
- export type SlotsType<T extends Record<string, any> = Record<string, any>> = {
- [SlotSymbol]?: T;
- };
- type StrictUnwrapSlotsType<S extends SlotsType, T = NonNullable<S[typeof SlotSymbol]>> = [keyof S] extends [never] ? Slots : Readonly<T> & T;
- type UnwrapSlotsType<S extends SlotsType, T = NonNullable<S[typeof SlotSymbol]>> = [keyof S] extends [never] ? Slots : Readonly<Prettify<{
- [K in keyof T]: NonNullable<T[K]> extends (...args: any[]) => any ? T[K] : Slot<T[K]>;
- }>>;
- type RawSlots = {
- [name: string]: unknown;
- $stable?: boolean;
- };
- declare enum SchedulerJobFlags {
- QUEUED = 1,
- PRE = 2,
- /**
- * Indicates whether the effect is allowed to recursively trigger itself
- * when managed by the scheduler.
- *
- * By default, a job cannot trigger itself because some built-in method calls,
- * e.g. Array.prototype.push actually performs reads as well (#1740) which
- * can lead to confusing infinite loops.
- * The allowed cases are component update functions and watch callbacks.
- * Component update functions may update child component props, which in turn
- * trigger flush: "pre" watch callbacks that mutates state that the parent
- * relies on (#1801). Watch callbacks doesn't track its dependencies so if it
- * triggers itself again, it's likely intentional and it is the user's
- * responsibility to perform recursive state mutation that eventually
- * stabilizes (#1727).
- */
- ALLOW_RECURSE = 4,
- DISPOSED = 8
- }
- interface SchedulerJob extends Function {
- id?: number;
- /**
- * flags can technically be undefined, but it can still be used in bitwise
- * operations just like 0.
- */
- flags?: SchedulerJobFlags;
- /**
- * Attached by renderer.ts when setting up a component's render effect
- * Used to obtain component information when reporting max recursive updates.
- */
- i?: ComponentInternalInstance;
- }
- type SchedulerJobs = SchedulerJob | SchedulerJob[];
- export declare function nextTick<T = void, R = void>(this: T, fn?: (this: T) => R): Promise<Awaited<R>>;
- export declare function queuePostFlushCb(cb: SchedulerJobs): void;
- export type ComponentPropsOptions<P = Data> = ComponentObjectPropsOptions<P> | string[];
- export type ComponentObjectPropsOptions<P = Data> = {
- [K in keyof P]: Prop<P[K]> | null;
- };
- export type Prop<T, D = T> = PropOptions<T, D> | PropType<T>;
- type DefaultFactory<T> = (props: Data) => T | null | undefined;
- interface PropOptions<T = any, D = T> {
- type?: PropType<T> | true | null;
- required?: boolean;
- default?: D | DefaultFactory<D> | null | undefined | object;
- validator?(value: unknown, props: Data): boolean;
- }
- export type PropType<T> = PropConstructor<T> | (PropConstructor<T> | null)[];
- type PropConstructor<T = any> = {
- new (...args: any[]): T & {};
- } | {
- (): T;
- } | PropMethod<T>;
- type PropMethod<T, TConstructor = any> = [T] extends [
- ((...args: any) => any) | undefined
- ] ? {
- new (): TConstructor;
- (): T;
- readonly prototype: TConstructor;
- } : never;
- type RequiredKeys<T> = {
- [K in keyof T]: T[K] extends {
- required: true;
- } | {
- default: any;
- } | BooleanConstructor | {
- type: BooleanConstructor;
- } ? T[K] extends {
- default: undefined | (() => undefined);
- } ? never : K : never;
- }[keyof T];
- type OptionalKeys<T> = Exclude<keyof T, RequiredKeys<T>>;
- type DefaultKeys<T> = {
- [K in keyof T]: T[K] extends {
- default: any;
- } | BooleanConstructor | {
- type: BooleanConstructor;
- } ? T[K] extends {
- type: BooleanConstructor;
- required: true;
- } ? never : K : never;
- }[keyof T];
- type InferPropType<T, NullAsAny = true> = [T] extends [null] ? NullAsAny extends true ? any : null : [T] extends [{
- type: null | true;
- }] ? any : [T] extends [ObjectConstructor | {
- type: ObjectConstructor;
- }] ? Record<string, any> : [T] extends [BooleanConstructor | {
- type: BooleanConstructor;
- }] ? boolean : [T] extends [DateConstructor | {
- type: DateConstructor;
- }] ? Date : [T] extends [(infer U)[] | {
- type: (infer U)[];
- }] ? U extends DateConstructor ? Date | InferPropType<U, false> : InferPropType<U, false> : [T] extends [Prop<infer V, infer D>] ? unknown extends V ? keyof V extends never ? IfAny<V, V, D> : V : V : T;
- /**
- * Extract prop types from a runtime props options object.
- * The extracted types are **internal** - i.e. the resolved props received by
- * the component.
- * - Boolean props are always present
- * - Props with default values are always present
- *
- * To extract accepted props from the parent, use {@link ExtractPublicPropTypes}.
- */
- export type ExtractPropTypes<O> = {
- [K in keyof Pick<O, RequiredKeys<O>>]: InferPropType<O[K]>;
- } & {
- [K in keyof Pick<O, OptionalKeys<O>>]?: InferPropType<O[K]>;
- };
- type PublicRequiredKeys<T> = {
- [K in keyof T]: T[K] extends {
- required: true;
- } ? K : never;
- }[keyof T];
- type PublicOptionalKeys<T> = Exclude<keyof T, PublicRequiredKeys<T>>;
- /**
- * Extract prop types from a runtime props options object.
- * The extracted types are **public** - i.e. the expected props that can be
- * passed to component.
- */
- export type ExtractPublicPropTypes<O> = {
- [K in keyof Pick<O, PublicRequiredKeys<O>>]: InferPropType<O[K]>;
- } & {
- [K in keyof Pick<O, PublicOptionalKeys<O>>]?: InferPropType<O[K]>;
- };
- export type ExtractDefaultPropTypes<O> = O extends object ? {
- [K in keyof Pick<O, DefaultKeys<O>>]: InferPropType<O[K]>;
- } : {};
- /**
- * Vue `<script setup>` compiler macro for declaring component props. The
- * expected argument is the same as the component `props` option.
- *
- * Example runtime declaration:
- * ```js
- * // using Array syntax
- * const props = defineProps(['foo', 'bar'])
- * // using Object syntax
- * const props = defineProps({
- * foo: String,
- * bar: {
- * type: Number,
- * required: true
- * }
- * })
- * ```
- *
- * Equivalent type-based declaration:
- * ```ts
- * // will be compiled into equivalent runtime declarations
- * const props = defineProps<{
- * foo?: string
- * bar: number
- * }>()
- * ```
- *
- * @see {@link https://vuejs.org/api/sfc-script-setup.html#defineprops-defineemits}
- *
- * This is only usable inside `<script setup>`, is compiled away in the
- * output and should **not** be actually called at runtime.
- */
- export declare function defineProps<PropNames extends string = string>(props: PropNames[]): Prettify<Readonly<{
- [key in PropNames]?: any;
- }>>;
- export declare function defineProps<PP extends ComponentObjectPropsOptions = ComponentObjectPropsOptions>(props: PP): Prettify<Readonly<ExtractPropTypes<PP>>>;
- export declare function defineProps<TypeProps>(): DefineProps<LooseRequired<TypeProps>, BooleanKey<TypeProps>>;
- export type DefineProps<T, BKeys extends keyof T> = Readonly<T> & {
- readonly [K in BKeys]-?: boolean;
- };
- type BooleanKey<T, K extends keyof T = keyof T> = K extends any ? [T[K]] extends [boolean | undefined] ? K : never : never;
- /**
- * Vue `<script setup>` compiler macro for declaring a component's emitted
- * events. The expected argument is the same as the component `emits` option.
- *
- * Example runtime declaration:
- * ```js
- * const emit = defineEmits(['change', 'update'])
- * ```
- *
- * Example type-based declaration:
- * ```ts
- * const emit = defineEmits<{
- * // <eventName>: <expected arguments>
- * change: []
- * update: [value: number] // named tuple syntax
- * }>()
- *
- * emit('change')
- * emit('update', 1)
- * ```
- *
- * This is only usable inside `<script setup>`, is compiled away in the
- * output and should **not** be actually called at runtime.
- *
- * @see {@link https://vuejs.org/api/sfc-script-setup.html#defineprops-defineemits}
- */
- export declare function defineEmits<EE extends string = string>(emitOptions: EE[]): EmitFn<EE[]>;
- export declare function defineEmits<E extends EmitsOptions = EmitsOptions>(emitOptions: E): EmitFn<E>;
- export declare function defineEmits<T extends ComponentTypeEmits>(): T extends (...args: any[]) => any ? T : ShortEmits<T>;
- export type ComponentTypeEmits = ((...args: any[]) => any) | Record<string, any[]>;
- type RecordToUnion<T extends Record<string, any>> = T[keyof T];
- type ShortEmits<T extends Record<string, any>> = UnionToIntersection<RecordToUnion<{
- [K in keyof T]: (evt: K, ...args: T[K]) => void;
- }>>;
- /**
- * Vue `<script setup>` compiler macro for declaring a component's exposed
- * instance properties when it is accessed by a parent component via template
- * refs.
- *
- * `<script setup>` components are closed by default - i.e. variables inside
- * the `<script setup>` scope is not exposed to parent unless explicitly exposed
- * via `defineExpose`.
- *
- * This is only usable inside `<script setup>`, is compiled away in the
- * output and should **not** be actually called at runtime.
- *
- * @see {@link https://vuejs.org/api/sfc-script-setup.html#defineexpose}
- */
- export declare function defineExpose<Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed): void;
- /**
- * Vue `<script setup>` compiler macro for declaring a component's additional
- * options. This should be used only for options that cannot be expressed via
- * Composition API - e.g. `inheritAttrs`.
- *
- * @see {@link https://vuejs.org/api/sfc-script-setup.html#defineoptions}
- */
- export declare function defineOptions<RawBindings = {}, D = {}, C extends ComputedOptions = {}, M extends MethodOptions = {}, Mixin extends ComponentOptionsMixin = ComponentOptionsMixin, Extends extends ComponentOptionsMixin = ComponentOptionsMixin>(options?: ComponentOptionsBase<{}, RawBindings, D, C, M, Mixin, Extends, {}> & {
- /**
- * props should be defined via defineProps().
- */
- props?: never;
- /**
- * emits should be defined via defineEmits().
- */
- emits?: never;
- /**
- * expose should be defined via defineExpose().
- */
- expose?: never;
- /**
- * slots should be defined via defineSlots().
- */
- slots?: never;
- }): void;
- export declare function defineSlots<S extends Record<string, any> = Record<string, any>>(): StrictUnwrapSlotsType<SlotsType<S>>;
- export type ModelRef<T, M extends PropertyKey = string, G = T, S = T> = Ref<G, S> & [
- ModelRef<T, M, G, S>,
- Record<M, true | undefined>
- ];
- type DefineModelOptions<T = any, G = T, S = T> = {
- get?: (v: T) => G;
- set?: (v: S) => any;
- };
- /**
- * Vue `<script setup>` compiler macro for declaring a
- * two-way binding prop that can be consumed via `v-model` from the parent
- * component. This will declare a prop with the same name and a corresponding
- * `update:propName` event.
- *
- * If the first argument is a string, it will be used as the prop name;
- * Otherwise the prop name will default to "modelValue". In both cases, you
- * can also pass an additional object which will be used as the prop's options.
- *
- * The returned ref behaves differently depending on whether the parent
- * provided the corresponding v-model props or not:
- * - If yes, the returned ref's value will always be in sync with the parent
- * prop.
- * - If not, the returned ref will behave like a normal local ref.
- *
- * @example
- * ```ts
- * // default model (consumed via `v-model`)
- * const modelValue = defineModel<string>()
- * modelValue.value = "hello"
- *
- * // default model with options
- * const modelValue = defineModel<string>({ required: true })
- *
- * // with specified name (consumed via `v-model:count`)
- * const count = defineModel<number>('count')
- * count.value++
- *
- * // with specified name and default value
- * const count = defineModel<number>('count', { default: 0 })
- * ```
- */
- export declare function defineModel<T, M extends PropertyKey = string, G = T, S = T>(options: ({
- default: any;
- } | {
- required: true;
- }) & PropOptions<T> & DefineModelOptions<T, G, S>): ModelRef<T, M, G, S>;
- export declare function defineModel<T, M extends PropertyKey = string, G = T, S = T>(options?: PropOptions<T> & DefineModelOptions<T, G, S>): ModelRef<T | undefined, M, G | undefined, S | undefined>;
- export declare function defineModel<T, M extends PropertyKey = string, G = T, S = T>(name: string, options: ({
- default: any;
- } | {
- required: true;
- }) & PropOptions<T> & DefineModelOptions<T, G, S>): ModelRef<T, M, G, S>;
- export declare function defineModel<T, M extends PropertyKey = string, G = T, S = T>(name: string, options?: PropOptions<T> & DefineModelOptions<T, G, S>): ModelRef<T | undefined, M, G | undefined, S | undefined>;
- type NotUndefined<T> = T extends undefined ? never : T;
- type MappedOmit<T, K extends keyof any> = {
- [P in keyof T as P extends K ? never : P]: T[P];
- };
- type InferDefaults<T> = {
- [K in keyof T]?: InferDefault<T, T[K]>;
- };
- type NativeType = null | number | string | boolean | symbol | Function;
- type InferDefault<P, T> = ((props: P) => T & {}) | (T extends NativeType ? T : never);
- type PropsWithDefaults<T, Defaults extends InferDefaults<T>, BKeys extends keyof T> = T extends unknown ? Readonly<MappedOmit<T, keyof Defaults>> & {
- readonly [K in keyof Defaults as K extends keyof T ? K : never]-?: K extends keyof T ? Defaults[K] extends undefined ? IfAny<Defaults[K], NotUndefined<T[K]>, T[K]> : NotUndefined<T[K]> : never;
- } & {
- readonly [K in BKeys]-?: K extends keyof Defaults ? Defaults[K] extends undefined ? boolean | undefined : boolean : boolean;
- } : never;
- /**
- * Vue `<script setup>` compiler macro for providing props default values when
- * using type-based `defineProps` declaration.
- *
- * Example usage:
- * ```ts
- * withDefaults(defineProps<{
- * size?: number
- * labels?: string[]
- * }>(), {
- * size: 3,
- * labels: () => ['default label']
- * })
- * ```
- *
- * This is only usable inside `<script setup>`, is compiled away in the output
- * and should **not** be actually called at runtime.
- *
- * @see {@link https://vuejs.org/guide/typescript/composition-api.html#typing-component-props}
- */
- export declare function withDefaults<T, BKeys extends keyof T, Defaults extends InferDefaults<T>>(props: DefineProps<T, BKeys>, defaults: Defaults): PropsWithDefaults<T, Defaults, BKeys>;
- export declare function useSlots(): SetupContext['slots'];
- export declare function useAttrs(): SetupContext['attrs'];
- export type ObjectEmitsOptions = Record<string, ((...args: any[]) => any) | null>;
- export type EmitsOptions = ObjectEmitsOptions | string[];
- export type EmitsToProps<T extends EmitsOptions | ComponentTypeEmits> = T extends string[] ? {
- [K in `on${Capitalize<T[number]>}`]?: (...args: any[]) => any;
- } : T extends ObjectEmitsOptions ? {
- [K in string & keyof T as `on${Capitalize<K>}`]?: (...args: T[K] extends (...args: infer P) => any ? P : T[K] extends null ? any[] : never) => any;
- } : {};
- type TypeEmitsToOptions<T extends ComponentTypeEmits> = {
- [K in keyof T & string]: T[K] extends [...args: infer Args] ? (...args: Args) => any : () => any;
- } & (T extends (...args: any[]) => any ? ParametersToFns<OverloadParameters<T>> : {});
- type ParametersToFns<T extends any[]> = {
- [K in T[0]]: IsStringLiteral<K> extends true ? (...args: T extends [e: infer E, ...args: infer P] ? K extends E ? P : never : never) => any : never;
- };
- type IsStringLiteral<T> = T extends string ? string extends T ? false : true : false;
- export type ShortEmitsToObject<E> = E extends Record<string, any[]> ? {
- [K in keyof E]: (...args: E[K]) => any;
- } : E;
- export 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<{
- [key in Event]: Options[key] extends (...args: infer Args) => any ? (event: key, ...args: Args) => void : Options[key] extends any[] ? (event: key, ...args: Options[key]) => void : (event: key, ...args: any[]) => void;
- }[Event]>;
- /**
- Runtime helper for applying directives to a vnode. Example usage:
- const comp = resolveComponent('comp')
- const foo = resolveDirective('foo')
- const bar = resolveDirective('bar')
- return withDirectives(h(comp), [
- [foo, this.x],
- [bar, this.y]
- ])
- */
- export interface DirectiveBinding<Value = any, Modifiers extends string = string, Arg extends string = string> {
- instance: ComponentPublicInstance | Record<string, any> | null;
- value: Value;
- oldValue: Value | null;
- arg?: Arg;
- modifiers: DirectiveModifiers<Modifiers>;
- dir: ObjectDirective<any, Value>;
- }
- export type DirectiveHook<HostElement = any, Prev = VNode<any, HostElement> | null, Value = any, Modifiers extends string = string, Arg extends string = string> = (el: HostElement, binding: DirectiveBinding<Value, Modifiers, Arg>, vnode: VNode<any, HostElement>, prevVNode: Prev) => void;
- type SSRDirectiveHook<Value = any, Modifiers extends string = string, Arg extends string = string> = (binding: DirectiveBinding<Value, Modifiers, Arg>, vnode: VNode) => Data | undefined;
- export interface ObjectDirective<HostElement = any, Value = any, Modifiers extends string = string, Arg extends string = string> {
- created?: DirectiveHook<HostElement, null, Value, Modifiers, Arg>;
- beforeMount?: DirectiveHook<HostElement, null, Value, Modifiers, Arg>;
- mounted?: DirectiveHook<HostElement, null, Value, Modifiers, Arg>;
- beforeUpdate?: DirectiveHook<HostElement, VNode<any, HostElement>, Value, Modifiers, Arg>;
- updated?: DirectiveHook<HostElement, VNode<any, HostElement>, Value, Modifiers, Arg>;
- beforeUnmount?: DirectiveHook<HostElement, null, Value, Modifiers, Arg>;
- unmounted?: DirectiveHook<HostElement, null, Value, Modifiers, Arg>;
- getSSRProps?: SSRDirectiveHook<Value, Modifiers, Arg>;
- deep?: boolean;
- }
- export type FunctionDirective<HostElement = any, V = any, Modifiers extends string = string, Arg extends string = string> = DirectiveHook<HostElement, any, V, Modifiers, Arg>;
- export type Directive<HostElement = any, Value = any, Modifiers extends string = string, Arg extends string = string> = ObjectDirective<HostElement, Value, Modifiers, Arg> | FunctionDirective<HostElement, Value, Modifiers, Arg>;
- type DirectiveModifiers<K extends string = string> = Record<K, boolean>;
- export type DirectiveArguments = Array<[Directive | undefined] | [Directive | undefined, any] | [Directive | undefined, any, string] | [Directive | undefined, any, string | undefined, DirectiveModifiers]>;
- /**
- * Adds directives to a VNode.
- */
- export declare function withDirectives<T extends VNode>(vnode: T, directives: DirectiveArguments): T;
- /**
- * Custom properties added to component instances in any way and can be accessed through `this`
- *
- * @example
- * Here is an example of adding a property `$router` to every component instance:
- * ```ts
- * import { createApp } from 'vue'
- * import { Router, createRouter } from 'vue-router'
- *
- * declare module 'vue' {
- * interface ComponentCustomProperties {
- * $router: Router
- * }
- * }
- *
- * // effectively adding the router to every component instance
- * const app = createApp({})
- * const router = createRouter()
- * app.config.globalProperties.$router = router
- *
- * const vm = app.mount('#app')
- * // we can access the router from the instance
- * vm.$router.push('/')
- * ```
- */
- export interface ComponentCustomProperties {
- }
- type IsDefaultMixinComponent<T> = T extends ComponentOptionsMixin ? ComponentOptionsMixin extends T ? true : false : false;
- type MixinToOptionTypes<T> = T extends ComponentOptionsBase<infer P, infer B, infer D, infer C, infer M, infer Mixin, infer Extends, any, any, infer Defaults, any, any, any, any, any, any, any> ? OptionTypesType<P & {}, B & {}, D & {}, C & {}, M & {}, Defaults & {}> & IntersectionMixin<Mixin> & IntersectionMixin<Extends> : never;
- type ExtractMixin<T> = {
- Mixin: MixinToOptionTypes<T>;
- }[T extends ComponentOptionsMixin ? 'Mixin' : never];
- type IntersectionMixin<T> = IsDefaultMixinComponent<T> extends true ? OptionTypesType : UnionToIntersection<ExtractMixin<T>>;
- type UnwrapMixinsType<T, Type extends OptionTypesKeys> = T extends OptionTypesType ? T[Type] : never;
- type EnsureNonVoid<T> = T extends void ? {} : T;
- 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> = {
- __isFragment?: never;
- __isTeleport?: never;
- __isSuspense?: never;
- new (...args: any[]): T;
- };
- /**
- * @deprecated This is no longer used internally, but exported and relied on by
- * existing library types generated by vue-tsc.
- */
- export 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, I extends ComponentInjectOptions = {}, S extends SlotsType = {}, 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, {}, string, S>, I, S>;
- /**
- * This is the same as `CreateComponentPublicInstance` but adds local components,
- * global directives, exposed, and provide inference.
- * It changes the arguments order so that we don't need to repeat mixin
- * inference everywhere internally, but it has to be a new type to avoid
- * breaking types that relies on previous arguments order (#10842)
- */
- export type CreateComponentPublicInstanceWithMixins<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, I extends ComponentInjectOptions = {}, S extends SlotsType = {}, LC extends Record<string, Component> = {}, Directives extends Record<string, Directive> = {}, Exposed extends string = string, TypeRefs extends Data = {}, TypeEl extends Element = any, Provide extends ComponentProvideOptions = ComponentProvideOptions, 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, {}, string, S, LC, Directives, Exposed, Provide>, I, S, Exposed, TypeRefs, TypeEl>;
- type ExposedKeys<T, Exposed extends string & keyof T> = '' extends Exposed ? T : Pick<T, Exposed>;
- export type ComponentPublicInstance<P = {}, // props type extracted from props option
- B = {}, // raw bindings returned from setup()
- D = {}, // return from data()
- C extends ComputedOptions = {}, M extends MethodOptions = {}, E extends EmitsOptions = {}, PublicProps = {}, Defaults = {}, MakeDefaultsOptional extends boolean = false, Options = ComponentOptionsBase<any, any, any, any, any, any, any, any, any>, I extends ComponentInjectOptions = {}, S extends SlotsType = {}, Exposed extends string = '', TypeRefs extends Data = {}, TypeEl extends Element = any> = {
- $: ComponentInternalInstance;
- $data: D;
- $props: MakeDefaultsOptional extends true ? Partial<Defaults> & Omit<Prettify<P> & PublicProps, keyof Defaults> : Prettify<P> & PublicProps;
- $attrs: Data;
- $refs: Data & TypeRefs;
- $slots: UnwrapSlotsType<S>;
- $root: ComponentPublicInstance | null;
- $parent: ComponentPublicInstance | null;
- $host: Element | null;
- $emit: EmitFn<E>;
- $el: TypeEl;
- $options: Options & MergedComponentOptionsOverride;
- $forceUpdate: () => void;
- $nextTick: typeof nextTick;
- $watch<T extends string | ((...args: any) => any)>(source: T, cb: T extends (...args: any) => infer R ? (...args: [R, R, OnCleanup]) => any : (...args: [any, any, OnCleanup]) => any, options?: WatchOptions): WatchStopHandle;
- } & ExposedKeys<IfAny<P, P, Readonly<Defaults> & Omit<P, keyof ShallowUnwrapRef<B> | keyof Defaults>> & ShallowUnwrapRef<B> & UnwrapNestedRefs<D> & ExtractComputedReturns<C> & M & ComponentCustomProperties & InjectToObject<I>, Exposed>;
- declare enum LifecycleHooks {
- BEFORE_CREATE = "bc",
- CREATED = "c",
- BEFORE_MOUNT = "bm",
- MOUNTED = "m",
- BEFORE_UPDATE = "bu",
- UPDATED = "u",
- BEFORE_UNMOUNT = "bum",
- UNMOUNTED = "um",
- DEACTIVATED = "da",
- ACTIVATED = "a",
- RENDER_TRIGGERED = "rtg",
- RENDER_TRACKED = "rtc",
- ERROR_CAPTURED = "ec",
- SERVER_PREFETCH = "sp"
- }
- export interface SuspenseProps {
- onResolve?: () => void;
- onPending?: () => void;
- onFallback?: () => void;
- timeout?: string | number;
- /**
- * Allow suspense to be captured by parent suspense
- *
- * @default false
- */
- suspensible?: boolean;
- }
- declare const SuspenseImpl: {
- name: string;
- __isSuspense: boolean;
- process(n1: VNode | null, n2: VNode, container: RendererElement, anchor: RendererNode | null, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, namespace: ElementNamespace, slotScopeIds: string[] | null, optimized: boolean, rendererInternals: RendererInternals): void;
- hydrate: typeof hydrateSuspense;
- normalize: typeof normalizeSuspenseChildren;
- };
- export declare const Suspense: {
- __isSuspense: true;
- new (): {
- $props: VNodeProps & SuspenseProps;
- $slots: {
- default(): VNode[];
- fallback(): VNode[];
- };
- };
- };
- export interface SuspenseBoundary {
- vnode: VNode<RendererNode, RendererElement, SuspenseProps>;
- parent: SuspenseBoundary | null;
- parentComponent: ComponentInternalInstance | null;
- namespace: ElementNamespace;
- container: RendererElement;
- hiddenContainer: RendererElement;
- activeBranch: VNode | null;
- pendingBranch: VNode | null;
- deps: number;
- pendingId: number;
- timeout: number;
- isInFallback: boolean;
- isHydrating: boolean;
- isUnmounted: boolean;
- effects: Function[];
- resolve(force?: boolean, sync?: boolean): void;
- fallback(fallbackVNode: VNode): void;
- move(container: RendererElement, anchor: RendererNode | null, type: MoveType): void;
- next(): RendererNode | null;
- registerDep(instance: ComponentInternalInstance, setupRenderEffect: SetupRenderEffectFn, optimized: boolean): void;
- unmount(parentSuspense: SuspenseBoundary | null, doRemove?: boolean): void;
- }
- declare function hydrateSuspense(node: Node, vnode: VNode, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, namespace: ElementNamespace, 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;
- declare function normalizeSuspenseChildren(vnode: VNode): void;
- export type RootHydrateFunction = (vnode: VNode<Node, Element>, container: (Element | ShadowRoot) & {
- _vnode?: VNode;
- }) => void;
- type Hook<T = () => void> = T | T[];
- export interface BaseTransitionProps<HostElement = RendererElement> {
- mode?: 'in-out' | 'out-in' | 'default';
- appear?: boolean;
- persisted?: boolean;
- onBeforeEnter?: Hook<(el: HostElement) => void>;
- onEnter?: Hook<(el: HostElement, done: () => void) => void>;
- onAfterEnter?: Hook<(el: HostElement) => void>;
- onEnterCancelled?: Hook<(el: HostElement) => void>;
- onBeforeLeave?: Hook<(el: HostElement) => void>;
- onLeave?: Hook<(el: HostElement, done: () => void) => void>;
- onAfterLeave?: Hook<(el: HostElement) => void>;
- onLeaveCancelled?: Hook<(el: HostElement) => void>;
- onBeforeAppear?: Hook<(el: HostElement) => void>;
- onAppear?: Hook<(el: HostElement, done: () => void) => void>;
- onAfterAppear?: Hook<(el: HostElement) => void>;
- onAppearCancelled?: Hook<(el: HostElement) => void>;
- }
- export interface TransitionHooks<HostElement = RendererElement> {
- mode: BaseTransitionProps['mode'];
- persisted: boolean;
- beforeEnter(el: HostElement): void;
- enter(el: HostElement): void;
- leave(el: HostElement, remove: () => void): void;
- clone(vnode: VNode): TransitionHooks<HostElement>;
- afterLeave?(): void;
- delayLeave?(el: HostElement, earlyRemove: () => void, delayedLeave: () => void): void;
- delayedLeave?(): void;
- }
- export interface TransitionState {
- isMounted: boolean;
- isLeaving: boolean;
- isUnmounting: boolean;
- leavingVNodes: Map<any, Record<string, VNode>>;
- }
- export declare function useTransitionState(): TransitionState;
- export declare const BaseTransitionPropsValidators: Record<string, any>;
- export declare const BaseTransition: {
- new (): {
- $props: BaseTransitionProps<any>;
- $slots: {
- default(): VNode[];
- };
- };
- };
- export declare function resolveTransitionHooks(vnode: VNode, props: BaseTransitionProps<any>, state: TransitionState, instance: ComponentInternalInstance, postClone?: (hooks: TransitionHooks) => void): TransitionHooks;
- export declare function setTransitionHooks(vnode: VNode, hooks: TransitionHooks): void;
- export declare function getTransitionRawChildren(children: VNode[], keepComment?: boolean, parentKey?: VNode['key']): VNode[];
- export interface Renderer<HostElement = RendererElement> {
- render: RootRenderFunction<HostElement>;
- createApp: CreateAppFunction<HostElement>;
- }
- export interface HydrationRenderer extends Renderer<Element | ShadowRoot> {
- hydrate: RootHydrateFunction;
- }
- export type ElementNamespace = 'svg' | 'mathml' | undefined;
- export type RootRenderFunction<HostElement = RendererElement> = (vnode: VNode | null, container: HostElement, namespace?: ElementNamespace) => void;
- export interface RendererOptions<HostNode = RendererNode, HostElement = RendererElement> {
- patchProp(el: HostElement, key: string, prevValue: any, nextValue: any, namespace?: ElementNamespace, parentComponent?: ComponentInternalInstance | null): void;
- insert(el: HostNode, parent: HostElement, anchor?: HostNode | null): void;
- remove(el: HostNode): void;
- createElement(type: string, namespace?: ElementNamespace, isCustomizedBuiltIn?: string, vnodeProps?: (VNodeProps & {
- [key: string]: any;
- }) | null): HostElement;
- createText(text: string): HostNode;
- createComment(text: string): HostNode;
- setText(node: HostNode, text: string): void;
- setElementText(node: HostElement, text: string): void;
- parentNode(node: HostNode): HostElement | null;
- nextSibling(node: HostNode): HostNode | null;
- querySelector?(selector: string): HostElement | null;
- setScopeId?(el: HostElement, id: string): void;
- cloneNode?(node: HostNode): HostNode;
- insertStaticContent?(content: string, parent: HostElement, anchor: HostNode | null, namespace: ElementNamespace, start?: HostNode | null, end?: HostNode | null): [HostNode, HostNode];
- }
- export interface RendererNode {
- [key: string | symbol]: any;
- }
- export interface RendererElement extends RendererNode {
- }
- interface RendererInternals<HostNode = RendererNode, HostElement = RendererElement> {
- p: PatchFn;
- um: UnmountFn;
- r: RemoveFn;
- m: MoveFn;
- mt: MountComponentFn;
- mc: MountChildrenFn;
- pc: PatchChildrenFn;
- pbc: PatchBlockChildrenFn;
- n: NextFn;
- o: RendererOptions<HostNode, HostElement>;
- }
- type PatchFn = (n1: VNode | null, // null means this is a mount
- n2: VNode, container: RendererElement, anchor?: RendererNode | null, parentComponent?: ComponentInternalInstance | null, parentSuspense?: SuspenseBoundary | null, namespace?: ElementNamespace, slotScopeIds?: string[] | null, optimized?: boolean) => void;
- type MountChildrenFn = (children: VNodeArrayChildren, container: RendererElement, anchor: RendererNode | null, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, namespace: ElementNamespace, slotScopeIds: string[] | null, optimized: boolean, start?: number) => void;
- type PatchChildrenFn = (n1: VNode | null, n2: VNode, container: RendererElement, anchor: RendererNode | null, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, namespace: ElementNamespace, slotScopeIds: string[] | null, optimized: boolean) => void;
- type PatchBlockChildrenFn = (oldChildren: VNode[], newChildren: VNode[], fallbackContainer: RendererElement, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, namespace: ElementNamespace, slotScopeIds: string[] | null) => void;
- type MoveFn = (vnode: VNode, container: RendererElement, anchor: RendererNode | null, type: MoveType, parentSuspense?: SuspenseBoundary | null) => void;
- type NextFn = (vnode: VNode) => RendererNode | null;
- type UnmountFn = (vnode: VNode, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, doRemove?: boolean, optimized?: boolean) => void;
- type RemoveFn = (vnode: VNode) => void;
- type MountComponentFn = (initialVNode: VNode, container: RendererElement, anchor: RendererNode | null, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, namespace: ElementNamespace, optimized: boolean) => void;
- type SetupRenderEffectFn = (instance: ComponentInternalInstance, initialVNode: VNode, container: RendererElement, anchor: RendererNode | null, parentSuspense: SuspenseBoundary | null, namespace: ElementNamespace, optimized: boolean) => void;
- declare enum MoveType {
- ENTER = 0,
- LEAVE = 1,
- REORDER = 2
- }
- /**
- * The createRenderer function accepts two generic arguments:
- * HostNode and HostElement, corresponding to Node and Element types in the
- * host environment. For example, for runtime-dom, HostNode would be the DOM
- * `Node` interface and HostElement would be the DOM `Element` interface.
- *
- * Custom renderers can pass in the platform specific types like this:
- *
- * ``` js
- * const { render, createApp } = createRenderer<Node, Element>({
- * patchProp,
- * ...nodeOps
- * })
- * ```
- */
- export declare function createRenderer<HostNode = RendererNode, HostElement = RendererElement>(options: RendererOptions<HostNode, HostElement>): Renderer<HostElement>;
- export declare function createHydrationRenderer(options: RendererOptions<Node, Element>): HydrationRenderer;
- type MatchPattern = string | RegExp | (string | RegExp)[];
- export interface KeepAliveProps {
- include?: MatchPattern;
- exclude?: MatchPattern;
- max?: number | string;
- }
- export declare const KeepAlive: {
- __isKeepAlive: true;
- new (): {
- $props: VNodeProps & KeepAliveProps;
- $slots: {
- default(): VNode[];
- };
- };
- };
- export declare function onActivated(hook: Function, target?: ComponentInternalInstance | null): void;
- export declare function onDeactivated(hook: Function, target?: ComponentInternalInstance | null): void;
- type CreateHook<T = any> = (hook: T, target?: ComponentInternalInstance | null) => void;
- export declare const onBeforeMount: CreateHook;
- export declare const onMounted: CreateHook;
- export declare const onBeforeUpdate: CreateHook;
- export declare const onUpdated: CreateHook;
- export declare const onBeforeUnmount: CreateHook;
- export declare const onUnmounted: CreateHook;
- export declare const onServerPrefetch: CreateHook;
- type DebuggerHook = (e: DebuggerEvent) => void;
- export declare const onRenderTriggered: CreateHook<DebuggerHook>;
- export declare const onRenderTracked: CreateHook<DebuggerHook>;
- type ErrorCapturedHook<TError = unknown> = (err: TError, instance: ComponentPublicInstance | null, info: string) => boolean | void;
- export declare function onErrorCaptured<TError = Error>(hook: ErrorCapturedHook<TError>, target?: ComponentInternalInstance | null): void;
- declare enum DeprecationTypes$1 {
- GLOBAL_MOUNT = "GLOBAL_MOUNT",
- GLOBAL_MOUNT_CONTAINER = "GLOBAL_MOUNT_CONTAINER",
- GLOBAL_EXTEND = "GLOBAL_EXTEND",
- GLOBAL_PROTOTYPE = "GLOBAL_PROTOTYPE",
- GLOBAL_SET = "GLOBAL_SET",
- GLOBAL_DELETE = "GLOBAL_DELETE",
- GLOBAL_OBSERVABLE = "GLOBAL_OBSERVABLE",
- GLOBAL_PRIVATE_UTIL = "GLOBAL_PRIVATE_UTIL",
- CONFIG_SILENT = "CONFIG_SILENT",
- CONFIG_DEVTOOLS = "CONFIG_DEVTOOLS",
- CONFIG_KEY_CODES = "CONFIG_KEY_CODES",
- CONFIG_PRODUCTION_TIP = "CONFIG_PRODUCTION_TIP",
- CONFIG_IGNORED_ELEMENTS = "CONFIG_IGNORED_ELEMENTS",
- CONFIG_WHITESPACE = "CONFIG_WHITESPACE",
- CONFIG_OPTION_MERGE_STRATS = "CONFIG_OPTION_MERGE_STRATS",
- INSTANCE_SET = "INSTANCE_SET",
- INSTANCE_DELETE = "INSTANCE_DELETE",
- INSTANCE_DESTROY = "INSTANCE_DESTROY",
- INSTANCE_EVENT_EMITTER = "INSTANCE_EVENT_EMITTER",
- INSTANCE_EVENT_HOOKS = "INSTANCE_EVENT_HOOKS",
- INSTANCE_CHILDREN = "INSTANCE_CHILDREN",
- INSTANCE_LISTENERS = "INSTANCE_LISTENERS",
- INSTANCE_SCOPED_SLOTS = "INSTANCE_SCOPED_SLOTS",
- INSTANCE_ATTRS_CLASS_STYLE = "INSTANCE_ATTRS_CLASS_STYLE",
- OPTIONS_DATA_FN = "OPTIONS_DATA_FN",
- OPTIONS_DATA_MERGE = "OPTIONS_DATA_MERGE",
- OPTIONS_BEFORE_DESTROY = "OPTIONS_BEFORE_DESTROY",
- OPTIONS_DESTROYED = "OPTIONS_DESTROYED",
- WATCH_ARRAY = "WATCH_ARRAY",
- PROPS_DEFAULT_THIS = "PROPS_DEFAULT_THIS",
- V_ON_KEYCODE_MODIFIER = "V_ON_KEYCODE_MODIFIER",
- CUSTOM_DIR = "CUSTOM_DIR",
- ATTR_FALSE_VALUE = "ATTR_FALSE_VALUE",
- ATTR_ENUMERATED_COERCION = "ATTR_ENUMERATED_COERCION",
- TRANSITION_CLASSES = "TRANSITION_CLASSES",
- TRANSITION_GROUP_ROOT = "TRANSITION_GROUP_ROOT",
- COMPONENT_ASYNC = "COMPONENT_ASYNC",
- COMPONENT_FUNCTIONAL = "COMPONENT_FUNCTIONAL",
- COMPONENT_V_MODEL = "COMPONENT_V_MODEL",
- RENDER_FUNCTION = "RENDER_FUNCTION",
- FILTERS = "FILTERS",
- PRIVATE_APIS = "PRIVATE_APIS"
- }
- type CompatConfig = Partial<Record<DeprecationTypes$1, boolean | 'suppress-warning'>> & {
- MODE?: 2 | 3 | ((comp: Component | null) => 2 | 3);
- };
- declare function configureCompat(config: CompatConfig): void;
- /**
- * Interface for declaring custom options.
- *
- * @example
- * ```ts
- * declare module 'vue' {
- * interface ComponentCustomOptions {
- * beforeRouteUpdate?(
- * to: Route,
- * from: Route,
- * next: () => void
- * ): void
- * }
- * }
- * ```
- */
- export interface ComponentCustomOptions {
- }
- export type RenderFunction = () => VNodeChild;
- export 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 = {}, I extends ComponentInjectOptions = {}, II extends string = string, S extends SlotsType = {}, LC extends Record<string, Component> = {}, Directives extends Record<string, Directive> = {}, Exposed extends string = string, Provide extends ComponentProvideOptions = ComponentProvideOptions> extends LegacyOptions<Props, D, C, M, Mixin, Extends, I, II, Provide>, ComponentInternalOptions, ComponentCustomOptions {
- setup?: (this: void, props: LooseRequired<Props & Prettify<UnwrapMixinsType<IntersectionMixin<Mixin> & IntersectionMixin<Extends>, 'P'>>>, ctx: SetupContext<E, S>) => Promise<RawBindings> | RawBindings | RenderFunction | void;
- name?: string;
- template?: string | object;
- render?: Function;
- components?: LC & Record<string, Component>;
- directives?: Directives & Record<string, Directive>;
- inheritAttrs?: boolean;
- emits?: (E | EE[]) & ThisType<void>;
- slots?: S;
- expose?: Exposed[];
- serverPrefetch?(): void | Promise<any>;
- compilerOptions?: RuntimeCompilerOptions;
- call?: (this: unknown, ...args: unknown[]) => never;
- __isFragment?: never;
- __isTeleport?: never;
- __isSuspense?: never;
- __defaults?: Defaults;
- }
- /**
- * Subset of compiler options that makes sense for the runtime.
- */
- export interface RuntimeCompilerOptions {
- isCustomElement?: (tag: string) => boolean;
- whitespace?: 'preserve' | 'condense';
- comments?: boolean;
- delimiters?: [string, string];
- }
- export 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, EE extends string = string, Defaults = {}, I extends ComponentInjectOptions = {}, II extends string = string, S extends SlotsType = {}, LC extends Record<string, Component> = {}, Directives extends Record<string, Directive> = {}, Exposed extends string = string, Provide extends ComponentProvideOptions = ComponentProvideOptions> = ComponentOptionsBase<Props, RawBindings, D, C, M, Mixin, Extends, E, EE, Defaults, I, II, S, LC, Directives, Exposed, Provide> & ThisType<CreateComponentPublicInstanceWithMixins<{}, RawBindings, D, C, M, Mixin, Extends, E, Readonly<Props>, Defaults, false, I, S, LC, Directives>>;
- export type ComponentOptionsMixin = ComponentOptionsBase<any, any, any, any, any, any, any, any, any, any, any, any, any, any, any, any, any>;
- export type ComputedOptions = Record<string, ComputedGetter<any> | WritableComputedOptions<any>>;
- export interface MethodOptions {
- [key: string]: Function;
- }
- type ExtractComputedReturns<T extends any> = {
- [key in keyof T]: T[key] extends {
- get: (...args: any[]) => infer TReturn;
- } ? TReturn : T[key] extends (...args: any[]) => infer TReturn ? TReturn : never;
- };
- type ObjectWatchOptionItem = {
- handler: WatchCallback | string;
- } & WatchOptions;
- type WatchOptionItem = string | WatchCallback | ObjectWatchOptionItem;
- type ComponentWatchOptionItem = WatchOptionItem | WatchOptionItem[];
- type ComponentWatchOptions = Record<string, ComponentWatchOptionItem>;
- export type ComponentProvideOptions = ObjectProvideOptions | Function;
- type ObjectProvideOptions = Record<string | symbol, unknown>;
- export type ComponentInjectOptions = string[] | ObjectInjectOptions;
- type ObjectInjectOptions = Record<string | symbol, string | symbol | {
- from?: string | symbol;
- default?: unknown;
- }>;
- type InjectToObject<T extends ComponentInjectOptions> = T extends string[] ? {
- [K in T[number]]?: unknown;
- } : T extends ObjectInjectOptions ? {
- [K in keyof T]?: unknown;
- } : never;
- interface LegacyOptions<Props, D, C extends ComputedOptions, M extends MethodOptions, Mixin extends ComponentOptionsMixin, Extends extends ComponentOptionsMixin, I extends ComponentInjectOptions, II extends string, Provide extends ComponentProvideOptions = ComponentProvideOptions> {
- compatConfig?: CompatConfig;
- [key: string]: any;
- data?: (this: CreateComponentPublicInstanceWithMixins<Props, {}, {}, {}, MethodOptions, Mixin, Extends>, vm: CreateComponentPublicInstanceWithMixins<Props, {}, {}, {}, MethodOptions, Mixin, Extends>) => D;
- computed?: C;
- methods?: M;
- watch?: ComponentWatchOptions;
- provide?: Provide;
- inject?: I | II[];
- filters?: Record<string, Function>;
- mixins?: Mixin[];
- extends?: Extends;
- beforeCreate?(): void;
- created?(): void;
- beforeMount?(): void;
- mounted?(): void;
- beforeUpdate?(): void;
- updated?(): void;
- activated?(): void;
- deactivated?(): void;
- /** @deprecated use `beforeUnmount` instead */
- beforeDestroy?(): void;
- beforeUnmount?(): void;
- /** @deprecated use `unmounted` instead */
- destroyed?(): void;
- unmounted?(): void;
- renderTracked?: DebuggerHook;
- renderTriggered?: DebuggerHook;
- errorCaptured?: ErrorCapturedHook;
- /**
- * runtime compile only
- * @deprecated use `compilerOptions.delimiters` instead.
- */
- delimiters?: [string, string];
- /**
- * #3468
- *
- * type-only, used to assist Mixin's type inference,
- * typescript will try to simplify the inferred `Mixin` type,
- * with the `__differentiator`, typescript won't be able to combine different mixins,
- * because the `__differentiator` will be different
- */
- __differentiator?: keyof D | keyof C | keyof M;
- }
- type MergedHook<T = () => void> = T | T[];
- type MergedComponentOptionsOverride = {
- beforeCreate?: MergedHook;
- created?: MergedHook;
- beforeMount?: MergedHook;
- mounted?: MergedHook;
- beforeUpdate?: MergedHook;
- updated?: MergedHook;
- activated?: MergedHook;
- deactivated?: MergedHook;
- /** @deprecated use `beforeUnmount` instead */
- beforeDestroy?: MergedHook;
- beforeUnmount?: MergedHook;
- /** @deprecated use `unmounted` instead */
- destroyed?: MergedHook;
- unmounted?: MergedHook;
- renderTracked?: MergedHook<DebuggerHook>;
- renderTriggered?: MergedHook<DebuggerHook>;
- errorCaptured?: MergedHook<ErrorCapturedHook>;
- };
- type OptionTypesKeys = 'P' | 'B' | 'D' | 'C' | 'M' | 'Defaults';
- type OptionTypesType<P = {}, B = {}, D = {}, C extends ComputedOptions = {}, M extends MethodOptions = {}, Defaults = {}> = {
- P: P;
- B: B;
- D: D;
- C: C;
- M: M;
- Defaults: Defaults;
- };
- /**
- * @deprecated
- */
- export type ComponentOptionsWithoutProps<Props = {}, RawBindings = {}, D = {}, C extends ComputedOptions = {}, M extends MethodOptions = {}, Mixin extends ComponentOptionsMixin = ComponentOptionsMixin, Extends extends ComponentOptionsMixin = ComponentOptionsMixin, E extends EmitsOptions = {}, EE extends string = string, I extends ComponentInjectOptions = {}, II extends string = string, S extends SlotsType = {}, LC extends Record<string, Component> = {}, Directives extends Record<string, Directive> = {}, Exposed extends string = string, Provide extends ComponentProvideOptions = ComponentProvideOptions, TE extends ComponentTypeEmits = {}, ResolvedEmits extends EmitsOptions = {} extends E ? TypeEmitsToOptions<TE> : E, PE = Props & EmitsToProps<ResolvedEmits>> = ComponentOptionsBase<PE, RawBindings, D, C, M, Mixin, Extends, E, EE, {}, I, II, S, LC, Directives, Exposed, Provide> & {
- props?: never;
- /**
- * @private for language-tools use only
- */
- __typeProps?: Props;
- /**
- * @private for language-tools use only
- */
- __typeEmits?: TE;
- } & ThisType<CreateComponentPublicInstanceWithMixins<PE, RawBindings, D, C, M, Mixin, Extends, ResolvedEmits, EE, {}, false, I, S, LC, Directives, Exposed>>;
- /**
- * @deprecated
- */
- export 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, I extends ComponentInjectOptions = {}, II extends string = string, S extends SlotsType = {}, LC extends Record<string, Component> = {}, Directives extends Record<string, Directive> = {}, Exposed extends string = string, Provide extends ComponentProvideOptions = ComponentProvideOptions, Props = Prettify<Readonly<{
- [key in PropNames]?: any;
- } & EmitsToProps<E>>>> = ComponentOptionsBase<Props, RawBindings, D, C, M, Mixin, Extends, E, EE, {}, I, II, S, LC, Directives, Exposed, Provide> & {
- props: PropNames[];
- } & ThisType<CreateComponentPublicInstanceWithMixins<Props, RawBindings, D, C, M, Mixin, Extends, E, Props, {}, false, I, S, LC, Directives, Exposed>>;
- /**
- * @deprecated
- */
- export 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, I extends ComponentInjectOptions = {}, II extends string = string, S extends SlotsType = {}, LC extends Record<string, Component> = {}, Directives extends Record<string, Directive> = {}, Exposed extends string = string, Provide extends ComponentProvideOptions = ComponentProvideOptions, Props = Prettify<Readonly<ExtractPropTypes<PropsOptions>> & Readonly<EmitsToProps<E>>>, Defaults = ExtractDefaultPropTypes<PropsOptions>> = ComponentOptionsBase<Props, RawBindings, D, C, M, Mixin, Extends, E, EE, Defaults, I, II, S, LC, Directives, Exposed, Provide> & {
- props: PropsOptions & ThisType<void>;
- } & ThisType<CreateComponentPublicInstanceWithMixins<Props, RawBindings, D, C, M, Mixin, Extends, E, Props, Defaults, false, I, S, LC, Directives>>;
- interface InjectionConstraint<T> {
- }
- export type InjectionKey<T> = symbol & InjectionConstraint<T>;
- export declare function provide<T, K = InjectionKey<T> | string | number>(key: K, value: K extends InjectionKey<infer V> ? V : T): void;
- export declare function inject<T>(key: InjectionKey<T> | string): T | undefined;
- export declare function inject<T>(key: InjectionKey<T> | string, defaultValue: T, treatDefaultAsFactory?: false): T;
- export declare function inject<T>(key: InjectionKey<T> | string, defaultValue: T | (() => T), treatDefaultAsFactory: true): T;
- /**
- * Returns true if `inject()` can be used without warning about being called in the wrong place (e.g. outside of
- * setup()). This is used by libraries that want to use `inject()` internally without triggering a warning to the end
- * user. One example is `useRoute()` in `vue-router`.
- */
- export declare function hasInjectionContext(): boolean;
- export type PublicProps = VNodeProps & AllowedComponentProps & ComponentCustomProps;
- type ResolveProps<PropsOrPropOptions, E extends EmitsOptions> = Readonly<PropsOrPropOptions extends ComponentPropsOptions ? ExtractPropTypes<PropsOrPropOptions> : PropsOrPropOptions> & ({} extends E ? {} : EmitsToProps<E>);
- export 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 = ResolveProps<PropsOrPropOptions, E>, Defaults = ExtractDefaultPropTypes<PropsOrPropOptions>, S extends SlotsType = {}, LC extends Record<string, Component> = {}, Directives extends Record<string, Directive> = {}, Exposed extends string = string, Provide extends ComponentProvideOptions = ComponentProvideOptions, MakeDefaultsOptional extends boolean = true, TypeRefs extends Record<string, unknown> = {}, TypeEl extends Element = any> = ComponentPublicInstanceConstructor<CreateComponentPublicInstanceWithMixins<Props, RawBindings, D, C, M, Mixin, Extends, E, PP, Defaults, MakeDefaultsOptional, {}, S, LC & GlobalComponents, Directives & GlobalDirectives, Exposed, TypeRefs, TypeEl>> & ComponentOptionsBase<Props, RawBindings, D, C, M, Mixin, Extends, E, EE, Defaults, {}, string, S, LC & GlobalComponents, Directives & GlobalDirectives, Exposed, Provide> & PP;
- export type DefineSetupFnComponent<P extends Record<string, any>, E extends EmitsOptions = {}, S extends SlotsType = SlotsType, Props = P & EmitsToProps<E>, PP = PublicProps> = new (props: Props & PP) => CreateComponentPublicInstanceWithMixins<Props, {}, {}, {}, {}, ComponentOptionsMixin, ComponentOptionsMixin, E, PP, {}, false, {}, S>;
- type ToResolvedProps<Props, Emits extends EmitsOptions> = Readonly<Props> & Readonly<EmitsToProps<Emits>>;
- export declare function defineComponent<Props extends Record<string, any>, E extends EmitsOptions = {}, EE extends string = string, S extends SlotsType = {}>(setup: (props: Props, ctx: SetupContext<E, S>) => RenderFunction | Promise<RenderFunction>, options?: Pick<ComponentOptions, 'name' | 'inheritAttrs'> & {
- props?: (keyof Props)[];
- emits?: E | EE[];
- slots?: S;
- }): DefineSetupFnComponent<Props, E, S>;
- export declare function defineComponent<Props extends Record<string, any>, E extends EmitsOptions = {}, EE extends string = string, S extends SlotsType = {}>(setup: (props: Props, ctx: SetupContext<E, S>) => RenderFunction | Promise<RenderFunction>, options?: Pick<ComponentOptions, 'name' | 'inheritAttrs'> & {
- props?: ComponentObjectPropsOptions<Props>;
- emits?: E | EE[];
- slots?: S;
- }): DefineSetupFnComponent<Props, E, S>;
- export declare function defineComponent<TypeProps, RuntimePropsOptions extends ComponentObjectPropsOptions = ComponentObjectPropsOptions, RuntimePropsKeys extends string = string, TypeEmits extends ComponentTypeEmits = {}, RuntimeEmitsOptions extends EmitsOptions = {}, RuntimeEmitsKeys extends string = string, Data = {}, SetupBindings = {}, Computed extends ComputedOptions = {}, Methods extends MethodOptions = {}, Mixin extends ComponentOptionsMixin = ComponentOptionsMixin, Extends extends ComponentOptionsMixin = ComponentOptionsMixin, InjectOptions extends ComponentInjectOptions = {}, InjectKeys extends string = string, Slots extends SlotsType = {}, LocalComponents extends Record<string, Component> = {}, Directives extends Record<string, Directive> = {}, Exposed extends string = string, Provide extends ComponentProvideOptions = ComponentProvideOptions, ResolvedEmits extends EmitsOptions = {} extends RuntimeEmitsOptions ? TypeEmitsToOptions<TypeEmits> : RuntimeEmitsOptions, InferredProps = IsKeyValues<TypeProps> extends true ? TypeProps : string extends RuntimePropsKeys ? ComponentObjectPropsOptions extends RuntimePropsOptions ? {} : ExtractPropTypes<RuntimePropsOptions> : {
- [key in RuntimePropsKeys]?: any;
- }, TypeRefs extends Record<string, unknown> = {}, TypeEl extends Element = any>(options: {
- props?: (RuntimePropsOptions & ThisType<void>) | RuntimePropsKeys[];
- /**
- * @private for language-tools use only
- */
- __typeProps?: TypeProps;
- /**
- * @private for language-tools use only
- */
- __typeEmits?: TypeEmits;
- /**
- * @private for language-tools use only
- */
- __typeRefs?: TypeRefs;
- /**
- * @private for language-tools use only
- */
- __typeEl?: TypeEl;
- } & ComponentOptionsBase<ToResolvedProps<InferredProps, ResolvedEmits>, SetupBindings, Data, Computed, Methods, Mixin, Extends, RuntimeEmitsOptions, RuntimeEmitsKeys, {}, // Defaults
- InjectOptions, InjectKeys, Slots, LocalComponents, Directives, Exposed, Provide> & ThisType<CreateComponentPublicInstanceWithMixins<ToResolvedProps<InferredProps, ResolvedEmits>, SetupBindings, Data, Computed, Methods, Mixin, Extends, ResolvedEmits, {}, {}, false, InjectOptions, Slots, LocalComponents, Directives, Exposed>>): DefineComponent<InferredProps, SetupBindings, Data, Computed, Methods, Mixin, Extends, ResolvedEmits, RuntimeEmitsKeys, PublicProps, ToResolvedProps<InferredProps, ResolvedEmits>, ExtractDefaultPropTypes<RuntimePropsOptions>, Slots, LocalComponents, Directives, Exposed, Provide, unknown extends TypeProps ? true : false, TypeRefs, TypeEl>;
- export interface App<HostElement = any> {
- version: string;
- config: AppConfig;
- use<Options extends unknown[]>(plugin: Plugin<Options>, ...options: Options): this;
- use<Options>(plugin: Plugin<Options>, options: Options): this;
- mixin(mixin: ComponentOptions): this;
- component(name: string): Component | undefined;
- component<T extends Component | DefineComponent>(name: string, component: T): this;
- directive<HostElement = any, Value = any, Modifiers extends string = string, Arg extends string = string>(name: string): Directive<HostElement, Value, Modifiers, Arg> | undefined;
- directive<HostElement = any, Value = any, Modifiers extends string = string, Arg extends string = string>(name: string, directive: Directive<HostElement, Value, Modifiers, Arg>): this;
- mount(rootContainer: HostElement | string,
- /**
- * @internal
- */
- isHydrate?: boolean,
- /**
- * @internal
- */
- namespace?: boolean | ElementNamespace,
- /**
- * @internal
- */
- vnode?: VNode): ComponentPublicInstance;
- unmount(): void;
- onUnmount(cb: () => void): void;
- provide<T, K = InjectionKey<T> | string | number>(key: K, value: K extends InjectionKey<infer V> ? V : T): this;
- /**
- * Runs a function with the app as active instance. This allows using of `inject()` within the function to get access
- * to variables provided via `app.provide()`.
- *
- * @param fn - function to run with the app as active instance
- */
- runWithContext<T>(fn: () => T): T;
- _uid: number;
- _component: ConcreteComponent;
- _props: Data | null;
- _container: HostElement | null;
- _context: AppContext;
- _instance: ComponentInternalInstance | null;
- /**
- * v2 compat only
- */
- filter?(name: string): Function | undefined;
- filter?(name: string, filter: Function): this;
- }
- export type OptionMergeFunction = (to: unknown, from: unknown) => any;
- export interface AppConfig {
- readonly isNativeTag: (tag: string) => boolean;
- performance: boolean;
- optionMergeStrategies: Record<string, OptionMergeFunction>;
- globalProperties: ComponentCustomProperties & Record<string, any>;
- errorHandler?: (err: unknown, instance: ComponentPublicInstance | null, info: string) => void;
- warnHandler?: (msg: string, instance: ComponentPublicInstance | null, trace: string) => void;
- /**
- * Options to pass to `@vue/compiler-dom`.
- * Only supported in runtime compiler build.
- */
- compilerOptions: RuntimeCompilerOptions;
- /**
- * @deprecated use config.compilerOptions.isCustomElement
- */
- isCustomElement?: (tag: string) => boolean;
- /**
- * TODO document for 3.5
- * Enable warnings for computed getters that recursively trigger itself.
- */
- warnRecursiveComputed?: boolean;
- /**
- * Whether to throw unhandled errors in production.
- * Default is `false` to avoid crashing on any error (and only logs it)
- * But in some cases, e.g. SSR, throwing might be more desirable.
- */
- throwUnhandledErrorInProduction?: boolean;
- /**
- * Prefix for all useId() calls within this app
- */
- idPrefix?: string;
- }
- export interface AppContext {
- app: App;
- config: AppConfig;
- mixins: ComponentOptions[];
- components: Record<string, Component>;
- directives: Record<string, Directive>;
- provides: Record<string | symbol, any>;
- }
- type PluginInstallFunction<Options = any[]> = Options extends unknown[] ? (app: App, ...options: Options) => any : (app: App, options: Options) => any;
- export type ObjectPlugin<Options = any[]> = {
- install: PluginInstallFunction<Options>;
- };
- export type FunctionPlugin<Options = any[]> = PluginInstallFunction<Options> & Partial<ObjectPlugin<Options>>;
- export type Plugin<Options = any[]> = FunctionPlugin<Options> | ObjectPlugin<Options>;
- export type CreateAppFunction<HostElement> = (rootComponent: Component, rootProps?: Data | null) => App<HostElement>;
- type TeleportVNode = VNode<RendererNode, RendererElement, TeleportProps>;
- export interface TeleportProps {
- to: string | RendererElement | null | undefined;
- disabled?: boolean;
- defer?: boolean;
- }
- declare const TeleportImpl: {
- name: string;
- __isTeleport: boolean;
- process(n1: TeleportVNode | null, n2: TeleportVNode, container: RendererElement, anchor: RendererNode | null, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, namespace: ElementNamespace, slotScopeIds: string[] | null, optimized: boolean, internals: RendererInternals): void;
- remove(vnode: VNode, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, { um: unmount, o: { remove: hostRemove } }: RendererInternals, doRemove: boolean): void;
- move: typeof moveTeleport;
- hydrate: typeof hydrateTeleport;
- };
- declare enum TeleportMoveTypes {
- TARGET_CHANGE = 0,
- TOGGLE = 1,// enable / disable
- REORDER = 2
- }
- declare function moveTeleport(vnode: VNode, container: RendererElement, parentAnchor: RendererNode | null, { o: { insert }, m: move }: RendererInternals, moveType?: TeleportMoveTypes): void;
- declare function hydrateTeleport(node: Node, vnode: TeleportVNode, parentComponent: ComponentInternalInstance | null, parentSuspense: SuspenseBoundary | null, slotScopeIds: string[] | null, optimized: boolean, { o: { nextSibling, parentNode, querySelector, insert, createText }, }: 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;
- export declare const Teleport: {
- __isTeleport: true;
- new (): {
- $props: VNodeProps & TeleportProps;
- $slots: {
- default(): VNode[];
- };
- };
- };
- /**
- * @private
- */
- export declare function resolveComponent(name: string, maybeSelfReference?: boolean): ConcreteComponent | string;
- declare const NULL_DYNAMIC_COMPONENT: unique symbol;
- /**
- * @private
- */
- export declare function resolveDynamicComponent(component: unknown): VNodeTypes;
- /**
- * @private
- */
- export declare function resolveDirective(name: string): Directive | undefined;
- export declare const Fragment: {
- __isFragment: true;
- new (): {
- $props: VNodeProps;
- };
- };
- export declare const Text: unique symbol;
- export declare const Comment: unique symbol;
- export declare const Static: unique symbol;
- export type VNodeTypes = string | VNode | Component | typeof Text | typeof Static | typeof Comment | typeof Fragment | typeof Teleport | typeof TeleportImpl | typeof Suspense | typeof SuspenseImpl;
- export type VNodeRef = string | Ref | ((ref: Element | ComponentPublicInstance | null, refs: Record<string, any>) => void);
- type VNodeNormalizedRefAtom = {
- /**
- * component instance
- */
- i: ComponentInternalInstance;
- /**
- * Actual ref
- */
- r: VNodeRef;
- /**
- * setup ref key
- */
- k?: string;
- /**
- * refInFor marker
- */
- f?: boolean;
- };
- type VNodeNormalizedRef = VNodeNormalizedRefAtom | VNodeNormalizedRefAtom[];
- type VNodeMountHook = (vnode: VNode) => void;
- type VNodeUpdateHook = (vnode: VNode, oldVNode: VNode) => void;
- export type VNodeProps = {
- key?: PropertyKey;
- ref?: VNodeRef;
- ref_for?: boolean;
- ref_key?: string;
- onVnodeBeforeMount?: VNodeMountHook | VNodeMountHook[];
- onVnodeMounted?: VNodeMountHook | VNodeMountHook[];
- onVnodeBeforeUpdate?: VNodeUpdateHook | VNodeUpdateHook[];
- onVnodeUpdated?: VNodeUpdateHook | VNodeUpdateHook[];
- onVnodeBeforeUnmount?: VNodeMountHook | VNodeMountHook[];
- onVnodeUnmounted?: VNodeMountHook | VNodeMountHook[];
- };
- type VNodeChildAtom = VNode | string | number | boolean | null | undefined | void;
- export type VNodeArrayChildren = Array<VNodeArrayChildren | VNodeChildAtom>;
- export type VNodeChild = VNodeChildAtom | VNodeArrayChildren;
- export type VNodeNormalizedChildren = string | VNodeArrayChildren | RawSlots | null;
- export interface VNode<HostNode = RendererNode, HostElement = RendererElement, ExtraProps = {
- [key: string]: any;
- }> {
- type: VNodeTypes;
- props: (VNodeProps & ExtraProps) | null;
- key: PropertyKey | null;
- ref: VNodeNormalizedRef | null;
- /**
- * SFC only. This is assigned on vnode creation using currentScopeId
- * which is set alongside currentRenderingInstance.
- */
- scopeId: string | null;
- children: VNodeNormalizedChildren;
- component: ComponentInternalInstance | null;
- dirs: DirectiveBinding[] | null;
- transition: TransitionHooks<HostElement> | null;
- el: HostNode | null;
- anchor: HostNode | null;
- target: HostElement | null;
- targetStart: HostNode | null;
- targetAnchor: HostNode | null;
- suspense: SuspenseBoundary | null;
- shapeFlag: number;
- patchFlag: number;
- appContext: AppContext | null;
- }
- /**
- * Open a block.
- * This must be called before `createBlock`. It cannot be part of `createBlock`
- * because the children of the block are evaluated before `createBlock` itself
- * is called. The generated code typically looks like this:
- *
- * ```js
- * function render() {
- * return (openBlock(),createBlock('div', null, [...]))
- * }
- * ```
- * disableTracking is true when creating a v-for fragment block, since a v-for
- * fragment always diffs its children.
- *
- * @private
- */
- export declare function openBlock(disableTracking?: boolean): void;
- /**
- * Block tracking sometimes needs to be disabled, for example during the
- * creation of a tree that needs to be cached by v-once. The compiler generates
- * code like this:
- *
- * ``` js
- * _cache[1] || (
- * setBlockTracking(-1),
- * _cache[1] = createVNode(...),
- * setBlockTracking(1),
- * _cache[1]
- * )
- * ```
- *
- * @private
- */
- export declare function setBlockTracking(value: number): void;
- /**
- * @private
- */
- export declare function createElementBlock(type: string | typeof Fragment, props?: Record<string, any> | null, children?: any, patchFlag?: number, dynamicProps?: string[], shapeFlag?: number): VNode;
- /**
- * Create a block root vnode. Takes the same exact arguments as `createVNode`.
- * A block root keeps track of dynamic nodes within the block in the
- * `dynamicChildren` array.
- *
- * @private
- */
- export declare function createBlock(type: VNodeTypes | ClassComponent, props?: Record<string, any> | null, children?: any, patchFlag?: number, dynamicProps?: string[]): VNode;
- export declare function isVNode(value: any): value is VNode;
- declare let vnodeArgsTransformer: ((args: Parameters<typeof _createVNode>, instance: ComponentInternalInstance | null) => Parameters<typeof _createVNode>) | undefined;
- /**
- * Internal API for registering an arguments transform for createVNode
- * used for creating stubs in the test-utils
- * It is *internal* but needs to be exposed for test-utils to pick up proper
- * typings
- */
- export declare function transformVNodeArgs(transformer?: typeof vnodeArgsTransformer): void;
- export declare function createBaseVNode(type: VNodeTypes | ClassComponent | typeof NULL_DYNAMIC_COMPONENT, props?: (Data & VNodeProps) | null, children?: unknown, patchFlag?: number, dynamicProps?: string[] | null, shapeFlag?: number, isBlockNode?: boolean, needFullChildrenNormalization?: boolean): VNode;
- export declare const createVNode: typeof _createVNode;
- declare function _createVNode(type: VNodeTypes | ClassComponent | typeof NULL_DYNAMIC_COMPONENT, props?: (Data & VNodeProps) | null, children?: unknown, patchFlag?: number, dynamicProps?: string[] | null, isBlockNode?: boolean): VNode;
- export declare function guardReactiveProps(props: (Data & VNodeProps) | null): (Data & VNodeProps) | null;
- export declare function cloneVNode<T, U>(vnode: VNode<T, U>, extraProps?: (Data & VNodeProps) | null, mergeRef?: boolean, cloneTransition?: boolean): VNode<T, U>;
- /**
- * @private
- */
- export declare function createTextVNode(text?: string, flag?: number): VNode;
- /**
- * @private
- */
- export declare function createStaticVNode(content: string, numberOfNodes: number): VNode;
- /**
- * @private
- */
- export declare function createCommentVNode(text?: string, asBlock?: boolean): VNode;
- export declare function mergeProps(...args: (Data & VNodeProps)[]): Data;
- type Data = Record<string, unknown>;
- /**
- * Public utility type for extracting the instance type of a component.
- * Works with all valid component definition types. This is intended to replace
- * the usage of `InstanceType<typeof Comp>` which only works for
- * constructor-based component definition types.
- *
- * @example
- * ```ts
- * const MyComp = { ... }
- * declare const instance: ComponentInstance<typeof MyComp>
- * ```
- */
- export type ComponentInstance<T> = T extends {
- new (): ComponentPublicInstance;
- } ? InstanceType<T> : T extends FunctionalComponent<infer Props, infer Emits> ? ComponentPublicInstance<Props, {}, {}, {}, {}, ShortEmitsToObject<Emits>> : T extends Component<infer Props, infer RawBindings, infer D, infer C, infer M> ? ComponentPublicInstance<unknown extends Props ? {} : Props, unknown extends RawBindings ? {} : RawBindings, unknown extends D ? {} : D, C, M> : never;
- /**
- * For extending allowed non-declared props on components in TSX
- */
- export interface ComponentCustomProps {
- }
- /**
- * For globally defined Directives
- * Here is an example of adding a directive `VTooltip` as global directive:
- *
- * @example
- * ```ts
- * import VTooltip from 'v-tooltip'
- *
- * declare module '@vue/runtime-core' {
- * interface GlobalDirectives {
- * VTooltip
- * }
- * }
- * ```
- */
- export interface GlobalDirectives {
- }
- /**
- * For globally defined Components
- * Here is an example of adding a component `RouterView` as global component:
- *
- * @example
- * ```ts
- * import { RouterView } from 'vue-router'
- *
- * declare module '@vue/runtime-core' {
- * interface GlobalComponents {
- * RouterView
- * }
- * }
- * ```
- */
- export interface GlobalComponents {
- Teleport: DefineComponent<TeleportProps>;
- Suspense: DefineComponent<SuspenseProps>;
- KeepAlive: DefineComponent<KeepAliveProps>;
- BaseTransition: DefineComponent<BaseTransitionProps>;
- }
- /**
- * Default allowed non-declared props on component in TSX
- */
- export interface AllowedComponentProps {
- class?: unknown;
- style?: unknown;
- }
- interface ComponentInternalOptions {
- /**
- * Compat build only, for bailing out of certain compatibility behavior
- */
- __isBuiltIn?: boolean;
- /**
- * This one should be exposed so that devtools can make use of it
- */
- __file?: string;
- /**
- * name inferred from filename
- */
- __name?: string;
- }
- export interface FunctionalComponent<P = {}, E extends EmitsOptions | Record<string, any[]> = {}, S extends Record<string, any> = any, EE extends EmitsOptions = ShortEmitsToObject<E>> extends ComponentInternalOptions {
- (props: P & EmitsToProps<EE>, ctx: Omit<SetupContext<EE, IfAny<S, {}, SlotsType<S>>>, 'expose'>): any;
- props?: ComponentPropsOptions<P>;
- emits?: EE | (keyof EE)[];
- slots?: IfAny<S, Slots, SlotsType<S>>;
- inheritAttrs?: boolean;
- displayName?: string;
- compatConfig?: CompatConfig;
- }
- interface ClassComponent {
- new (...args: any[]): ComponentPublicInstance<any, any, any, any, any>;
- __vccOpts: ComponentOptions;
- }
- /**
- * Concrete component type matches its actual value: it's either an options
- * object, or a function. Use this where the code expects to work with actual
- * values, e.g. checking if its a function or not. This is mostly for internal
- * implementation code.
- */
- export type ConcreteComponent<Props = {}, RawBindings = any, D = any, C extends ComputedOptions = ComputedOptions, M extends MethodOptions = MethodOptions, E extends EmitsOptions | Record<string, any[]> = {}, S extends Record<string, any> = any> = ComponentOptions<Props, RawBindings, D, C, M> | FunctionalComponent<Props, E, S>;
- /**
- * A type used in public APIs where a component type is expected.
- * The constructor type is an artificial type returned by defineComponent().
- */
- export type Component<Props = any, RawBindings = any, D = any, C extends ComputedOptions = ComputedOptions, M extends MethodOptions = MethodOptions, E extends EmitsOptions | Record<string, any[]> = {}, S extends Record<string, any> = any> = ConcreteComponent<Props, RawBindings, D, C, M, E, S> | ComponentPublicInstanceConstructor<Props>;
- export type SetupContext<E = EmitsOptions, S extends SlotsType = {}> = E extends any ? {
- attrs: Data;
- slots: UnwrapSlotsType<S>;
- emit: EmitFn<E>;
- expose: <Exposed extends Record<string, any> = Record<string, any>>(exposed?: Exposed) => void;
- } : never;
- /**
- * We expose a subset of properties on the internal instance as they are
- * useful for advanced external libraries and tools.
- */
- export interface ComponentInternalInstance {
- uid: number;
- type: ConcreteComponent;
- parent: ComponentInternalInstance | null;
- root: ComponentInternalInstance;
- appContext: AppContext;
- /**
- * Vnode representing this component in its parent's vdom tree
- */
- vnode: VNode;
- /**
- * Root vnode of this component's own vdom tree
- */
- subTree: VNode;
- /**
- * Render effect instance
- */
- effect: ReactiveEffect;
- /**
- * Force update render effect
- */
- update: () => void;
- /**
- * Render effect job to be passed to scheduler (checks if dirty)
- */
- job: SchedulerJob;
- proxy: ComponentPublicInstance | null;
- exposed: Record<string, any> | null;
- exposeProxy: Record<string, any> | null;
- data: Data;
- props: Data;
- attrs: Data;
- slots: InternalSlots;
- refs: Data;
- emit: EmitFn;
- isMounted: boolean;
- isUnmounted: boolean;
- isDeactivated: boolean;
- }
- export declare const getCurrentInstance: () => ComponentInternalInstance | null;
- /**
- * For runtime-dom to register the compiler.
- * Note the exported method uses any to avoid d.ts relying on the compiler types.
- */
- export declare function registerRuntimeCompiler(_compile: any): void;
- export declare const isRuntimeOnly: () => boolean;
- export interface ComponentCustomElementInterface {
- }
- type MaybeUndefined<T, I> = I extends true ? T | undefined : T;
- type MapSources<T, Immediate> = {
- [K in keyof T]: T[K] extends WatchSource<infer V> ? MaybeUndefined<V, Immediate> : T[K] extends object ? MaybeUndefined<T[K], Immediate> : never;
- };
- export interface WatchEffectOptions extends DebuggerOptions {
- flush?: 'pre' | 'post' | 'sync';
- }
- export interface WatchOptions<Immediate = boolean> extends WatchEffectOptions {
- immediate?: Immediate;
- deep?: boolean | number;
- once?: boolean;
- }
- export declare function watchEffect(effect: WatchEffect, options?: WatchEffectOptions): WatchHandle;
- export declare function watchPostEffect(effect: WatchEffect, options?: DebuggerOptions): WatchHandle;
- export declare function watchSyncEffect(effect: WatchEffect, options?: DebuggerOptions): WatchHandle;
- export type MultiWatchSources = (WatchSource<unknown> | object)[];
- export declare function watch<T, Immediate extends Readonly<boolean> = false>(source: WatchSource<T>, cb: WatchCallback<T, MaybeUndefined<T, Immediate>>, options?: WatchOptions<Immediate>): WatchHandle;
- export declare function watch<T extends Readonly<MultiWatchSources>, Immediate extends Readonly<boolean> = false>(sources: readonly [...T] | T, cb: [T] extends [ReactiveMarker] ? WatchCallback<T, MaybeUndefined<T, Immediate>> : WatchCallback<MapSources<T, false>, MapSources<T, Immediate>>, options?: WatchOptions<Immediate>): WatchHandle;
- 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>): WatchHandle;
- export declare function watch<T extends object, Immediate extends Readonly<boolean> = false>(source: T, cb: WatchCallback<T, MaybeUndefined<T, Immediate>>, options?: WatchOptions<Immediate>): WatchHandle;
- /**
- * A lazy hydration strategy for async components.
- * @param hydrate - call this to perform the actual hydration.
- * @param forEachElement - iterate through the root elements of the component's
- * non-hydrated DOM, accounting for possible fragments.
- * @returns a teardown function to be called if the async component is unmounted
- * before it is hydrated. This can be used to e.g. remove DOM event
- * listeners.
- */
- export type HydrationStrategy = (hydrate: () => void, forEachElement: (cb: (el: Element) => any) => void) => (() => void) | void;
- export type HydrationStrategyFactory<Options> = (options?: Options) => HydrationStrategy;
- export declare const hydrateOnIdle: HydrationStrategyFactory<number>;
- export declare const hydrateOnVisible: HydrationStrategyFactory<IntersectionObserverInit>;
- export declare const hydrateOnMediaQuery: HydrationStrategyFactory<string>;
- export declare const hydrateOnInteraction: HydrationStrategyFactory<keyof HTMLElementEventMap | Array<keyof HTMLElementEventMap>>;
- type AsyncComponentResolveResult<T = Component> = T | {
- default: T;
- };
- export type AsyncComponentLoader<T = any> = () => Promise<AsyncComponentResolveResult<T>>;
- export interface AsyncComponentOptions<T = any> {
- loader: AsyncComponentLoader<T>;
- loadingComponent?: Component;
- errorComponent?: Component;
- delay?: number;
- timeout?: number;
- suspensible?: boolean;
- hydrate?: HydrationStrategy;
- onError?: (error: Error, retry: () => void, fail: () => void, attempts: number) => any;
- }
- /*! #__NO_SIDE_EFFECTS__ */
- export declare function defineAsyncComponent<T extends Component = {
- new (): ComponentPublicInstance;
- }>(source: AsyncComponentLoader<T> | AsyncComponentOptions<T>): T;
- export declare function useModel<M extends PropertyKey, T extends Record<string, any>, K extends keyof T, G = T[K], S = T[K]>(props: T, name: K, options?: DefineModelOptions<T[K], G, S>): ModelRef<T[K], M, G, S>;
- export declare function useTemplateRef<T = unknown, Keys extends string = string>(key: Keys): Readonly<ShallowRef<T | null>>;
- export declare function useId(): string;
- type RawProps = VNodeProps & {
- __v_isVNode?: never;
- [Symbol.iterator]?: never;
- } & Record<string, any>;
- type RawChildren = string | number | boolean | VNode | VNodeArrayChildren | (() => any);
- interface Constructor<P = any> {
- __isFragment?: never;
- __isTeleport?: never;
- __isSuspense?: never;
- new (...args: any[]): {
- $props: P;
- };
- }
- type HTMLElementEventHandler = {
- [K in keyof HTMLElementEventMap as `on${Capitalize<K>}`]?: (ev: HTMLElementEventMap[K]) => any;
- };
- export declare function h<K extends keyof HTMLElementTagNameMap>(type: K, children?: RawChildren): VNode;
- export declare function h<K extends keyof HTMLElementTagNameMap>(type: K, props?: (RawProps & HTMLElementEventHandler) | null, children?: RawChildren | RawSlots): VNode;
- export declare function h(type: string, children?: RawChildren): VNode;
- export declare function h(type: string, props?: RawProps | null, children?: RawChildren | RawSlots): VNode;
- export declare function h(type: typeof Text | typeof Comment, children?: string | number | boolean): VNode;
- export declare function h(type: typeof Text | typeof Comment, props?: null, children?: string | number | boolean): VNode;
- export declare function h(type: typeof Fragment, children?: VNodeArrayChildren): VNode;
- export declare function h(type: typeof Fragment, props?: RawProps | null, children?: VNodeArrayChildren): VNode;
- export declare function h(type: typeof Teleport, props: RawProps & TeleportProps, children: RawChildren | RawSlots): VNode;
- export declare function h(type: typeof Suspense, children?: RawChildren): VNode;
- export declare function h(type: typeof Suspense, props?: (RawProps & SuspenseProps) | null, children?: RawChildren | RawSlots): VNode;
- export declare function h<P, E extends EmitsOptions = {}, S extends Record<string, any> = any>(type: FunctionalComponent<P, any, S, any>, props?: (RawProps & P) | ({} extends P ? null : never), children?: RawChildren | IfAny<S, RawSlots, S>): VNode;
- export declare function h(type: Component, children?: RawChildren): VNode;
- export declare function h<P>(type: ConcreteComponent | string, children?: RawChildren): VNode;
- export declare function h<P>(type: ConcreteComponent<P> | string, props?: (RawProps & P) | ({} extends P ? null : never), children?: RawChildren): VNode;
- export declare function h<P>(type: Component<P>, props?: (RawProps & P) | null, children?: RawChildren | RawSlots): VNode;
- export declare function h<P>(type: ComponentOptions<P>, props?: (RawProps & P) | ({} extends P ? null : never), children?: RawChildren | RawSlots): VNode;
- export declare function h(type: Constructor, children?: RawChildren): VNode;
- export declare function h<P>(type: Constructor<P>, props?: (RawProps & P) | ({} extends P ? null : never), children?: RawChildren | RawSlots): VNode;
- export declare function h(type: DefineComponent, children?: RawChildren): VNode;
- export declare function h<P>(type: DefineComponent<P>, props?: (RawProps & P) | ({} extends P ? null : never), children?: RawChildren | RawSlots): VNode;
- export declare function h(type: string | Component, children?: RawChildren): VNode;
- export declare function h<P>(type: string | Component<P>, props?: (RawProps & P) | ({} extends P ? null : never), children?: RawChildren | RawSlots): VNode;
- export declare const ssrContextKey: unique symbol;
- export declare const useSSRContext: <T = Record<string, any>>() => T | undefined;
- declare function warn$1(msg: string, ...args: any[]): void;
- export declare enum ErrorCodes {
- SETUP_FUNCTION = 0,
- RENDER_FUNCTION = 1,
- NATIVE_EVENT_HANDLER = 5,
- COMPONENT_EVENT_HANDLER = 6,
- VNODE_HOOK = 7,
- DIRECTIVE_HOOK = 8,
- TRANSITION_HOOK = 9,
- APP_ERROR_HANDLER = 10,
- APP_WARN_HANDLER = 11,
- FUNCTION_REF = 12,
- ASYNC_COMPONENT_LOADER = 13,
- SCHEDULER = 14,
- COMPONENT_UPDATE = 15,
- APP_UNMOUNT_CLEANUP = 16
- }
- type ErrorTypes = LifecycleHooks | ErrorCodes | WatchErrorCodes;
- export declare function callWithErrorHandling(fn: Function, instance: ComponentInternalInstance | null | undefined, type: ErrorTypes, args?: unknown[]): any;
- export declare function callWithAsyncErrorHandling(fn: Function | Function[], instance: ComponentInternalInstance | null, type: ErrorTypes, args?: unknown[]): any;
- export declare function handleError(err: unknown, instance: ComponentInternalInstance | null | undefined, type: ErrorTypes, throwInDev?: boolean): void;
- export declare function initCustomFormatter(): void;
- interface AppRecord {
- id: number;
- app: App;
- version: string;
- types: Record<string, string | Symbol>;
- }
- interface DevtoolsHook {
- enabled?: boolean;
- emit: (event: string, ...payload: any[]) => void;
- on: (event: string, handler: Function) => void;
- once: (event: string, handler: Function) => void;
- off: (event: string, handler: Function) => void;
- appRecords: AppRecord[];
- /**
- * Added at https://github.com/vuejs/devtools/commit/f2ad51eea789006ab66942e5a27c0f0986a257f9
- * Returns whether the arg was buffered or not
- */
- cleanupBuffer?: (matchArg: unknown) => boolean;
- }
- declare function setDevtoolsHook$1(hook: DevtoolsHook, target: any): void;
- type HMRComponent = ComponentOptions | ClassComponent;
- export interface HMRRuntime {
- createRecord: typeof createRecord;
- rerender: typeof rerender;
- reload: typeof reload;
- }
- declare function createRecord(id: string, initialDef: HMRComponent): boolean;
- declare function rerender(id: string, newRender?: Function): void;
- declare function reload(id: string, newComp: HMRComponent): void;
- /**
- * Set scope id when creating hoisted vnodes.
- * @private compiler helper
- */
- export declare function pushScopeId(id: string | null): void;
- /**
- * Technically we no longer need this after 3.0.8 but we need to keep the same
- * API for backwards compat w/ code generated by compilers.
- * @private
- */
- export declare function popScopeId(): void;
- /**
- * Only for backwards compat
- * @private
- */
- export declare const withScopeId: (_id: string) => typeof withCtx;
- /**
- * Wrap a slot function to memoize current rendering instance
- * @private compiler helper
- */
- export declare function withCtx(fn: Function, ctx?: ComponentInternalInstance | null, isNonScopedSlot?: boolean): Function;
- /**
- * v-for string
- * @private
- */
- export declare function renderList(source: string, renderItem: (value: string, index: number) => VNodeChild): VNodeChild[];
- /**
- * v-for number
- */
- export declare function renderList(source: number, renderItem: (value: number, index: number) => VNodeChild): VNodeChild[];
- /**
- * v-for array
- */
- export declare function renderList<T>(source: T[], renderItem: (value: T, index: number) => VNodeChild): VNodeChild[];
- /**
- * v-for iterable
- */
- export declare function renderList<T>(source: Iterable<T>, renderItem: (value: T, index: number) => VNodeChild): VNodeChild[];
- /**
- * v-for object
- */
- export declare function renderList<T>(source: T, renderItem: <K extends keyof T>(value: T[K], key: string, index: number) => VNodeChild): VNodeChild[];
- /**
- * For prefixing keys in v-on="obj" with "on"
- * @private
- */
- export declare function toHandlers(obj: Record<string, any>, preserveCaseIfNecessary?: boolean): Record<string, any>;
- /**
- * Compiler runtime helper for rendering `<slot/>`
- * @private
- */
- export declare function renderSlot(slots: Slots, name: string, props?: Data, fallback?: () => VNodeArrayChildren, noSlotted?: boolean): VNode;
- type SSRSlot = (...args: any[]) => VNode[] | undefined;
- interface CompiledSlotDescriptor {
- name: string;
- fn: SSRSlot;
- key?: string;
- }
- /**
- * Compiler runtime helper for creating dynamic slots object
- * @private
- */
- export declare function createSlots(slots: Record<string, SSRSlot>, dynamicSlots: (CompiledSlotDescriptor | CompiledSlotDescriptor[] | undefined)[]): Record<string, SSRSlot>;
- export declare function withMemo(memo: any[], render: () => VNode<any, any>, cache: any[], index: number): VNode<any, any>;
- export declare function isMemoSame(cached: VNode, memo: any[]): boolean;
- export type LegacyConfig = {
- /**
- * @deprecated `config.silent` option has been removed
- */
- silent?: boolean;
- /**
- * @deprecated use __VUE_PROD_DEVTOOLS__ compile-time feature flag instead
- * https://github.com/vuejs/core/tree/main/packages/vue#bundler-build-feature-flags
- */
- devtools?: boolean;
- /**
- * @deprecated use `config.isCustomElement` instead
- * https://v3-migration.vuejs.org/breaking-changes/global-api.html#config-ignoredelements-is-now-config-iscustomelement
- */
- ignoredElements?: (string | RegExp)[];
- /**
- * @deprecated
- * https://v3-migration.vuejs.org/breaking-changes/keycode-modifiers.html
- */
- keyCodes?: Record<string, number | number[]>;
- /**
- * @deprecated
- * https://v3-migration.vuejs.org/breaking-changes/global-api.html#config-productiontip-removed
- */
- productionTip?: boolean;
- };
- type LegacyPublicInstance = ComponentPublicInstance & LegacyPublicProperties;
- interface LegacyPublicProperties {
- $set<T extends Record<keyof any, any>, K extends keyof T>(target: T, key: K, value: T[K]): void;
- $delete<T extends Record<keyof any, any>, K extends keyof T>(target: T, key: K): void;
- $mount(el?: string | Element): this;
- $destroy(): void;
- $scopedSlots: Slots;
- $on(event: string | string[], fn: Function): this;
- $once(event: string, fn: Function): this;
- $off(event?: string | string[], fn?: Function): this;
- $children: LegacyPublicProperties[];
- $listeners: Record<string, Function | Function[]>;
- }
- /**
- * @deprecated the default `Vue` export has been removed in Vue 3. The type for
- * the default export is provided only for migration purposes. Please use
- * named imports instead - e.g. `import { createApp } from 'vue'`.
- */
- export type CompatVue = Pick<App, 'version' | 'component' | 'directive'> & {
- configureCompat: typeof configureCompat;
- new (options?: ComponentOptions): LegacyPublicInstance;
- version: string;
- config: AppConfig & LegacyConfig;
- nextTick: typeof nextTick;
- use<Options extends unknown[]>(plugin: Plugin<Options>, ...options: Options): CompatVue;
- use<Options>(plugin: Plugin<Options>, options: Options): CompatVue;
- mixin(mixin: ComponentOptions): CompatVue;
- component(name: string): Component | undefined;
- component(name: string, component: Component): CompatVue;
- directive<T = any, V = any>(name: string): Directive<T, V> | undefined;
- directive<T = any, V = any>(name: string, directive: Directive<T, V>): CompatVue;
- compile(template: string): RenderFunction;
- /**
- * @deprecated Vue 3 no longer supports extending constructors.
- */
- extend: (options?: ComponentOptions) => CompatVue;
- /**
- * @deprecated Vue 3 no longer needs set() for adding new properties.
- */
- set(target: any, key: PropertyKey, value: any): void;
- /**
- * @deprecated Vue 3 no longer needs delete() for property deletions.
- */
- delete(target: any, key: PropertyKey): void;
- /**
- * @deprecated use `reactive` instead.
- */
- observable: typeof reactive;
- /**
- * @deprecated filters have been removed from Vue 3.
- */
- filter(name: string, arg?: any): null;
- };
- export declare const version: string;
- export declare const warn: typeof warn$1;
- export declare const devtools: DevtoolsHook;
- export declare const setDevtoolsHook: typeof setDevtoolsHook$1;
- declare module '@vue/reactivity' {
- interface RefUnwrapBailTypes {
- runtimeCoreBailTypes: VNode | {
- $: ComponentInternalInstance;
- };
- }
- }
- export declare const DeprecationTypes: typeof DeprecationTypes$1;
- export { type WatchEffectOptions as WatchOptionsBase, createBaseVNode as createElementVNode, };
- // Note: this file is auto concatenated to the end of the bundled d.ts during
- // build.
- declare module '@vue/runtime-core' {
- export interface GlobalComponents {
- Teleport: DefineComponent<TeleportProps>
- Suspense: DefineComponent<SuspenseProps>
- KeepAlive: DefineComponent<KeepAliveProps>
- BaseTransition: DefineComponent<BaseTransitionProps>
- }
- }
- // Note: this file is auto concatenated to the end of the bundled d.ts during
- // build.
- type _defineProps = typeof defineProps
- type _defineEmits = typeof defineEmits
- type _defineExpose = typeof defineExpose
- type _defineOptions = typeof defineOptions
- type _defineSlots = typeof defineSlots
- type _defineModel = typeof defineModel
- type _withDefaults = typeof withDefaults
- declare global {
- const defineProps: _defineProps
- const defineEmits: _defineEmits
- const defineExpose: _defineExpose
- const defineOptions: _defineOptions
- const defineSlots: _defineSlots
- const defineModel: _defineModel
- const withDefaults: _withDefaults
- }
|