docs: private InterfaceInfo createAllInterface(String interfaceName, List<XsdElement> directElements, int interfaceIndex, String apiName) {
          String[] extendedInterfacesArr = new String[]{TEXT_GROUP};
  
          ClassWriter classWriter = generateClass(interfaceName, JAVA_OBJECT, extendedInterfacesArr, getInterfaceSignature(extendedInterfacesArr, apiName), ACC_PUBLIC + ACC_ABSTRACT + ACC_INTERFACE, apiName);
  
          directElements.forEach(child -> {
              generateMethodsForElement(classWriter, child, getFullClassTypeName(interfaceName, apiName), apiName);
              createElement(child, apiName);
          });
  
          writeClassToFile(interfaceName, classWriter, apiName);
  
          List<String> methodNames = directElements.stream().map(XsdElement::getName).collect(Collectors.toList());
  
          return new InterfaceInfo(interfaceName, interfaceIndex, methodNames);
      }