maybe:
```
def publish(self, block, event_type, event_data)
```
to make a more explicit signature