Why not an enum? Is it an API stability thing?
https://docs.swift.org/swift-book/LanguageGuide/Enumerations...
Looks like someone beat me to this (2019): https://news.ycombinator.com/item?id=20352473, the reply to it perhaps gets to the reason why. Something about Objective C's enums being different.
See here: https://stackoverflow.com/a/13480621