import { BaseStopableAnnotator } from "./BaseStopableAnnotator"; import InternalConfig from "../utils/InternalConfig"; import { Point } from "../model/Point"; import { AnnotatorContainer } from "../AnnotatorContainer"; import { StrokeType } from "../model/Styles"; export declare class FreeDrawAnnotator extends BaseStopableAnnotator { static readonly xtype: string; private bufferSize; private rect; protected strPath: string; private buffer; private points; protected svgContainer: SVGElement; protected initialized: boolean; protected isDrawing: boolean; constructor(config: InternalConfig, parent: AnnotatorContainer); protected createPath(config: InternalConfig): void; private initAnnotator; stop(): void; protected parentTouchMove: (evt: TouchEvent) => void; protected parentMouseMove: (evt: MouseEvent) => void; protected onParentMouseMove(evt: MouseEvent): void; protected parentTouchStart: (evt: TouchEvent) => void; private parentMouseDown; protected startDragging(evt: MouseEvent | Touch): void; protected parentTouchEnd: (evt: TouchEvent) => void; protected parentMouseUp: (evt: MouseEvent) => void; protected endDragging(evt: MouseEvent | Touch): void; protected getMousePosition(e: MouseEvent | Touch): Point; private appendToBuffer; private getAveragePoint; private updateSvgPath; moveBy(dx: number, dy: number, evt: MouseEvent): void; setSelected(selected: boolean): void; intersects(x: number, y: number, w: number, h: number): boolean; setStrokeType(strokeType: StrokeType): void; setStrokeWidth(width: number): void; setDrawColor(color: string): void; toXML(): Element; fromXML(element: Element): void; toJSON(): Object; fromJSON(obj: any): void; }