import { createApp, Component, App, ComponentPublicInstance } from 'vue' interface Wrapper { app: App instance: ComponentPublicInstance unmount: () => void } export function mount (comp: Component, options?: object): Wrapper { const div = document.createElement('div') const app = createApp({ render () { return null }, ...comp }) const instance = app.mount(div) return { app, instance, unmount: () => app.unmount() } }