### Description
https://github.com/apache/airflow/blob/6019c78cb475800f58714a9dabb747b9415599c8/airflow/providers/google/cloud/hooks/gcs.py#L262-L265

Was this order swap of the `object_name` and `bucket_name` arguments in the `GCSHook.download` a mistake? The `upload` and `delete` methods still use `bucket_name` first and the commit where this change was made `1845cd11b77f302777ab854e84bef9c212c604a0` was supposed to just add strict type checking. The docstring also appears to reference the old order.
airflow/providers/google/cloud/hooks/gcs.py
self,
        source_bucket: str,
        source_object: str,
        destination_bucket: str,
        destination_object: Optional[str] = None,
    ) -> None:
        """
        Has the same functionality as copy, except that will work on files
        over 5 TB, as well as when copying between locations and/or storage
        classes.
        destination_object can be omitted, in which case source_object is used.
        :param source_bucket: The bucket of the object to copy from.
        :type source_bucket: str
        :param source_object: The object to copy.
        :type source_object: str
        :param destination_bucket: The destination of the object to copied to.
        :type destination_bucket: str
        :param destination_object: The (renamed) path of the object if given.
            Can be omitted; then the same name is used.
        :type destination_object: str
        """
        destination_object = destination_object or source_object
        if source_bucket == destination_bucket and source_object == destination_object:
            raise ValueError(
                'Either source/destination bucket or source/destination object '
                'must be different, not both the same: bucket=%s, object=%s' % (source_bucket, source_object)
            )
        if not source_bucket or not source_object: