### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

Here are the kinesis events from inserting/deleting a dynamodb item:

```
{"eventID":"cf1199b0","eventVersion":"1.1","dynamodb":{"ApproximateCreationDateTime":1.635284406858227E9,"SizeBytes":56,"Keys":{"hash":{"S":"hash-691"},"range":{"S":"range-153"}},"NewImage":{"hash":{"S":"hash-691"},"range":{"S":"range-153"}}},"awsRegion":"us-east-1","eventSource":"aws:dynamodb","eventName":"INSERT","tableName":"bug"}

{"eventID":"976b515b","eventVersion":"1.1","dynamodb":{"ApproximateCreationDateTime":1.6352844070969691E9,"SizeBytes":4,"Keys":{"hash":{"S":"hash-691"},"range":{"S":"range-153"}},"OldImage":null},"awsRegion":"us-east-1","eventSource":"aws:dynamodb","eventName":"REMOVE","tableName":"bug"}
```

Note that the remove event has `OldImage` = `null`

### Expected Behavior

I expected `OldImage` to be `{"hash":{"S":"hash-691"},"range":{"S":"range-153"}}`.

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

https://github.com/achaphiv/issue-localstack-dynamodb-stream-to-kinesis

```
# Create table/stream and hook them up
docker-compose up -d

# Create/delete an item
./mvnw -P write-to-dynamodb

# See the produced records
./mvnw -P watch-kinesis
```

### Environment

```markdown
- OS: Manjaro Linux
- LocalStack: 0.12.19
```


### Anything else?

_No response_
unprocessed_put_items = []
            unprocessed_delete_items = []
            for table_name in sorted(data["RequestItems"].keys()):
                for request in data["RequestItems"][table_name]:
                    for key in ["PutRequest", "DeleteRequest"]:
                        inner_request = request.get(key)
                        if inner_request:
                            if self.should_throttle(action):
                                if key == "PutRequest":
                                    unprocessed_put_items.append(inner_request)
                                elif key == "DeleteRequest":
                                    unprocessed_delete_items.append(inner_request)
                            else:
                                item = find_existing_item(inner_request, table_name)
                                existing_items.append(item)
            ProxyListenerDynamoDB.thread_local.existing_items = existing_items
            ProxyListenerDynamoDB.thread_local.unprocessed_put_items = unprocessed_put_items
            ProxyListenerDynamoDB.thread_local.unprocessed_delete_items = unprocessed_delete_items
        elif action == "Query":
            if data.get("IndexName"):
                if not is_index_query_valid(to_str(data["TableName"]), data.get("Select")):
                    return error_response(
                        message="One or more parameter values were invalid: Select type ALL_ATTRIBUTES "
                        "is not supported for global secondary index id-index because its projection "
                        "type is not ALL",
                        error_type="ValidationException",
                        code=400,
                    )
        elif action == "TransactWriteItems":
            existing_items = []