@convergence/convergence
Version:
Convergence JavaScript Client
24 lines (23 loc) • 1.04 kB
TypeScript
import { RealTimeElement } from "./RealTimeElement";
import { RealTimeContainerElement } from "./RealTimeContainerElement";
import { LocalPropertyReference } from "../reference";
import { ObservableObject, ObservableObjectEvents } from "../observable/ObservableObject";
import { Path, PathElement } from "../Path";
export interface RealTimeObjectEvents extends ObservableObjectEvents {
}
export declare class RealTimeObject extends RealTimeElement<{
[key: string]: any;
}> implements RealTimeContainerElement<{
[key: string]: any;
}>, ObservableObject {
static readonly Events: RealTimeObjectEvents;
get(key: string): RealTimeElement;
set(key: string, value: any): RealTimeElement;
remove(key: string): RealTimeElement;
keys(): string[];
hasKey(key: string): boolean;
forEach(callback: (model: RealTimeElement, key: string) => void): void;
elementAt(path: Path): RealTimeElement;
elementAt(...elements: PathElement[]): RealTimeElement;
propertyReference(key: string): LocalPropertyReference;
}