UNPKG

ag-charts-community

Version:

Advanced Charting / Charts supporting Javascript / Typescript / React / Angular / Vue

11 lines (10 loc) 564 B
export interface PerWindowEntry<S> { subscribers: Set<S>; } export interface PerWindowRegistry<S, E extends PerWindowEntry<S>> { subscribe(window: Window, subscriber: S): () => void; /** Returns a snapshot copy so callers can iterate safely while subscribers self-unsubscribe. */ snapshot(entry: E): S[]; get(window: Window): E | undefined; } export declare function createPerWindowRegistry<S, E extends PerWindowEntry<S>>(onFirstSubscribe: (window: Window) => E, onLastUnsubscribe: (entry: E) => void, name?: string): PerWindowRegistry<S, E>;