vue/types/umd.d.ts
2022-05-27 17:26:55 +08:00

69 lines
2.2 KiB
TypeScript

import * as V from './index'
import {
DefaultData,
DefaultProps,
DefaultMethods,
DefaultComputed,
PropsDefinition
} from './options'
// Expose some types for backward compatibility...
declare namespace Vue {
// vue.d.ts
export type CreateElement = V.CreateElement
export type VueConstructor<V extends Vue = Vue> = V.VueConstructor<V>
// options.d.ts
export type Component<
Data = DefaultData<never>,
Methods = DefaultMethods<never>,
Computed = DefaultComputed,
Props = DefaultProps
> = V.Component<Data, Methods, Computed, Props>
export type AsyncComponent<
Data = DefaultData<never>,
Methods = DefaultMethods<never>,
Computed = DefaultComputed,
Props = DefaultProps
> = V.AsyncComponent<Data, Methods, Computed, Props>
export type ComponentOptions<
V extends Vue,
Data = DefaultData<V>,
Methods = DefaultMethods<V>,
Computed = DefaultComputed,
PropsDef = PropsDefinition<DefaultProps>,
Props = DefaultProps
> = V.ComponentOptions<V, Data, Methods, Computed, PropsDef, Props>
export type FunctionalComponentOptions<
Props = DefaultProps,
PropDefs = PropsDefinition<Props>
> = V.FunctionalComponentOptions<Props, PropDefs>
export type RenderContext<Props = DefaultProps> = V.RenderContext<Props>
export type PropType<T> = V.PropType<T>
export type PropOptions<T = any> = V.PropOptions<T>
export type ComputedOptions<T> = V.ComputedOptions<T>
export type WatchHandler<T> = V.WatchHandler<T>
export type WatchOptions = V.WatchOptions
export type WatchOptionsWithHandler<T> = V.WatchOptionsWithHandler<T>
export type DirectiveFunction = V.DirectiveFunction
export type DirectiveOptions = V.DirectiveOptions
// plugin.d.ts
export type PluginFunction<T> = V.PluginFunction<T>
export type PluginObject<T> = V.PluginObject<T>
// vnode.d.ts
export type VNodeChildren = V.VNodeChildren
export type VNodeChildrenArrayContents = V.VNodeChildrenArrayContents
export type VNode = V.VNode
export type VNodeComponentOptions = V.VNodeComponentOptions
export type VNodeData = V.VNodeData
export type VNodeDirective = V.VNodeDirective
}
declare class Vue extends V.default {}
export = Vue
export as namespace Vue