import { BaseRectangleItemHandler } from "./BaseRectangleItemHandler";
import { PolylineItem } from "@aurigma/design-atoms-model/Product/Items/PolylineItem";
import { PointF, RectangleF } from "@aurigma/design-atoms-model/Math";
import * as TextWhizz from "@aurigma/text-whizz/TextWhizzJS";
import { RgbColor } from "@aurigma/design-atoms-model/Colors";
import { IListenableColorPreviewService } from "../Services/IColorPreviewService";
export declare class PolylineItemHandler extends BaseRectangleItemHandler {
    static readonly typeName: string;
    constructor(item: PolylineItem, textWhizz?: typeof TextWhizz, colorPreviewService?: IListenableColorPreviewService);
    get item(): PolylineItem;
    drawItemHandler(itemHandlerCtx: CanvasRenderingContext2D): void;
    hitTest(point: PointF, isSelected?: any): import("..").IHitTestResult;
    getControlBounds(): RectangleF;
    _belongToLine(p: any, tolerance: any): boolean;
    getActualPoints(): PointF[];
    _getActualPointFromControlPoint(point: PointF, center: PointF): PointF;
    addPoint(point: PointF): void;
    insertPoint(point: PointF, index: number): void;
    setPoint(point: PointF, index: any): void;
    getPointsCount(): number;
    getPoint(index: any): PointF;
    removePoint(index: any): void;
    protected get _isReadyToDraw(): boolean;
    protected get _areColorPreviewsReady(): boolean;
    protected _getItemColorPreviews(): {
        colorPreview: RgbColor;
    };
    protected _onItemPropertyChanged(sender: PolylineItem, propertyName: string): void;
    protected _getBoundsMargin(): number;
    private _addPoint;
}
