import * as React from 'react'; import { PNode, PAnchorType, PNodeCandidate, Dim, PBox, PPosition, PNodeId, PEdge, SnappableGrid, PEdgeId, Identity } from './index.type'; import DesignDataStore from './store/DesignDataStore'; export declare function isValidData(data: any): any; export declare function nextElementId(identities: Identity[]): number; export declare function xyOfCircleAnchor(dim: Dim, anchor: PAnchorType): PPosition; export declare function xyOfRectAnchor(dim: Dim, anchor: PAnchorType): PPosition; export declare function nodeAnchorXY(node: PNode, anchor: PAnchorType): PPosition; export declare function edgeAnchorXY(edge: PEdge, anchor: PAnchorType, nodes: PNode[]): PPosition; export declare function nodeAnchorXYByNodeId(nodes: PNode[], nodeId: PNodeId, anchor: PAnchorType): PPosition; export declare function wrapSvg(w: number, h: number, child: React.ReactNode, ref: React.RefObject): JSX.Element; export declare function getNodeSize(node: PNode): { w: number; h: number; }; export declare function getNodeXY(node: PNode): { x: number; h: number; y?: undefined; } | { x: number; y: number; h?: undefined; }; export declare function getSnappableGrid(nodes: PNode[], exceptId?: PNodeId): SnappableGrid; export declare function renderNode(node: PNode): JSX.Element; export declare function renderShape(node: PNode): JSX.Element; export declare function renderNodeCandidateToSvg(nodeCandidate: PNodeCandidate, ref: React.RefObject): {} | React.ReactElement; export declare function isBoxInRange(box: PBox, boxContainer: PBox): boolean; export declare function getNodeInstance(nodeCandidate: PNodeCandidate, { cx, cy }: PPosition): PNode; export declare function getNode(nodes: PNode[], id: PNodeId): PNode | undefined; export declare function getEdge(edges: PEdge[], id: PEdgeId): PEdge | undefined; export declare function rearrange(nodes: PNode[], edges: PEdge[], startNode: PNode, hGap: number, vGap: number): { nodes: PNode[]; edges: PEdge[]; }; export declare function check(ds: DesignDataStore): string | null | undefined; export declare function condenseNodeData(node: PNode): PNode;