export interface RxapOnPropertyChange {
    initialized?: boolean;
    rxapOnPropertyChange(change: PropertyChange): void;
}
export declare function HasOnChangeMethod<T>(obj: T): obj is RxapOnPropertyChange & T;
/**
 * @deprecated use HasOnChangeMethod instead
 */
export declare const hasOnChangeMethod: typeof HasOnChangeMethod;
export interface PropertyChange<Value = any> {
    propertyKey: string | number | symbol;
    currentValue: Value;
    previousValue: Value;
}
export declare const RXAP_DETECT_CHANGES = "rxap-detect-changes";
export declare const handler: {
    set: (instance: any, propertyKey: string | number | symbol, value: any, receiver: any) => boolean;
};
export declare function ProxyChangeDetection<T>(instance: T): T;
export declare function RxapDetectChanges(target: any, propertyKey: string): void;
