/** * cfcs * Copyright (c) 2022-present NAVER Corp. * MIT license */ import Component from "@egjs/component"; interface EmitterEvents { update: (value: Value, prevValue: Value) => void; } /** * Creates a mutable ref object. You can access the `.current` value and detect the value change through `.subscribe`. * @category Reactive * @see observe */ export declare class Observer { protected _current: Value; protected _emitter: Component>; /** * */ constructor(value?: Value); /** * return the current value. */ get current(): Value; set current(value: Value); /** * When the current value changes, the callback function is called. */ subscribe(callback: (value: Value, prevValue: Value) => void): this; /** * Cancel the registered subscription through callback. */ unsubscribe(callback?: (value: Value, prevValue: Value) => void): this; protected _setCurrent(value: Value): void; /** * @hidden */ toString(): string; /** * @hidden */ valueOf(): Value; } export {};