Retrieve a stream of events from the underlying data store.
Retrieve a stream of events from the underlying data store. This stream should take care of pagination and cleanup of any underlying resources (e.g. closing connections if required).
The key
The starting sequence to get events from
Stream of events.
Save the given event.
Save the given event.
Either an Error or the event that was saved. Other non-specific errors should be available through the container F.
A source of events. Implementations wrap around an underlying data store (e.g. in-memory map or DynamoDB).
Container around operations on an underlying data store. F must be a Monad and a Catchable (e.g. Task).