The Delay until an Event flow allows you to delay processing of the next node in the Journey until a specified event or series of events have occurred. The "events" to be evaluated are based on rulesets you set up, using the same ruleset tool used to create lists, segments or searches.
See Fig 1 below for an example where the Entrant event is a contact being added to a database, upon which the Delay until an Event Flow node will delay until the contact has opened a certain email, upon which a second email will be sent.
Fig 1
To create the event(s) that will be evaluated, click the Delay until an Event flow node once you have added it to the Journey work area. Doing so will bring up this popup ("Properties") on the right-hand side of the screen. See Fig 2 below.
Fig 2
Clicking the "Add Condition" button below the "Delay until an Event" label will allow you to use the ruleset tool to create the specific event(s) to evaluate. See Fig 3 below.
Fig 3
Note that you can add more than one event to evaluate, just as you can use more than one ruleset to create lists, segments or do a search.
Also note the Properties popup contains a field that allows you to set a maximum number of days the Journey system will wait until it moves on to the next node of the Journey structure, whether or not the contact has met the event(s) criteria.
Once you have finished with the action's setup, click the "Save Properties" button.