katashin
6 years ago
committed by
Evan You
4 changed files with 59 additions and 13 deletions
@ -0,0 +1,7 @@ |
|||
const vm = new Vue({ |
|||
template: "<div>hi</div>" |
|||
}); |
|||
|
|||
const options: Vue.ComponentOptions<Vue> = { |
|||
template: "<div>test</div>" |
|||
}; |
@ -0,0 +1,48 @@ |
|||
import * as V from "./index"; |
|||
import { |
|||
DefaultData, |
|||
DefaultProps, |
|||
DefaultMethods, |
|||
DefaultComputed, |
|||
PropsDefinition |
|||
} from "./options"; |
|||
|
|||
// Expose some types for backword 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; |
Loading…
Reference in new issue