class_docstr: Creates window boundaries that are of variable length, namely for time series.
class_docstr_tok: ["Creates","window","boundaries","that","are","of","variable","length",",","namely","for","time","series","."]
code: def get_window_bounds(
      self,
      num_values: int = 0,
      min_periods: int | None = None,
      center: bool | None = None,
      closed: str | None = None,
      step: int | None = None,
  ) -> tuple[np.ndarray, np.ndarray]:
      # error: Argument 4 to "calculate_variable_window_bounds" has incompatible
      # type "Optional[bool]"; expected "bool"
      # error: Argument 6 to "calculate_variable_window_bounds" has incompatible
      # type "Optional[ndarray]"; expected "ndarray"
      return calculate_variable_window_bounds(
          num_values,
          self.window_size,
          min_periods,
          center,  # type: ignore[arg-type]
          closed,
          self.index_array,  # type: ignore[arg-type]
      )
  
imports: from __future__ import annotations
  from datetime import timedelta
  import numpy
  from pandas._libs.tslibs import BaseOffset
  from pandas._libs.window.indexers import calculate_variable_window_bounds
  from pandas.util._decorators import Appender
  from pandas.core.dtypes.common import ensure_platform_int
  from pandas.core.indexes.datetimes import DatetimeIndex
  from pandas.tseries.offsets import Nano
label_desc: Use image node_id 1 for calling the VariableWindowIndexer obj's underlying member method code with example usage: obj.get_window_bounds(num_values, min_periods, center, closed, step) and returns: calculate_variable_window_bounds