Skip to main content


where is for selecting the events that will be passed to a Fish’s onEvent. Events in the Pond are selected via tags which are attached at emission time.

This emits an event with tags 'foo' and 'bar':
pond.emit(Tags('foo', 'bar'), { hello: 'world' })

To retrieve this event in a Fish, we may write where: Tag('foo').
Alternatively: where: Tag('bar').
Using where: Tags('foo', 'bar') we will also select the event, but now the selection will no longer match events that have only one of these tags.

You can read more about emitting and selecting events in the tutorial.
There is also a detailed guide covering type-checking best practices.