157 lines
2.9 KiB
TypeScript
157 lines
2.9 KiB
TypeScript
interface Route {
|
|
id: string;
|
|
gtfsId: string;
|
|
shortName: string;
|
|
longName: string;
|
|
color: string;
|
|
textColor: string;
|
|
mode: string;
|
|
type: string;
|
|
timeSheet: boolean;
|
|
pdfTimeSheet: boolean;
|
|
pdfMap: boolean;
|
|
}
|
|
|
|
interface Cluster {
|
|
city: string;
|
|
code: string;
|
|
id: string;
|
|
lat: number;
|
|
lon: number;
|
|
name: string;
|
|
visible: boolean;
|
|
}
|
|
|
|
interface StopTimesPattern {
|
|
pattern: {
|
|
id: string;
|
|
desc: string;
|
|
dir: number;
|
|
shortDesc: string;
|
|
lastStop: string;
|
|
lastStopName: string;
|
|
};
|
|
times: StopTimes[];
|
|
}
|
|
|
|
interface StopTimes {
|
|
stopId: string;
|
|
stopName: string;
|
|
scheduledArrival: number;
|
|
scheduledDeparture: number;
|
|
realtimeArrival: number;
|
|
realtimeDeparture: number;
|
|
arrivalDelay: number;
|
|
departureDelay: number;
|
|
timepoint: boolean;
|
|
realtime: boolean;
|
|
realtimeState: string;
|
|
serviceDay: number;
|
|
tripId: string;
|
|
pickupType: string;
|
|
occupancy: string;
|
|
occupancyId: number;
|
|
}
|
|
|
|
interface PlannerResource extends Record<string, string> {
|
|
routerId: string;
|
|
fromPlace: string;
|
|
toPlace: string;
|
|
arriveBy: string;
|
|
time: string;
|
|
date: string;
|
|
routerId: string;
|
|
optimize: OptimizeType;
|
|
walkSpeed: string;
|
|
walkReluctance: string;
|
|
locale: string;
|
|
mode: string;
|
|
showIntermediateStops?: string;
|
|
minTransferTime?: string;
|
|
transferPenalty?: string;
|
|
numItineraries?: string;
|
|
walkBoardCost?: string;
|
|
bannedAgencies?: string;
|
|
}
|
|
|
|
type OptimizeType =
|
|
"FLAT" | "GREENWAYS" | "QUICK" | "SAFE" | "TRANSFERS" | "TRIANGLE";
|
|
|
|
type PlannerModes = "WALK" | "TRANSIT";
|
|
|
|
interface OTPPlace {
|
|
name: string;
|
|
lon: number;
|
|
lat: number;
|
|
vertedType: "NORMAL";
|
|
}
|
|
|
|
interface OTPItineraries {
|
|
duration: number;
|
|
startTime: number;
|
|
endTime: number;
|
|
walkTime: number;
|
|
transitTime: number;
|
|
waitingTime: number;
|
|
walkDistance: number;
|
|
walkLimitExceeded: boolean;
|
|
generalizedCost: number;
|
|
elevationLost: number;
|
|
elevationGained: number;
|
|
transfers: number;
|
|
legs: OTPLegs[];
|
|
}
|
|
|
|
interface OTPLegs {
|
|
startTime: number;
|
|
endTime: number;
|
|
departureDelay: number;
|
|
arrivalDelay: number;
|
|
realTime: boolean;
|
|
distance: number;
|
|
generalizedCost: number;
|
|
pathway: boolean;
|
|
mode: PlannerModes;
|
|
transitLeg: boolean;
|
|
route: string;
|
|
routeColor?: string;
|
|
routeId?: string;
|
|
routeLongName?: string;
|
|
routeShortName?: string;
|
|
routeTextColor?: string;
|
|
routeType?: number;
|
|
agencyTimeZoneOffset: number;
|
|
interlineWithPreviousLeg: boolean;
|
|
from: OTPPlace;
|
|
to: OTPPlace;
|
|
legGeometry: {
|
|
points: "string";
|
|
};
|
|
legElevation: string;
|
|
steps: OTPStep[];
|
|
duration: number;
|
|
}
|
|
|
|
interface OTPStep {
|
|
distance: number;
|
|
relativeDirection: string;
|
|
streetName: string;
|
|
absoluteDirection: string;
|
|
stayOn: boolean;
|
|
area: boolean;
|
|
bogusName: boolean;
|
|
lon: numbeer;
|
|
lat: numbeer;
|
|
elevation: string;
|
|
walkingBike: boolean;
|
|
}
|
|
|
|
interface OTPPlanOutput {
|
|
plan: {
|
|
date: number;
|
|
from: OTPPlace;
|
|
to: OTPPlace;
|
|
itineraries: OTPItineraries[];
|
|
};
|
|
}
|