import { IPositionToUpdate } from "../../interfaces/VPInterfaces";
import { IVPTripsPositionAttributes } from "../../../../../../schema-definitions/vehicle-positions/models/interfaces/IVPTripsPositionAttributes";
import { IVPTripsLastPositionContext } from "../../../../../../schema-definitions/vehicle-positions/models/interfaces/VPTripsLastPositionInterfaces";
import { GTFSRouteTypeEnum } from "../../../../../../helpers/RouteTypeEnums";
export default class ComputeDelayHelper {
    /**
     * Saves relevant information to calculate delays in future vehicle position iterations.
     */
    static updateContext(context: IVPTripsLastPositionContext, positionToUpdate: IPositionToUpdate | null, position: IVPTripsPositionAttributes, gtfsRouteType: GTFSRouteTypeEnum): IVPTripsLastPositionContext;
    /**
     * Adds info about delay at stop to positionToUpdate based on current position and context from previous positions.
     */
    static updatePositionToUpdate(context: IVPTripsLastPositionContext, positionToUpdate: IPositionToUpdate, position: IVPTripsPositionAttributes, gtfsRouteType: GTFSRouteTypeEnum): IPositionToUpdate;
}
