UNPKG

ngx-diagrams

Version:

> Light Weight, Modular, Typed Diagram Engine for Angular

70 lines (69 loc) 2.44 kB
import { Observable } from 'rxjs'; import { EntityMap, ID } from '../utils'; import { BaseModel } from './base.model'; import { LinkModel } from './link.model'; import { NodeModel } from './node.model'; export declare class PortModel extends BaseModel<NodeModel> { protected name: string; protected maximumLinks: number; protected linkType: string; protected links$: import("../state/state").EntityState<LinkModel>; protected x$: import("../state/state").ValueState<number>; protected y$: import("../state/state").ValueState<number>; protected width$: import("../state/state").ValueState<number>; protected height$: import("../state/state").ValueState<number>; protected magnetic$: import("../state/state").ValueState<boolean>; protected canCreateLinks$: import("../state/state").ValueState<boolean>; constructor(name: string, type?: string, id?: string, maximumLinks?: number, linkType?: string, magnetic?: boolean, logPrefix?: string); serialize(): { x: number; y: number; name: string; linkType: string; maximumLinks: number; type: string; magnetic: boolean; height: number; width: number; canCreateLinks: boolean; id: string; locked: boolean; }; getNode(): NodeModel<PortModel>; getName(): string; getCanCreateLinks(): boolean; getCoords(): { x: number; y: number; }; selectCanCreateLinks(): Observable<boolean>; setCanCreateLinks(value: boolean): void; getMagnetic(): boolean; selectMagnetic(): Observable<boolean>; setMagnetic(magnetic: boolean): void; selectX(): Observable<number>; selectY(): Observable<number>; getY(): number; getX(): number; getHeight(): number; getWidth(): number; getMaximumLinks(): number; setMaximumLinks(maximumLinks: number): void; getLinkType(): string; setLinkType(type: string): void; removeLink(linkOrId: ID | LinkModel): void; addLink(link: LinkModel): void; getLinks(): EntityMap<LinkModel>; getLinksArray(): LinkModel[]; selectLinks(): Observable<EntityMap<LinkModel>>; updateCoords({ x, y, width, height }: { x: number; y: number; width: number; height: number; }): void; canLinkToPort(port: PortModel): boolean; isLocked(): boolean; createLinkModel(): LinkModel; destroy(): void; }