import type { ConnectionIndex } from "./Connection.js"; import type { DateNumber, Time } from "@gb-transit/gtfs-loader"; import { type Arrivals } from "./ScanResults.js"; import { type StopIdx, type Timetable } from "../network/Timetable.js"; /** * Implementation of the Raptor journey planning algorithm */ export declare class RaptorAlgorithm { private readonly timetable; /** * Reused by every scan. A scan is synchronous, so there is never more than one route in flight. */ private readonly routes; private readonly queue; constructor(timetable: Timetable); /** * Perform a plan of the routes at a given time and return the resulting kConnections index */ scan(origins: Origins, date: DateNumber): [ConnectionIndex, Arrivals]; private scanRoutes; private scanTransfers; } /** * The stops a search starts from, each with the time it is reached at */ export type Origins = Map;