¿Cómo detectamos si se hizo una raíz sombra con la API v0 o v1?

Supongamos que un módulo JS exportashadowRoot que fue creado con cualquierael.createShadowRoot oel.attachShadow (No sabemos cuál). ¿Cómo detectamos si la raíz es una raíz sombra v0 o una raíz sombra v1 (es decir, cómo detectamos qué método se utilizó para crear la raíz)?

Por ejemplo, ¿qué llenaría en las siguientes declaraciones condicionales?

// for argument's sake, we don't create the root, we only get a reference
// to it:
import shadowRoot from 'somewhere'

function getShadowRootVersion(root) {
    if ( ... )
        return 'v0'

    if ( ... )
        return 'v1'
}

console.log(getShadowRootVersion(shadowRoot)) // should output "v0" or "v1".

Más información:

Queremos averiguar si se creó una raíz sombra a partir decreateShadowRoot o deattachShadow. Las raíces resultantes son diferentes: en la raíz creada concreateShadowRoot, <content> Los elementos se utilizan para distribuir elementos. En raíces creadas conattachShadow, <content> los elementos no hacen nada, y<slot> Se utilizan elementos en su lugar. ¿Cómo detectamos qué método se utilizó para crear una raíz (es decir, si tenemos una raíz v0 o una raíz v1)?

Respuestas a la pregunta(2)

Su respuesta a la pregunta