[Vue3] How can I manually unmount a component?

I mount a component to a DIV ( in a directive )

const myDirective = {
  mounted(el) {
    const vnode = createVNode(myComponent);
    render(vnode, document.createElement('div'));
    el.appendChild(vnode.el);
    el.__vnode = vnode;
  }
}

How can I unmount the component ( i.e. trigger onBeforeUnmount and onUnmounted of myComponent )?

const myDirective = {
  unmounted(el) {
    el.__vnode.el.remove();
    el.__vnode.unmount() // ???
  }
}

Can anyone help me?