from typing import Mapping


def is_upload(association):
    """
    Indicates whether the association corresponds to an upload object.
    """
    upload_keys = set([
        'created_at', 'id', 'job_id', 'updated_at', 'upload_content_type',
        'upload_file_name', 'upload_file_size', 'upload_updated_at'
    ])
    association_value = association.value
    return (isinstance(association_value, Mapping)
            and
            association_value.keys() == upload_keys)