class ViewModelOwner
typealias ViewModelOwnerDefinition = () -> ViewModelOwner
class ViewModelParameter<T : Any>