ngx-diagrams
Version:
> Light Weight, Modular, Typed Diagram Engine for Angular
32 lines (31 loc) • 1.3 kB
TypeScript
import { Observable } from 'rxjs';
import { BaseEntity } from '../base.entity';
import { PaintedEvent, ParentChangeEvent, SelectionEvent } from '../interfaces/event.interface';
export declare class BaseModel<E extends BaseEntity = BaseEntity> extends BaseEntity {
protected readonly _type: string;
protected parent$: import("../state/state").ValueState<E>;
protected selected$: import("../state/state").ValueState<boolean>;
protected hovered$: import("../state/state").ValueState<boolean>;
protected painted$: import("../state/state").ValueState<boolean>;
constructor(type?: string, id?: string, logPrefix?: string);
serialize(): {
type: string;
id: string;
locked: boolean;
};
getParent(): E;
setParent(parent: E): void;
parentChanges(): Observable<ParentChangeEvent<E>>;
getPainted(): boolean;
setPainted(painted?: boolean): void;
getHovered(): boolean;
setHovered(painted?: boolean): void;
selectHovered(): Observable<boolean>;
paintChanges(): Observable<PaintedEvent>;
getType(): string;
getSelected(): boolean;
selectSelected(): Observable<boolean>;
setSelected(selected?: boolean): void;
selectionChanges(): Observable<SelectionEvent>;
getSelectedEntities(): BaseModel[];
}