/** * Copyright (c) 2014-present Houfeng * @homepage https://github.com/Houfeng/ober * @author Houfeng */ import { Flag } from "./Flag"; /** * 是否触发 change 事件 */ export declare const changeFlag: Flag; /** * 是否触发 unref 事件 */ export declare const unrefFlag: Flag; /** * 是否触发 ref 事件 */ export declare const refFlag: Flag; export type ObserveEvent = { id: string; member: PropertyKey; value?: any; }; export declare function ObserveKey(event: ObserveEvent): string; export type ObserveListener = { (event: ObserveEvent): void; dependencies?: Set; }; export type ObserveEvents = { /** * 在属性值发生变化时触发 */ change: ObserveListener; /** * 在最后一个监听移除时触发 */ unref: ObserveListener; /** * 在第一个监听建立时触发 **/ ref: ObserveListener; }; export type ObserveEventNames = keyof ObserveEvents; export declare function subscribe(type: T, listener: ObserveEvents[T]): void; export declare function unsubscribe(type: T, listener: ObserveEvents[T]): void; export declare function emitChange(event: ObserveEvent): void; //# sourceMappingURL=EventBus.d.ts.map