JSON не имеет упорядоченных множеств.У него просто есть массивы.Поэтому вам нужно преобразовать массив в NSOrderedSet, вызвав его инициализатор:
self.photos = NSOrderedSet(array:
try values.decodeIfPresent([String].self, forKey: .photos) ?? [])
(Тем не менее, я бы настоятельно рекомендовал избавиться от NSOrderedSet. Это беспорядок в структуре данных, и он плохо работает с SwiftВы почти всегда лучше оборачиваете массив и просто контролируете, когда вставляете в него. Если вы считаете, что есть разница в производительности, вы должны сделать много профилирования на ваших реальных данных, прежде чем предполагать это.)