import type { LinkControllerData } from '../customLink'; import type { NodeObj, MindElixirInstance, NodeObjExport } from '../types/index'; export declare function encodeHTML(s: string): string; export declare const isMobile: () => boolean; export declare const getObjById: (id: string, data: NodeObj) => NodeObj | null; /** * Add parent property to every node */ export declare const fillParent: (data: NodeObj, parent?: NodeObj) => void; export declare function refreshIds(data: NodeObj): void; export declare const throttle: (fn: (...args: any[]) => void, wait: number) => (...args: any[]) => void; export declare function getArrowPoints(p3x: number, p3y: number, p4x: number, p4y: number): { x1: number; y1: number; x2: number; y2: number; }; export declare function calcP1(fromData: LinkControllerData, p2x: number, p2y: number): { x: number; y: number; }; export declare function calcP4(toData: LinkControllerData, p3x: number, p3y: number): { x: number; y: number; }; export declare function generateUUID(): string; export declare const generateNewObj: (this: MindElixirInstance) => NodeObjExport; export declare function checkMoveValid(from: NodeObj, to: NodeObj): boolean; export declare function moveUpObj(obj: NodeObj): void; export declare function moveDownObj(obj: NodeObj): void; export declare function removeNodeObj(obj: NodeObj): number; export declare function insertNodeObj(obj: NodeObj, newObj: NodeObj): void; export declare function insertBeforeNodeObj(obj: NodeObj, newObj: NodeObj): void; export declare function insertParentNodeObj(obj: NodeObj, newObj: NodeObj): void; export declare function moveNodeObj(from: NodeObj, to: NodeObj): void; export declare function moveNodeBeforeObj(from: NodeObj, to: NodeObj): void; export declare function moveNodeAfterObj(from: NodeObj, to: NodeObj): void; export declare function deepClone(obj: NodeObj): any;