ElementaryModel

For the MVVM concept Model classes are:

non-visual classes that encapsulate the app's data. Therefore, the model can be thought of as representing the app's domain model, which usually includes a data model along with business and validation logic. Examples of model objects include data transfer objects (DTOs), Plain Old CLR Objects (POCOs), and generated entity and proxy objects. They are typically used in conjunction with services or repositories that encapsulate data access and caching.

So based on that, ElementaryModel is the single point of interaction with business logic for the related WidgetModel. It encapsulates all required business logic for the WidgetModel and provides it as a contract. Summarizing it, for every WidgetModel, a corresponding ElementaryModel is the single business logic dependency. Apart from that, there is no other requirement for the ElementaryModel implementation, and internally it can be built as you prefer.