import { OrderedDict } from "../ordered-dict/ordered_dict"; export interface ObserveCallbacks { added: (id: string, fields: Record) => void; changed: (id: string, fields: Record) => void; removed: (id: string) => void; addedBefore?: (id: string, fields: Record, before?: any) => void; movedBefore?: (id: string, fields: Record, before?: any) => void; initialAdds: (docs: Map | OrderedDict) => void; _testOnlyPollCallback?: any; } export declare class ObserveMultiplexer { private _ordered; private _onStop; private _queue; private _handles; private _readyFuture; private _cache; private _addHandleTasksScheduledButNotPerformed; added: ObserveCallbacks["added"]; changed: ObserveCallbacks["changed"]; removed: ObserveCallbacks["removed"]; constructor(options: any); addHandleAndSendInitialAdds(handle: ObserveHandle): Promise; removeHandle(id: number): void; _stop(options?: any): void; ready(): void; queryError(err: Error): void; onFlush(cb: any): void; callbackNames(): string[]; _ready(): boolean; _applyCallback(callbackName: string, args: any): Promise; } export declare class ObserveHandle { private _multiplexer; nonMutatingCallbacks: boolean; _id: number; _initialAdds: ObserveCallbacks["initialAdds"]; _addedBefore: ObserveCallbacks["addedBefore"]; _movedBefore: ObserveCallbacks["movedBefore"]; _added: ObserveCallbacks["added"]; _changed: ObserveCallbacks["changed"]; _removed: ObserveCallbacks["removed"]; private _stopped; constructor(_multiplexer: ObserveMultiplexer, callbacks: ObserveCallbacks, nonMutatingCallbacks?: boolean); stop(): void; }