/// import { ProxyTarget, Target } from "./proxyObserve"; import { Transaction } from "./Transaction"; import { Memoization } from "./memoize"; export declare function setCurrentSelectorContext(currentSelectorContextIn: Observer | undefined): void; export declare function setCurrentContext(currentContextIn: Observer | undefined): void; export declare const getCurrentContext: () => Observer | undefined; export declare const getCurrentSelectorContext: () => Observer | undefined; interface ObserverOptionsAll { batch: boolean; delay: number | undefined; notifyParents: boolean; memo: boolean; } export declare type ObserverOptions = Partial; export declare class Observer { constructor(onChange: (target?: string, prop?: string, targetProxy?: ProxyTarget | Transaction) => void, options?: ObserverOptions, componentName?: string); isSuspended: boolean; options: ObserverOptions; onChange: (target?: string, prop?: string, targetProxy?: ProxyTarget | Transaction) => void | undefined; connectedProxyTargets: Map; pendingProxyTargets: Array<[ProxyTarget | Transaction, string]>; componentName: string; renderCount: number; target: Target | undefined; changed(proxyTarget: ProxyTarget | Transaction | undefined, prop: string, isParent: boolean): void; static forceBatch: boolean; static beginBatch(): void; static playBatch(clear?: boolean): void; static inAction: boolean; static observersPendingChange: Set; static startTopLevelCall(): void; static endTopLevelCall(): void; timeout: NodeJS.Timeout | undefined; scheduleChange(name: string, prop: string, proxyTarget: ProxyTarget | Transaction): void; effectChange(): void; referenced(proxyTarget: ProxyTarget | Transaction, prop: string): void; referencedMemo(memo: Memoization): void; processPendingReferences(): void; processPendingReference(proxyTarget: ProxyTarget | Transaction, prop: string, logging: Array): void; disconnect(proxyTarget: ProxyTarget): void; cleanup(): void; } export {};