UNPKG

gtfs-types

Version:

🚂 Typescript definitions for the GTFS Standard

175 lines (174 loc) • 3.95 kB
export declare enum Occupancy { EMPTY = 0, MANY_SEATS_AVAILABLE = 1, FEW_SEATS_AVAILABLE = 2, STANDING_ROOM_ONLY = 3, CRUSHED_STANDING_ROOM_ONLY = 4, FULL = 5, NOT_ACCEPTING_PASSENGERS = 6, NO_DATA_AVAILABLE = 7, NOT_BOARDABLE = 8, UNKNOWN = -1 } export declare enum Congestion { UNKNOWN_CONGESTION_LEVEL = 0, RUNNING_SMOOTHLY = 1, STOP_AND_GO = 2, CONGESTION = 3, SEVERE_CONGESTION = 4 } declare interface Time { delay?: number; time?: number; uncertainty?: number; } interface RealTimeTrip { trip_id?: string; start_time?: string; start_date?: string; schedule_relationship?: TripScheduleRelationship; route_id?: string; direction_id?: number; } export declare enum TripScheduleRelationship { SCHEDULED = 0, ADDED = 1, UNSCHEDULED = 2, CANCELED = 3 } export declare enum StopTimeUpdateScheduleRelationship { SCHEDULED = 0, SKIPPED = 1, NO_DATA = 2 } export interface Vehicle { id?: string; label?: string; license_plate?: string; } export interface TripUpdate { trip: RealTimeTrip; stop_time_update?: StopTimeUpdate[]; vehicle?: Vehicle; timestamp?: number; delay?: number; } export interface VehiclePosition { trip?: RealTimeTrip; position?: Position; current_stop_sequence?: number; stop_id?: string; current_status?: VehicleStopStatus; congestion_level?: Congestion; occupancy_status?: Occupancy; vehicle?: Vehicle; timestamp?: number; } export interface Entity { id: string; trip_update?: TripUpdate; vehicle?: VehiclePosition; is_deleted?: boolean; alert?: Alert; } export interface TimeRange { start?: number; end?: number; } export declare enum Cause { UNKNOWN_CAUSE = 0, OTHER_CAUSE = 1, TECHNICAL_PROBLEM = 2, STRIKE = 3, DEMONSTRATION = 4, ACCIDENT = 5, HOLIDAY = 6, WEATHER = 7, MAINTENANCE = 8, CONSTRUCTION = 9, POLICE_ACTIVITY = 10, MEDICAL_EMERGENCY = 11 } export declare enum Effect { NO_SERVICE = 0, REDUCED_SERVICE = 1, SIGNIFICANT_DELAYS = 2, DETOUR = 3, ADDITIONAL_SERVICE = 4, MODIFIED_SERVICE = 5, OTHER_EFFECT = 6, UNKNOWN_EFFECT = 7, STOP_MOVED = 8, NO_EFFECT = 9, ACCESSIBILITY_ISSUE = 10 } export declare enum SeverityLevel { UNKNOWN_SEVERITY = 0, INFO = 1, WARNING = 2, SEVERE = 3 } export interface TranslatedString { translation: Translation[]; } export interface Translation { text: string; language?: string; } export interface Alert { active_period?: TimeRange[]; informed_entity: EntitySelector[]; cause?: Cause; effect?: Effect; url?: TranslatedString; header_text: TranslatedString; description_text: TranslatedString; tts_header_text?: TranslatedString; tts_description_text?: TranslatedString; severity_level?: SeverityLevel; } export interface Position { latitude: number; longitude: number; bearing?: number; odometer?: number; speed?: number; } export interface StopTimeUpdate { stop_sequence?: number; stop_id?: string; arrival?: Time; departure?: Time; schedule_relationship?: StopTimeUpdateScheduleRelationship; } export interface EntitySelector { agency_id?: string; route_id?: string; route_type?: number; direction_id?: number; trip?: RealTimeTrip; stop_id?: string; } export declare enum VehicleStopStatus { INCOMING_AT = 0, STOPPED_AT = 1, IN_TRANSIT_TO = 2 } export declare enum Incrementality { FULL_DATASET = 0, DIFFERENTIAL = 1 } export interface FeedHeader { gtfs_realtime_version: string; incrementality: Incrementality; timestamp: number; } export interface FeedMessage { header: FeedHeader; entity?: Entity[]; } export interface GTFSRealtime { status: string; response: FeedMessage; } export {};