class_docstr: Model to track dynamic task-mapping information.
  
  This is currently only populated by an upstream TaskInstance pushing an
  XCom that's pulled by a downstream for mapping purposes.
code: def __init__(
      self,
      dag_id: str,
      task_id: str,
      run_id: str,
      map_index: int,
      length: int,
      keys: list[Any] | None,
  ) -> None:
      self.dag_id = dag_id
      self.task_id = task_id
      self.run_id = run_id
      self.map_index = map_index
      self.length = length
      self.keys = keys
  
file_path: airflow/airflow/models/taskmap.py
imports: from __future__ import annotations
  import collections.abc
  import enum
  from typing import TYPE_CHECKING, Any, Collection
  from sqlalchemy import CheckConstraint, Column, ForeignKeyConstraint, Integer, String
  from airflow.models.base import COLLATION_ARGS, ID_LEN, TaskInstanceDependencies
  from airflow.utils.sqlalchemy import ExtendedJSON
label_desc: Use image node_id 1 to create a new TaskMap object from inherited base classes: TaskInstanceDependencies with example: obj = TaskMap(dag_id, task_id, run_id, map_index, length, keys)