Question about MVVM chapter

Why is it using class and not struct for the view model?

View model is not suppose to know about the view. Why do we import UIKit? What if it is using SwiftUI?