import { z } from "zod";

export const ingestTelemetrySchema = z.object({
  body: z.object({
    imei: z.string().regex(/^\d{14,17}$/),
    protocolName: z.string().default("generic-http"),
    rawPayload: z.string().min(1),
    deviceTime: z.string().datetime().optional(),
    lat: z.number().min(-90).max(90),
    lon: z.number().min(-180).max(180),
    speed: z.number().min(0).optional(),
    heading: z.number().min(0).max(360).optional(),
    ignition: z.boolean().optional(),
    battery: z.number().min(0).max(100).optional(),
    gsmSignal: z.number().min(0).max(100).optional(),
  }),
  query: z.object({}).default({}),
  params: z.object({}).default({}),
});
