import { RouteResultEditorBase } from "../../../route-result-editor-base";
import { PreserveOrderBaseHelper } from "./preserve-order-base-helper";
import { AddAssignOptions } from "../../../../../models";
export interface JobInsertPosition {
    position: number;
    createWaypoint: boolean;
}
export declare class PreserveOrderJobHelper extends PreserveOrderBaseHelper {
    static determineInsertPosition(context: RouteResultEditorBase, agentIndex: number, firstJobIndex: number, options: AddAssignOptions): Promise<JobInsertPosition>;
    static findOptimalInsertPosition(context: RouteResultEditorBase, agentIndex: number, jobIndex: number): Promise<number>;
    static findOptimalInsertPositionAfter(context: RouteResultEditorBase, agentIndex: number, jobIndex: number, minPosition: number): Promise<number>;
    private static calculateTravelTimes;
    private static findExistingWaypointByLocation;
    private static sameLocation;
}
