/* Options: Date: 2026-04-28 20:11:46 Version: 10.06 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://prod-api-agency-orch-mb-dhc.rapp-customers.co.uk //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: CarConfiguratorStockRequest.* //ExcludeTypes: //DefaultImports: */ // @ts-nocheck export interface IReturn { createResponse(): T; } export interface IPost { } export class BackOrderVehicleDetailsBrand { public Description?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Engine { public Id: number; public Badge?: string; public CubicCapacity: number; public Cyclinders: number; public HorsePower?: string; public Kw?: string; public Selected: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class VehicleAuditDetails { public UserId?: string; public Status: boolean; public Notes?: string; public CreationDate?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Retailer { public Id: number; public GssnId?: string; public Description?: string; public Street?: string; public City?: string; public District?: string; public Postcode?: string; public GoogleMapPostcode?: string; public Phone?: string; public Fax?: string; public Email?: string; public Website?: string; public Latitude: number; public Longitude: number; public RetailerGroup_Id?: number; public RetailerGroupId?: string; public RetailerGroupName?: string; public Distance: number; public PaymentServiceGuid?: string; public IsOnline?: boolean; public IsNewCarRetailer?: boolean; public IsUsedCarRetailer?: boolean; public IsCentralRetailer: boolean; public ChatEnabled: boolean; public TradeInEnabled: boolean; public DisplayPhoneNumberNew?: string; public DisplayPhoneNumberUsed?: string; public Services?: RetailerServices; public smart: boolean; public smartDescription?: string; public smartWebsite?: string; public smartEmail?: string; public smartPhone?: string; public AdditionalInformation?: string; public LegacyId?: string; public DriveTime: number; public Agent: boolean; public Port?: number; public PortName?: string; public MarketAreaId?: number; public MarketAreaName?: string; public MaintenanceDate?: string; public MaintenanceSource?: string; public STPAccountNumbers?: string; public CampaignExcluded?: boolean; public DigitalLoungeParentGssnId?: string; public SendLeadsToDigitalLoungeParent: boolean; public IsExcludedFromImport: boolean; public OpeningTimes?: RetailerOpeningTimes; public RegionId?: number; public RegionName: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Media { public ImageCount: number; public MainImageUrl?: string; public MainImageUrlMobile?: string; public NoImage: boolean; public ThreeSixtyDegreeImageUrls?: string[]; public ThreeSixtyDegreeMobileImageUrls?: string[]; public VehicleImageUrls?: string[]; public VehicleMobileImageUrls?: string[]; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Price { public Id: number; public Description?: string; public Net: number; public VAT: number; public Gross: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Consumption { public Id: number; public Lkm: number; public Mpg: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class EmissionClass { public Colour?: string; public Rating?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Equipment { public Id?: number; public Code?: string; public Description?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Equipmentv2 extends Equipment { public Importance: number; public IsAdditional: boolean; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } export class EquipmentCategoryv2 { public Order: number; public Code?: string; public Description?: string; public Equipment?: Equipmentv2[]; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class VehicleAttribute { public Description?: string; public Value?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class IntegratedServiceCareOptions { public OptionCode?: string; public BM7NST?: string; public FullModelYear?: string; public IntegratedProductType?: string; public CustomerDescription?: string; public OneAgentProductType?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class BackOrderVehicleDetails implements IVehiclePrices, IVehiclePriceCollection, IImageUrl, IVehicleDetails { public Vin?: string; public CommissionNumber?: string; public Description?: string; public ShortDescription?: string; public ModelId: number; public Model?: string; public FullModelYearCode?: string; public BrandId?: number; public Brand?: BackOrderVehicleDetailsBrand; public RetailerId: number; public ImageUrl?: string; public Colour?: string; public ColourCode?: string; public FuelType?: string; public FuelTypeId: number; public Transmission?: string; public TransmissionType?: string; public Engine?: Engine; public EngineBadge?: string; public Package?: string; public Line?: string; public MappedLine?: string; public Upholstery?: string; public UpholsteryCode?: string; public UsageCode?: string; public Account?: string; public AccountType?: string; public NST?: string; public Baumuster?: string; public ElectricRange?: number; public ElectricConsumption?: number; public ActualPrice?: number; public OTRPrice: number; public RetailPriceExVat: number; public P11D: number; public VehicleType?: string; public UpholsteryDescription?: string; public UpholsteryType?: string; public BodyStyle?: string; public BodyStyleStyleCode?: string; public BodyStyleStyleCodeElectric?: string; public BodyStyleStyleCodeHybrid?: string; public AvailablePackages?: string[]; public Mapped_Line?: number; public Secured: boolean; public Bm7NST?: string; public IsAvailableOnline: boolean; public IsSpecialistCar: boolean; public IsSellable: boolean; public UnderOffer: boolean; public VehicleAuditDetails?: VehicleAuditDetails[]; public Retailer?: Retailer; public Media?: Media; public Emission?: number; public ColourGroup?: string; public VehicleClass?: string; public ProductRange?: string; public IsHOBackOrderAccountVehicle: boolean; public IsAllocatedToBackOrder: boolean; public InBackOrderAccount: boolean; public DeliveryCharge: number; public DeliveryChargeNet?: number; public DeliveryChargeVAT?: number; public Plates: number; public PlatesNet?: number; public PlatesVAT?: number; public FuelCharge: number; public FuelChargeNet?: number; public FuelChargeVAT?: number; public RetailPrice_ExVAT: number; public RetailPrice_IncVAT: number; public VED_Year1: number; public VED_Year2: number; public FirstRegFee: number; public OTR_Value: number; public OTR: number; public Prices?: Price[]; public ProductionDate?: string; public PortArrivalDate?: string; public Location?: string; public IsDisplayStock: boolean; public DisplayRetailerId?: number; public DisplayRetailer?: string; public DisplayRetailerGssnId?: string; public DisplayRetailerMarketAreaId?: number; public IsSmartDisplayRetailer?: boolean; public ColourDescription?: string; public Creation?: string; public Modified?: string; public VATQualifyingNumber?: number; public VATQualifying: boolean; public CurrentRetailerOfferPrice: number; public GssnId?: string; public NoImage: boolean; public RegistrationNumber?: string; public RegistrationDate?: string; public Mileage?: number; public TradeInDate?: string; public VID?: string; public EmissionCombined?: string; public EmissionDirective?: string; public NormalisedEmissionDirective?: string; public HasMildHybridEquipmentCode: boolean; public Acceleration?: number; public ChassisNumber?: string; public NumberOfDoors?: string; public NumberOfSeats?: string; public SpecialInfo: boolean; public EligibleForIntegratedServiceCare: boolean; public ConsumptionCombined?: Consumption; public ConsumptionExtraUrban?: Consumption; public ConsumptionUrban?: Consumption; public WltpFuelConsumptionCombined?: Consumption; public WltpFuelConsumptionExtraHigh?: Consumption; public WltpFuelConsumptionHigh?: Consumption; public WltpFuelConsumptionLow?: Consumption; public WltpFuelConsumptionMedium?: Consumption; public EnergyEfficiencyClass?: EmissionClass; public Equipment?: Equipmentv2[]; public EquipmentAdditional?: Equipment[]; public EquipmentCategories?: EquipmentCategoryv2[]; public VehicleData?: VehicleAttribute[]; public IntegratedServiceCareOptions?: IntegratedServiceCareOptions[]; public IspVehicleCustomerDescriptions?: string[]; public MarketingCode?: string; public EligibleForMaTransfer: boolean; public ConfirmedProductionDate?: string; public ForecastedArrivalDate?: string; public CesarIdShipToParty?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Package implements IFilters { public Id: number; public Description: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class BackOrderVehicleDetailsWithPackages extends BackOrderVehicleDetails implements IPackages { public Packages: Package[]; public PackageNames: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } export class CarConfiguratorVehicle extends BackOrderVehicleDetailsWithPackages { public ModelYearCode?: string; public HalfModelYearCode?: string; public ActiveOffers: number[] = []; public EligibleForMotability: boolean; public NearestPort?: boolean; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } export class EquipmentCache { public Code: string; public Description: string; public StandardFlag: string; public Price: number; public Category: string; public Importance: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CarConfiguratorStockMatch { public Vehicle: CarConfiguratorVehicle; public IsSellable: boolean; public VehicleWheels?: string; public VehicleTrim?: string; public VehicleKeyEquipment: EquipmentCache[] = []; public VehicleAdditionalOptionCodes: EquipmentCache[] = []; public FullModelYearDifferences: string[] = []; public PaintDifferences: string[] = []; public UpholsteryDifferences: string[] = []; public WheelDifferences: string[] = []; public TrimDifferences: string[] = []; public EquipmentDifferences: string[] = []; public KeyEquipmentDifferences: string[] = []; public Differences: string[] = []; public ExactMatch: boolean; public OnCarNotConfig: string[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CarConfiguratorStockMatches { public SellableMatches: CarConfiguratorStockMatch[] = []; public NonSellableMatches: CarConfiguratorStockMatch[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Price { public Id: string; public Description: string; public Net: number; public VAT: number; public Gross: number; public Product: OfferPriceProductType; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Retailer { public Id: number; public GssnId: string; public Description: string; public Street: string; public City: string; public Postcode: string; public GoogleMapPostcode: string; public Phone: string; public Fax: string; public Email: string; public Website: string; public RetailerGroupId: string; public RetailerGroupName: string; public IsOnline: boolean; public IsNewCarRetailer: boolean; public IsUsedCarRetailer: boolean; public IsCentralRetailer: boolean; public ChatEnabled: boolean; public TradeInEnabled: boolean; public smart: boolean; public DisplayPhoneNumberNew: string; public DisplayPhoneNumberUsed: string; public Latitude: number; public Longitude: number; public smartDescription: string; public smartWebsite: string; public smartPhone: string; public LegacyId: string; public Agent: boolean; public MarketAreaId: number; public DigitalLoungeParentGssnId?: string; public SendLeadsToDigitalLoungeParent: boolean; public OpeningTimes?: RetailerOpeningTimes; public RegionId: number; public RegionName: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class VehicleAttribute { public Description?: string; public Value?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Engine { public Id: number; public Description?: string; public BrandId?: number; public Brand?: string; public Badge?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Package { public Id: number; public Description?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Retailer { public Gssn?: string; public Description?: string; public CampaignExcluded: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Engine { public Id?: number; public Badge: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Media { public NoImage: boolean; public MainImageUrl: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export interface IPackages { Packages: Package[]; } export interface IVehiclePrices { DeliveryCharge: number; DeliveryChargeNet?: number; DeliveryChargeVAT?: number; Plates: number; PlatesNet?: number; PlatesVAT?: number; FuelCharge: number; FuelChargeNet?: number; FuelChargeVAT?: number; RetailPrice_ExVAT: number; RetailPrice_IncVAT: number; VED_Year1: number; VED_Year2: number; FirstRegFee: number; OTR_Value: number; } export interface IVehiclePriceCollection { Prices?: Price[]; } export interface IImageUrl { ImageUrl: string; BrandId?: number; VehicleType: string; } export interface IVehicleDetails { SpecialInfo: boolean; NumberOfDoors?: string; NumberOfSeats?: string; ChassisNumber?: string; EligibleForIntegratedServiceCare: boolean; ConsumptionCombined?: Consumption; ConsumptionExtraUrban?: Consumption; ConsumptionUrban?: Consumption; WltpFuelConsumptionCombined?: Consumption; WltpFuelConsumptionExtraHigh?: Consumption; WltpFuelConsumptionHigh?: Consumption; WltpFuelConsumptionLow?: Consumption; WltpFuelConsumptionMedium?: Consumption; EnergyEfficiencyClass?: EmissionClass; Equipment?: Equipment[]; EquipmentAdditional?: Equipment[]; EquipmentCategories?: EquipmentCategoryv2[]; VehicleData?: VehicleAttribute[]; IntegratedServiceCareOptions?: IntegratedServiceCareOptions[]; IspVehicleCustomerDescriptions?: string[]; } export class CarConfiguratorResponse { public Name?: string; public KeyInformation?: KeyInformation; public OrderingOptions?: OrderingOptions; public ResponseStatus: ResponseStatus; public ConfiguratorCode?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CarConfiguratorStockResponse { public TotalVehicles: number; public CarConfiguratorResponse: CarConfiguratorResponse; public ExactMatches: CarConfiguratorStockMatches; public CloseMatches: CarConfiguratorStockMatches; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @Route("/v1/CarConfiguratorStock", "POST") export class CarConfiguratorStockRequest implements IReturn, IPost { /** @description The configurator code to search on */ // @ApiMember(Description="The configurator code to search on", IsRequired=true) public ConfiguratorCode: string; /** @description Whether to return sellable vehicles */ // @ApiMember(Description="Whether to return sellable vehicles") public IsSellable?: boolean; /** @description Whether to only get exact matches */ // @ApiMember(Description="Whether to only get exact matches") public ExactMatch: boolean; /** @description Whether to restrict vehicles response to a GSSN */ // @ApiMember(Description="Whether to restrict vehicles response to a GSSN") public GSSN?: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } public getTypeName() { return 'CarConfiguratorStockRequest'; } public getMethod() { return 'POST'; } public createResponse() { return new CarConfiguratorStockResponse(); } }