docstr: Explains a foreground time series, and returns a :class:`_ExplainabilityResult
  <darts.explainability.explainability_result._ExplainabilityResult>` that can be used for downstream tasks.
  
  Parameters
  ----------
  foreground_series
      Optionally, one or a sequence of target `TimeSeries` to be explained. Can be multivariate.
      If not provided, the background `TimeSeries` will be explained instead.
  foreground_past_covariates
      Optionally, one or a sequence of past covariates `TimeSeries` if required by the forecasting model.
  foreground_future_covariates
      Optionally, one or a sequence of future covariates `TimeSeries` if required by the forecasting model.
  horizons
      Optionally, an integer or sequence of integers representing the future time steps to be explained.
      `1` corresponds to the first timestamp being forecasted.
      All values must be `<=output_chunk_length` of the explained forecasting model.
  target_components
      Optionally, a string or sequence of strings with the target components to explain.
  
  Returns
  -------
  _ExplainabilityResult
      The explainability result.
docstr_tok: ["Explains","a","foreground","time","series",",","and","returns","a",":","class",":","`","_ExplainabilityResult","<","darts.explainability.explainability_result._ExplainabilityResult",">","`","that","can","be","used","for","downstream","tasks",".","Parameters","--","--","--","--","--","foreground_series","Optionally",",","one","or","a","sequence","of","target","`","TimeSeries","`","to","be","explained",".","Can","be","multivariate",".","If","not","provided",",","the","background","`","TimeSeries","`","will","be","explained","instead",".","foreground_past_covariates","Optionally",",","one","or","a","sequence","of","past","covariates","`","TimeSeries","`","if","required","by","the","forecasting","model",".","foreground_future_covariates","Optionally",",","one","or","a","sequence","of","future","covariates","`","TimeSeries","`","if","required","by","the","forecasting","model",".","horizons","Optionally",",","an","integer","or","sequence","of","integers","representing","the","future","time","steps","to","be","explained",".","`","1","`","corresponds","to","the","first","timestamp","being","forecasted",".","All","values","must","be","`","<","=output_chunk_length","`","of","the","explained","forecasting","model",".","target_components","Optionally",",","a","string","or","sequence","of","strings","with","the","target","components","to","explain",".","Returns","--","--","--","-","_ExplainabilityResult","The","explainability","result","."]
code: def explain(
      self,
      foreground_series: Optional[
          Union[TimeSeries, Sequence[TimeSeries]]
      ] = None,
      foreground_past_covariates: Optional[
          Union[TimeSeries, Sequence[TimeSeries]]
      ] = None,
      foreground_future_covariates: Optional[
          Union[TimeSeries, Sequence[TimeSeries]]
      ] = None,
      horizons: Optional[Sequence[int]] = None,
      target_components: Optional[Sequence[str]] = None,
  ) -> _ExplainabilityResult:
      """
      Explains a foreground time series, and returns a :class:`_ExplainabilityResult
      <darts.explainability.explainability_result._ExplainabilityResult>` that can be used for downstream tasks.
  
      Parameters
      ----------
      foreground_series
          Optionally, one or a sequence of target `TimeSeries` to be explained. Can be multivariate.
          If not provided, the background `TimeSeries` will be explained instead.
      foreground_past_covariates
          Optionally, one or a sequence of past covariates `TimeSeries` if required by the forecasting model.
      foreground_future_covariates
          Optionally, one or a sequence of future covariates `TimeSeries` if required by the forecasting model.
      horizons
          Optionally, an integer or sequence of integers representing the future time steps to be explained.
          `1` corresponds to the first timestamp being forecasted.
          All values must be `<=output_chunk_length` of the explained forecasting model.
      target_components
          Optionally, a string or sequence of strings with the target components to explain.
  
      Returns
      -------
      _ExplainabilityResult
          The explainability result.
      """
      pass
  
file_path: darts/darts/explainability/explainability.py
imports: from abc import ABC, abstractmethod
  from typing import Optional, Sequence, Tuple, Union
  from darts import TimeSeries
  from darts.explainability.explainability_result import _ExplainabilityResult
  from darts.explainability.utils import process_horizons_and_targets, process_input
  from darts.logging import get_logger, raise_log
  from darts.models.forecasting.forecasting_model import ForecastingModel
label_desc: Use image node_id 2 for calling the _ForecastingModelExplainer obj's underlying member method code with example usage: obj.explain(foreground_series, foreground_past_covariates, foreground_future_covariates, horizons, target_components) without return types