code: def normalize_time_delta(human_readable: str) -> dict[str, int]:
      x_unit = r"^\s*([0-9]+)\s+(second|minute|hour|day|week|month|quarter|year)s?\s+(ago|later)*$"  # pylint: disable=line-too-long,useless-suppression
      matched = re.match(x_unit, human_readable, re.IGNORECASE)
      if not matched:
          raise TimeDeltaAmbiguousError(human_readable)
  
      key = matched[2] + "s"
      value = int(matched[1])
      value = -value if matched[3] == "ago" else value
      return {key: value}
  
imports: import calendar
  import logging
  import re
  from datetime import datetime, timedelta
  from functools import lru_cache
  from time import struct_time
  from typing import Optional
  import pandas
  import parsedatetime
  from dateutil.parser import parse
  from dateutil.relativedelta import relativedelta
  from flask_babel import lazy_gettext
  from holidays import country_holidays
  from pyparsing import CaselessKeyword, Forward, Group, Optional, ParseException, ParserElement, ParseResults, pyparsing_common, quotedString, Suppress
  from superset.commands.chart.exceptions import TimeDeltaAmbiguousError, TimeRangeAmbiguousError, TimeRangeParseFailError
  from superset.constants import LRU_CACHE_MAX_SIZE, NO_TIME_RANGE
label_desc: Use image node_id 2 for calling a global function with example usage: normalize_time_delta(human_readable) and returns: dict