/* Options: Date: 2026-05-19 09:51:59 Version: 8.22 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://dev-api-booster.richemont.com //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: CreateBasket.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export class BasketStrapItem { /** @description Article reference */ // @ApiMember(Description="Article reference") public speakingArticleCode: string; /** @description Buckle type Description */ // @ApiMember(Description="Buckle type Description") public buckleTypeDescription: string; /** @description Buckle type */ // @ApiMember(Description="Buckle type") public buckleTypeCode: string; /** @description watch 6 Length */ // @ApiMember(Description="watch 6 Length") public watch6Length?: number; /** @description watch 12 Length */ // @ApiMember(Description="watch 12 Length") public watch12Length?: number; /** @description Article Material Code */ // @ApiMember(Description="Article Material Code") public materialCode: string; /** @description Article Material Description */ // @ApiMember(Description="Article Material Description") public materialDescription: string; /** @description Article Color Code */ // @ApiMember(Description="Article Color Code") public colorCode: string; /** @description Article Color Description */ // @ApiMember(Description="Article Color Description") public colorDescription: string; /** @description Buckle Witdh */ // @ApiMember(Description="Buckle Witdh") public buckleWidth: string; /** @description Article Lining Code */ // @ApiMember(Description="Article Lining Code") public liningCode: string; /** @description Article Lining Description */ // @ApiMember(Description="Article Lining Description") public liningDescription: string; /** @description Article Stitching Code */ // @ApiMember(Description="Article Stitching Code") public stitchingCode: string; /** @description Article Stitching Description */ // @ApiMember(Description="Article Stitching Description") public stitchingDescription: string; /** @description Article Edge Code */ // @ApiMember(Description="Article Edge Code") public edgeCode: string; /** @description Article Edge Description */ // @ApiMember(Description="Article Edge Description") public edgeDescription: string; /** @description Article Padding Code */ // @ApiMember(Description="Article Padding Code") public paddingCode: string; /** @description Article Padding Description */ // @ApiMember(Description="Article Padding Description") public paddingDescription: string; /** @description Article Speciality Code */ // @ApiMember(Description="Article Speciality Code") public specialtyCode: string; /** @description Article Speciality Description */ // @ApiMember(Description="Article Speciality Description") public specialtyDescription: string; /** @description Nuancier Code */ // @ApiMember(Description="Nuancier Code") public nuancierCode: string; /** @description Strap Vip Order */ // @ApiMember(Description="Strap Vip Order") public isStrapVipOrder?: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class BasketItem { /** @description Reference ID of the article/product */ // @ApiMember(Description="Reference ID of the article/product", IsRequired=true) public articleCode: string; /** @description Desired quantity of the article */ // @ApiMember(Description="Desired quantity of the article") public quantity: number; /** @description Strap definition */ // @ApiMember(Description="Strap definition") public strap: BasketStrapItem; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class BasketItemResponse { /** @description Line number of the article */ // @ApiMember(Description="Line number of the article") public line: number; /** @description Reference ID of the article/product */ // @ApiMember(Description="Reference ID of the article/product") public articleCode: string; /** @description Old reference ID of the article/product */ // @ApiMember(Description="Old reference ID of the article/product") public oldArticleCode: string; /** @description Quantity of the article */ // @ApiMember(Description="Quantity of the article") public quantity: number; /** @description Delivery date of the article */ // @ApiMember(Description="Delivery date of the article") public deliveryDate: string; /** @description Strap definition */ // @ApiMember(Description="Strap definition") public strap: BasketStrapItem; /** @description Errors for the article */ // @ApiMember(Description="Errors for the article") public errors: string[]; /** @description Warnings for the article */ // @ApiMember(Description="Warnings for the article") public warnings: string[]; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CreateBasketResponse { /** @description ID of the newly created Purchase Order / Basket */ // @ApiMember(Description="ID of the newly created Purchase Order / Basket", IsRequired=true) public purchaseOrderId: number; /** @description Validation results of each basket item */ // @ApiMember(Description="Validation results of each basket item") public validationResults: BasketItemResponse[]; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @Route("/purchase/basket", "POST") export class CreateBasket implements IReturn { /** @description Brand Trigram of the intended order */ // @ApiMember(Description="Brand Trigram of the intended order", IsRequired=true) public brand: string; /** @description Pos Code for the intended order e.g. ES03-10415-01 */ // @ApiMember(Description="Pos Code for the intended order e.g. ES03-10415-01", IsRequired=true) public posCode: string; /** @description Customer Reference */ // @ApiMember(Description="Customer Reference", IsRequired=true) public customerReference: string; /** @description Additional Notes regarding the order */ // @ApiMember(Description="Additional Notes regarding the order", IsRequired=true) public notes: string; /** @description List of Articles to be added in the basket */ // @ApiMember(Description="List of Articles to be added in the basket") public orderItems: BasketItem[]; /** @description Brand Context ID */ // @ApiMember(Description="Brand Context ID") public boosterContextId: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } public getTypeName() { return 'CreateBasket'; } public getMethod() { return 'POST'; } public createResponse() { return new CreateBasketResponse(); } }