import { TreeItem, Vec3, Xfo, ZeaMouseEvent, ZeaPointerEvent, ZeaTouchEvent } from '@zeainc/zea-engine';
import CreateLineTool from './CreateLineTool';
import { AppData } from '../../../types/types';
/**
 * Tool for creating a free hand line.
 *
 * **Events**
 * * **actionFinished:** Triggered when the creation of the geometry is completed.
 *
 * @extends CreateLineTool
 */
declare class CreateFreehandLineTool extends CreateLineTool {
    private invXfo;
    private prevPointerPos;
    drawLineOnSurface: boolean;
    /**
     * Create a create freehand line tool.
     *
     * @param appData - The appData value.
     */
    constructor(appData: AppData, parentItem: TreeItem);
    screenPosToXfo(event: ZeaMouseEvent | ZeaTouchEvent): Xfo;
    /**
     * Starts the creation of a free hand line.
     *
     * @param xfo - The xfo param.
     */
    createStart(xfo: Xfo, event: ZeaPointerEvent): void;
    /**
     * Updates the free hand line data.
     *
     * @param pt - The pt param.
     */
    createMove(pt: Vec3, event: ZeaPointerEvent): void;
    /**
     * Finishes free hand line creation
     *
     * @param pt - The pt param.
     */
    createRelease(pt: Vec3, event: ZeaPointerEvent): void;
}
export default CreateFreehandLineTool;
export { CreateFreehandLineTool };
//# sourceMappingURL=CreateFreehandLineTool.d.ts.map