docs: public ClassDefinition generateDeclaredBean(AbstractClassTypeDeclarationDescr typeDescr,
                                                  TypeDeclaration type,
                                                  PackageRegistry pkgRegistry,
                                                  List<TypeDefinition> unresolvedTypeDefinitions,
                                                  Map<String, AbstractClassTypeDeclarationDescr> unprocesseableDescrs) {
  
          ClassDefinition def = createClassDefinition(typeDescr, type);
  
          boolean success = true;
          success &= wireAnnotationDefs(typeDescr, type, def, pkgRegistry.getTypeResolver());
          success &= wireEnumLiteralDefs(typeDescr, type, def);
          success &= wireFields(typeDescr, type, def, pkgRegistry, unresolvedTypeDefinitions);
  
          if (!success) {
              unprocesseableDescrs.put(typeDescr.getType().getFullName(), typeDescr);
          }
          // attach the class definition, it will be completed later
          type.setTypeClassDef(def);
  
          return def;
      }