@type t() ::
{:e2o, event_var :: String.t(), object_var :: String.t(),
qualifier :: String.t() | nil}
| {:o2o, source_var :: String.t(), target_var :: String.t(),
qualifier :: String.t() | nil}
| {:tbe, ev_a :: String.t(), ev_b :: String.t(), op :: atom(),
threshold_ms :: number()}