export type SightingType = { ref: number; SaFID: string; overviewUrl: string; plateUrlInfrared: string; plateUrlColour: string; vrm: string; vrmSecondary: string; countryCode: string; timeStamp: string; detailsUrl: string; overviewPlateRect: number[]; plateTrack: Array; make: string; model: string; color: string; category: string; charHeight: string; seenCount: string; timeStampMillis: number; motion: string; debug: string; srcCam: number; locationName: string; laneID: string; plateSize: string; overviewSize: string; radarSpeed: string; trackSpeed: string; }; export type CameraSettingValues = { friendlyName: string; cameraAddress: string; userName: string; password: string; setupCamera: number; }; export type CameraSettingErrorValues = Partial< Record >; export type BearerTypeFieldType = { format: string; enabled: boolean; verbose: boolean; }; export type InitialValuesForm = { format: string; enabled: boolean; verbose: boolean; backOfficeURL: string; username: string; password: string; connectTimeoutSeconds: number; readTimeoutSeconds: number; }; export type NPEDFieldType = { frontId: string; username: string; password: string; clientId: string; rearId: string; }; export type HotlistUploadType = { file: string | null; }; export type SightingWidgetType = { ref: number; // unique, increasing idx?: number; // client-side slot index vrm: string; vrmSecondary?: string; // empty string means missing countryCode?: string; timeStamp?: string; // formatted string timeStampMillis: number; // epoch millis motion: string; // e.g., "AWAY" or "TOWARDS" seenCount: number; charHeight: string | number; overviewUrl: string; detailsUrl?: string; make?: string; model?: string; color?: string; category?: string; plateSize?: string | number; overviewSize?: string | number; locationName?: string; laneID?: string | number; radarSpeed?: string | number; trackSpeed?: string | number; srcCam?: 0 | 1; plateUrlInfrared?: string; plateUrlColour?: string; overviewPlateRect?: [number, number, number, number]; // [x,y,w,h] normalized 0..1 plateTrack?: [number, number, number, number][]; // list of rects normalized 0..1 }; export type NPEDUser = { username: string; clientId: string; password?: string; }; export type NPEDErrorValues = { username?: string | undefined; password?: string | undefined; clientId?: string | undefined; };