UNPKG

mobx-keystone-mindreframer

Version:

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

14 lines (13 loc) 1.1 kB
import { AnyDataModel } from "../dataModel/BaseDataModel"; import { AnyModel } from "../model/BaseModel"; import { ModelClass, ModelData } from "./BaseModelShared"; import { AnyModelProp, ModelProps } from "./prop"; export declare function createModelPropDescriptor(modelPropName: string, modelProp: AnyModelProp | undefined, enumerable: boolean): PropertyDescriptor; export declare function getModelInstanceDataField<M extends AnyModel | AnyDataModel>(model: M, _modelProp: AnyModelProp | undefined, modelPropName: keyof ModelData<M>): ModelData<M>[typeof modelPropName]; export declare function setModelInstanceDataField<M extends AnyModel | AnyDataModel>(model: M, modelProp: AnyModelProp | undefined, modelPropName: keyof ModelData<M>, value: ModelData<M>[typeof modelPropName]): void; export declare function sharedInternalModel<TProps extends ModelProps, TBaseModel extends AnyModel | AnyDataModel>({ modelProps, baseModel, type, valueType, }: { modelProps: TProps; baseModel: ModelClass<TBaseModel> | undefined; type: "class" | "data"; valueType: boolean; }): any;