UNPKG

@tmlmobilidade/types

Version:
31 lines (30 loc) 1 kB
import { RawVehicleEventBaseSchema } from '../raw-vehicle-event-base.js'; import { z } from 'zod'; export const RawVehicleEventMlV1PayloadSchema = z.object({ header: z.object({ gtfs_realtime_version: z.string(), incrementality: z.literal('FULL_DATASET'), timestamp: z.number(), }), vehicle: z.object({ bearing: z.number().nullish(), current_status: z.enum(['INCOMING_AT', 'STOPPED_AT', 'IN_TRANSIT_TO']).nullish(), position: z.object({ latitude: z.number(), longitude: z.number(), }), speed: z.number().nullish(), stop_id: z.string().nullish(), timestamp: z.number().nullish(), trip: z.object({ trip_id: z.string(), }), vehicle: z.object({ id: z.string(), }), }), }); export const RawVehicleEventMlV1Schema = RawVehicleEventBaseSchema.extend({ payload: RawVehicleEventMlV1PayloadSchema, version: z.literal('ml-v1'), });