import { F } from "./util/Utils.js"; import { Reaction, ReactivityOptions, LoggingOptions, ProfilingOptions, SnapshotOptions } from "./Options.js"; export declare class ReactiveSystem { static why(brief?: boolean): string; static getRevisionOf(obj: any): number; static takeSnapshot(obj: T): T; static get reactivityAutoStartDisabled(): boolean; static set reactivityAutoStartDisabled(value: boolean); static get isLogging(): boolean; static get loggingOptions(): LoggingOptions; static setLoggingMode(isOn: boolean, options?: LoggingOptions): void; static setLoggingHint(obj: T, name: string | undefined): void; static getLoggingHint(obj: T, full?: boolean): string | undefined; static setProfilingMode(isOn: boolean, options?: Partial): void; } export declare function runTransactional(func: F, ...args: any[]): T; export declare function runTransactional(options: SnapshotOptions, func: F, ...args: any[]): T; export declare function runNonReactive(func: F, ...args: any[]): T; export declare function runSensitive(sensitivity: boolean, func: F, ...args: any[]): T; export declare function runContextual(p: Promise): Promise; export declare function manageReaction(method: F): Reaction; export declare function configureCurrentReaction(options: Partial): ReactivityOptions; export declare function disposeRxObject(obj: any): void; export declare function signal(enabled: boolean): (proto: object, prop: PropertyKey) => any; export declare function signal(proto: object, prop: PropertyKey): any; export declare function transaction(proto: object, prop: PropertyKey, pd: PropertyDescriptor): any; export declare function reaction(proto: object, prop: PropertyKey, pd: PropertyDescriptor): any; export declare function cache(proto: object, prop: PropertyKey, pd: PropertyDescriptor): any; export declare function options(value: Partial): F;