docs: final public JSType TypeDecl(Map refs) throws ParseException {
                                JSType ans; String name = null;
      switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
      case IDENTIFIER:
        name = Name();
        break;
      default:
        jj_la1[1] = jj_gen;
        ;
      }
      ans = TypeDef(refs);
      if (name != null)
        ans.setFeatureName(name);
      {if (true) return ans;}
      throw new Error("Missing return statement in function");
    }