/* Options: Date: 2026-06-14 21:41:55 Version: 8.80 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://qp-microservices-booster.richemont.com //GlobalNamespace: //MakePropertiesOptional: False //AddServiceStackTypes: True //AddResponseStatus: False //AddImplicitVersion: //AddDescriptionAsComments: True IncludeTypes: GetCustomerSuggestion.* //ExcludeTypes: //DefaultImports: */ export interface IReturn { createResponse(): T; } export class BaseRequest implements IRequest { public sid: string; public app: string; public _os: string; public _appVersion: string; public _searchMethod: string; public constructor(init?: Partial>) { (Object as any).assign(this, init); } } export interface IRequest { sid: string; app: string; } export class BaseResponse implements IRespose { public _xmlns: string; public _type: string; public _source: string; public _tstamp: string; public _user: string; public _env: string; public _uri: string; public _query: string; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export interface IRespose { _xmlns: string; _type: string; _source: string; _tstamp: string; _user: string; _env: string; _uri: string; _query: string; } // @DataContract export class ResponseError { // @DataMember(Order=1) public ErrorCode: string; // @DataMember(Order=2) public FieldName: string; // @DataMember(Order=3) public Message: string; // @DataMember(Order=4) public Meta: { [index: string]: string; }; public constructor(init?: Partial) { (Object as any).assign(this, init); } } // @DataContract export class ResponseStatus { // @DataMember(Order=1) public ErrorCode: string; // @DataMember(Order=2) public Message: string; // @DataMember(Order=3) public StackTrace: string; // @DataMember(Order=4) public Errors: ResponseError[]; // @DataMember(Order=5) public Meta: { [index: string]: string; }; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CustomerAddress { public addressId: string; public description: string; public addressLine1: string; public addressLine2: string; public addressLine3: string; public addressLine4: string; public addressLine5: string; public houseNumber: string; public city: string; public region: string; public county: string; public stateOrProvinceId: string; public countryId: string; public countryDs: string; public zipCode: string; public addressTypeId: string; public isMailingAddress: boolean; public isMainAddress: boolean; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CustomerEmail { public emailId: string; public description: string; public email: string; public isMainEmail: boolean; public type: Lookup; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class CustomerPhone { public phoneId: string; public description: string; public phone: string; public isMainPhone: boolean; public prefixCountryId: string; public telephonePrefix: string; public type: Lookup; public constructor(init?: Partial) { (Object as any).assign(this, init); } } export class Lookup { public Id: T; public Description: string; public constructor(init?: Partial>) { (Object as any).assign(this, init); } } export class GetCustomerSuggestionResponse extends BaseResponse { public customerType: string; public customerRef: string; public title?: number; public titleDs: string; public firstName: string; public lastName: string; public firstNameNotLatin: string; public lastNameNotLatin: string; public birthday: string; public birthDayEventId?: string; public weddingDate: string; public canBeContacted?: boolean; public seller?: string; public language: string; public languageDs: string; public nameSuffix: string; public gender: string; public companyName: string; public middleName: string; public customerId?: string; public personId?: string; public boosterCustomerId?: number; public posOwnerId?: number; public brandOwnerId: string; public businessUnitId?: number; public sapGenderId: string; public allowStoreDataAbroad?: boolean; public privacyPolicyAcceptanceStorage?: boolean; public tvAllowStoreDataAbroad?: boolean; public tvPrivacyPolicyAcceptanceStorage?: boolean; public contactByMail?: boolean; public contactByEmail?: boolean; public contactByPhone?: boolean; public contactBySMS?: boolean; public contactBySocialMedia?: boolean; public addresses: CustomerAddress[]; public emails: CustomerEmail[]; public phones: CustomerPhone[]; public ResponseStatus: ResponseStatus; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } } // @Route("/warranty/v1/GetCustomerSuggestion", "POST") export class GetCustomerSuggestion extends BaseRequest implements IReturn { public emailAddress: string; public posId: number; public brandTrigram: string; public phoneNumber: string; public prefixCountryId: string; public countryId: string; public constructor(init?: Partial) { super(init); (Object as any).assign(this, init); } public getTypeName() { return 'GetCustomerSuggestion'; } public getMethod() { return 'POST'; } public createResponse() { return new GetCustomerSuggestionResponse(); } }