import { ServiceArea } from '@secondcloset/types/src/_common'; import { ServiceAreaData } from './serviceArea'; export interface FuelType { id: number; name: string; } export interface OwnershipType { id: number; name: string; } export interface Size { id: number; size: string; } export interface Photo { id: string; url: string; created_at: string; updated_at: string; } export interface Status { id: number; name: string; to_show: string; } export interface Driver { email: string; first_name: string; id: string; last_name: string; phone_number: string; role: string; user_code: string; } export type NoteLabel = "minor" | "needs_attention" | "urgent" | "resolved"; export type NoteUser = { id: string; first_name: string; last_name: string; email?: string; phone_number?: string; role?: string; user_code?: string; }; export interface VehicleNote { vehicle_id: string; id: number; created_at: string; user: NoteUser; label: NoteLabel; body?: string; updated_at?: string; deleted_at?: string; deleted_by?: NoteUser; } export type VehicleIntendedServiceKind = "heavy" | "parcel"; export type VehicleHub = { id: string; name: string; address_line_1: string; address_line_2: string | null; city: string; province: string; country: string; postal_code: string; longitude_latitude: { x: number; y: number; }; service_area_id: number; created_at: string; updated_at: string; }; export interface Vehicle { created_at: string; fuel_type: FuelType; id: string; in_use: boolean; lease_end_date?: string; lease_start_date?: string; license_plate_number: string; make?: string; model?: string; vendor_name?: string; name: string; notes?: string; ownership_type: OwnershipType; service_area: ServiceAreaData; status: string; updated_at: string; vehicle_size: Size; vin: string; photo?: Photo; driver?: Driver; vehicle_note?: VehicleNote; intended_service_kind: VehicleIntendedServiceKind; max_range_in_meters?: number; hub: Pick; } export interface Statistics { in_use: number; available: number; utilizing: number; temporarily_out_of_service: number; } export type VehicleType = "dsp_default" | "internal"; export type VehicleKind = { id: string; name: string; capacity: number | null; max_distance_limit_in_km: number; max_weight_limit_in_lb: number | null; priority: number | null; penalty: number | null; service_area: ServiceArea; fuel_type: "electric" | "petrol" | "diesel" | "hydrogen"; created_at: string; updated_at: string; };