### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

As mentioned [here](https://github.com/localstack/localstack/issues/4834#issuecomment-1021009701) it seems like the `AmazonopensearchserviceDestinationConfiguration` was not added while implementing OpenSearch. I guess it just needs be added [here](https://github.com/localstack/localstack/blob/53b5c7788bf35b1882b6cb1949e17d27e198cf61/localstack/services/cloudformation/models/kinesisfirehose.py#L23-L27).

### Expected Behavior

I can (and should) use `AmazonopensearchserviceDestinationConfiguration` instead of `ElasticsearchDestinationConfiguration` (which I should only be able to use if I use ElasticSearch-Service).

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

Well, just use `AmazonopensearchserviceDestinationConfiguration` and your stream will never be able to deliver the records to your (external) Cluster. But it works with `ElasticsearchDestinationConfiguration`.

### Environment

```markdown
- OS: Windows mit WSL (Ubuntu 20.04)
- LocalStack: latest
```


### Anything else?

_No response_
kinesis_stream_name = kinesis_stream_source_configuration["KinesisStreamARN"].split(
                "/"
            )[1]
            kinesis_connector.listen_to_kinesis(
                stream_name=kinesis_stream_name,
                fh_d_stream=delivery_stream_name,
                listener_func=self._process_records,
                wait_until_started=True,
                ddb_lease_table_suffix="-firehose",
            )
        return CreateDeliveryStreamOutput(DeliveryStreamARN=stream["DeliveryStreamARN"])
    def delete_delivery_stream(
        self,
        context: RequestContext,
        delivery_stream_name: DeliveryStreamName,
        allow_force_delete: BooleanObject = None,
    ) -> DeleteDeliveryStreamOutput:
        region = FirehoseBackend.get()
        delivery_stream_description = region.delivery_streams.pop(delivery_stream_name, {})
        if not delivery_stream_description:
            raise ResourceNotFoundException(
                f"Firehose {delivery_stream_name} under account {context.account_id} " f"not found."
            )
        
        event_publisher.fire_event(
            event_publisher.EVENT_FIREHOSE_DELETE_STREAM,
            payload={"n": event_publisher.get_hash(delivery_stream_name)},
        )
        return DeleteDeliveryStreamOutput()
    def describe_delivery_stream(