import { type GeometricShape } from "@excalidraw/utils/shape"; import type { GlobalPoint, LineSegment, LocalPoint } from "@excalidraw/math"; import type { FrameNameBounds } from "@excalidraw/excalidraw/types"; import type { ElementsMap, ExcalidrawElement } from "./types"; export declare const shouldTestInside: (element: ExcalidrawElement) => boolean; export type HitTestArgs = { x: number; y: number; element: ExcalidrawElement; shape: GeometricShape; threshold?: number; frameNameBound?: FrameNameBounds | null; }; export declare const hitElementItself: ({ x, y, element, shape, threshold, frameNameBound, }: HitTestArgs) => boolean; export declare const hitElementBoundingBox: (x: number, y: number, element: ExcalidrawElement, elementsMap: ElementsMap, tolerance?: number) => boolean; export declare const hitElementBoundingBoxOnly: (hitArgs: HitTestArgs, elementsMap: ElementsMap) => boolean; export declare const hitElementBoundText: (x: number, y: number, textShape: GeometricShape | null) => boolean; /** * Intersect a line with an element for binding test * * @param element * @param line * @param offset * @returns */ export declare const intersectElementWithLineSegment: (element: ExcalidrawElement, line: LineSegment, offset?: number) => GlobalPoint[];