There has been a shift from callbacks to events emission/reception structure. Currently there is no documentation that explicitly tells the user what events may be emitted by a particular method which makes it problematic to handle different scenarios.