export interface GbfsV2Collection { data: { bikes: GbfsV2Properties[]; }; last_updated: number; ttl: number; version: string; } export interface GbfsV2Properties { bike_id: string; is_disabled: boolean; is_reserved: boolean; last_reported: number; lat: number; lon: number; pricing_plan_id: string; system_id: string; vehicle_type_id: string; } export interface GbfsSystemInformationV2 { data: SystemInformationDataV2; last_updated: number; ttl: number; version: string; } export interface SystemInformationDataV2 { email: string; feed_contact_email: string; language: string; name: string; operator: string; phone_number: string; purchase_url: string; rental_apps: RentalApps; short_name: string; start_date: string; system_id: string; timezone: string; url: string; } export interface RentalApps { android: RentalApp; ios: RentalApp; } export interface RentalApp { discovery_uri: string; store_uri: string; } export interface GbfsV3Collection { data: { vehicles: GbfsV3Properties[]; }; last_updated: number; ttl: number; version: string; } export interface GbfsV3Properties { vehicle_id: string; is_disabled: boolean; is_reserved: boolean; last_reported: number; lat: number; lon: number; current_fuel_percent: number; current_range_meters: number; system_id: string; home_station_id: string; } export interface GbfsSystemInformationV3 { data: SystemInformationDataV3; last_updated: number; ttl: number; version: string; } export interface SystemInformationDataV3 { system_id: string; languages: string[]; name: { text: string; language: string; }[]; short_name: { text: string; language: string; }[]; operator: { text: string; language: string; }[]; opening_hours: string; start_date: any; url: any; purchase_url: any; phone_number: string; email: string; feed_contact_email: string; timezone: string; license_id: string; license_url: any; manifest_url: string; terms_url: { text: string; language: string; }[]; terms_last_updated: string; privacy_url: { text: string; language: string; }[]; privacy_last_updated: string; rental_apps: any; brand_assets: any; } export interface GbfsStationInformationV3 { data: { stations: StationInformationV3[]; }; last_updated: number; ttl: number; version: string; } export interface StationInformationV3 { station_id: string; name: { text: string; language: string; }; lat: number; lon: number; address: string; parking_type: number; capacity: number; is_virtual_station: boolean; station_area: any; } export interface VehiculeStatus { data: { vehicles: Vehicule[]; }; last_updated: number; ttl: number; version: string; } export interface Vehicule { vehicle_id: string; is_disabled: boolean; is_reserved: boolean; last_reported: string; lat: number; lon: number; current_fuel_percent: number; current_range_meters: number; station_id: string; home_station_id: string; vehicle_type_id: string; available_until: string; vehicle_equipment: any[]; type?: VehiculeType; } export interface VehiculesType { data: { vehicle_types: VehiculeType[]; }; last_updated: number; ttl: number; version: string; } export interface VehiculeType { vehicle_type_id: string; form_factor: string; propulsion_type: number; max_range_meters: number; name: [ { text: string; language: string; } ]; default_pricing_plan_id: string; model: [ { text: string; language: string; } ]; make: [ { text: string; language: string; } ]; }