UNPKG

@difizen/mana-observable

Version:

27 lines 1.51 kB
import { ObservableSymbol } from './core'; type Act = (...args: any) => void; export declare function tryInvokeGetter(getter: () => any, proxy: any, origin: any): any; export type Trackable = { [ObservableSymbol.Tracker]: Record<string, any>; [Trackable.activator]?: (() => void) | undefined; }; export declare namespace Trackable { const activator: unique symbol; function is(target: any): target is Trackable; function getOrigin(target: Trackable): any; function tryGetOrigin(target: any): any; } export declare namespace Tracker { function set<T extends Record<any, any> = any>(target: T, act: Act, proxy: T): void; function get<T extends Record<any, any> = any>(target: T, act: Act): (T & Trackable) | undefined; function has<T extends Record<any, any> = any>(target: T, act: Act): boolean; function tramsform(toTrack: any, act: Act, activator?: () => void): any; function transformArray(toTrack: any[], act: Act, activator?: () => void): any; function transformPlainObject(toTrack: any, act: Act, activator?: () => void): any; function transformMap(toTrack: Map<any, any>, act: Act, activator?: () => void): any; function toInstanceTracker<T extends Record<any, any>>(origin: T, act: Act): any; function toNotifiableTracker<T extends Record<any, any>>(origin: T, act: Act, asProperty: boolean): any; function track<T extends Record<any, any>>(object: T, act: Act, asProperty?: boolean): T; } export {}; //# sourceMappingURL=tracker.d.ts.map