ngx-diagrams
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 7.2.0.
56 lines (55 loc) • 2.08 kB
TypeScript
import { Observable } from 'rxjs';
import { PortModel } from './port.model';
import { BaseModel } from './base.model';
import { DiagramModel } from './diagram.model';
import { Coords } from '../interfaces/coords.interface.js';
import { DiagramEngine } from '../services/engine.service';
import { Dimensions } from '../interfaces/dimensions.interface';
import { ID } from '../utils/tool-kit.util';
export declare class NodeModel<P extends PortModel = PortModel> extends BaseModel<DiagramModel> {
id: ID;
diagramEngine: DiagramEngine;
private readonly _extras;
private readonly _ports;
private readonly _coords;
private readonly _dimensions;
private readonly extras$;
private readonly ports$;
private readonly coords$;
private readonly dimensions$;
constructor(nodeType?: string, id?: string, extras?: {
[s: string]: any;
}, x?: number, y?: number, width?: number, height?: number, logPrefix?: string);
getCoords(): Coords;
setCoords({ x, y }: Coords): void;
transitionToCoords({ x, y }: Coords): void;
getSelectedEntities(): BaseModel<import("../base.entity").BaseEntity>[];
coordsChanges(): Observable<Coords>;
selectCoords(): Observable<Coords>;
selectX(): Observable<number>;
selectY(): Observable<number>;
/**
* Assign a port to the node and set the node as its getParent
* @returns the inserted port
*/
addPort(port: P): P;
getPort(id: ID): P;
selectPorts(selector?: () => boolean | ID | ID[]): Observable<P[]>;
getPorts(ids?: ID[]): {
[s: string]: P | P[];
};
setDimensions({ width, height }: Dimensions): void;
getDimensions(): Dimensions;
dimensionChanges(): Observable<Dimensions>;
getHeight(): number;
getWidth(): number;
selectWidth(): Observable<number>;
selectHeight(): Observable<number>;
setExtras(extras: any): void;
getExtras(): {
[s: string]: any;
};
selectExtras<E = any>(selector?: (extra: E) => E[keyof E] | string | string[]): Observable<{
[s: string]: any;
}>;
}