import { type IDisposable } from '../functions/disposer.js'; import { Loggable } from '../logger/loggable.js'; type Unsub = () => void; export declare class SubscribersMap extends Loggable implements IDisposable { readonly subscribe: null | ((key: string) => Promise); readonly name?: string | undefined; /** Unsubscribers map: key => unsub fn */ private readonly _map; /** Timeouts map: key => timeout handle */ private readonly _timeouts; protected _count: number; constructor(subscribe: null | ((key: string) => Promise), name?: string | undefined); get count(): number; protected getLoggerName(name: string | undefined): string; getIsObserving(key: string): boolean; getHasObserveTimeout(key: string): boolean; enable(key: string, enable: boolean, clearAfter?: number | null, existingUnsubs?: Unsub[] | null): Promise; private refreshTimeout; protected setCount(v: number): void; clear(): void; dispose(): void; } export {};