import { StopTime } from "../file/StopTime"; import { ScheduleCalendar } from "./ScheduleCalendar"; import { Trip } from "../file/Trip"; import { Route, RouteType } from "../file/Route"; import { AgencyID } from "../file/Agency"; import { CRS } from "../file/Stop"; import { OverlayRecord, RSID, STP, TUID } from "./OverlayRecord"; /** * A CIF schedule (BS record) */ export declare class Schedule implements OverlayRecord { readonly id: number; readonly stopTimes: StopTime[]; readonly tuid: TUID; readonly rsid: RSID; readonly calendar: ScheduleCalendar; readonly mode: RouteType; readonly operator: AgencyID | null; readonly stp: STP; readonly firstClassAvailable: boolean; readonly reservationPossible: boolean; constructor(id: number, stopTimes: StopTime[], tuid: TUID, rsid: RSID, calendar: ScheduleCalendar, mode: RouteType, operator: AgencyID | null, stp: STP, firstClassAvailable: boolean, reservationPossible: boolean); get origin(): CRS; get destination(): CRS; get hash(): string; /** * Clone the current record with the new calendar and id */ clone(calendar: ScheduleCalendar, scheduleId: number): Schedule; /** * Convert to a GTFS Trip */ toTrip(serviceId: string, routeId: number): Trip; /** * Convert to GTFS Route */ toRoute(): Route; private get modeDescription(); private get classDescription(); private get reservationDescription(); before(location: CRS): StopTime[]; after(location: CRS): StopTime[]; stopAt(location: CRS): StopTime | undefined; }