### Apache Airflow Provider(s)

google

### Versions of Apache Airflow Providers

```
apache-airflow-providers-google: version 8.9.0
```

### Apache Airflow version

2.5.1

### Operating System

Linux -  official airflow image from docker hub apache/airflow:slim-2.5.1

### Deployment

Official Apache Airflow Helm Chart

### Deployment details

_No response_

### What happened

Not sure if it's a bug or a feature.

Originally I have used `LocalFilesystemToGoogleDriveOperator` to try uploading a file into a shared Google Drive without success.
Provider didn't find a directory with a given name so it created a new one without browsing `shared drives`. Method call that doesn't allow to upload it is here:
https://github.com/apache/airflow/blob/main/airflow/providers/google/suite/hooks/drive.py#L223

### What you think should happen instead

It would be nice if there was an optional parameter to provide a `drive_id` into which user would like to upload a file. With the same directory check behaviour that already exists but extended to `shared drives`

### How to reproduce

1. Create a directory on the shared google drive
2. Fill `LocalFilesystemToGoogleDriveOperator` constructor with the arguments.
3. Execute the function

### Anything else

I am willing to submit a PR but I would need to know more details, your thoughts, expectations of the implementation to make as little iteration on it possible.

### Are you willing to submit PR?

- [X] Yes I am willing to submit a PR!

### Code of Conduct

- [X] I agree to follow this project's [Code of Conduct](https://github.com/apache/airflow/blob/main/CODE_OF_CONDUCT.md)

"""
        Returns a get_media http request to a Google Drive object.
        :param file_id: The Google Drive file id
        :return: request
        """
        service = self.get_conn()
        request = service.files().get_media(fileId=file_id)
        return request
    def exists(
        self, folder_id: str, file_name: str, drive_id: str | None = None, *, include_trashed: bool = True
    ) -> bool:
        """
        Checks to see if a file exists within a Google Drive folder
        :param folder_id: The id of the Google Drive folder in which the file resides
        :param file_name: The name of a file in Google Drive
        :param drive_id: Optional. The id of the shared Google Drive in which the file resides.
        :param include_trashed: Whether to include objects in trash or not, default True as in Google API.
        :return: True if the file exists, False otherwise
        """
        return bool(
            self.get_file_id(
                folder_id=folder_id, file_name=file_name, include_trashed=include_trashed, drive_id=drive_id
            )
        )
    def get_file_id(