First of, researching MVVM for iOS is a headache as there are multiple varying implementations floating around online. So far I found 3 categories of MVVM:
Is Delegation Pattern or KVO a requirement for implementing MVVM in iOS?
I've seen a number of MVVM examples online that do not make use of Protocols / Delegation, and instead just use MVVM as a helper class to encapsulate the Model and provide state to the ViewController.
Is that still considered MVVM?
I totally agree with you, it's really a painful job to get correct understanding about MVVM on internet as everyone has their own implementation, I had the same situation as yours.
It does not really matter which approach are you following to implement MVVM as long as you are not violating below rules:
View:
ModelView:
Model:
So as per the rules above either you can go with 1st or 2nd point as 3rd is not applicable here because without binding or notifying you cannot achieve MVVM.
Hope it helps.