def count_letters(
        string: str
    ) -> dict[str, int]:
    """
    Count the occurrences of each letter in a string and store the counts
    in a dictionary. The letter counts are case-insensitive.

    Parameters
    ----------
    string : str
        The string to analyze.
        If empty (i.e., ''), return an empty dictionary.

    Returns
    -------
    dict[str, int]
        A dictionary with letters as keys and their
        occurrence counts as values. Numbers, punctuation, and whitespace are
        not counted, only letters.

    Examples
    --------
    >>> count_letters("hello world")
    {'h': 1, 'e': 1, 'l': 3, 'o': 2, 'w': 1, 'r': 1, 'd': 1}
    >>> count_letters("")
    {}
    >>> count_letters("Hello, World!")
    {'h': 1, 'e': 1, 'l': 3, 'o': 2, 'w': 1, 'r': 1, 'd': 1}
    >>> count_letters("aAaAaA")
    {'a': 6}
    >>> count_letters("1234")
    {}
    """
    raise NotImplementedError("Complete this function.")
