/* Options: Date: 2025-05-05 17:55:25 Version: 8.61 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: InflightPricingRequest.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export interface IPost { } export class OutrightPurchase { public IsOutrightPurchase: boolean; public Reference: string; public DiscountRate: number; public Bm7NST: string; public IsBackOrder: boolean; public IsCOPConverter: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class OrderOffer { public Id: number; public OfferTypeId: number; public OfferTypeDescription: string; public OfferId: string; public OfferDescription: string; public Net: number; public VAT: number; public Gross: number; public GovernmentGrant: boolean; public PromoCode?: string; public Expiry?: string; public AffectsPrice: boolean; public Product?: number; public ParentId?: string; public CreationDate: string; public ProductTypeDescription?: string; public ProductTypeNegativeDescription?: string; public CertificateRequired?: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class MotabilityAdvancePayment { public AdvancePaymentRentalType: string; public AdvancePaymentValueGross: number; public AdvancePaymentValueVAT: number; public AdvancePaymentValueNet: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class InflightPricingOrder { public Guid: string; public Vin: string; public AdvanceRentalPaymentType: number; public Offer: OrderOffer[] = []; public OutrightPurchase?: OutrightPurchase; public MotabilityAdvancePayment?: MotabilityAdvancePayment; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class InflightPricingOrderRequest { public InvalidFormatGuids: string[] = []; public OrderNotFoundGuids: string[] = []; public InflightPricingOrders: InflightPricingOrder[] = []; public IsMotability: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class SalesforcePrice { public Id: string; public Description: string; public Net: number; public VAT: number; public Gross: number; public Product: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class SalesforceTotalPrice { public Net: number; public VAT: number; public Gross: number; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class SalesforceOffer { public Id: string; public Description: string; public Net: number; public VAT: number; public Gross: number; public Expiry?: string; public Product: string; public RequiresCertification?: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class SalesforceOffers { public Personalised: SalesforceOffer[] = []; public NonDiscretionary: SalesforceOffer[] = []; public NonCampaign: SalesforceOffer[] = []; public OutrightPurchaseDiscount: SalesforceOffer[] = []; public MotabilityDiscount: SalesforceOffer[] = []; public IntegratedProducts: SalesforceOffer[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class SalesforceOutrightPurchase { public IsOutrightPurchase: boolean; public Reference: string; public DiscountPercentage: number; public ModelId: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class VehicleInflightPrice { public Guid: string; public Status: string; public Success: boolean; public Prices: SalesforcePrice[] = []; public TotalOTRFees: SalesforceTotalPrice; public TotalOTRPrice: SalesforceTotalPrice; public TotalActualPrice: SalesforceTotalPrice; public Offers: SalesforceOffers; public OutrightPurchase?: SalesforceOutrightPurchase; public Motability: MotabilityAdvancePayment; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class InflightPricingResponse { public VehiclesInflightPrices: VehicleInflightPrice[] = []; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @Route("/v1/inflightpricing", "POST") // @ApiResponse(Description="In Flight pricing generated", StatusCode=200) export class InflightPricingRequest extends InflightPricingOrderRequest implements IReturn, IPost { public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } public getTypeName() { return 'InflightPricingRequest'; } public getMethod() { return 'POST'; } public createResponse() { return new InflightPricingResponse(); } }