docs: def extent(self) -> Optional[Interval]:
          """
          Returns an :class:`Interval` running from the earliest start of an
          interval in this list to the latest end. Returns ``None`` if we are
          empty.
          """
          if not self.intervals:
              return None
          return Interval(self.start_datetime(), self.end_datetime())