code: def parse_highligth_results(
      cls,
      doc: Dict[str, Any],
      is_phrase_query: bool = False,
  ) -> Optional[List[str]]:
      highlight_info = doc.get("highlight")
      if not highlight_info:
          return None
  
      search_keywords = []
      for content in highlight_info.values():
          if not isinstance(content, list):
              content = [content]
          text = " ".join(content)
  
          if is_phrase_query:
              text = re.sub(
                  pattern=cls.__HIGHLIGHT_PHRASE_PRE_PARSER_REGEX__,
                  repl=" ",
                  string=text,
              )
          search_keywords.extend(
              re.findall(
                  pattern=cls.__HIGHLIGHT_VALUES_REGEX__,
                  string=text,
              )
          )
      return list(set(search_keywords))
  
imports: import logging
  import re
  from enum import Enum
  from typing import Any, Dict, List, Optional, Union
  from argilla.server.daos.backend.query_helpers import filters
  from argilla.server.daos.backend.search.model import BackendDatasetsQuery, BackendQuery, BackendRecordsQuery, BaseDatasetsQuery, QueryRange, SortableField, SortConfig
label_desc: Use image node_id 3 for calling the HighlightParser obj's underlying member method code with example usage: obj.parse_highligth_results(cls, doc, is_phrase_query) and returns: list, None