Registers the given listener so it can receive events. Returns the generated id for this new listener. You can pass in a an IEventListener, a Closure, and an array containing the object and name of the method to invoke. Can specify an optional predicate to invoke before calling the callback.
Signature
public function registerEventListener(mixed
$listener,
[Closure|null
$predicate = NULL] )