import { EnumValue } from '../../../models/enumValue'; import { ShipperShortResponse } from '../../ca-pickup-delivery-block/models'; export interface LoadDelivery { count: string | number; location: string; date?: string; time?: string; stopType?: EnumValue; } export interface LoadPickup extends LoadDelivery { delivery?: boolean; } export interface LoadListLoadStopResponse { loadStops?: Array | null; totalMiles?: number | null; firstPickup?: { [key: string]: number } | null; completedPercentage?: number | null; truckMovement?: MovementResponse; } export interface MovementResponse { truckInfo?: LiveTrackingBaseResponse; } export interface LiveTrackingBaseResponse { id?: number; deviceId?: string | null; latitude?: number | null; longitude?: number | null; coordinates?: string | null; altitude?: number | null; speed?: number | null; heading?: number | null; headingString?: string | null; location?: string | null; motionStatus?: number | null; motionStatusPeriod?: string | null; type?: GpsType; updateTime?: string | null; startDate?: string | null; stopDate?: string | null; dateString?: string | null; companyId?: number | null; unitType?: number | null; } export interface LoadStopLoadListResponse { stopType?: EnumValue; dateFrom?: string | null; dateTo?: string | null; timeFrom?: string | null; timeTo?: string | null; timeType?: EnumValue | null; stopOrder?: number; stopLoadOrder?: number; arrive?: string | null; depart?: string | null; legMiles?: number | null; wait?: { [key: string]: number } | null; shipper?: ShipperShortResponse; avgWaitTime?: number | null; isVisited?: boolean | null; isCheckedIn?: boolean | null; } export type GpsType = 'DEVICE' | 'MOBILE'; export const GpsType = { Device: 'DEVICE' as GpsType, Mobile: 'MOBILE' as GpsType, };