import { type GTFSAgency } from './agency'; import { type GTFSArea } from './areas'; import { type GTFSAttribution } from './attributions'; import { type GTFSBookingRule } from './bookingRules'; import { type GTFSCalendar } from './calendar'; import { type GTFSCalendarDate } from './calendarDates'; import { type GTFSFareAttribute } from './fareAttributes'; import { type GTFSFareLegJoinRule } from './fareLegJoinRules'; import { type GTFSFareLegRule } from './fareLegRules'; import { type GTFSFareMedia } from './fareMedia'; import { type GTFSFareProduct } from './fareProducts'; import { type GTFSFareRule } from './fareRules'; import { type GTFSFareTransferRule } from './fareTransferRules'; import { type GTFSFeedInfo } from './feedInfo'; import { type GTFSFrequency } from './frequencies'; import { type GTFSLevel } from './levels'; import { type GTFSLocationGroup } from './locationGroups'; import { type GTFSLocationGroupStop } from './locationGroupStops'; import { type GTFSNetwork } from './networks'; import { type GTFSPathway } from './pathways'; import { type GTFSRoute } from './routes'; import { type GTFSRouteNetwork } from './routeNetworks'; import { GTFSShapeProperties } from './shapes'; import { type GTFSStop, type GTFSStopProperties } from './stops'; import { type GTFSStopArea } from './stopAreas'; import { type GTFSStopTime } from './stopTimes'; import { type GTFSTimeframe } from './timeframes'; import { type GTFSTransfer } from './transfers'; import { type GTFSTranslation } from './translations'; import { type GTFSTrip } from './trips'; import { BufferJSONReader } from '../../'; import type { FeatureIterator } from '../..'; import type { Feature, LineStringGeometry, MValue, MultiPolygonGeometry, PointGeometry, PolygonGeometry, Properties } from '../../../geometry'; export * from './agency'; export * from './areas'; export * from './attributions'; export * from './bookingRules'; export * from './calendar'; export * from './calendarDates'; export * from './fareAttributes'; export * from './fareLegJoinRules'; export * from './fareLegRules'; export * from './fareMedia'; export * from './fareProducts'; export * from './fareRules'; export * from './fareTransferRules'; export * from './feedInfo'; export * from './frequencies'; export * from './levels'; export * from './locationGroups'; export * from './locationGroupStops'; export * from './networks'; export * from './pathways'; export * from './routeNetworks'; export * from './routes'; export * from './shapes'; export * from './stopAreas'; export * from './stops'; export * from './stopTimes'; export * from './timeframes'; export * from './transfers'; export * from './translations'; export * from './trips'; /** A piece of the GTFS schedule */ export interface Piece { filename: string; data: string; } /** * `locations.geojson` data properties * Defines zones where riders can request either pickup or drop off by on-demand services. * These zones are represented as GeoJSON polygons. */ export interface GTFSLocationsProperties extends Properties { stop_name: string; stop_desc: string; } /** * # GTFS Schedule Reader * * ## Description * Schedule class that pulls in all of the GTFS schedule files and parses them into a single object * implements the {@link FeatureIterator} interface. * * ## Usage * ```ts * import { buildGTFSSchedule } from 's2-tools'; * * const schedule = await buildGTFSSchedule(gzipData); * ``` */ export declare class GTFSScheduleReader implements FeatureIterator { agencies: Record; areas?: GTFSArea[]; attributions?: Record; bookingRules?: Record; calendar?: GTFSCalendar[]; calendarDates?: GTFSCalendarDate[]; fareAttributes?: Record; fareLegJoinRules?: GTFSFareLegJoinRule[]; fareLegRules?: GTFSFareLegRule[]; fareMedia?: Record; fareProducts?: Record; fareRules?: GTFSFareRule[]; fareTransferRules?: GTFSFareTransferRule[]; feedInfo?: Record; frequencies?: GTFSFrequency[]; levels?: Record; locationGroups?: Record; locationGroupStops?: GTFSLocationGroupStop[]; networks?: Record; pathways?: Record; routeNetworks?: GTFSRouteNetwork[]; routes: Record; shapes?: Record>; stopAreas?: GTFSStopArea[]; stops?: Record; stopTimes: GTFSStopTime[]; timeframes?: Record; transfers?: GTFSTransfer[]; translations?: GTFSTranslation[]; trips: GTFSTrip[]; geojson?: BufferJSONReader; /** @param pieces - all files */ constructor(pieces: Piece[]); /** * TODO: Add proeprties from other files like "color" * TODO: All features should be parsed as VectorGeometry * Yields all of the shapes * @yields an iterator that contains shapes, stops, location data, and routes */ [Symbol.asyncIterator](): AsyncGenerator | Feature | Feature>; } /** * Builds a GTFSScheduleReader from a gzip folder * @param gzipData - the gzip folder to parse * @returns - a Schedule class */ export declare function buildGTFSSchedule(gzipData: ArrayBufferLike): Promise; //# sourceMappingURL=index.d.ts.map