import type { CanvasElementSnapshot } from "../../../lib/type/components/canvas";
import type { CropBoxBounds } from "../../../lib/type/components/cropBox";
import type { CanvasElement, CustomCanvasElement } from "../../../lib/type/editor/canvasElements";
export declare const isCustomCanvasElement: (element: CanvasElement | null | undefined) => element is CustomCanvasElement;
export declare const isCustomCanvasElementSnapshot: (snapshot: CanvasElementSnapshot | null | undefined) => snapshot is CanvasElementSnapshot & {
    element: CustomCanvasElement;
};
export declare const getCustomCanvasElementAdapter: (element: CustomCanvasElement) => import("../../type/components/customElement").CustomCanvasElementAdapter | undefined;
export declare const isMouseInCustomCanvasElement: (element: CustomCanvasElement, x: number, y: number) => boolean;
export declare const drawCustomCanvasElement: (element: CustomCanvasElement, context: CanvasRenderingContext2D) => void;
export declare const drawCustomCanvasElementActiveBorder: (element: CustomCanvasElement, context: CanvasRenderingContext2D, dotRadius: number) => void;
export declare const moveCustomCanvasElement: (element: CustomCanvasElement, delta: {
    x: number;
    y: number;
}, bounds: CropBoxBounds) => CustomCanvasElement;
export declare const resizeCustomCanvasElement: (element: CustomCanvasElement, handleIndex: number, point: {
    x: number;
    y: number;
}, bounds: CropBoxBounds) => CustomCanvasElement;
