code: protected TypeMirror interfaceGenericTypeFor(TypeElement element, String interfaceName) {
          List<? extends TypeMirror> typeMirrors = interfaceGenericTypesFor(element, interfaceName);
          return typeMirrors.isEmpty() ? null : typeMirrors.get(0);
      }
docs: Finds the generic type for the given interface for the given class element.
  <p>
  For example, for <code>class AProvider implements Provider&lt;A&gt;</code>
  element = AProvider
  interfaceName = interface javax.inject.Provider
  return A
  
  @param element       The class element
  @param interfaceName The interface
  @return The generic type or null