/* Options: Date: 2026-05-19 09:52:44 SwiftVersion: 5.0 Version: 8.22 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://dev-api-booster.richemont.com //BaseClass: //AddModelExtensions: True //AddServiceStackTypes: True IncludeTypes: ExportInvoice.* //ExcludeTypes: //ExcludeGenericBaseTypes: False //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True //InitializeCollections: True //TreatTypesAsStrings: //DefaultImports: Foundation,ServiceStack */ import Foundation import ServiceStack // @Route("/invoice/{brand}/export", "POST") public class ExportInvoice : IReturn, Codable { public typealias Return = ExportInvoiceResponse /** * Brand Trigram, e.g. CAR, IWC */ // @ApiMember(Description="Brand Trigram, e.g. CAR, IWC", IsRequired=true) public var brand:String /** * Pos Legacy IDs / Codes */ // @ApiMember(Description="Pos Legacy IDs / Codes", IsRequired=true) public var posCodes:[String] = [] /** * Date To */ // @ApiMember(Description="Date To") public var dateTo:Date? /** * Date From */ // @ApiMember(Description="Date From") public var dateFrom:Date? /** * Reason Code e.g. Y00, Y06 */ // @ApiMember(Description="Reason Code e.g. Y00, Y06") public var reasonCodes:[String] = [] /** * Product Categories */ // @ApiMember(Description="Product Categories") public var productCategories:[ProductCategory] = [] /** * Export Request ID of the API Consumers */ // @ApiMember(Description="Export Request ID of the API Consumers", IsRequired=true) public var downloadRequestId:String required public init(){} } public class ExportInvoiceResponse : Codable { /** * Unique Identifier of the Export Request created */ // @ApiMember(Description="Unique Identifier of the Export Request created", IsRequired=true) public var asyncTaskId:String required public init(){} } public class ProductCategory : Codable { /** * Brand Category ID */ // @ApiMember(Description="Brand Category ID") public var brandCategoryId:String /** * Grand Category ID */ // @ApiMember(Description="Grand Category ID", IsRequired=true) public var grandCategoryId:String /** * Master Category ID */ // @ApiMember(Description="Master Category ID") public var masterCategoryId:String /** * Category ID */ // @ApiMember(Description="Category ID") public var categoryId:String /** * Sub Category ID */ // @ApiMember(Description="Sub Category ID") public var subCategoryId:String required public init(){} } public class ProductCategory : Codable { /** * Brand Category ID */ // @ApiMember(Description="Brand Category ID") public var brandCategoryId:String /** * Grand Category ID */ // @ApiMember(Description="Grand Category ID") public var grandCategoryId:String /** * Master Category ID */ // @ApiMember(Description="Master Category ID") public var masterCategoryId:String /** * Category ID */ // @ApiMember(Description="Category ID") public var categoryId:String /** * Sub Category ID */ // @ApiMember(Description="Sub Category ID") public var subCategoryId:String required public init(){} }