UNPKG

@convergence/convergence

Version:
31 lines (30 loc) 1.03 kB
import { IConvergenceEvent, ConvergenceEventEmitter } from "../../util"; import { ReferenceType } from "./ReferenceType"; import { DomainUser } from "../../identity"; import { RealTimeElement, RealTimeModel } from "../rt"; export interface ModelReferenceTypes { [key: string]: ReferenceType; readonly INDEX: ReferenceType; readonly RANGE: ReferenceType; readonly PROPERTY: ReferenceType; readonly ELEMENT: ReferenceType; } export interface ModelReferenceEvents { readonly SET: string; readonly CLEARED: string; readonly DISPOSED: string; } export declare abstract class ModelReference<V = any> extends ConvergenceEventEmitter<IConvergenceEvent> { static readonly Events: ModelReferenceEvents; static readonly Types: ModelReferenceTypes; type(): ReferenceType; key(): string; source(): RealTimeElement | RealTimeModel; isLocal(): boolean; user(): DomainUser; sessionId(): string; isDisposed(): boolean; value(): V; values(): V[]; isSet(): boolean; }