import { IInterceptor } from "../types/intercept-utils"; import { IObservableArray, IArrayWillChange, IArrayWillSplice } from "../types/observablearray"; import { ObservableMap, IMapWillChange } from "../types/observablemap"; import { IObjectWillChange } from "../types/observableobject"; import { IValueWillChange, IObservableValue } from "../types/observablevalue"; import { Lambda } from "../utils/utils"; export declare function intercept(value: IObservableValue, handler: IInterceptor>): Lambda; export declare function intercept(observableArray: IObservableArray, handler: IInterceptor | IArrayWillSplice>): Lambda; export declare function intercept(observableMap: ObservableMap, handler: IInterceptor>): Lambda; export declare function intercept(observableMap: ObservableMap, property: string, handler: IInterceptor>): Lambda; export declare function intercept(object: Object, handler: IInterceptor): Lambda; export declare function intercept(object: T, property: K, handler: IInterceptor>): Lambda;