import { ConnectProps, OolongLine } from "../../../../../graphics";
import { IPoint } from "../../../../../idl";
import { LineEndRes } from "../../../detector/LineEndPointDetector";
import { UpdateNodeInfo } from "../../../../../action";
import { AbsDragLineEndHandler } from "./AbsDragLineEndHandler";
import { PolyLineLayoutHandler } from "../../../../../ability/line/handler/polyline/PolyLineLayoutHandler";
import { ConnectInfo } from "../../../../../graphics/base/NodeConnectEndType";
import { AppEventContext } from "../../../../../app";
export declare class DragPolyLineEndHandler extends AbsDragLineEndHandler {
    polylineHandler: PolyLineLayoutHandler;
    enable(line: OolongLine): boolean;
    handleMove(connectInfo: ConnectInfo, res: LineEndRes, ctx: AppEventContext): UpdateNodeInfo;
    handleUp(connectInfo: ConnectInfo, res: LineEndRes, ctx: AppEventContext, connectProps: ConnectProps): UpdateNodeInfo;
    handle(connectInfo: ConnectInfo, res: LineEndRes, ctx: AppEventContext): IPoint[];
    protected autoLayoutLine(connectInfo: ConnectInfo, res: LineEndRes, ctx: AppEventContext): IPoint[];
    protected editLine(connectInfo: ConnectInfo, res: LineEndRes, ctx: AppEventContext): IPoint[];
    private isStraightEditableLine;
}
//# sourceMappingURL=DragPolyLineEndHandler.d.ts.map