code: def __repr__(self) -> str:
      if self._isRowFrame:
          return f"WindowFrame(ROW_FRAME, {self._start}, {self._end})"
      else:
          return f"WindowFrame(RANGE_FRAME, {self._start}, {self._end})"
  
imports: from pyspark.sql.connect.utils import check_dependencies
  import sys
  from typing import TYPE_CHECKING, Union, Sequence, List, Optional
  from pyspark.sql.connect.column import Column
  from pyspark.sql.connect.expressions import ColumnReference, Expression, SortOrder
  from pyspark.sql.connect.types import JVM_LONG_MIN, JVM_LONG_MAX
  from pyspark.sql.window import Window, WindowSpec
  from pyspark.errors import PySparkTypeError
label_desc: Use image node_id 2 for calling the WindowFrame obj's underlying member method code with example usage: obj.__repr__() and returns: str, self, str, self, str, str, self, str, self, str