/* Options: Date: 2026-04-28 20:30:24 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: //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GetPricingDetailsRequest.* //ExcludeTypes: //DefaultImports: package:servicestack/servicestack.dart */ import 'package:servicestack/servicestack.dart'; enum Source { OnlineShowroom, OneAdmin, } class Address implements IConvertible { String Property = ""; String Street = ""; String Town = ""; String County = ""; String Locality = ""; String Postcode = ""; Address({this.Property,this.Street,this.Town,this.County,this.Locality,this.Postcode}); Address.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Property = json['Property']; Street = json['Street']; Town = json['Town']; County = json['County']; Locality = json['Locality']; Postcode = json['Postcode']; return this; } Map toJson() => { 'Property': Property, 'Street': Street, 'Town': Town, 'County': County, 'Locality': Locality, 'Postcode': Postcode }; getTypeName() => "Address"; TypeContext? context = _ctx; } enum CustomerMode { Private, Business, Motability, } class SalesforceCustomer implements ICustomer, IConvertible { String CustomerId = ""; bool IsCiam; String CompanyName = ""; String Title = ""; String Firstname = ""; String Surname = ""; String EmailAddress = ""; String Telephone = ""; Address Address; CustomerMode Mode; SalesforceCustomer({this.CustomerId,this.IsCiam,this.CompanyName,this.Title,this.Firstname,this.Surname,this.EmailAddress,this.Telephone,this.Address,this.Mode}); SalesforceCustomer.fromJson(Map json) { fromMap(json); } fromMap(Map json) { CustomerId = json['CustomerId']; IsCiam = json['IsCiam']; CompanyName = json['CompanyName']; Title = json['Title']; Firstname = json['Firstname']; Surname = json['Surname']; EmailAddress = json['EmailAddress']; Telephone = json['Telephone']; Address = JsonConverters.fromJson(json['Address'],'Address',context!); Mode = JsonConverters.fromJson(json['Mode'],'CustomerMode',context!); return this; } Map toJson() => { 'CustomerId': CustomerId, 'IsCiam': IsCiam, 'CompanyName': CompanyName, 'Title': Title, 'Firstname': Firstname, 'Surname': Surname, 'EmailAddress': EmailAddress, 'Telephone': Telephone, 'Address': JsonConverters.toJson(Address,'Address',context!), 'Mode': JsonConverters.toJson(Mode,'CustomerMode',context!) }; getTypeName() => "SalesforceCustomer"; TypeContext? context = _ctx; } class Preferences implements IConvertible { bool OptinEmail; bool OptinPost; bool OptinSMS; bool OptinTelephone; Preferences({this.OptinEmail,this.OptinPost,this.OptinSMS,this.OptinTelephone}); Preferences.fromJson(Map json) { fromMap(json); } fromMap(Map json) { OptinEmail = json['OptinEmail']; OptinPost = json['OptinPost']; OptinSMS = json['OptinSMS']; OptinTelephone = json['OptinTelephone']; return this; } Map toJson() => { 'OptinEmail': OptinEmail, 'OptinPost': OptinPost, 'OptinSMS': OptinSMS, 'OptinTelephone': OptinTelephone }; getTypeName() => "Preferences"; TypeContext? context = _ctx; } class Customer extends SalesforceCustomer implements IConvertible { String? ProfileId; Preferences? Preferences; Customer({this.ProfileId,this.Preferences}); Customer.fromJson(Map json) { fromMap(json); } fromMap(Map json) { super.fromMap(json); ProfileId = json['ProfileId']; Preferences = JsonConverters.fromJson(json['Preferences'],'Preferences',context!); return this; } Map toJson() => super.toJson()..addAll({ 'ProfileId': ProfileId, 'Preferences': JsonConverters.toJson(Preferences,'Preferences',context!) }); getTypeName() => "Customer"; TypeContext? context = _ctx; } class OutrightPurchase implements IConvertible { bool IsOutrightPurchase; String Reference = ""; double DiscountRate = 0; String Bm7NST = ""; bool IsBackOrder; bool IsCOPConverter; OutrightPurchase({this.IsOutrightPurchase,this.Reference,this.DiscountRate,this.Bm7NST,this.IsBackOrder,this.IsCOPConverter}); OutrightPurchase.fromJson(Map json) { fromMap(json); } fromMap(Map json) { IsOutrightPurchase = json['IsOutrightPurchase']; Reference = json['Reference']; DiscountRate = JsonConverters.toDouble(json['DiscountRate']); Bm7NST = json['Bm7NST']; IsBackOrder = json['IsBackOrder']; IsCOPConverter = json['IsCOPConverter']; return this; } Map toJson() => { 'IsOutrightPurchase': IsOutrightPurchase, 'Reference': Reference, 'DiscountRate': DiscountRate, 'Bm7NST': Bm7NST, 'IsBackOrder': IsBackOrder, 'IsCOPConverter': IsCOPConverter }; getTypeName() => "OutrightPurchase"; TypeContext? context = _ctx; } class Vehicle implements IConvertible { String? Vin; Vehicle({this.Vin}); Vehicle.fromJson(Map json) { fromMap(json); } fromMap(Map json) { Vin = json['Vin']; return this; } Map toJson() => { 'Vin': Vin }; getTypeName() => "Vehicle"; TypeContext? context = _ctx; } class Option implements IConvertible { bool IsDefault; int Value = 0; Option({this.IsDefault,this.Value}); Option.fromJson(Map json) { fromMap(json); } fromMap(Map json) { IsDefault = json['IsDefault']; Value = json['Value']; return this; } Map toJson() => { 'IsDefault': IsDefault, 'Value': Value }; getTypeName() => "Option"; TypeContext? context = _ctx; } class Term implements IConvertible { List