import { ComponentOptions, VueConstructor } from "vue"; import Vue from "vue"; export type ComponentDefinitionFunc = () => Promise>; export type ComponentDefinition = ComponentOptions | VueConstructor; export interface VueCustomElementOptions { constructorCallback?: () => void; connectedCallback?: () => void; disconnectedCallback?: () => void; attributeChangedCallback?: () => void; beforeCreateVueInstance?: (RootComponentDefinition: any) => any; vueInstanceCreatedCallback?: () => void; destroyTimeout?: number; } export declare function vueCustomElement(tag: string, componentDefinition: ComponentDefinitionFunc | ComponentDefinition, options?: VueCustomElementOptions): HTMLElement; export declare function install(Vue: any): void; export default install;