import PositionType from '../../PositionType';
import ElementPeer from './ElementPeer';
declare class CurvedLinePeer extends ElementPeer {
    private _customControlPoint_1;
    private _customControlPoint_2;
    private _control1;
    private _control2;
    private _x1;
    private _y1;
    private _x2;
    private _y2;
    private _showEndArrow;
    private _showStartArrow;
    private _width;
    constructor();
    setSrcControlPoint(control: PositionType): void;
    setDestControlPoint(control: PositionType): void;
    isSrcControlPointCustom(): boolean;
    isDestControlPointCustom(): boolean;
    setIsSrcControlPointCustom(value: boolean): void;
    setIsDestControlPointCustom(value: boolean): void;
    getControlPoints(): [PositionType, PositionType];
    setFrom(x1: number, y1: number): void;
    setTo(x2: number, y2: number): void;
    getFrom(): PositionType;
    getTo(): PositionType;
    setStrokeWidth(width: number): void;
    updateLine(avoidControlPointFix: boolean): void;
    setShowEndArrow(visible: boolean): void;
    isShowEndArrow(): boolean;
    setShowStartArrow(visible: boolean): void;
    isShowStartArrow(): boolean;
    getWidth(): number;
    setWidth(value: number): void;
    setFill(color: string, opacity?: number): void;
    private _updatePath;
    private static _pointToStr;
    private static _calculateDefaultControlPoints;
    private _calculateAutoControlPoints;
    setDashed(length: number, spacing: number): void;
}
export default CurvedLinePeer;
