UNPKG

s2-tools

Version:

A collection of geospatial tools primarily designed for WGS84, Web Mercator, and S2.

719 lines 28.4 kB
import type { MultiPolygonGeometry } from '../../..'; /** * # GBFS Station Information Schema V3.1-RC & V3.0 * List of all stations, their capacities, and locations. REQUIRED for systems utilizing docks. * * ## Links * - [GBFS Specification](https://github.com/MobilityData/gbfs/blob/v3.1-RC/gbfs.md#station_informationjson) * - [GBFS Specification](https://github.com/MobilityData/gbfs/blob/v3.0/gbfs.md#station_informationjson) */ export type GBFSStationInformationV3 = GBFSStationInformationV31RC | GBFSStationInformationV30; /** * # GBFS Station Information Schema V3.1-RC * List of all stations, their capacities and locations. REQUIRED of systems utilizing docks. * * ## Links * - [GBFS Specification](https://github.com/MobilityData/gbfs/blob/v3.1-RC/gbfs.md#station_informationjson) */ export declare const gbfsStationInformationSchemaV31RC: { $schema: string; $id: string; description: string; type: string; properties: { last_updated: { description: string; type: string; format: string; }; ttl: { description: string; type: string; minimum: number; }; version: { description: string; type: string; const: string; }; data: { description: string; type: string; properties: { stations: { type: string; items: { type: string; properties: { station_id: { description: string; type: string; }; name: { description: string; type: string; items: { type: string; properties: { text: { description: string; type: string; }; language: { description: string; type: string; pattern: string; }; }; required: string[]; }; }; short_name: { description: string; type: string; items: { type: string; properties: { text: { description: string; type: string; }; language: { description: string; type: string; pattern: string; }; }; required: string[]; }; }; lat: { description: string; type: string; minimum: number; maximum: number; }; lon: { description: string; type: string; minimum: number; maximum: number; }; address: { description: string; type: string; }; cross_street: { description: string; type: string; }; region_id: { description: string; type: string; }; post_code: { description: string; type: string; }; station_opening_hours: { description: string; type: string; }; rental_methods: { description: string; type: string; items: { type: string; enum: string[]; }; minItems: number; }; is_virtual_station: { description: string; type: string; }; station_area: { description: string; type: string; required: string[]; properties: { type: { type: string; enum: string[]; }; coordinates: { type: string; items: { type: string; items: { type: string; minItems: number; items: { type: string; minItems: number; items: { type: string; }; }; }; }; }; }; }; parking_type: { description: string; type: string; enum: string[]; }; parking_hoop: { description: string; type: string; }; contact_phone: { description: string; type: string; }; capacity: { description: string; type: string; minimum: number; }; vehicle_types_capacity: { description: string; type: string; items: { type: string; properties: { vehicle_type_ids: { description: string; type: string; items: { type: string; }; }; count: { description: string; type: string; minimum: number; }; }; required: string[]; }; }; vehicle_docks_capacity: { description: string; type: string; items: { type: string; properties: { vehicle_type_ids: { description: string; type: string; items: { type: string; }; }; count: { description: string; type: string; minimum: number; }; }; required: string[]; }; }; is_valet_station: { description: string; type: string; }; is_charging_station: { description: string; type: string; }; rental_uris: { description: string; type: string; properties: { android: { description: string; type: string; format: string; }; ios: { description: string; type: string; format: string; }; web: { description: string; type: string; format: string; }; }; }; }; required: string[]; }; }; }; required: string[]; }; }; required: string[]; }; /** * Information about a single station. */ export interface GBFSStationV3 { /** * Identifier of the station. */ station_id: string; /** * Public name of the station. */ name: Array<{ /** * The translated text. */ text: string; /** * IETF BCP 47 language code. * **Pattern**: `^[a-z]{2,3}(-[A-Z]{2})?$` */ language: string; }>; /** * The latitude of the station. * **Minimum**: -90 * **Maximum**: 90 */ lat: number; /** * The longitude of the station. * **Minimum**: -180 * **Maximum**: 180 */ lon: number; /** * Short name or alternative identifier for the station. */ short_name?: Array<{ text: string; language: string; }>; /** * Address where the station is located. */ address?: string; /** * Cross street or landmark where the station is located. */ cross_street?: string; /** * Identifier of the region where the station is located. */ region_id?: string; /** * Postal code where the station is located. */ post_code?: string; /** * Hours of operation for the station in OSM opening_hours format. */ station_opening_hours?: string; /** * Payment methods accepted at the station. * **Enum**: ['key', 'creditcard', 'paypass', 'applepay', 'androidpay', 'transitcard', 'accountnumber', 'phone'] */ rental_methods?: Array<'key' | 'creditcard' | 'paypass' | 'applepay' | 'androidpay' | 'transitcard' | 'accountnumber' | 'phone'>; /** * Is this station a location with or without physical infrastructure? (added in v2.1-RC) */ is_virtual_station?: boolean; /** * A multipolygon describing the area of a virtual station. (added in v2.1-RC) */ station_area?: MultiPolygonGeometry; /** * Type of parking station. (added in v2.3) * **Enum**: ['parking_lot', 'street_parking', 'underground_parking', 'sidewalk_parking', 'other'] */ parking_type?: 'parking_lot' | 'street_parking' | 'underground_parking' | 'sidewalk_parking' | 'other'; /** * Are parking hoops present at this station? (added in v2.3) */ parking_hoop?: boolean; /** * Contact phone of the station. (added in v2.3) */ contact_phone?: string; /** * Total docking points installed at the station, both available and unavailable. * **Minimum**: 0 */ capacity?: number; /** * Parking capacity for virtual stations per vehicle type. */ vehicle_types_capacity?: Array<{ vehicle_type_ids: string[]; count: number; }>; /** * Docking capacity per vehicle type at the station. */ vehicle_docks_capacity?: Array<{ vehicle_type_ids: string[]; count: number; }>; /** * Are valet services provided at the station? (added in v2.1-RC) */ is_valet_station?: boolean; /** * Does the station support charging of electric vehicles? (added in v2.3-RC) */ is_charging_station?: boolean; /** * Rental URIs for Android, iOS, and web. */ rental_uris?: { /** * URI for Android apps. (added in v1.1) * **Format**: uri */ android?: string; /** * URI for iOS apps. (added in v1.1) * **Format**: uri */ ios?: string; /** * URL for web browsers. (added in v1.1) * **Format**: uri */ web?: string; }; } /** * # GBFS Station Information Schema V3.1-RC * List of all stations, their capacities, and locations. REQUIRED for systems utilizing docks. * * ## Links * - [GBFS Specification](https://github.com/MobilityData/gbfs/blob/v3.1-RC/gbfs.md#station_informationjson) */ export interface GBFSStationInformationV31RC { /** * Last time the data in the feed was updated in RFC3339 format. * **Format**: date-time */ last_updated: string; /** * Number of seconds before the data in the feed will be updated again * (0 if the data should always be refreshed). * **Minimum**: 0 */ ttl: number; /** * GBFS version number to which the feed conforms, according to the versioning framework (added in v1.1). * **Const**: 3.1-RC */ version: '3.1-RC'; /** * Contains station data for the system. */ data: { /** * Array of stations, each containing location, capacity, and other metadata. */ stations: GBFSStationV3[]; }; } /** * # GBFS Station Information Schema V3.0 * List of all stations, their capacities and locations. REQUIRED of systems utilizing docks. * * ## Links * - [GBFS Specification](https://github.com/MobilityData/gbfs/blob/v3.0/gbfs.md#station_informationjson) */ export declare const gbfsStationInformationSchemaV30: { $schema: string; $id: string; description: string; type: string; properties: { last_updated: { description: string; type: string; format: string; }; ttl: { description: string; type: string; minimum: number; }; version: { description: string; type: string; const: string; }; data: { description: string; type: string; properties: { stations: { type: string; items: { type: string; properties: { station_id: { description: string; type: string; }; name: { description: string; type: string; items: { type: string; properties: { text: { description: string; type: string; }; language: { description: string; type: string; pattern: string; }; }; required: string[]; }; }; short_name: { description: string; type: string; items: { type: string; properties: { text: { description: string; type: string; }; language: { description: string; type: string; pattern: string; }; }; required: string[]; }; }; lat: { description: string; type: string; minimum: number; maximum: number; }; lon: { description: string; type: string; minimum: number; maximum: number; }; address: { description: string; type: string; }; cross_street: { description: string; type: string; }; region_id: { description: string; type: string; }; post_code: { description: string; type: string; }; station_opening_hours: { description: string; type: string; }; rental_methods: { description: string; type: string; items: { type: string; enum: string[]; }; minItems: number; }; is_virtual_station: { description: string; type: string; }; station_area: { description: string; type: string; required: string[]; properties: { type: { type: string; enum: string[]; }; coordinates: { type: string; items: { type: string; items: { type: string; minItems: number; items: { type: string; minItems: number; items: { type: string; }; }; }; }; }; }; }; parking_type: { description: string; type: string; enum: string[]; }; parking_hoop: { description: string; type: string; }; contact_phone: { description: string; type: string; }; capacity: { description: string; type: string; minimum: number; }; vehicle_types_capacity: { description: string; type: string; items: { type: string; properties: { vehicle_type_ids: { description: string; type: string; items: { type: string; }; }; count: { description: string; type: string; minimum: number; }; }; required: string[]; }; }; vehicle_docks_capacity: { description: string; type: string; items: { type: string; properties: { vehicle_type_ids: { description: string; type: string; items: { type: string; }; }; count: { description: string; type: string; minimum: number; }; }; required: string[]; }; }; is_valet_station: { description: string; type: string; }; is_charging_station: { description: string; type: string; }; rental_uris: { description: string; type: string; properties: { android: { description: string; type: string; format: string; }; ios: { description: string; type: string; format: string; }; web: { description: string; type: string; format: string; }; }; }; }; required: string[]; }; }; }; required: string[]; }; }; required: string[]; }; /** * # GBFS Station Information Schema V3.0 * List of all stations, their capacities, and locations. REQUIRED for systems utilizing docks. * * ## Links * - [GBFS Specification](https://github.com/MobilityData/gbfs/blob/v3.0/gbfs.md#station_informationjson) */ export interface GBFSStationInformationV30 { /** * Last time the data in the feed was updated in RFC3339 format. * **Format**: date-time */ last_updated: string; /** * Number of seconds before the data in the feed will be updated again (0 if the data should always be refreshed). * **Minimum**: 0 */ ttl: number; /** * GBFS version number to which the feed conforms. * **Const**: '3.0' */ version: '3.0'; /** * Data object containing station information. */ data: { /** * List of stations with their attributes. */ stations: GBFSStationV3[]; }; } //# sourceMappingURL=stationInformation.d.ts.map