Model properties type (inferred from props).
Model properties object.
Defines a model mixin from a ModelProps object, with a requirement on the base model.
Pass req<Req>() as the second argument to declare that the base model must already contain the
Req shape before the mixin is applied.
Shape that must exist on the base model instance (specified via req<Req>()).
Model properties type (inferred from props).
Defines a model mixin from a ModelProps object and a builder that can add actions and other
methods.
The props are applied via ExtendedModel first; the resulting pre-extended class is passed to
the builder so you can simply extend Base without calling ExtendedModel yourself.
ModelData / ModelCreationData resolve to the exact prop types from MP.
Model properties type (inferred from props).
Built class type (inferred from build return type).
Model properties object.
Builder receiving the pre-extended base class.
Defines a model mixin from a ModelProps object and a builder, with a requirement on the base
model.
Pass req<Req>() as the second argument to declare that the base model must already contain the
Req shape. The Base class received by the builder includes both the prop types and Req.
Shape that must exist on the base model instance (specified via req<Req>()).
Model properties type (inferred from props).
Built class type (inferred from build return type).
Model properties object.
Requirement marker created by req<Req>().
Builder receiving the pre-extended base class (typed with both props and Req).
Defines a model mixin from a
ModelPropsobject.ModelData/ModelCreationDataon the composed class resolve to the exact prop types.