así que desarrollé y probé todo el proyecto usando Firefox y todo estuvo bien, pero cuando traté de ejecutarlo en Chrome, el navegador seguía diciendo que mis métodos de componentes personalizados no existen. ¿Porqué es eso? Por lo que sé, Chrome admite componentes web.
Encontré el problema. Cambié la clase de la que derivaban mis componentes (de HTMLDivElement a HTMLElement) y eliminé la opción { extends: 'div' } de su definición y ¡todo comenzó a funcionar!