code: protected String finalTypename(String typeName, String programContext) {
          String qualifiedName = qualifiedTypenameInternal(typeName, programContext);
  
          if (typedefs.containsKey(qualifiedName)) {
              String resolved = typedefs.get(qualifiedName);
              return finalTypename(resolved, programContext);
          }
  
          return qualifiedName;
      }
docs: Get the final typename of the given identifier within the context.
  
  @param typeName The identifier name.
  @param programContext The program context.
  @return The final typename.