enum RostersAction: Codable { case addRoster(ownerJID: String, contactJID: String, name: String?, groups: [String]) case addRosterDone(jid: String) case addRosterError(reason: String) case rostersListUpdated([Roster]) case markRosterAsLocallyDeleted(ownerJID: String, contactJID: String) case unmarkRosterAsLocallyDeleted(ownerJID: String, contactJID: String) case deleteRoster(ownerJID: String, contactJID: String) case rosterDeletingFailed(reason: String) }