### 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)

:param drive_folder: path of the Drive folder
    :param gcp_conn_id: Airflow Connection ID for GCP
    :param delete: should the local files be deleted after upload?
    :param ignore_if_missing: if True, then don't fail even if all files
        can't be uploaded.
    :param chunk_size: File will be uploaded in chunks of this many bytes. Only
        used if resumable=True. Pass in a value of -1 if the file is to be
        uploaded as a single chunk. Note that Google App Engine has a 5MB limit
        on request size, so you should never set your chunk size larger than 5MB,
        or to -1.
    :param resumable: True if this is a resumable upload. False means upload
        in a single request.
    :param delegate_to: The account to impersonate using domain-wide delegation of authority,
        if any. For this to work, the service account making the request must have
        domain-wide delegation enabled.
    :param impersonation_chain: Optional service account to impersonate using short-term
        credentials, or chained list of accounts required to get the access_token
        of the last account in the list, which will be impersonated in the request.
        If set as a string, the account must grant the originating account
        the Service Account Token Creator IAM role.
        If set as a sequence, the identities from the list must grant
        Service Account Token Creator IAM role to the directly preceding identity, with first
        account from the list granting this role to the originating account
    :return: Remote file ids after upload
    """
    template_fields = (
        "local_paths",
        "drive_folder",
    )
    def __init__(