У меня есть ответ json и класс модели, как показано ниже
[
{
"id": "1"
},
{
"id": "2"
}
]
Модель
typealias ModelA = [ModelElement]
class ModelElement: Codable {
let id: String?
init(id: String?) {
self.id = id
}
}
Я хочу расширить ModelA
(это typealias) протоколом.
protocol ModelProtocol {
}
Мое требование заключается в том, чтобы при декодировании json и отправке обратно я хотел иметь общее замыкание (как показано ниже) для всей сигнатуры функции запроса вместо отдельного типа замыкания для каждого обратного вызова API
typealias Callback = (ModelProtocol?) -> Void
Но я не могу продлить typealias.Это дает ошибку.
И этот ответ также бесполезен
Как мне добиться наличия общего протокола для всех моделей и типов (когда json начинается с массива)?
Если нет typealias, есть ли другой способ достичь вышеупомянутого требования?