import { Path, PathElement } from "../Path"; import { IConvergenceEvent, ConvergenceEventEmitter } from "../../util"; import { ObservableElement, ObservableElementEvents } from "../observable/ObservableElement"; import { HistoricalModel } from "./HistoricalModel"; import { HistoricalContainerElement } from "./HistoricalContainerElement"; export interface HistoricalElementEvents extends ObservableElementEvents { } export declare abstract class HistoricalElement extends ConvergenceEventEmitter implements ObservableElement { static readonly Events: HistoricalElementEvents; id(): string; type(): string; path(): Path; relativePath(): PathElement; parent(): HistoricalContainerElement; isAttached(): boolean; isDetached(): boolean; value(): T; toJSON(): any; model(): HistoricalModel; }