UNPKG

mobx-state-tree-entity

Version:
29 lines (28 loc) 2.35 kB
import { IAnyModelType, IModelType, ISimpleType, ModelProperties } from 'mobx-state-tree'; export declare type ExtractProps<T extends IAnyModelType> = T extends IModelType<infer P, any, any, any> ? P : never; export declare type ModelPropertyDefinitionsToProperties<T extends IAnyModelType> = { [P in keyof ExtractProps<T>]: ExtractProps<T>[P] extends ISimpleType<infer X> ? X : never; }; export declare const deriveModelFromState: (state: { [key: string]: any; }) => IModelType<any, { setValues: (values: import("mobx-state-tree").ModelInstanceTypeProps<any> & import("mobx-state-tree").IStateTreeNode<IModelType<any, {}, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>>) => void; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>; export declare const useSingletonEntity: <P extends ModelProperties, O, T extends IModelType<P, O, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>, I extends ModelPropertyDefinitionsToProperties<T>>(initialValue: I, endpoint: string) => import("mobx-state-tree").IOptionalIType<IModelType<{ metadata: IModelType<{ error: import("mobx-state-tree").IMaybeNull<ISimpleType<string>>; isHydrating: import("mobx-state-tree").IOptionalIType<ISimpleType<boolean>, [undefined]>; isLoading: import("mobx-state-tree").IOptionalIType<ISimpleType<boolean>, [undefined]>; status: import("mobx-state-tree").IOptionalIType<ISimpleType<number>, [undefined]>; }, { hasHydrated: boolean; } & { readonly isDirty: boolean; readonly hasError: boolean; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>; persistedValue: import("mobx-state-tree").IOptionalIType<IModelType<P, any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>, [undefined]>; value: import("mobx-state-tree").IOptionalIType<IModelType<P, any, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>, [undefined]>; }, { read: (id?: string | number | undefined) => Promise<any>; update: (id?: string | number | undefined) => Promise<any>; }, import("mobx-state-tree")._NotCustomized, import("mobx-state-tree")._NotCustomized>, [undefined]>;