UNPKG

mobx-keystone

Version:

A MobX powered state management solution based on data trees with first class support for TypeScript, snapshots, patches and much more

34 lines (30 loc) 823 B
import type { AnyDataModel } from "../dataModel/BaseDataModel" import type { AnyModel } from "../model/BaseModel" import type { ModelClass } from "./BaseModelShared" import type { ModelProps } from "./prop" const modelPropertiesSymbol = Symbol("modelProperties") /** * @internal * * Gets the info related to a model class properties. * * @param modelClass */ export function getInternalModelClassPropsInfo( modelClass: ModelClass<AnyModel | AnyDataModel> ): ModelProps { return (modelClass as any)[modelPropertiesSymbol] } /** * @internal * * Sets the info related to a model class properties. * * @param modelClass */ export function setInternalModelClassPropsInfo( modelClass: ModelClass<AnyModel | AnyDataModel>, props: ModelProps ): void { ;(modelClass as any)[modelPropertiesSymbol] = props }