Sentry Issue: [POSTHOG-3DZ](https://sentry.io/organizations/posthog/issues/2582077777/?referrer=github_integration)

```
ValueError: Property type does not have a table: cohort
(1 additional frame(s) were not displayed)
...
  File "ee/clickhouse/models/cohort.py", line 239, in recalculate_cohortpeople
    cohort_filter, cohort_params = format_person_query(cohort, 0, custom_match_field="id")
  File "ee/clickhouse/models/cohort.py", line 59, in format_person_query
    prop_query, prop_params = get_properties_cohort_subquery(cohort, group, group_idx)
  File "ee/clickhouse/models/cohort.py", line 79, in get_properties_cohort_subquery
    filter_query, filter_params = prop_filter_json_extract(
  File "ee/clickhouse/models/property.py", line 89, in prop_filter_json_extract
    property_table(prop), prop.key, f"%(k{prepend}_{idx})s", prop_var, allow_denormalized_props
  File "ee/clickhouse/models/property.py", line 191, in property_table
    raise ValueError(f"Property type does not have a table: {property.type}")
```
ee/clickhouse/models/test/test_property.py
return [
        _create_event(event="$pageview", team=team, distinct_id="whatever", properties={"email": "test@posthog.com"},),
        _create_event(event="$pageview", team=team, distinct_id="whatever", properties={"email": "mongo@example.com"},),
        _create_event(event="$pageview", team=team, distinct_id="whatever", properties={"attr": "some_val"},),
        _create_event(event="$pageview", team=team, distinct_id="whatever", properties={"attr": "50"},),
        _create_event(event="$pageview", team=team, distinct_id="whatever", properties={"attr": 5},),
    ]
@pytest.mark.parametrize(
    "property,expected_event_indexes",
    [
        (Property(key="email", value="test@posthog.com"), [0]),
        (Property(key="email", value="test@posthog.com", operator="exact"), [0]),
        (Property(key="email", value=["pineapple@pizza.com", "mongo@example.com"], operator="exact"), [1]),
        (Property(key="attr", value="5"), [4]),
        (Property(key="email", value="test@posthog.com", operator="is_not"), range(1, 5)),
        (Property(key="email", value=["test@posthog.com", "mongo@example.com"], operator="is_not"), range(2, 5)),
        (Property(key="email", value=r".*est@.*", operator="regex"), [0]),
        (Property(key="email", value=r"?.", operator="regex"), []),
    ],
)
def test_prop_filter_json_extract(test_events, property, expected_event_indexes):
    query, params = prop_filter_json_extract(property, 0)
    uuids = list(sorted([uuid for (uuid,) in sync_execute(f"SELECT uuid FROM events WHERE 1 = 1 {query}", params)]))
    expected = list(sorted([test_events[index] for index in expected_event_indexes]))
    assert uuids == expected