code: def min_gap_in_seconds(df, time_col):
      """Returns the smallest gap between observations in df[time_col].
  
      Assumes df[time_col] is sorted in ascending order without duplicates.
  
      :param df: pd.DataFrame
          input timeseries
      :param time_col: str
          time column name in `df`
      :return: float
          minimum gap between observations, in seconds
      """
      if df.shape[0] < 2:
          raise ValueError(
              f"Must provide at least two data points. Found {df.shape[0]}."
          )
      timestamps = pd.to_datetime(df[time_col])
      period = (timestamps - timestamps.shift()).min()
      return period.days * 24 * 3600 + period.seconds
  
file_path: greykite/greykite/common/time_properties.py
imports: import datetime
  import warnings
  from typing import Dict
  from typing import List
  from typing import Optional
  from typing import Union
  import numpy
  import pandas
  from greykite.common.constants import TIME_COL
  from greykite.common.constants import VALUE_COL
  from greykite.common.features.adjust_anomalous_data import adjust_anomalous_data
  from greykite.common.logging import LoggingLevelEnum
  from greykite.common.logging import log_message
label_desc: Use image node_id 2 for calling a global function with example usage: min_gap_in_seconds(df, time_col) and returns: unknown