@turbox3d/reactivity
Version:
Large-scale reactive state management library
17 lines (16 loc) • 764 B
TypeScript
import { BabelDescriptor } from '../interfaces';
export declare const meta: {
freeze: boolean;
};
export interface ReactorConfig {
deepProxy: boolean;
isNeedRecord?: boolean;
displayName: string;
callback?: (target: object, property: string) => void;
}
/**
* reactor decorator, making the reactor observable.
*/
export declare function reactor<T extends object>(value: object, config?: Omit<ReactorConfig, 'deepProxy'>): T;
export declare function reactor(target: object, property: string, descriptor?: BabelDescriptor<any>): any;
export declare function reactor(deepProxy?: boolean, isNeedRecord?: boolean, callback?: (target: object, property: string) => void): (target: object, property: string, descriptor?: BabelDescriptor<any>) => any;