import type { StateObserver } from "./types"; import type { StateEvent } from "../../storage/types"; import type { Transaction } from "../../storage/idb/Transaction"; import { ObservableMap } from "../../../observable/map"; /** * Observable map for a given type with state keys as map keys. * Unsubscribes when last subscription is removed */ export declare class ObservedStateTypeMap extends ObservableMap implements StateObserver { private readonly type; private removeCallback?; constructor(type: string); /** @internal */ load(roomId: string, txn: Transaction): Promise; /** @internal */ handleStateEvent(event: StateEvent): void; setRemoveCallback(callback: () => void): void; onUnsubscribeLast(): void; }