docs: public static boolean hasTemplate(ProcessingEnvironment processingEnvironment,
        TypeElement component) {
      Component annotation = component.getAnnotation(Component.class);
      if (annotation == null || !annotation.hasTemplate()) {
        return false;
      }
  
      if (component.getModifiers().contains(Modifier.ABSTRACT)) {
        return false;
      }
  
      return !hasInterface(processingEnvironment, component.asType(), HasRender.class);
    }