code: public static Optional<TypeElement> getSuperComponentType(TypeElement component) {
      // If super type is vue component, don't return it
      if (TypeName.get(Object.class).equals(TypeName.get(component.getSuperclass()))) {
        return Optional.empty();
      }
  
      return Optional.of((TypeElement) ((DeclaredType) component.getSuperclass()).asElement());
    }
docs: Return the {@link TypeElement} of the parent {@link IsVueComponent} of a given {@link
  IsVueComponent}. If the super class of the {@link IsVueComponent} is just {@link
  IsVueComponent}, return an empty {@link Optional}
  
  @param component The {@link IsVueComponent} to get the super type of
  @return The {@link TypeElement} of the super {@link IsVueComponent} or an empty {@link
  Optional}