Description
The following listeners are relying on an implementation of events and not on the API.
We should modify them in order to only rely on objects defined in `mailbox/api`
Here is the list:
- ListeningMessageSearchIndex (MailboxDeletionImpl - AddedImpl - ExpungedImpl - FlagsUpdatedImpl)
- MailboxAnnotationListener (MailboxDeletionImpl - for retieving the mailbox Id)
- SpamAssassinListener (AddedImpl)
We will need to drop the optimization of handling messages alongside events and read them from the mailbox manager (SpamAssassin, indexing)