hasAccess
Returns true if this searchable is visible/usable under the given accessLevelId. Resolution mirrors hasAccess (engine EntityUtils.hasAccess). An empty accessLevelId ("") = property default = ALLOW. Unknown/unresolvable entity backing = DENY (fail-closed).
Callers pass the active id from the role API: searchable.hasAccess(coreApi, coreApi.setup().getActiveAccessLevelId(propertyId)).
This default resolves every EntityZone that backs this searchable through coreApi.properties().getEntity(...) and applies the same engine gate the map uses (hasAccess). A searchable can back multiple zones (e.g. a multi-location POI such as "Washroom"); it is considered accessible if ANY of its zones is accessible (matching the map, where the result is visible if any of its geometry is plotted). Empty accessLevelId short-circuits to ALLOW (property default). If the searchable carries no zones or none resolves to a live engine entity, the result is DENY (fail-closed) — except for the empty-id property-default case above.
Parameters
used to resolve the engine-backed Entity for this searchable
the active access level id ("" = property default)