+ в большинстве своём всякие делегаты таблиц, пикеров и прочих хотят чтобы листенер был NSObject, но тут как правило лучше отдельно определить некий адаптер на основе NSObject, прокинуть в него какой-то датасет и необходимые кложуры, и хранить в классическом свифт объекте или структуре