import { Store } from 'easy-peasy'; import { StoreModel } from '../store'; import { Node, Edge, Elements, Transform, XYPosition, Rect, Box, Connection, FlowExportObject } from '../types'; export declare const isEdge: (element: Node | Connection | Edge) => element is Edge; export declare const isNode: (element: Node | Connection | Edge) => element is Node; export declare const getOutgoers: (node: Node, elements: Elements) => Node[]; export declare const getIncomers: (node: Node, elements: Elements) => Node[]; export declare const removeElements: (elementsToRemove: Elements, elements: Elements) => Elements; export declare const addEdge: (edgeParams: Edge | Connection, elements: Elements) => Elements; export declare const pointToRendererPoint: ({ x, y }: XYPosition, [tx, ty, tScale]: Transform, snapToGrid: boolean, [snapX, snapY]: [number, number]) => XYPosition; export declare const onLoadProject: (currentStore: Store) => (position: XYPosition) => XYPosition; export declare const parseElement: (element: Node | Edge) => Node | Edge; export declare const rectToBox: ({ x, y, width, height }: Rect) => Box; export declare const boxToRect: ({ x, y, x2, y2 }: Box) => Rect; export declare const getBoundsofRects: (rect1: Rect, rect2: Rect) => Rect; export declare const getRectOfNodes: (nodes: Node[]) => Rect; export declare const graphPosToZoomedPos: ({ x, y }: XYPosition, [tx, ty, tScale]: Transform) => XYPosition; export declare const getNodesInside: (nodes: Node[], rect: Rect, [tx, ty, tScale]?: Transform, partially?: boolean) => Node[]; export declare const getConnectedEdges: (nodes: Node[], edges: Edge[]) => Edge[]; export declare const onLoadGetElements: (currentStore: Store) => () => Elements; export declare const onLoadToObject: (currentStore: Store) => () => FlowExportObject;