Events fire when different things happen in the MAC layer – TX done, TX error, RX done, RX error, join accept, etc, etc. The event handler is a way for the application to be notified of important things like those and others without constantly polling the library.
Cheers,
Mike