The only problem is that you can’t declare some abstract
Andrei Mamchenko

Hey, even though we can‘t declare a property like you mentioned above but the way I use it is make your `ViewModel` conform with your `DataProvider` and satisfy all the requirements. This way you won’t need to save a direct reference of DataProvider but rather save a reference of your ViewModel which conforms to DataProvider. I hope I made it clear and it helps :)