### 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
raise ValueError('source_bucket and source_object cannot be empty.')
        client = self.get_conn()
        source_bucket = client.bucket(source_bucket)
        source_object = source_bucket.blob(blob_name=source_object)  
        destination_bucket = client.bucket(destination_bucket)
        token, bytes_rewritten, total_bytes = destination_bucket.blob(  
            blob_name=destination_object
        ).rewrite(source=source_object)
        self.log.info('Total Bytes: %s | Bytes Written: %s', total_bytes, bytes_rewritten)
        while token is not None:
            token, bytes_rewritten, total_bytes = destination_bucket.blob(  
                blob_name=destination_object
            ).rewrite(source=source_object, token=token)
            self.log.info('Total Bytes: %s | Bytes Written: %s', total_bytes, bytes_rewritten)
        self.log.info(
            'Object %s in bucket %s rewritten to object %s in bucket %s',
            source_object.name,  
            source_bucket.name,  
            destination_object,
            destination_bucket.name,  
        )
    def download(
        self,
        object_name: str,
        bucket_name: Optional[str],
        filename: Optional[str] = None,
        chunk_size: Optional[int] = None,
        timeout: Optional[int] = DEFAULT_TIMEOUT,
    ) -> Union[str, bytes]:
        """