docstr: Get ChartState's watch plan
  
  The watch plan specifies the signals and datasets that should be communicated
  between ChartState and client to preserve the input Vega spec's interactivity
  :return: WatchPlan
code: def get_watch_plan(self) -> WatchPlan:
      """Get ChartState's watch plan
  
      The watch plan specifies the signals and datasets that should be communicated
      between ChartState and client to preserve the input Vega spec's interactivity
      :return: WatchPlan
      """
      return self._chart_state.get_watch_plan()
  
imports: import pandas
  import psutil
  import pyarrow
  from typing import Union
  from .connection import SqlConnection
  from .dataset import SqlDataset, DataFrameDataset
  from .datasource import PandasDatasource, DfiDatasource
  from .evaluation import get_mark_group_for_scope
  from .transformer import import_pyarrow_interchange, to_arrow_table
  from .local_tz import get_local_tz
  from typing import TypedDict, List, Literal, Any
label_desc: Use image node_id 3 for calling the ChartState obj's underlying member method code with example usage: obj.get_watch_plan() and returns: self