class_docstr: Tracks semantic information for semantic model held in a set of SemanticModelContainers.
  
  This implements both the SemanticModelAccessors protocol, the interface type we use throughout the codebase.
  That interface prevents unwanted calls to methods for adding semantic models to the container.
class_docstr_tok: ["Tracks","semantic","information","for","semantic","model","held","in","a","set","of","SemanticModelContainers",".","This","implements","both","the","SemanticModelAccessors","protocol",",","the","interface","type","we","use","throughout","the","codebase",".","That","interface","prevents","unwanted","calls","to","methods","for","adding","semantic","models","to","the","container","."]
docstr: Return all time dimensions in a semantic model with their associated measures.
code: def get_aggregation_time_dimensions_with_measures(
      self, semantic_model_reference: SemanticModelReference
  ) -> ElementGrouper[TimeDimensionReference, MeasureSpec]:
      """Return all time dimensions in a semantic model with their associated measures."""
      assert (
          semantic_model_reference
          in self._semantic_model_to_aggregation_time_dimensions
      ), f"Semantic Model {semantic_model_reference} is not known"
      return self._semantic_model_to_aggregation_time_dimensions[
          semantic_model_reference
      ]
  
imports: from __future__ import annotations
  import logging
  from collections import defaultdict
  from copy import deepcopy
  from typing import Dict, List, Optional, Sequence, Set
  from dbt_semantic_interfaces.pretty_print import pformat_big_objects
  from dbt_semantic_interfaces.protocols.dimension import Dimension
  from dbt_semantic_interfaces.protocols.entity import Entity
  from dbt_semantic_interfaces.protocols.measure import Measure
  from dbt_semantic_interfaces.protocols.semantic_manifest import SemanticManifest
  from dbt_semantic_interfaces.protocols.semantic_model import SemanticModel
  from dbt_semantic_interfaces.references import DimensionReference, EntityReference, LinkableElementReference, MeasureReference, SemanticModelElementReference, SemanticModelReference, TimeDimensionReference
  from dbt_semantic_interfaces.type_enums import DimensionType, EntityType
  from dbt_semantic_interfaces.type_enums.aggregation_type import AggregationType
  from typing_extensions import override
  from metricflow.errors.errors import InvalidSemanticModelError
  from metricflow.model.semantics.element_group import ElementGrouper
  from metricflow.model.spec_converters import MeasureConverter
  from metricflow.protocols.semantics import SemanticModelAccessor
  from metricflow.specs.specs import DimensionSpec, EntitySpec, LinkableInstanceSpec, MeasureSpec, NonAdditiveDimensionSpec, TimeDimensionSpec
label_desc: Use image node_id 17 for calling the SemanticModelLookup obj's underlying member method code with example usage: obj.get_aggregation_time_dimensions_with_measures(semantic_model_reference) and returns: self