import { ConnectProps, OolongLine } from "../../../../../graphics/index";
import { LineEndRes } from "../../../detector/LineEndPointDetector";
import { UpdateNodeInfo } from "../../../../../action/index";
import { ConnectInfo } from "../../../../../graphics/base/NodeConnectEndType";
import { AppEventContext } from "../../../../../app/index";
import { IPoint } from "../../../../../idl/index";
export declare abstract class AbsDragLineEndHandler {
    abstract enable(line: OolongLine): boolean;
    abstract handleMove(connectInfo: ConnectInfo, res: LineEndRes, ctx: AppEventContext): UpdateNodeInfo;
    abstract handleUp(connectInfo: ConnectInfo, res: LineEndRes, ctx: AppEventContext, connectProps: ConnectProps): UpdateNodeInfo;
    protected abstract handle(connectInfo: ConnectInfo, res: LineEndRes, ctx: AppEventContext): IPoint[];
}
//# sourceMappingURL=AbsDragLineEndHandler.d.ts.map