mobx-keystone
Version:
A MobX powered state management solution based on data trees with first class support for TypeScript, snapshots, patches and much more
9 lines (8 loc) • 578 B
TypeScript
import { AnyFunction } from '../utils/AnyFunction';
export declare const objectActions: {
set: <T extends object, K extends keyof T>(target: T, key: K, value: T[K]) => void;
assign: <T extends object>(target: T, partialObject: Partial<T>) => void;
delete: <T extends object, K extends keyof T>(target: T, key: K) => boolean;
call: <T extends object, K extends keyof T>(target: T, methodName: K, ...args: T[K] extends AnyFunction ? Parameters<T[K]> : never) => T[K] extends AnyFunction ? ReturnType<T[K]> : never;
create: <T extends object>(data: T) => T;
};