UNPKG

autotrader-connect-api

Version:

Production-ready TypeScript wrapper for Auto Trader UK Connect APIs

146 lines 4.73 kB
/** * Vehicles module for AutoTrader API * Handles vehicle-related endpoints and operations */ import { VehicleResponse, VehicleSearchParams } from '../types/vehicle'; import { PaginatedResponse } from '../types/common'; /** * Get a specific vehicle by registration and advertiser ID * @param registration Vehicle registration number * @param advertiserId Advertiser/dealer ID * @returns Promise resolving to vehicle data */ export declare function getVehicle(registration: string, advertiserId: number): Promise<VehicleResponse>; /** * Get vehicle by ID * @param vehicleId Unique vehicle identifier * @returns Promise resolving to vehicle data */ export declare function getVehicleById(vehicleId: string): Promise<VehicleResponse>; /** * Search for vehicles with various filters * @param params Search parameters and filters * @returns Promise resolving to paginated vehicle results */ export declare function searchVehicles(params?: VehicleSearchParams): Promise<PaginatedResponse<VehicleResponse>>; /** * Get featured vehicles * @param limit Maximum number of vehicles to return * @returns Promise resolving to array of featured vehicles */ export declare function getFeaturedVehicles(limit?: number): Promise<VehicleResponse[]>; /** * Get similar vehicles to a given vehicle * @param vehicleId Reference vehicle ID * @param limit Maximum number of similar vehicles to return * @returns Promise resolving to array of similar vehicles */ export declare function getSimilarVehicles(vehicleId: string, limit?: number): Promise<VehicleResponse[]>; /** * Get vehicle recommendations based on search criteria * @param params Search parameters to base recommendations on * @param limit Maximum number of recommendations to return * @returns Promise resolving to array of recommended vehicles */ export declare function getVehicleRecommendations(params: Partial<VehicleSearchParams>, limit?: number): Promise<VehicleResponse[]>; /** * Get vehicle pricing history * @param vehicleId Vehicle identifier * @returns Promise resolving to pricing history data */ export declare function getVehiclePricingHistory(vehicleId: string): Promise<{ history: Array<{ date: string; price: number; priceChange?: number; priceChangePercentage?: number; }>; currentPrice: number; averagePrice: number; priceAnalysis: { trend: 'increasing' | 'decreasing' | 'stable'; volatility: 'low' | 'medium' | 'high'; recommendation: string; }; }>; /** * Get vehicle market analysis * @param vehicleId Vehicle identifier * @returns Promise resolving to market analysis data */ export declare function getVehicleMarketAnalysis(vehicleId: string): Promise<{ marketPosition: { percentile: number; competitiveRating: 'Excellent' | 'Good' | 'Fair' | 'Poor'; priceVsMarket: number; }; similarVehicles: { count: number; averagePrice: number; priceRange: { min: number; max: number; }; }; marketTrends: { demand: 'High' | 'Medium' | 'Low'; supply: 'High' | 'Medium' | 'Low'; priceDirection: 'Rising' | 'Falling' | 'Stable'; }; recommendations: string[]; }>; /** * Get vehicle specifications and features * @param vehicleId Vehicle identifier * @returns Promise resolving to detailed specifications */ export declare function getVehicleSpecifications(vehicleId: string): Promise<{ basicSpecs: { make: string; model: string; variant: string; year: number; engineSize: number; power: number; torque: number; fuelType: string; transmission: string; }; performance: { topSpeed?: number; acceleration?: number; fuelConsumption: { urban?: number; extraUrban?: number; combined?: number; }; }; dimensions: { length: number; width: number; height: number; wheelbase: number; bootCapacity?: number; }; features: { standard: string[]; optional: string[]; safety: string[]; }; }>; /** * Check vehicle availability * @param vehicleId Vehicle identifier * @returns Promise resolving to availability information */ export declare function checkVehicleAvailability(vehicleId: string): Promise<{ available: boolean; status: 'Available' | 'Reserved' | 'Sold' | 'Withdrawn'; reservedUntil?: string; estimatedAvailability?: string; alternativeOptions?: { similarVehicles: VehicleResponse[]; waitingList: boolean; }; }>; //# sourceMappingURL=vehicles.d.ts.map