import { AbstractTask } from "@golemio/core/dist/integration-engine";
import { PositionsRepository } from "../../data-access/PositionsRepository";
import type { TripsRepository } from "../../data-access/TripsRepository";
import { IPropagateDelay } from "../../interfaces/VPInterfaces";
export declare abstract class AbstractPropagateDelayTask<T extends object> extends AbstractTask<T> {
    protected readonly tripsRepository: TripsRepository;
    protected readonly positionsRepository: PositionsRepository;
    readonly queueTtl: number;
    constructor(tripsRepository: TripsRepository, positionsRepository: PositionsRepository);
    /**
     * Takes all newly computed positions search for next trips in near future and propagate delay for them
     */
    protected propagateDelayForGtfsTrip: (data: IPropagateDelay) => Promise<void>;
}
