export class NodeVisualData {
    /**
     *
     * @type {number}
     */
    id: number;
    /**
     *
     * @type {Rectangle}
     */
    dimensions: Rectangle;
    /**
     *
     * @type {List<PortVisualData>}
     */
    ports: List<PortVisualData>;
    /**
     *
     * @param {number} id
     * @returns {PortVisualData|undefined}
     */
    getPort(id: number): PortVisualData | undefined;
    /**
     *
     * @param {NodeVisualData} other
     */
    copy(other: NodeVisualData): void;
    /**
     *
     * @returns {NodeVisualData}
     */
    clone(): NodeVisualData;
    toJSON(): {
        id: number;
        dimensions: {
            position: {
                x: number;
                y: number;
            };
            size: {
                x: number;
                y: number;
            };
        };
        ports: any;
    };
    fromJSON(json: any): void;
}
import Rectangle from "../../../geom/2d/Rectangle.js";
import List from "../../../collection/list/List.js";
import { PortVisualData } from "./PortVisualData.js";
//# sourceMappingURL=NodeVisualData.d.ts.map