-record(event_store, { eventstore :: any(), load_aggregate :: fun((any(), binary()) -> eventsourcing:aggregate_context(any(), any(), any(), any())), load_events :: fun((any(), binary()) -> list(eventsourcing:event_envelop(any()))), commit :: fun((any(), eventsourcing:aggregate_context(any(), any(), any(), any()), list(any()), list({binary(), binary()})) -> list(eventsourcing:event_envelop(any()))) }).