import { ICurve } from './../../math/geometry/icurve';
import { Rectangle } from './../../math/geometry/rectangle';
import { Point } from './../../math/geometry/point';
import { PlaneTransformation } from './../../math/geometry/planeTransformation';
import { Node } from './../../structs/node';
import { GeomObject } from './geomObject';
import { GeomEdge } from './geomEdge';
export declare class GeomNode extends GeomObject {
    static minHeight: number;
    static minWidth: number;
    isGraph(): boolean;
    get node(): Node;
    padding: number;
    private _boundaryCurve;
    get boundaryCurve(): ICurve;
    set boundaryCurve(value: ICurve);
    get id(): string;
    toString(): string;
    static mkNode(curve: ICurve, node: Node): GeomNode;
    get center(): Point;
    set center(value: Point);
    private fitBoundaryCurveToTarget;
    inEdges(): IterableIterator<GeomEdge>;
    outEdges(): IterableIterator<GeomEdge>;
    selfEdges(): IterableIterator<GeomEdge>;
    get boundingBox(): Rectangle;
    set boundingBox(value: Rectangle);
    get width(): number;
    get height(): number;
    transform(t: PlaneTransformation, updateBoundingBox?: boolean): void;
    underCollapsedCluster(): boolean;
}
