@sonic-equipment/ui 0.0.35 → 0.0.36

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (35) hide show
  1. package/dist/algolia/algolia-provider.d.ts +2 -2
  2. package/dist/breadcrumbs/breadcrumb.d.ts +1 -2
  3. package/dist/breadcrumbs/breadcrumb.stories.d.ts +0 -4
  4. package/dist/buttons/link-button/link-button.d.ts +4 -1
  5. package/dist/cards/product-card/product-card.d.ts +2 -6
  6. package/dist/cards/product-card/product-card.stories.d.ts +0 -1
  7. package/dist/config.d.ts +3 -0
  8. package/dist/index.d.ts +3481 -90
  9. package/dist/index.js +433 -246
  10. package/dist/media/image/image.d.ts +1 -1
  11. package/dist/pages/page/page.d.ts +3 -1
  12. package/dist/pages/page/page.stories.d.ts +4 -0
  13. package/dist/pages/product-listing-page/product-listing-page-data-types.d.ts +1 -0
  14. package/dist/{pages/product-listing-page/use-fetch-product-listing-page → shared/api/bff/hooks}/use-fetch-product-listing-page-data.d.ts +4 -0
  15. package/dist/{pages/product-listing-page/use-fetch-product-listing-page/product-listing-page-data-response.d.ts → shared/api/bff/model/bff.model.d.ts} +1 -0
  16. package/dist/shared/api/shop/hooks/cart/cart.stories.d.ts +15 -0
  17. package/dist/shared/api/shop/hooks/cart/use-add-product-to-current-cart.d.ts +11 -0
  18. package/dist/shared/api/shop/hooks/cart/use-delete-cart-line-by-id.d.ts +5 -0
  19. package/dist/shared/api/shop/hooks/cart/use-fetch-current-cart-lines.d.ts +6 -0
  20. package/dist/shared/api/shop/hooks/cart/use-update-cart-line-by-id.d.ts +10 -0
  21. package/dist/shared/api/shop/model/shop.model.d.ts +2942 -0
  22. package/dist/shared/fetch/ResponseError.d.ts +1 -1
  23. package/dist/shared/providers/cart-provider.d.ts +8 -31
  24. package/dist/shared/routing/route-button.d.ts +9 -0
  25. package/dist/shared/routing/route-link.d.ts +8 -0
  26. package/dist/shared/routing/route-provider.d.ts +12 -0
  27. package/dist/shared/routing/route-provider.stories.d.ts +15 -0
  28. package/dist/shared/types/cart.d.ts +152 -4
  29. package/dist/shared/types/image.d.ts +18 -8
  30. package/dist/shared/utils/wait.d.ts +1 -0
  31. package/dist/styles.css +3 -1
  32. package/package.json +23 -19
  33. package/dist/breadcrumbs/connected-breadcrumb.d.ts +0 -1
  34. package/dist/pages/product-listing-page/product-listing-page-provider/use-breadcrumb.d.ts +0 -4
  35. /package/dist/{pages/product-listing-page/use-fetch-product-listing-page → shared/api/bff/hooks}/use-fetch-product-listing-page-data.stories.d.ts +0 -0
@@ -0,0 +1,2942 @@
1
+ export interface BaseModel {
2
+ properties: {
3
+ [key: string]: string;
4
+ };
5
+ uri: string;
6
+ }
7
+ export interface PaginationModel {
8
+ currentPage: number;
9
+ defaultPageSize: number;
10
+ nextPageUri: string;
11
+ numberOfPages: number;
12
+ page: number;
13
+ pageSize: number;
14
+ pageSizeOptions: number[];
15
+ prevPageUri: string;
16
+ sortOptions: SortOptionModel[];
17
+ sortType: string;
18
+ totalItemCount: number;
19
+ }
20
+ export interface SortOptionModel {
21
+ displayName: string;
22
+ sortType: string;
23
+ }
24
+ export interface AccountCollectionModel extends BaseModel {
25
+ accounts: AccountModel[] | null;
26
+ pagination: PaginationModel | null;
27
+ }
28
+ export interface AccountModel extends BaseModel {
29
+ accessToken: string;
30
+ activationStatus: string;
31
+ approver: string;
32
+ availableApprovers: string[] | null;
33
+ availableRoles: string[] | null;
34
+ availableRolesTranslated: {
35
+ [key: string]: string;
36
+ } | null;
37
+ billToId: string | null;
38
+ canApproveOrders: boolean;
39
+ canViewApprovalOrders: boolean;
40
+ defaultCustomerId: string | null;
41
+ defaultFulfillmentMethod: string;
42
+ defaultWarehouse: WarehouseModel | null;
43
+ defaultWarehouseId: string | null;
44
+ email: string;
45
+ firstName: string;
46
+ id: string;
47
+ isApproved: boolean | null;
48
+ isGuest: boolean;
49
+ isSubscribed: boolean | null;
50
+ lastLoginOn: Date | null;
51
+ lastName: string;
52
+ password: string;
53
+ requiresActivation: boolean | null;
54
+ role: string;
55
+ roleTranslated: string;
56
+ setDefaultCustomer: boolean;
57
+ shipToId: string | null;
58
+ userName: string;
59
+ vmiRole: string;
60
+ vmiRoleTranslated: string;
61
+ }
62
+ export interface AccountPaymentProfileCollectionModel extends BaseModel {
63
+ accountPaymentProfiles: AccountPaymentProfileModel[] | null;
64
+ pagination: PaginationModel | null;
65
+ }
66
+ export interface AccountShipToCollectionModel extends BaseModel {
67
+ costCodeCollection: CustomerCostCodeDto[] | null;
68
+ pagination: PaginationModel | null;
69
+ userShipToCollection: AccountShipToModel[] | null;
70
+ }
71
+ export interface AccountPaymentProfileModel extends BaseModel {
72
+ address1: string;
73
+ address2: string;
74
+ address3: string;
75
+ address4: string;
76
+ cardHolderName: string;
77
+ cardIdentifier: string;
78
+ cardType: string;
79
+ city: string;
80
+ country: string;
81
+ description: string;
82
+ expirationDate: string;
83
+ id: string;
84
+ isDefault: boolean;
85
+ maskedCardNumber: string;
86
+ postalCode: string;
87
+ state: string;
88
+ tokenScheme: string;
89
+ }
90
+ export interface PersonaModel extends BaseModel {
91
+ description: string;
92
+ id: string;
93
+ isDefault: boolean;
94
+ name: string;
95
+ }
96
+ export interface VmiUserModel extends BaseModel {
97
+ removeVmiPermissions: boolean;
98
+ role: string;
99
+ userId: string;
100
+ vmiLocationIds: string[] | null;
101
+ }
102
+ export interface AccountSettingsModel extends BaseModel {
103
+ allowCreateAccount: boolean;
104
+ allowGuestCheckout: boolean;
105
+ allowSubscribeToNewsLetter: boolean;
106
+ daysToRetainUser: number;
107
+ enableWarehousePickup: boolean;
108
+ logOutUserAfterPasswordChange: boolean;
109
+ passwordMinimumLength: number;
110
+ passwordMinimumRequiredLength: number;
111
+ passwordRequiresDigit: boolean;
112
+ passwordRequiresLowercase: boolean;
113
+ passwordRequiresSpecialCharacter: boolean;
114
+ passwordRequiresUppercase: boolean;
115
+ rememberMe: boolean;
116
+ requireSelectCustomerOnSignIn: boolean;
117
+ useEmailAsUserName: boolean;
118
+ }
119
+ export interface SessionModel extends BaseModel {
120
+ activateAccount: boolean;
121
+ billTo: BillToModel | null;
122
+ cartReminderUnsubscribeEmail: string;
123
+ cartReminderUnsubscribeToken: string;
124
+ currency: CurrencyModel | null;
125
+ customLandingPage: string;
126
+ customerWasUpdated: boolean;
127
+ dashboardIsHomepage: boolean | null;
128
+ deviceType: string;
129
+ displayChangeCustomerLink: boolean;
130
+ displayMyAccountMenu: boolean;
131
+ displayPricingAndInventory: boolean;
132
+ email: string;
133
+ firstName: string;
134
+ fulfillmentMethod: string;
135
+ hasDefaultCustomer: boolean;
136
+ hasRfqUpdates: boolean | null;
137
+ isAuthenticated: boolean;
138
+ isGuest: boolean;
139
+ isRestrictedProductExistInCart: boolean;
140
+ isRestrictedProductRemovedFromCart: boolean;
141
+ isSalesPerson: boolean;
142
+ language: LanguageModel | null;
143
+ lastName: string;
144
+ newPassword: string;
145
+ password: string;
146
+ persona: string;
147
+ personas: PersonaModel[] | null;
148
+ pickUpWarehouse: WarehouseModel | null;
149
+ redirectToChangeCustomerPageOnSignIn: boolean;
150
+ rememberMe: boolean;
151
+ resetPassword: boolean;
152
+ resetToken: string;
153
+ shipTo: ShipToModel | null;
154
+ userLabel: string;
155
+ userName: string;
156
+ userProfileId: string | null;
157
+ userRoles: string;
158
+ userRolesTranslated: string;
159
+ }
160
+ export interface ShipToModel extends BaseModel {
161
+ address1: string;
162
+ address2: string;
163
+ address3: string;
164
+ address4: string;
165
+ attention: string;
166
+ city: string;
167
+ companyName: string;
168
+ contactFullName: string;
169
+ country: CountryModel | null;
170
+ customerName: string;
171
+ customerNumber: string;
172
+ customerSequence: string;
173
+ email: string;
174
+ fax: string;
175
+ firstName: string;
176
+ fullAddress: string;
177
+ id: string;
178
+ isDefault: boolean;
179
+ isNew: boolean;
180
+ isVmiLocation: boolean;
181
+ label: string;
182
+ lastName: string;
183
+ oneTimeAddress: boolean;
184
+ phone: string;
185
+ postalCode: string;
186
+ state: StateModel | null;
187
+ validation: CustomerValidationDto | null;
188
+ }
189
+ export interface CustomerValidationDto {
190
+ address1: FieldValidationDto | null;
191
+ address2: FieldValidationDto | null;
192
+ address3: FieldValidationDto | null;
193
+ address4: FieldValidationDto | null;
194
+ attention: FieldValidationDto | null;
195
+ city: FieldValidationDto | null;
196
+ companyName: FieldValidationDto | null;
197
+ country: FieldValidationDto | null;
198
+ email: FieldValidationDto | null;
199
+ fax: FieldValidationDto | null;
200
+ firstName: FieldValidationDto | null;
201
+ lastName: FieldValidationDto | null;
202
+ phone: FieldValidationDto | null;
203
+ postalCode: FieldValidationDto | null;
204
+ state: FieldValidationDto | null;
205
+ }
206
+ export interface FieldValidationDto {
207
+ isDisabled: boolean;
208
+ isRequired: boolean;
209
+ maxLength: number | null;
210
+ }
211
+ export interface StateModel extends BaseModel {
212
+ abbreviation: string;
213
+ id: string;
214
+ name: string;
215
+ }
216
+ export interface CountryModel extends BaseModel {
217
+ abbreviation: string;
218
+ id: string;
219
+ name: string;
220
+ states: StateModel[] | null;
221
+ }
222
+ export declare enum CurrencyPositioningType {
223
+ Left = "Left",
224
+ Right = "Right"
225
+ }
226
+ export interface LanguageModel extends BaseModel {
227
+ cultureCode: string;
228
+ currencyPositioning: CurrencyPositioningType;
229
+ description: string;
230
+ id: string;
231
+ imageFilePath: string;
232
+ isDefault: boolean;
233
+ isLive: boolean;
234
+ languageCode: string;
235
+ }
236
+ export interface CurrencyModel extends BaseModel {
237
+ currencyCode: string;
238
+ currencySymbol: string;
239
+ description: string;
240
+ id: string;
241
+ isDefault: boolean;
242
+ }
243
+ export interface BillToModel extends BaseModel {
244
+ accountsReceivable?: AccountsReceivableDto | null;
245
+ address1: string;
246
+ address2: string;
247
+ address3: string;
248
+ address4: string;
249
+ attention: string;
250
+ budgetEnforcementLevel: string;
251
+ city: string;
252
+ companyName: string;
253
+ contactFullName: string;
254
+ costCodeTitle: string;
255
+ costCodes?: CostCodeModel[] | null;
256
+ country: CountryModel | null;
257
+ customerCurrencySymbol: string;
258
+ customerName: string;
259
+ customerNumber: string;
260
+ customerSequence: string;
261
+ email: string;
262
+ fax: string;
263
+ firstName: string;
264
+ fullAddress: string;
265
+ id: string;
266
+ isDefault: boolean;
267
+ isGuest: boolean;
268
+ label: string;
269
+ lastName: string;
270
+ phone: string;
271
+ postalCode: string;
272
+ shipTos?: ShipToModel[] | null;
273
+ shipTosUri: string;
274
+ state: StateModel | null;
275
+ validation?: CustomerValidationDto | null;
276
+ }
277
+ export interface CostCodeModel {
278
+ costCode: string;
279
+ description: string;
280
+ id: string;
281
+ isActive: boolean | null;
282
+ }
283
+ export interface AccountsReceivableDto {
284
+ agingBucketFuture: AgingBucketDto | null;
285
+ agingBucketTotal: AgingBucketDto | null;
286
+ agingBuckets: AgingBucketDto[] | null;
287
+ }
288
+ export interface AgingBucketDto {
289
+ amount: number;
290
+ amountDisplay: string;
291
+ label: string;
292
+ }
293
+ export interface AccountShipToModel {
294
+ address: string;
295
+ assign: boolean;
296
+ city: string;
297
+ costCode: string;
298
+ id: string | null;
299
+ isDefaultShipTo: boolean;
300
+ shipToNumber: string;
301
+ state: string;
302
+ }
303
+ export interface CustomerCostCodeDto {
304
+ costCode: string;
305
+ customerCostCodeId: string;
306
+ description: string;
307
+ isActive: boolean;
308
+ }
309
+ export interface WarehouseModel extends BaseModel {
310
+ address1: string;
311
+ address2: string;
312
+ allowPickup: boolean;
313
+ alternateWarehouses: WarehouseModel[] | null;
314
+ city: string;
315
+ contactName: string;
316
+ countryId: string | null;
317
+ deactivateOn: Date | null;
318
+ description: string;
319
+ distance: number;
320
+ hours: string;
321
+ id: string;
322
+ isDefault: boolean;
323
+ latitude: number;
324
+ longitude: number;
325
+ name: string;
326
+ phone: string;
327
+ pickupShipViaId: string | null;
328
+ postalCode: string;
329
+ shipSite: string;
330
+ state: string;
331
+ }
332
+ export interface BrandAlphabetModel extends BaseModel {
333
+ alphabet: BrandAlphabetLetterModel[] | null;
334
+ }
335
+ export interface BrandCategoryCollectionModel extends BaseModel {
336
+ brandCategories: BrandCategoryModel[] | null;
337
+ pagination: PaginationModel | null;
338
+ }
339
+ export interface BrandCategoryModel extends BaseModel {
340
+ brandId: string;
341
+ categoryId: string;
342
+ categoryName: string;
343
+ categoryShortDescription: string;
344
+ contentManagerId: string | null;
345
+ featuredImageAltText: string;
346
+ featuredImagePath: string;
347
+ htmlContent: string;
348
+ productListPagePath: string;
349
+ subCategories: BrandCategoryModel[] | null;
350
+ }
351
+ export interface BrandCollectionModel extends BaseModel {
352
+ brands: BrandModel[] | null;
353
+ pagination: PaginationModel | null;
354
+ }
355
+ export interface BrandModel extends BaseModel {
356
+ alternateLanguageUrls: {
357
+ [key: string]: string;
358
+ } | null;
359
+ detailPagePath: string;
360
+ externalUrl: string;
361
+ featuredImageAltText: string;
362
+ featuredImagePath: string;
363
+ htmlContent: string;
364
+ id: string;
365
+ logoAltText: string;
366
+ logoLargeImagePath: string;
367
+ logoSmallImagePath: string;
368
+ manufacturer: string;
369
+ metaDescription: string;
370
+ name: string;
371
+ pageTitle: string;
372
+ productListPagePath: string;
373
+ topSellerProducts: ProductDto[] | null;
374
+ }
375
+ export interface BrandProductLineCollectionModel extends BaseModel {
376
+ pagination: PaginationModel | null;
377
+ productLines: BrandProductLineModel[] | null;
378
+ }
379
+ export interface BrandProductLineModel extends BaseModel {
380
+ featuredImageAltText: string;
381
+ featuredImagePath: string;
382
+ id: string;
383
+ isFeatured: boolean;
384
+ isSponsored: boolean;
385
+ name: string;
386
+ productListPagePath: string;
387
+ sortOrder: number;
388
+ }
389
+ export interface ProductDto {
390
+ accessories: ProductDto[] | null;
391
+ allowAnyGiftCardAmount: boolean;
392
+ allowZeroPricing: boolean;
393
+ allowedAddToCart: boolean;
394
+ alsoPurchasedProducts: ProductDto[] | null;
395
+ altText: string;
396
+ attributeTypes: AttributeTypeDto[] | null;
397
+ availability: AvailabilityDto | null;
398
+ basicListPrice: number;
399
+ basicSaleEndDate: Date | null;
400
+ basicSalePrice: number;
401
+ basicSaleStartDate: Date | null;
402
+ brand: BrandDto | null;
403
+ canAddToCart: boolean;
404
+ canAddToWishlist: boolean;
405
+ canBackOrder: boolean;
406
+ canConfigure: boolean;
407
+ canEnterQuantity: boolean;
408
+ canShowPrice: boolean;
409
+ canShowUnitOfMeasure: boolean;
410
+ canViewDetails: boolean;
411
+ configurationDto: LegacyConfigurationDto | null;
412
+ crossSells: ProductDto[] | null;
413
+ currencySymbol: string;
414
+ customerName: string;
415
+ customerUnitOfMeasure: string;
416
+ defaultChildProductId: string | null;
417
+ documents: DocumentDto[] | null;
418
+ erpDescription: string;
419
+ erpNumber: string;
420
+ handlingAmountOverride: number | null;
421
+ hasMsds: boolean;
422
+ htmlContent: string;
423
+ id: string;
424
+ isActive: boolean;
425
+ isBeingCompared: boolean;
426
+ isConfigured: boolean;
427
+ isDiscontinued: boolean;
428
+ isFixedConfiguration: boolean;
429
+ isGiftCard: boolean;
430
+ isHazardousGood: boolean;
431
+ isSpecialOrder: boolean;
432
+ isSponsored: boolean;
433
+ isStyleProductParent: boolean;
434
+ isSubscription: boolean;
435
+ largeImagePath: string;
436
+ manufacturerItem: string;
437
+ mediumImagePath: string;
438
+ metaDescription: string;
439
+ metaKeywords: string;
440
+ minimumOrderQty: number;
441
+ modelNumber: string;
442
+ multipleSaleQty: number;
443
+ name: string;
444
+ numberInCart: number;
445
+ orderLineId: string | null;
446
+ packDescription: string;
447
+ pageTitle: string;
448
+ priceCode: string;
449
+ pricing: ProductPriceDto | null;
450
+ productCode: string;
451
+ productDetailUrl: string;
452
+ productImages: ProductImageDto[] | null;
453
+ productLine: ProductLineDto | null;
454
+ productSubscription: ProductSubscriptionDto | null;
455
+ productUnitOfMeasures: ProductUnitOfMeasureDto[] | null;
456
+ qtyOnHand: number;
457
+ qtyOrdered: number;
458
+ qtyPerShippingPackage: number;
459
+ quoteRequired: boolean;
460
+ relatedProducts: RelatedProductDto[] | null;
461
+ replacementProductId: string | null;
462
+ requiresRealTimeInventory: boolean;
463
+ roundingRule: string;
464
+ salePriceLabel: string;
465
+ score: number;
466
+ scoreExplanation: ScoreExplanationDto | null;
467
+ searchBoost: number;
468
+ searchBoostDecimal: number;
469
+ selectedUnitOfMeasure: string;
470
+ selectedUnitOfMeasureDisplay: string;
471
+ shippingAmountOverride: number | null;
472
+ shippingClassification: string;
473
+ shippingHeight: string;
474
+ shippingLength: string;
475
+ shippingWeight: string;
476
+ shippingWidth: string;
477
+ shortDescription: string;
478
+ sku: string;
479
+ smallImagePath: string;
480
+ sortOrder: number;
481
+ specifications: SpecificationDto[] | null;
482
+ styleParentId: string | null;
483
+ styleTraits: StyleTraitDto[] | null;
484
+ styledProducts: StyledProductDto[] | null;
485
+ taxCategory: string;
486
+ taxCode1: string;
487
+ taxCode2: string;
488
+ trackInventory: boolean;
489
+ unitOfMeasure: string;
490
+ unitOfMeasureDescription: string;
491
+ unitOfMeasureDisplay: string;
492
+ unspsc: string;
493
+ upcCode: string;
494
+ urlSegment: string;
495
+ vendorNumber: string;
496
+ warehouses: WarehouseDto[] | null;
497
+ }
498
+ export interface WarehouseDto {
499
+ description: string;
500
+ message: string;
501
+ messageType: AvailabilityMessageType | null;
502
+ name: string;
503
+ qty: number;
504
+ requiresRealTimeInventory: boolean;
505
+ }
506
+ export declare enum AvailabilityMessageType {
507
+ NoMessage = 0,
508
+ Available = 1,
509
+ OutOfStock = 2,
510
+ LowStock = 3
511
+ }
512
+ export interface StyleTraitDto {
513
+ name: string;
514
+ nameDisplay: string;
515
+ sortOrder: number;
516
+ styleTraitId: string;
517
+ styleValues: StyleValueDto[] | null;
518
+ unselectedValue: string;
519
+ }
520
+ export interface StyleValueDto {
521
+ isDefault: boolean;
522
+ sortOrder: number;
523
+ styleTraitId: string;
524
+ styleTraitName: string;
525
+ styleTraitValueId: string;
526
+ value: string;
527
+ valueDisplay: string;
528
+ }
529
+ export interface StyledProductDto {
530
+ allowZeroPricing: boolean;
531
+ availability: AvailabilityDto | null;
532
+ erpNumber: string;
533
+ largeImagePath: string;
534
+ manufacturerItem: string;
535
+ mediumImagePath: string;
536
+ minimumOrderQty: number;
537
+ name: string;
538
+ numberInCart: number;
539
+ pricing: ProductPriceDto | null;
540
+ productDetailUrl: string;
541
+ productId: string;
542
+ productImages: ProductImageDto[] | null;
543
+ productUnitOfMeasures: ProductUnitOfMeasureDto[] | null;
544
+ qtyOnHand: number;
545
+ quoteRequired: boolean;
546
+ shortDescription: string;
547
+ sku: string;
548
+ smallImagePath: string;
549
+ styleValues: StyleValueDto[] | null;
550
+ trackInventory: boolean;
551
+ unitOfMeasure: string;
552
+ upcCode: string;
553
+ warehouses: WarehouseDto[] | null;
554
+ }
555
+ export interface SpecificationDto {
556
+ description: string;
557
+ htmlContent: string;
558
+ isActive: boolean;
559
+ name: string;
560
+ nameDisplay: string;
561
+ parentSpecification: SpecificationDto | null;
562
+ sortOrder: number;
563
+ specificationId: string;
564
+ specifications: SpecificationDto[] | null;
565
+ value: string;
566
+ }
567
+ export interface ScoreExplanationDto {
568
+ aggregateFieldScores: FieldScoreDto[] | null;
569
+ detailedFieldScores: FieldScoreDetailedDto[] | null;
570
+ totalBoost: any;
571
+ }
572
+ export interface FieldScoreDetailedDto {
573
+ boost: any;
574
+ inverseDocumentFrequency: any;
575
+ matchText: string;
576
+ name: string;
577
+ score: any;
578
+ scoreUsed: boolean;
579
+ termFrequencyNormalized: any;
580
+ }
581
+ export interface FieldScoreDto {
582
+ name: string;
583
+ score: any;
584
+ }
585
+ export interface RelatedProductDto {
586
+ productDto: ProductDto | null;
587
+ relatedProductType: string;
588
+ }
589
+ export interface ProductUnitOfMeasureDto {
590
+ availability: AvailabilityDto | null;
591
+ description: string;
592
+ isDefault: boolean;
593
+ productUnitOfMeasureId: string;
594
+ qtyPerBaseUnitOfMeasure: number;
595
+ roundingRule: string;
596
+ unitOfMeasure: string;
597
+ unitOfMeasureDisplay: string;
598
+ }
599
+ export interface ProductSubscriptionDto {
600
+ subscriptionAddToInitialOrder: boolean;
601
+ subscriptionAllMonths: boolean;
602
+ subscriptionApril: boolean;
603
+ subscriptionAugust: boolean;
604
+ subscriptionCyclePeriod: string;
605
+ subscriptionDecember: boolean;
606
+ subscriptionFebruary: boolean;
607
+ subscriptionFixedPrice: boolean;
608
+ subscriptionJanuary: boolean;
609
+ subscriptionJuly: boolean;
610
+ subscriptionJune: boolean;
611
+ subscriptionMarch: boolean;
612
+ subscriptionMay: boolean;
613
+ subscriptionNovember: boolean;
614
+ subscriptionOctober: boolean;
615
+ subscriptionPeriodsPerCycle: number;
616
+ subscriptionSeptember: boolean;
617
+ subscriptionShipViaId: string | null;
618
+ subscriptionTotalCycles: number;
619
+ }
620
+ export interface ProductLineDto {
621
+ id: string;
622
+ name: string;
623
+ }
624
+ export interface ProductImageDto {
625
+ altText: string;
626
+ id: string;
627
+ imageType: string;
628
+ largeImagePath: string;
629
+ mediumImagePath: string;
630
+ name: string;
631
+ smallImagePath: string;
632
+ sortOrder: number;
633
+ }
634
+ export interface ProductPriceDto {
635
+ actualBreakPrices: BreakPriceDto[] | null;
636
+ actualPrice: number;
637
+ actualPriceDisplay: string;
638
+ additionalResults: {
639
+ [key: string]: string;
640
+ } | null;
641
+ extendedActualPrice: number;
642
+ extendedActualPriceDisplay: string;
643
+ extendedRegularPrice: number;
644
+ extendedRegularPriceDisplay: string;
645
+ extendedUnitListPrice: number;
646
+ extendedUnitListPriceDisplay: string;
647
+ extendedUnitListPriceWithVat: number;
648
+ extendedUnitListPriceWithVatDisplay: string;
649
+ extendedUnitNetPrice: number;
650
+ extendedUnitNetPriceDisplay: string;
651
+ extendedUnitRegularPrice: number;
652
+ extendedUnitRegularPriceDisplay: string;
653
+ extendedUnitRegularPriceWithVat: number;
654
+ extendedUnitRegularPriceWithVatDisplay: string;
655
+ isOnSale: boolean;
656
+ productId: string;
657
+ regularBreakPrices: BreakPriceDto[] | null;
658
+ regularPrice: number;
659
+ regularPriceDisplay: string;
660
+ requiresRealTimePrice: boolean;
661
+ unitCost: number;
662
+ unitCostDisplay: string;
663
+ unitListBreakPrices: BreakPriceDto[] | null;
664
+ unitListPrice: number;
665
+ unitListPriceDisplay: string;
666
+ unitListPriceWithVat: number;
667
+ unitListPriceWithVatDisplay: string;
668
+ unitNetPrice: number;
669
+ unitNetPriceDisplay: string;
670
+ unitOfMeasure: string;
671
+ unitRegularBreakPrices: BreakPriceDto[] | null;
672
+ unitRegularPrice: number;
673
+ unitRegularPriceDisplay: string;
674
+ unitRegularPriceWithVat: number;
675
+ unitRegularPriceWithVatDisplay: string;
676
+ vatAmount: number;
677
+ vatAmountDisplay: string;
678
+ vatMinusExtendedUnitRegularPrice: number;
679
+ vatRate: number;
680
+ }
681
+ export interface BreakPriceDto {
682
+ breakPrice: number;
683
+ breakPriceDisplay: string;
684
+ breakPriceWithVat: number;
685
+ breakPriceWithVatDisplay: string;
686
+ breakQty: number;
687
+ savingsMessage: string;
688
+ }
689
+ export interface DocumentDto {
690
+ createdOn: Date;
691
+ description: string;
692
+ documentType: string;
693
+ filePath: string;
694
+ fileTypeString: string;
695
+ fileUrl: string;
696
+ id: string;
697
+ languageId: string | null;
698
+ name: string;
699
+ }
700
+ export interface LegacyConfigurationDto {
701
+ hasDefaults: boolean;
702
+ isKit: boolean;
703
+ sections: ConfigSectionDto[] | null;
704
+ }
705
+ export interface ConfigSectionDto {
706
+ options: ConfigSectionOptionDto[] | null;
707
+ sectionName: string;
708
+ }
709
+ export interface ConfigSectionOptionDto {
710
+ description: string;
711
+ price: number;
712
+ productId: string | null;
713
+ productName: string;
714
+ quantity: number;
715
+ sectionName: string;
716
+ sectionOptionId: string;
717
+ selected: boolean;
718
+ sortOrder: number;
719
+ userProductPrice: boolean;
720
+ }
721
+ export interface BrandDto {
722
+ detailPagePath: string;
723
+ id: string;
724
+ logoImageAltText: string;
725
+ logoLargeImagePath: string;
726
+ logoSmallImagePath: string;
727
+ name: string;
728
+ urlSegment: string;
729
+ }
730
+ export interface AvailabilityDto {
731
+ message: string;
732
+ messageType: AvailabilityMessageType | null;
733
+ requiresRealTimeInventory: boolean;
734
+ }
735
+ export interface AttributeTypeDto {
736
+ attributeValues: AttributeValueDto[] | null;
737
+ id: string;
738
+ includeOnProduct: boolean;
739
+ isActive: boolean;
740
+ isComparable: boolean;
741
+ isFilter: boolean;
742
+ isSearchable: boolean;
743
+ label: string;
744
+ name: string;
745
+ sortOrder: number;
746
+ }
747
+ export interface AttributeValueDto {
748
+ id: string;
749
+ isActive: boolean;
750
+ sortOrder: number;
751
+ value: string;
752
+ valueDisplay: string;
753
+ }
754
+ export interface BrandAlphabetLetterModel {
755
+ count: number;
756
+ letter: string;
757
+ }
758
+ export interface BudgetCalendarCollectionModel extends BaseModel {
759
+ budgetCalendarCollection: BudgetCalendarModel[] | null;
760
+ }
761
+ export interface BudgetCalendarModel extends BaseModel {
762
+ budgetPeriods: (Date | null)[] | null;
763
+ fiscalYear: number;
764
+ fiscalYearEndDate: Date | null;
765
+ }
766
+ export interface BudgetCollectionModel extends BaseModel {
767
+ budgetCollection: BudgetModel[] | null;
768
+ }
769
+ export interface BudgetModel extends BaseModel {
770
+ budgetLineCollection: BudgetLineModel[] | null;
771
+ fiscalYear: number;
772
+ fiscalYearEndDate: Date | null;
773
+ shipToId: string;
774
+ userProfileId: string;
775
+ }
776
+ export interface BudgetLineModel extends BaseModel {
777
+ currentFiscalYearActual: number;
778
+ currentFiscalYearActualDisplay: string;
779
+ currentFiscalYearBudget?: number;
780
+ currentFiscalYearBudgetDisplay: string;
781
+ currentFiscalYearVariance: number;
782
+ currentFiscalYearVarianceDisplay: string;
783
+ lastFiscalYearActual: number;
784
+ lastFiscalYearActualDisplay: string;
785
+ lastFiscalYearBudget: number;
786
+ lastFiscalYearBudgetDisplay: string;
787
+ lastFiscalYearVariance: number;
788
+ lastFiscalYearVarianceDisplay: string;
789
+ period: number;
790
+ startDate: Date;
791
+ }
792
+ export interface CartCollectionModel extends BaseModel {
793
+ carts: CartModel[] | null;
794
+ pagination: PaginationModel | null;
795
+ }
796
+ export interface CartLineCollectionModel extends BaseModel {
797
+ cartLines: CartLineModel[] | null;
798
+ notAllAddedToCart: boolean;
799
+ pagination: PaginationModel | null;
800
+ }
801
+ export interface CartSettingsModel extends BaseModel {
802
+ addToCartPopupTimeout: number;
803
+ bypassCvvForSavedCards: boolean;
804
+ canEditCostCode: boolean;
805
+ canRequestDeliveryDate: boolean;
806
+ canRequisition: boolean;
807
+ enableRequestPickUpDate: boolean;
808
+ enableSavedCreditCards: boolean;
809
+ maximumDeliveryPeriod: number;
810
+ onePageCheckout: boolean;
811
+ requiresPoNumber: boolean;
812
+ showCostCode: boolean;
813
+ showCreditCard: boolean;
814
+ showLineNotes: boolean;
815
+ showNewsletterSignup: boolean;
816
+ showPayPal: boolean;
817
+ showPoNumber: boolean;
818
+ showTaxAndShipping: boolean;
819
+ }
820
+ export interface CartLineModel extends BaseModel {
821
+ allowZeroPricing: boolean;
822
+ altText: string;
823
+ availability: AvailabilityDto | null;
824
+ baseUnitOfMeasure: string;
825
+ baseUnitOfMeasureDisplay: string;
826
+ brand: BrandDto | null;
827
+ breakPrices: BreakPriceDto[] | null;
828
+ canAddToCart: boolean;
829
+ canAddToWishlist: boolean;
830
+ canBackOrder: boolean;
831
+ cantBuy: boolean;
832
+ costCode: string;
833
+ customerName: string;
834
+ erpNumber: string;
835
+ hasInsufficientInventory: boolean;
836
+ id: string;
837
+ idx?: number;
838
+ isActive: boolean;
839
+ isConfigured: boolean;
840
+ isDiscontinued: boolean;
841
+ isDiscounted: boolean;
842
+ isFixedConfiguration: boolean;
843
+ isPromotionItem: boolean;
844
+ isQtyAdjusted: boolean;
845
+ isRestricted: boolean;
846
+ isSubscription: boolean;
847
+ line: number | null;
848
+ manufacturerItem: string;
849
+ notes: string;
850
+ pricing: ProductPriceDto | null;
851
+ productId: string | null;
852
+ productName: string;
853
+ productSubscription: ProductSubscriptionDto | null;
854
+ productUri: string;
855
+ qtyLeft: number;
856
+ qtyOnHand: number;
857
+ qtyOrdered: number | null;
858
+ qtyPerBaseUnitOfMeasure: number;
859
+ quoteRequired: boolean;
860
+ requisitionId: string | null;
861
+ salePriceLabel: string;
862
+ sectionOptions: SectionOptionDto[] | null;
863
+ shortDescription: string;
864
+ smallImagePath: string;
865
+ trackInventory: boolean;
866
+ unitOfMeasure: string;
867
+ unitOfMeasureDescription: string;
868
+ unitOfMeasureDisplay: string;
869
+ vmiBinId?: string | null;
870
+ }
871
+ export interface CartModel extends BaseModel {
872
+ additionalEmails: string;
873
+ alsoPurchasedProducts: ProductDto[] | null;
874
+ approverReason: string;
875
+ billTo?: BillToModel | null;
876
+ canBypassCheckoutAddress: boolean;
877
+ canCheckOut: boolean;
878
+ canEditCostCode: boolean;
879
+ canModifyOrder: boolean;
880
+ canRequestQuote: boolean;
881
+ canRequisition: boolean;
882
+ canSaveOrder: boolean;
883
+ carrier: CarrierDto | null;
884
+ carriers?: CarrierDto[] | null;
885
+ cartLines?: CartLineModel[] | null;
886
+ cartLinesUri: string;
887
+ cartNotPriced: boolean;
888
+ costCodeLabel: string;
889
+ costCodes: CostCodeDto[] | null;
890
+ creditCardBillingAddress: CreditCardBillingAddressDto | null;
891
+ currencySymbol: string;
892
+ customerOrderTaxes: CustomerOrderTaxDto[] | null;
893
+ customerVatNumber: string;
894
+ defaultWarehouse: WarehouseModel | null;
895
+ displayContinueShoppingLink: boolean;
896
+ erpOrderNumber: string;
897
+ failedToGetRealTimeInventory: boolean;
898
+ fulfillmentMethod: string;
899
+ hasApprover: boolean;
900
+ hasInsufficientInventory: boolean;
901
+ id: string;
902
+ initiatedByUserName: string;
903
+ isAuthenticated: boolean;
904
+ isAwaitingApproval: boolean;
905
+ isGuestOrder: boolean;
906
+ isSalesperson: boolean;
907
+ isSubscribed: boolean;
908
+ lineCount: number;
909
+ messages: string[] | null;
910
+ notes: string;
911
+ orderDate: Date | null;
912
+ orderGrandTotal: number;
913
+ orderGrandTotalDisplay: string;
914
+ orderNumber: string;
915
+ orderSubTotal: number;
916
+ orderSubTotalDisplay: string;
917
+ orderSubTotalWithOutProductDiscounts: number;
918
+ orderSubTotalWithOutProductDiscountsDisplay: string;
919
+ paymentMethod?: PaymentMethodDto | null;
920
+ paymentOptions?: PaymentOptionsDto | null;
921
+ poNumber: string;
922
+ promotionCode: string;
923
+ quoteRequiredCount: number;
924
+ requestedDeliveryDate: string;
925
+ requestedDeliveryDateDisplay: Date | null;
926
+ requestedPickupDate: string;
927
+ requestedPickupDateDisplay: Date | null;
928
+ requiresApproval: boolean;
929
+ requiresPoNumber: boolean;
930
+ salespersonName: string;
931
+ shipTo?: ShipToModel | null;
932
+ shipToLabel: string;
933
+ shipVia: ShipViaDto | null;
934
+ shippingAndHandling: number;
935
+ shippingAndHandlingDisplay: string;
936
+ showCostCode: boolean;
937
+ showCreditCard: boolean;
938
+ showECheck: boolean;
939
+ showLineNotes: boolean;
940
+ showNewsletterSignup: boolean;
941
+ showPayPal: boolean;
942
+ showPoNumber: boolean;
943
+ showTaxAndShipping: boolean;
944
+ status: string;
945
+ statusDisplay: string;
946
+ taxFailureReason: string;
947
+ totalCountDisplay: number;
948
+ totalQtyOrdered: number;
949
+ totalTax: number;
950
+ totalTaxDisplay: string;
951
+ trackId: string;
952
+ type: string;
953
+ typeDisplay: string;
954
+ unassignCart: boolean;
955
+ userLabel: string;
956
+ userRoles: string;
957
+ vmiLocationId?: string | null;
958
+ warehouses: WarehouseDto[] | null;
959
+ }
960
+ export interface WarehouseDto {
961
+ address1: string;
962
+ address2: string;
963
+ city: string;
964
+ countryId: string | null;
965
+ description: string;
966
+ id: string;
967
+ isDefault: boolean;
968
+ name: string;
969
+ phone: string;
970
+ postalCode: string;
971
+ shipSite: string;
972
+ state: string;
973
+ }
974
+ export interface ShipViaDto {
975
+ description: string;
976
+ id: string;
977
+ isDefault: boolean;
978
+ }
979
+ export interface PaymentOptionsDto {
980
+ adyenPspReference: string;
981
+ canStorePaymentProfile: boolean;
982
+ cardTypes: {
983
+ key: string;
984
+ value: string;
985
+ }[] | null;
986
+ creditCard: CreditCardDto | null;
987
+ eCheck: ECheckDto | null;
988
+ expirationMonths: {
989
+ key: string;
990
+ value: number;
991
+ }[] | null;
992
+ expirationYears: {
993
+ key: number;
994
+ value: number;
995
+ }[] | null;
996
+ isAdyenDropIn: boolean;
997
+ isPayPal: boolean;
998
+ payPalPayerId: string;
999
+ payPalPaymentUrl: string;
1000
+ payPalToken: string;
1001
+ payerId: string;
1002
+ paymentMethods: PaymentMethodDto[] | null;
1003
+ storePaymentProfile: boolean;
1004
+ }
1005
+ export interface ECheckDto {
1006
+ accountHolder: string;
1007
+ accountNumber: string;
1008
+ address1: string;
1009
+ city: string;
1010
+ country: string;
1011
+ countryAbbreviation: string;
1012
+ postalCode: string;
1013
+ routingNumber: string;
1014
+ state: string;
1015
+ stateAbbreviation: string;
1016
+ useBillingAddress: boolean;
1017
+ }
1018
+ export interface CreditCardDto {
1019
+ address1: string;
1020
+ cardHolderName: string;
1021
+ cardNumber: string;
1022
+ cardType: string;
1023
+ city: string;
1024
+ country: string;
1025
+ countryAbbreviation: string;
1026
+ expirationMonth: number;
1027
+ expirationYear: number;
1028
+ postalCode: string;
1029
+ securityCode: string;
1030
+ state: string;
1031
+ stateAbbreviation: string;
1032
+ useBillingAddress: boolean;
1033
+ }
1034
+ export interface PaymentMethodDto {
1035
+ billingAddress: string;
1036
+ cardType: string;
1037
+ description: string;
1038
+ isCreditCard: boolean;
1039
+ isECheck: boolean;
1040
+ isPaymentProfile: boolean;
1041
+ isPaymentProfileExpired: boolean;
1042
+ name: string;
1043
+ tokenScheme: string;
1044
+ }
1045
+ export interface CustomerOrderTaxDto {
1046
+ sortOrder: number;
1047
+ taxAmount: number;
1048
+ taxAmountDisplay: string;
1049
+ taxCode: string;
1050
+ taxDescription: string;
1051
+ taxRate: number;
1052
+ }
1053
+ export interface CreditCardBillingAddressDto {
1054
+ address1: string;
1055
+ address2: string;
1056
+ city: string;
1057
+ countryAbbreviation: string;
1058
+ postalCode: string;
1059
+ stateAbbreviation: string;
1060
+ }
1061
+ export interface CostCodeDto {
1062
+ costCode: string;
1063
+ description: string;
1064
+ }
1065
+ export interface CarrierDto {
1066
+ description: string;
1067
+ id: string | null;
1068
+ shipVias: ShipViaDto[] | null;
1069
+ }
1070
+ export interface SectionOptionDto {
1071
+ optionName: string;
1072
+ sectionName: string;
1073
+ sectionOptionId: string;
1074
+ }
1075
+ export interface BrandModel extends BaseModel {
1076
+ detailPagePath: string;
1077
+ id: string;
1078
+ logoImageAltText: string;
1079
+ logoLargeImagePath: string;
1080
+ logoSmallImagePath: string;
1081
+ name: string;
1082
+ urlSegment: string;
1083
+ }
1084
+ export interface ProductCollectionModel extends BaseModel {
1085
+ attributeTypeFacets: AttributeTypeFacetModel[] | null;
1086
+ brandFacets: FacetModel[] | null;
1087
+ categoryFacets: CategoryFacetModel[] | null;
1088
+ correctedQuery: string;
1089
+ didYouMeanSuggestions: SuggestionModel[] | null;
1090
+ exactMatch: boolean;
1091
+ notAllProductsAllowed: boolean;
1092
+ notAllProductsFound: boolean;
1093
+ originalQuery: string;
1094
+ pagination: PaginationModel | null;
1095
+ priceRange: PriceRangeModel | null;
1096
+ productLineFacets: FacetModel[] | null;
1097
+ products: ProductModel[] | null;
1098
+ searchTermRedirectUrl: string;
1099
+ }
1100
+ export interface ProductLineModel extends BaseModel {
1101
+ id: string;
1102
+ name: string;
1103
+ }
1104
+ export interface ProductModel extends BaseModel {
1105
+ allowZeroPricing: boolean;
1106
+ attributeTypes?: AttributeTypeModel[];
1107
+ badges?: BadgeModel[];
1108
+ brand: BrandModel | null;
1109
+ canAddToCart: boolean;
1110
+ canAddToWishlist: boolean;
1111
+ canConfigure: boolean;
1112
+ canShowPrice: boolean;
1113
+ canShowUnitOfMeasure: boolean;
1114
+ canonicalUrl: string;
1115
+ cantBuy: boolean;
1116
+ childTraitValues?: ChildTraitValueModel[];
1117
+ configurationType: string;
1118
+ content?: ContentModel;
1119
+ customerProductNumber: string;
1120
+ customerUnitOfMeasure: string;
1121
+ defaultChildProductId: string | null;
1122
+ detail?: DetailModel;
1123
+ documents?: DocumentModel[];
1124
+ id: string;
1125
+ imageAltText: string;
1126
+ images?: ImageModel[];
1127
+ isDiscontinued: boolean;
1128
+ isSponsored: boolean;
1129
+ isVariantParent: boolean;
1130
+ largeImagePath: string;
1131
+ manufacturerItem: string;
1132
+ mediumImagePath: string;
1133
+ minimumOrderQty: number;
1134
+ packDescription: string;
1135
+ priceFacet: number | null;
1136
+ productLine: ProductLineModel | null;
1137
+ productNumber: string;
1138
+ productTitle: string;
1139
+ quoteRequired: boolean;
1140
+ salePriceLabel: string;
1141
+ score: number;
1142
+ scoreExplanation?: ScoreExplanationModel;
1143
+ smallImagePath: string;
1144
+ specifications?: SpecificationModel[];
1145
+ trackInventory: boolean;
1146
+ unitListPrice: number;
1147
+ unitListPriceDisplay: string;
1148
+ unitOfMeasures: UnitOfMeasureModel[] | null;
1149
+ urlSegment: string;
1150
+ variantTraits?: VariantTraitModel[];
1151
+ variantTypeId: string | null;
1152
+ warehouses?: WarehouseModel[];
1153
+ }
1154
+ export interface ProductSubscriptionModel extends BaseModel {
1155
+ subscriptionAddToInitialOrder: boolean;
1156
+ subscriptionAllMonths: boolean;
1157
+ subscriptionApril: boolean;
1158
+ subscriptionAugust: boolean;
1159
+ subscriptionCyclePeriod: string;
1160
+ subscriptionDecember: boolean;
1161
+ subscriptionFebruary: boolean;
1162
+ subscriptionFixedPrice: boolean;
1163
+ subscriptionJanuary: boolean;
1164
+ subscriptionJuly: boolean;
1165
+ subscriptionJune: boolean;
1166
+ subscriptionMarch: boolean;
1167
+ subscriptionMay: boolean;
1168
+ subscriptionNovember: boolean;
1169
+ subscriptionOctober: boolean;
1170
+ subscriptionPeriodsPerCycle: number;
1171
+ subscriptionSeptember: boolean;
1172
+ subscriptionShipViaId: string | null;
1173
+ subscriptionTotalCycles: number;
1174
+ }
1175
+ export interface AutocompleteItemModel extends BaseModel {
1176
+ displaySubtitle: JSX.Element;
1177
+ displayTitle: JSX.Element;
1178
+ id: string | null;
1179
+ image: string;
1180
+ subtitle: string;
1181
+ title: string;
1182
+ url: string;
1183
+ }
1184
+ export interface AutocompleteModel extends BaseModel {
1185
+ brands: BrandAutocompleteModel[] | null;
1186
+ categories: AutocompleteItemModel[] | null;
1187
+ content: AutocompleteItemModel[] | null;
1188
+ products: ProductAutocompleteItemModel[] | null;
1189
+ }
1190
+ export interface BrandAutocompleteModel extends BaseModel {
1191
+ displayProductLineName: JSX.Element;
1192
+ displaySubtitle: JSX.Element;
1193
+ displayTitle: JSX.Element;
1194
+ id: string | null;
1195
+ image: string;
1196
+ productLineId: string | null;
1197
+ productLineName: string;
1198
+ subtitle: string;
1199
+ title: string;
1200
+ url: string;
1201
+ }
1202
+ export interface CatalogPageModel extends BaseModel {
1203
+ alternateLanguageUrls: {
1204
+ [key: string]: string;
1205
+ } | null;
1206
+ brandId: string | null;
1207
+ breadCrumbs: BreadCrumbModel[] | null;
1208
+ canonicalPath: string;
1209
+ category: CategoryModel | null;
1210
+ isReplacementProduct: boolean;
1211
+ metaDescription: string;
1212
+ metaKeywords: string;
1213
+ needRedirect: boolean;
1214
+ obsoletePath: boolean;
1215
+ openGraphImage: string;
1216
+ openGraphTitle: string;
1217
+ openGraphUrl: string;
1218
+ primaryImagePath: string;
1219
+ productId: string | null;
1220
+ productLineId: string | null;
1221
+ productName: string;
1222
+ redirectUrl: string;
1223
+ title: string;
1224
+ }
1225
+ export interface CategoryCollectionModel extends BaseModel {
1226
+ categories: CategoryModel[] | null;
1227
+ }
1228
+ export interface ProductAutocompleteItemModel extends BaseModel {
1229
+ brandDetailPagePath: string;
1230
+ brandName: string;
1231
+ displayErpNumber: JSX.Element;
1232
+ displayManufacturerItemNumber: JSX.Element;
1233
+ displayName: JSX.Element;
1234
+ displaySubtitle: JSX.Element;
1235
+ displayTitle: JSX.Element;
1236
+ erpNumber: string;
1237
+ id: string | null;
1238
+ image: string;
1239
+ isNameCustomerOverride: boolean;
1240
+ manufacturerItemNumber: string;
1241
+ name: string;
1242
+ styleParentId: string | null;
1243
+ subtitle: string;
1244
+ title: string;
1245
+ url: string;
1246
+ }
1247
+ export interface CategoryModel extends BaseModel {
1248
+ activateOn: Date;
1249
+ deactivateOn: Date | null;
1250
+ htmlContent?: string;
1251
+ id: string;
1252
+ imageAltText: string;
1253
+ isDynamic: boolean;
1254
+ isFeatured: boolean;
1255
+ largeImagePath: string;
1256
+ metaDescription: string;
1257
+ metaKeywords: string;
1258
+ mobileBannerImageUrl: string;
1259
+ mobilePrimaryText: string;
1260
+ mobileSecondaryText: string;
1261
+ mobileTextColor: string;
1262
+ mobileTextJustification: string;
1263
+ name: string;
1264
+ path: string;
1265
+ shortDescription: string;
1266
+ smallImagePath: string;
1267
+ sortOrder: number;
1268
+ subCategories: CategoryModel[] | null;
1269
+ urlSegment: string;
1270
+ }
1271
+ export interface CrossSellCollectionModel extends BaseModel {
1272
+ products: ProductDto[] | null;
1273
+ }
1274
+ export interface AutocompleteProductCollectionModel extends BaseModel {
1275
+ products: AutocompleteProductModel[] | null;
1276
+ }
1277
+ export interface AutocompleteProductModel extends BaseModel {
1278
+ erpNumber: string;
1279
+ id: string;
1280
+ name: string;
1281
+ productDetailUrl: string;
1282
+ shortDescription: string;
1283
+ smallImagePath: string;
1284
+ }
1285
+ export interface ProductAvailabilityModel extends BaseModel {
1286
+ availability: AvailabilityDto | null;
1287
+ }
1288
+ export interface ProductPriceModel extends BaseModel {
1289
+ actualBreakPrices: BreakPriceDto[] | null;
1290
+ actualPrice: number;
1291
+ actualPriceDisplay: string;
1292
+ additionalResults: {
1293
+ [key: string]: string;
1294
+ } | null;
1295
+ extendedActualPrice: number;
1296
+ extendedActualPriceDisplay: string;
1297
+ extendedRegularPrice: number;
1298
+ extendedRegularPriceDisplay: string;
1299
+ extendedUnitListPrice: number;
1300
+ extendedUnitListPriceDisplay: string;
1301
+ extendedUnitNetPrice: number;
1302
+ extendedUnitNetPriceDisplay: string;
1303
+ extendedUnitRegularPrice: number;
1304
+ extendedUnitRegularPriceDisplay: string;
1305
+ isOnSale: boolean;
1306
+ productId: string;
1307
+ quoteRequired: boolean;
1308
+ regularBreakPrices: BreakPriceDto[] | null;
1309
+ regularPrice: number;
1310
+ regularPriceDisplay: string;
1311
+ requiresRealTimePrice: boolean;
1312
+ unitCost: number;
1313
+ unitCostDisplay: string;
1314
+ unitListBreakPrices: BreakPriceDto[] | null;
1315
+ unitListPrice: number;
1316
+ unitListPriceDisplay: string;
1317
+ unitNetPrice: number;
1318
+ unitNetPriceDisplay: string;
1319
+ unitOfMeasure: string;
1320
+ unitRegularBreakPrices: BreakPriceDto[] | null;
1321
+ unitRegularPrice: number;
1322
+ unitRegularPriceDisplay: string;
1323
+ vatAmount: number;
1324
+ vatAmountDisplay: string;
1325
+ vatRate: number;
1326
+ }
1327
+ export interface ProductSettingsModel extends BaseModel {
1328
+ allowBackOrder: boolean;
1329
+ allowBackOrderForDelivery: boolean;
1330
+ allowBackOrderForPickup: boolean;
1331
+ alternateUnitsOfMeasure: boolean;
1332
+ attributesTabSortOrder: string;
1333
+ canAddToCart: boolean;
1334
+ canSeePrices: boolean;
1335
+ canSeeProducts: boolean;
1336
+ canShowPriceFilters: boolean;
1337
+ catalogUrlPath: string;
1338
+ defaultViewType: string;
1339
+ displayAttributesInTabs: boolean;
1340
+ displayDocumentsInTabs: boolean;
1341
+ displayFacetsForStockedItems: boolean;
1342
+ displayInventoryPerWarehouse: boolean;
1343
+ displayInventoryPerWarehouseOnlyOnProductDetail: boolean;
1344
+ documentsTabSortOrder: string;
1345
+ enablePeeriusRequestsConsoleLogs: boolean;
1346
+ enableProductComparisons: boolean;
1347
+ enableProductRecommendations: boolean;
1348
+ enableVat: boolean;
1349
+ imageProvider: string;
1350
+ inventoryIncludedWithPricing: boolean;
1351
+ peeriusApiVersion: string;
1352
+ peeriusSiteName: string;
1353
+ peeriusTrackingUrl: string;
1354
+ pricingService: string;
1355
+ realTimeInventory: boolean;
1356
+ realTimePricing: boolean;
1357
+ showAddToCartConfirmationDialog: boolean;
1358
+ showInventoryAvailability: boolean;
1359
+ showSavingsAmount: boolean;
1360
+ showSavingsPercent: boolean;
1361
+ storefrontAccess: string;
1362
+ thirdPartyReviews: string;
1363
+ vatPriceDisplay: string;
1364
+ }
1365
+ export interface ProductSubscriptionModel extends BaseModel {
1366
+ productSubscription: ProductSubscriptionDto | null;
1367
+ }
1368
+ export interface VmiNoteCollectionModel extends BaseModel {
1369
+ pagination: PaginationModel | null;
1370
+ vmiNotes: VmiNoteModel[] | null;
1371
+ }
1372
+ export interface VmiCountCollectionModel extends BaseModel {
1373
+ binCounts: VmiCountModel[] | null;
1374
+ pagination: PaginationModel | null;
1375
+ }
1376
+ export interface VmiBinCollectionModel extends BaseModel {
1377
+ pagination: PaginationModel | null;
1378
+ vmiBins: VmiBinModel[] | null;
1379
+ }
1380
+ export interface VmiBinCountModel extends BaseModel {
1381
+ count: number;
1382
+ }
1383
+ export interface VmiNoteModel extends BaseModel {
1384
+ id: string;
1385
+ includeOnOrder: boolean;
1386
+ note: string;
1387
+ vmiBinId: string;
1388
+ }
1389
+ export interface VmiCountModel extends BaseModel {
1390
+ count: number;
1391
+ createdBy: string;
1392
+ createdOn: Date;
1393
+ id: string;
1394
+ productId: string;
1395
+ vmiBinId: string;
1396
+ }
1397
+ export interface VmiBinModel extends BaseModel {
1398
+ binNumber: string;
1399
+ id: string;
1400
+ lastCountDate: Date | null;
1401
+ lastCountQty: number;
1402
+ lastCountUserName: string;
1403
+ lastOrderDate: Date | null;
1404
+ lastOrderErpOrderNumber: string;
1405
+ lastOrderWebOrderNumber: string;
1406
+ maximumQty: number;
1407
+ minimumQty: number;
1408
+ previousCountDate: Date | null;
1409
+ previousCountQty: number;
1410
+ previousCountUserName: string;
1411
+ product: ProductDto;
1412
+ productId: string;
1413
+ vmiLocationId: string;
1414
+ }
1415
+ export interface VmiLocationCollectionModel extends BaseModel {
1416
+ pagination: PaginationModel | null;
1417
+ vmiLocations: VmiLocationModel[] | null;
1418
+ }
1419
+ export interface VmiLocationModel extends BaseModel {
1420
+ billToId: string;
1421
+ customer: BaseAddressModel;
1422
+ customerLabel: string;
1423
+ id: string;
1424
+ isPrimaryLocation: boolean;
1425
+ name: string;
1426
+ shipToId: string | null;
1427
+ useBins: boolean;
1428
+ }
1429
+ export interface WarehouseCollectionModel extends BaseModel {
1430
+ defaultLatitude: number;
1431
+ defaultLongitude: number;
1432
+ defaultRadius: number;
1433
+ distanceUnitOfMeasure: string;
1434
+ pagination: PaginationModel | null;
1435
+ warehouses: WarehouseModel[] | null;
1436
+ }
1437
+ export interface BreadCrumbModel {
1438
+ categoryId: string;
1439
+ text: string;
1440
+ url: string;
1441
+ }
1442
+ export interface WarehouseModel {
1443
+ description: string;
1444
+ id: string;
1445
+ name: string;
1446
+ qtyAvailable: number;
1447
+ }
1448
+ export declare enum VariantDisplayTypeValues {
1449
+ Button = "Button",
1450
+ Dropdown = "Dropdown",
1451
+ SwatchDropdown = "SwatchDropdown",
1452
+ SwatchGrid = "SwatchGrid",
1453
+ SwatchList = "SwatchList"
1454
+ }
1455
+ export interface VariantTraitModel {
1456
+ displayTextWithSwatch: boolean;
1457
+ displayType: VariantDisplayTypeValues;
1458
+ id: string;
1459
+ name: string;
1460
+ nameDisplay: string;
1461
+ numberOfSwatchesVisible: number;
1462
+ sortOrder: number;
1463
+ traitValues: TraitValueModel[] | null;
1464
+ unselectedValue: string;
1465
+ }
1466
+ export interface TraitValueModel {
1467
+ id: string;
1468
+ isDefault: boolean;
1469
+ isDisabled?: boolean;
1470
+ sortOrder: number;
1471
+ swatchColorValue: string;
1472
+ swatchImageValue: string;
1473
+ swatchType: string;
1474
+ value: string;
1475
+ valueDisplay: string;
1476
+ }
1477
+ export interface UnitOfMeasureModel {
1478
+ description: string;
1479
+ id: string;
1480
+ isDefault: boolean;
1481
+ qtyPerBaseUnitOfMeasure: number;
1482
+ roundingRule: string;
1483
+ unitOfMeasure: string;
1484
+ unitOfMeasureDisplay: string;
1485
+ }
1486
+ export interface SpecificationModel {
1487
+ description: string;
1488
+ htmlContent: string;
1489
+ id: string;
1490
+ name: string;
1491
+ nameDisplay: string;
1492
+ sortOrder: number;
1493
+ value: string;
1494
+ }
1495
+ export interface ScoreExplanationModel {
1496
+ aggregateFieldScores: FieldScoreModel[] | null;
1497
+ detailedFieldScores: FieldScoreDetailedModel[] | null;
1498
+ totalBoost: any;
1499
+ }
1500
+ export interface FieldScoreDetailedModel {
1501
+ boost: any;
1502
+ inverseDocumentFrequency: any;
1503
+ matchText: string;
1504
+ name: string;
1505
+ score: any;
1506
+ scoreUsed: boolean;
1507
+ termFrequencyNormalized: any;
1508
+ }
1509
+ export interface FieldScoreModel {
1510
+ name: string;
1511
+ score: any;
1512
+ }
1513
+ export interface ImageModel {
1514
+ id: string;
1515
+ imageAltText: string;
1516
+ imageType: string;
1517
+ largeImagePath: string;
1518
+ mediumImagePath: string;
1519
+ name: string;
1520
+ smallImagePath: string;
1521
+ sortOrder: number;
1522
+ }
1523
+ export interface DocumentModel {
1524
+ description: string;
1525
+ documentType: string;
1526
+ filePath: string;
1527
+ id: string;
1528
+ name: string;
1529
+ }
1530
+ export interface DetailModel {
1531
+ allowAnyGiftCardAmount: boolean;
1532
+ canBackOrder: boolean;
1533
+ configuration: ConfigurationModel | null;
1534
+ hasMsds: boolean;
1535
+ isGiftCard: boolean;
1536
+ isHazardousGood: boolean;
1537
+ isSpecialOrder: boolean;
1538
+ isSubscription: boolean;
1539
+ modelNumber: string;
1540
+ multipleSaleQty: number;
1541
+ name: string;
1542
+ priceCode: string;
1543
+ productCode: string;
1544
+ replacementProductId: string | null;
1545
+ roundingRule: string;
1546
+ shippingClassification: string;
1547
+ shippingHeight: number;
1548
+ shippingLength: number;
1549
+ shippingWeight: number;
1550
+ shippingWidth: number;
1551
+ sku: string;
1552
+ sortOrder: number;
1553
+ subscription: ProductSubscriptionModel | null;
1554
+ taxCategory: string;
1555
+ taxCode1: string;
1556
+ taxCode2: string;
1557
+ unspsc: string;
1558
+ upcCode: string;
1559
+ vatCodeId: string | null;
1560
+ }
1561
+ export interface ConfigurationModel {
1562
+ configSections: ConfigSectionModel[] | null;
1563
+ hasDefaults: boolean;
1564
+ isKit: boolean;
1565
+ }
1566
+ export interface ConfigSectionModel {
1567
+ id: string;
1568
+ label: string;
1569
+ sectionName: string;
1570
+ sectionOptions: SectionOptionModel[] | null;
1571
+ sortOrder: number;
1572
+ }
1573
+ export interface SectionOptionModel {
1574
+ cantBuy: boolean;
1575
+ description: string;
1576
+ id: string;
1577
+ name: string;
1578
+ price: number;
1579
+ productId: string | null;
1580
+ quantity: number;
1581
+ selected: boolean;
1582
+ sortOrder: number;
1583
+ }
1584
+ export interface ContentModel {
1585
+ htmlContent: string;
1586
+ metaDescription: string;
1587
+ metaKeywords: string;
1588
+ openGraphImage: string;
1589
+ openGraphTitle: string;
1590
+ openGraphUrl: string;
1591
+ pageTitle: string;
1592
+ }
1593
+ export interface ChildTraitValueModel {
1594
+ id: string;
1595
+ styleTraitId: string;
1596
+ value: string;
1597
+ valueDisplay: string;
1598
+ }
1599
+ export interface BadgeModel {
1600
+ badgeColorHexCode: string;
1601
+ badgeStyle: BadgeStyleValues;
1602
+ badgeType: BadgeTypeValues;
1603
+ detailWidgetBadgeSize: string;
1604
+ displayOnBadgeWidget: boolean;
1605
+ displayOnProductImages: boolean;
1606
+ displayText: string;
1607
+ id: string;
1608
+ imageAltText: string;
1609
+ largeImageBadgePath: string;
1610
+ largeImagePlacement: BadgeImagePlacementValues;
1611
+ largeImageTextSize: string;
1612
+ name: string;
1613
+ otherImageBadgePath: string;
1614
+ otherImagePlacement: BadgeImagePlacementValues;
1615
+ otherImageTextSize: string;
1616
+ sortOrder: number;
1617
+ tagName: string;
1618
+ textColorHexCode: string;
1619
+ }
1620
+ export declare enum BadgeTypeValues {
1621
+ Image = "Image",
1622
+ Text = "Text"
1623
+ }
1624
+ export declare enum BadgeImagePlacementValues {
1625
+ BottomCenter = "Bottom Center",
1626
+ BottomLeft = "Bottom Left",
1627
+ BottomRight = "Bottom Right",
1628
+ None = "None",
1629
+ TopCenter = "Top Center",
1630
+ TopLeft = "Top Left",
1631
+ TopRight = "Top Right"
1632
+ }
1633
+ export declare enum BadgeStyleValues {
1634
+ Rectangle = "Rectangle",
1635
+ Round = "Round"
1636
+ }
1637
+ export interface AttributeTypeModel {
1638
+ attributeValues: AttributeValueModel[] | null;
1639
+ id: string;
1640
+ includeOnProduct: boolean;
1641
+ isComparable: boolean;
1642
+ isFilter: boolean;
1643
+ isSearchable: boolean;
1644
+ label: string;
1645
+ name: string;
1646
+ sortOrder: number;
1647
+ }
1648
+ export interface AttributeValueModel {
1649
+ id: string;
1650
+ sortOrder: number;
1651
+ value: string;
1652
+ valueDisplay: string;
1653
+ }
1654
+ export interface PriceRangeModel {
1655
+ count: number;
1656
+ maximumPrice: number;
1657
+ minimumPrice: number;
1658
+ priceFacets: PriceFacetModel[] | null;
1659
+ }
1660
+ export interface PriceFacetModel {
1661
+ count: number;
1662
+ maximumPrice: number;
1663
+ minimumPrice: number;
1664
+ selected: boolean;
1665
+ }
1666
+ export interface SuggestionModel {
1667
+ highlightedSuggestion: string;
1668
+ score: number;
1669
+ suggestion: string;
1670
+ }
1671
+ export interface CategoryFacetModel {
1672
+ categoryId: string;
1673
+ count: number;
1674
+ selected: boolean;
1675
+ shortDescription: string;
1676
+ subCategoryFacets: CategoryFacetModel[] | null;
1677
+ }
1678
+ export interface FacetModel {
1679
+ count: number;
1680
+ id: string;
1681
+ name: string;
1682
+ selected: boolean;
1683
+ }
1684
+ export interface AttributeTypeFacetModel {
1685
+ attributeTypeId: string;
1686
+ attributeValueFacets: AttributeValueFacetModel[] | null;
1687
+ name: string;
1688
+ nameDisplay: string;
1689
+ sortOrder: number;
1690
+ }
1691
+ export interface AttributeValueFacetModel {
1692
+ attributeValueId: string;
1693
+ count: number;
1694
+ selected: boolean;
1695
+ sortOrder: number;
1696
+ value: string;
1697
+ valueDisplay: string;
1698
+ }
1699
+ export interface BaseAddressModel extends BaseModel {
1700
+ address1: string;
1701
+ address2: string;
1702
+ address3: string;
1703
+ address4: string;
1704
+ attention: string;
1705
+ city: string;
1706
+ companyName: string;
1707
+ contactFullName: string;
1708
+ country: CountryModel | null;
1709
+ customerName: string;
1710
+ customerNumber: string;
1711
+ customerSequence: string;
1712
+ email: string;
1713
+ fax: string;
1714
+ firstName: string;
1715
+ fullAddress: string;
1716
+ id: string;
1717
+ lastName: string;
1718
+ phone: string;
1719
+ postalCode: string;
1720
+ state: StateModel | null;
1721
+ }
1722
+ export interface BillToCollectionModel extends BaseModel {
1723
+ billTos: BillToModel[] | null;
1724
+ pagination: PaginationModel | null;
1725
+ }
1726
+ export interface CustomerSettingsModel extends BaseModel {
1727
+ allowBillToAddressEdit: boolean;
1728
+ allowCreateNewShipToAddress: boolean;
1729
+ allowOneTimeAddresses: boolean;
1730
+ allowShipToAddressEdit: boolean;
1731
+ billToCompanyRequired: boolean;
1732
+ billToFirstNameRequired: boolean;
1733
+ billToLastNameRequired: boolean;
1734
+ billToStateRequired: boolean;
1735
+ budgetsFromOnlineOnly: boolean;
1736
+ displayAccountsReceivableBalances: boolean;
1737
+ shipToCompanyRequired: boolean;
1738
+ shipToFirstNameRequired: boolean;
1739
+ shipToLastNameRequired: boolean;
1740
+ shipToStateRequired: boolean;
1741
+ }
1742
+ export interface ShipToCollectionModel extends BaseModel {
1743
+ pagination: PaginationModel | null;
1744
+ shipTos: ShipToModel[] | null;
1745
+ }
1746
+ export interface DashboardPanelCollectionModel extends BaseModel {
1747
+ dashboardPanels: DashboardPanelModel[] | null;
1748
+ }
1749
+ export interface DashboardPanelModel {
1750
+ count: number;
1751
+ isPanel: boolean;
1752
+ isQuickLink: boolean;
1753
+ openInNewTab: boolean;
1754
+ order: number;
1755
+ panelType: string;
1756
+ quickLinkOrder: number;
1757
+ quickLinkText: string;
1758
+ text: string;
1759
+ url: string;
1760
+ }
1761
+ export interface DealerCollectionModel extends BaseModel {
1762
+ dealers: DealerModel[] | null;
1763
+ defaultLatitude: number;
1764
+ defaultLongitude: number;
1765
+ defaultRadius: number;
1766
+ distanceUnitOfMeasure: string;
1767
+ formattedAddress: string;
1768
+ pagination: PaginationModel | null;
1769
+ startDealerNumber: number;
1770
+ }
1771
+ export interface DealerModel extends BaseModel {
1772
+ address1: string;
1773
+ address2: string;
1774
+ city: string;
1775
+ countryId: string | null;
1776
+ distance: number;
1777
+ distanceUnitOfMeasure: string;
1778
+ htmlContent: string;
1779
+ id: string;
1780
+ latitude: number;
1781
+ longitude: number;
1782
+ name: string;
1783
+ phone: string;
1784
+ postalCode: string;
1785
+ state: string;
1786
+ webSiteUrl: string;
1787
+ }
1788
+ export interface ShareEntityModel extends BaseModel {
1789
+ emailFrom: string;
1790
+ emailTo: string;
1791
+ entityId: string;
1792
+ entityName: string;
1793
+ message: string;
1794
+ subject: string;
1795
+ }
1796
+ export interface ContactUsModel extends BaseModel {
1797
+ emailAddress: string;
1798
+ emailTo: string;
1799
+ firstName: string;
1800
+ lastName: string;
1801
+ message: string;
1802
+ phoneNumber: string;
1803
+ topic: string;
1804
+ }
1805
+ export interface TellAFriendModel extends BaseModel {
1806
+ altText: string;
1807
+ friendsEmailAddress: string;
1808
+ friendsName: string;
1809
+ productId: string;
1810
+ productImage: string;
1811
+ productShortDescription: string;
1812
+ productUrl: string;
1813
+ yourEmailAddress: string;
1814
+ yourMessage: string;
1815
+ yourName: string;
1816
+ }
1817
+ export interface InvoiceCollectionModel extends BaseModel {
1818
+ invoices: InvoiceModel[] | null;
1819
+ pagination: PaginationModel | null;
1820
+ showErpOrderNumber: boolean;
1821
+ }
1822
+ export interface InvoiceModel extends BaseModel {
1823
+ billToCity: string;
1824
+ billToPostalCode: string;
1825
+ billToState: string;
1826
+ btAddress1: string;
1827
+ btAddress2: string;
1828
+ btCompanyName: string;
1829
+ btCountry: string;
1830
+ currencyCode: string;
1831
+ currentBalance: number;
1832
+ currentBalanceDisplay: string;
1833
+ customerNumber: string;
1834
+ customerPO: string;
1835
+ customerSequence: string;
1836
+ customerVatNumber: string;
1837
+ discountAmount: number;
1838
+ discountAmountDisplay: string;
1839
+ dueDate: Date;
1840
+ id: string;
1841
+ invoiceDate: Date;
1842
+ invoiceHistoryTaxes: InvoiceHistoryTaxDto[] | null;
1843
+ invoiceLines: InvoiceLineModel[] | null;
1844
+ invoiceNumber: string;
1845
+ invoiceTotal: number;
1846
+ invoiceTotalDisplay: string;
1847
+ invoiceType: string;
1848
+ isOpen: boolean;
1849
+ notes: string;
1850
+ orderTotalDisplay: string;
1851
+ otherCharges: number;
1852
+ otherChargesDisplay: string;
1853
+ productTotal: number;
1854
+ productTotalDisplay: string;
1855
+ salesperson: string;
1856
+ shipCode: string;
1857
+ shipToCity: string;
1858
+ shipToPostalCode: string;
1859
+ shipToState: string;
1860
+ shipViaDescription: string;
1861
+ shippingAndHandling: number;
1862
+ shippingAndHandlingDisplay: string;
1863
+ stAddress1: string;
1864
+ stAddress2: string;
1865
+ stCompanyName: string;
1866
+ stCountry: string;
1867
+ status: string;
1868
+ taxAmount: number;
1869
+ taxAmountDisplay: string;
1870
+ terms: string;
1871
+ }
1872
+ export interface InvoiceLineModel extends BaseModel {
1873
+ altText: string;
1874
+ brand: BrandDto | null;
1875
+ customerName: string;
1876
+ customerProductNumber: string;
1877
+ description: string;
1878
+ discountAmount: number;
1879
+ discountAmountDisplay: string;
1880
+ discountPercent: number;
1881
+ erpOrderNumber: string;
1882
+ id: string;
1883
+ lineNumber: string;
1884
+ linePOReference: string;
1885
+ lineTotal: number;
1886
+ lineTotalDisplay: string;
1887
+ lineType: string;
1888
+ manufacturerItem: string;
1889
+ mediumImagePath: string;
1890
+ netPriceWithVat: number;
1891
+ netPriceWithVatDisplay: string;
1892
+ notes: string;
1893
+ productERPNumber: string;
1894
+ productName: string;
1895
+ productUri: string;
1896
+ qtyInvoiced: number;
1897
+ releaseNumber: number;
1898
+ shipmentNumber: string;
1899
+ shortDescription: string;
1900
+ taxAmount: number;
1901
+ taxRate: number;
1902
+ unitOfMeasure: string;
1903
+ unitPrice: number;
1904
+ unitPriceDisplay: string;
1905
+ unitPriceWithVat: number;
1906
+ unitPriceWithVatDisplay: string;
1907
+ warehouse: string;
1908
+ }
1909
+ export interface InvoiceSettingsModel extends BaseModel {
1910
+ lookBackDays: number;
1911
+ showInvoices: boolean;
1912
+ }
1913
+ export interface InvoiceHistoryTaxDto {
1914
+ sortOrder: number;
1915
+ taxAmount: number;
1916
+ taxAmountDisplay: string;
1917
+ taxCode: string;
1918
+ taxDescription: string;
1919
+ taxRate: number;
1920
+ }
1921
+ export interface JobQuoteLineModel extends BaseModel {
1922
+ allowZeroPricing: boolean;
1923
+ altText: string;
1924
+ availability: AvailabilityDto | null;
1925
+ baseUnitOfMeasure: string;
1926
+ baseUnitOfMeasureDisplay: string;
1927
+ brand: BrandDto | null;
1928
+ breakPrices: BreakPriceDto[] | null;
1929
+ canAddToCart: boolean;
1930
+ canAddToWishlist: boolean;
1931
+ canBackOrder: boolean;
1932
+ cantBuy: boolean;
1933
+ costCode: string;
1934
+ customerName: string;
1935
+ erpNumber: string;
1936
+ hasInsufficientInventory: boolean;
1937
+ id: string;
1938
+ isActive: boolean;
1939
+ isConfigured: boolean;
1940
+ isDiscontinued: boolean;
1941
+ isDiscounted: boolean;
1942
+ isFixedConfiguration: boolean;
1943
+ isPromotionItem: boolean;
1944
+ isQtyAdjusted: boolean;
1945
+ isRestricted: boolean;
1946
+ isSubscription: boolean;
1947
+ line: number | null;
1948
+ manufacturerItem: string;
1949
+ maxQty: number;
1950
+ notes: string;
1951
+ pricing: ProductPriceDto | null;
1952
+ pricingRfq: PricingRfqModel | null;
1953
+ productId: string | null;
1954
+ productName: string;
1955
+ productSubscription: ProductSubscriptionDto | null;
1956
+ productUri: string;
1957
+ qtyLeft: number;
1958
+ qtyOnHand: number;
1959
+ qtyOrdered: number | null;
1960
+ qtyPerBaseUnitOfMeasure: number;
1961
+ qtyRequested: number;
1962
+ qtySold: number;
1963
+ quoteRequired: boolean;
1964
+ requisitionId: string | null;
1965
+ salePriceLabel: string;
1966
+ sectionOptions: SectionOptionDto[] | null;
1967
+ shortDescription: string;
1968
+ smallImagePath: string;
1969
+ trackInventory: boolean;
1970
+ unitOfMeasure: string;
1971
+ unitOfMeasureDescription: string;
1972
+ unitOfMeasureDisplay: string;
1973
+ }
1974
+ export interface JobQuoteModel extends BaseModel {
1975
+ additionalEmails: string;
1976
+ alsoPurchasedProducts: ProductDto[] | null;
1977
+ approverReason: string;
1978
+ billTo?: BillToModel | null;
1979
+ canBypassCheckoutAddress: boolean;
1980
+ canCheckOut: boolean;
1981
+ canEditCostCode: boolean;
1982
+ canModifyOrder: boolean;
1983
+ canRequestQuote: boolean;
1984
+ canRequisition: boolean;
1985
+ canSaveOrder: boolean;
1986
+ carrier: CarrierDto | null;
1987
+ carriers?: CarrierDto[] | null;
1988
+ cartLines?: CartLineModel[] | null;
1989
+ cartLinesUri: string;
1990
+ cartNotPriced: boolean;
1991
+ costCodeLabel: string;
1992
+ costCodes: CostCodeDto[] | null;
1993
+ creditCardBillingAddress: CreditCardBillingAddressDto | null;
1994
+ currencySymbol: string;
1995
+ customerName: string;
1996
+ customerOrderTaxes: CustomerOrderTaxDto[] | null;
1997
+ customerVatNumber: string;
1998
+ defaultWarehouse: WarehouseModel | null;
1999
+ displayContinueShoppingLink: boolean;
2000
+ erpOrderNumber: string;
2001
+ expirationDate: Date;
2002
+ failedToGetRealTimeInventory: boolean;
2003
+ fulfillmentMethod: string;
2004
+ hasApprover: boolean;
2005
+ hasInsufficientInventory: boolean;
2006
+ id: string;
2007
+ initiatedByUserName: string;
2008
+ isAuthenticated: boolean;
2009
+ isAwaitingApproval: boolean;
2010
+ isEditable: boolean;
2011
+ isGuestOrder: boolean;
2012
+ isSalesperson: boolean;
2013
+ isSubscribed: boolean;
2014
+ jobName: string;
2015
+ jobQuoteId: string;
2016
+ jobQuoteLineCollection: JobQuoteLineModel[] | null;
2017
+ lineCount: number;
2018
+ messages: string[] | null;
2019
+ notes: string;
2020
+ orderDate: Date | null;
2021
+ orderGrandTotal: number;
2022
+ orderGrandTotalDisplay: string;
2023
+ orderNumber: string;
2024
+ orderSubTotal: number;
2025
+ orderSubTotalDisplay: string;
2026
+ orderSubTotalWithOutProductDiscounts: number;
2027
+ orderSubTotalWithOutProductDiscountsDisplay: string;
2028
+ orderTotal: number;
2029
+ orderTotalDisplay: string;
2030
+ paymentMethod?: PaymentMethodDto | null;
2031
+ paymentOptions?: PaymentOptionsDto | null;
2032
+ poNumber: string;
2033
+ promotionCode: string;
2034
+ quoteRequiredCount: number;
2035
+ requestedDeliveryDate: string;
2036
+ requestedDeliveryDateDisplay: Date | null;
2037
+ requestedPickupDate: string;
2038
+ requestedPickupDateDisplay: Date | null;
2039
+ requiresApproval: boolean;
2040
+ requiresPoNumber: boolean;
2041
+ salespersonName: string;
2042
+ shipTo?: ShipToModel | null;
2043
+ shipToFullAddress: string;
2044
+ shipToLabel: string;
2045
+ shipVia: ShipViaDto | null;
2046
+ shippingAndHandling: number;
2047
+ shippingAndHandlingDisplay: string;
2048
+ showCostCode: boolean;
2049
+ showCreditCard: boolean;
2050
+ showECheck: boolean;
2051
+ showLineNotes: boolean;
2052
+ showNewsletterSignup: boolean;
2053
+ showPayPal: boolean;
2054
+ showPoNumber: boolean;
2055
+ showTaxAndShipping: boolean;
2056
+ status: string;
2057
+ statusDisplay: string;
2058
+ taxFailureReason: string;
2059
+ totalCountDisplay: number;
2060
+ totalQtyOrdered: number;
2061
+ totalTax: number;
2062
+ totalTaxDisplay: string;
2063
+ trackId: string;
2064
+ type: string;
2065
+ typeDisplay: string;
2066
+ unassignCart: boolean;
2067
+ userLabel: string;
2068
+ userRoles: string;
2069
+ warehouses: WarehouseDto[] | null;
2070
+ }
2071
+ export interface JobQuoteCollectionModel extends BaseModel {
2072
+ jobQuotes: JobQuoteModel[] | null;
2073
+ pagination: PaginationModel | null;
2074
+ }
2075
+ export interface PricingRfqModel extends BaseModel {
2076
+ calculationMethods: CalculationMethod[] | null;
2077
+ customerPrice: number;
2078
+ customerPriceDisplay: string;
2079
+ listPrice: number;
2080
+ listPriceDisplay: string;
2081
+ maxDiscountPct: number;
2082
+ minMarginAllowed: number;
2083
+ minimumPriceAllowed: number;
2084
+ minimumPriceAllowedDisplay: string;
2085
+ priceBreaks: BreakPriceRfqModel[] | null;
2086
+ showCustomerPrice: boolean;
2087
+ showListPrice: boolean;
2088
+ showUnitCost: boolean;
2089
+ unitCost: number;
2090
+ unitCostDisplay: string;
2091
+ validationMessages: {
2092
+ key: string;
2093
+ value: string;
2094
+ }[] | null;
2095
+ }
2096
+ export interface BreakPriceRfqModel {
2097
+ calculationMethod: string;
2098
+ endQty: number;
2099
+ endQtyDisplay: string;
2100
+ percent: number | null;
2101
+ price: number;
2102
+ priceDispaly: string;
2103
+ startQty: number;
2104
+ startQtyDisplay: string;
2105
+ }
2106
+ export interface CalculationMethod {
2107
+ displayName: string;
2108
+ maximumDiscount: string;
2109
+ minimumMargin: string;
2110
+ name: string;
2111
+ value: string;
2112
+ }
2113
+ export interface MessageCollectionModel extends BaseModel {
2114
+ messages: MessageModel[] | null;
2115
+ }
2116
+ export interface MessageModel extends BaseModel {
2117
+ body: string;
2118
+ dateToDisplay: Date;
2119
+ displayName: string;
2120
+ id: string;
2121
+ isRead: boolean;
2122
+ subject: string;
2123
+ }
2124
+ export interface MobileAppSettingsModel extends BaseModel {
2125
+ checkoutUrl: string;
2126
+ hasCheckout: boolean;
2127
+ overrideCheckoutNavigation: boolean;
2128
+ startingCategoryForBrowsing: string;
2129
+ }
2130
+ export interface MobileContentModel extends BaseModel {
2131
+ page: MobilePageDto | null;
2132
+ widgets: MobileWidgetDto[] | null;
2133
+ }
2134
+ export interface MobileWidgetDto {
2135
+ childWidgets: MobileWidgetDto[] | null;
2136
+ class: string;
2137
+ contentKey: number;
2138
+ currentContentItemFields: {
2139
+ [key: string]: any;
2140
+ } | null;
2141
+ }
2142
+ export interface MobilePageDto {
2143
+ currentContentItemFields: {
2144
+ [key: string]: any;
2145
+ } | null;
2146
+ }
2147
+ export interface OrderCollectionModel extends BaseModel {
2148
+ orders: OrderModel[] | null;
2149
+ pagination: PaginationModel | null;
2150
+ showErpOrderNumber: boolean;
2151
+ }
2152
+ export interface OrderPromotionModel extends BaseModel {
2153
+ amount: number | null;
2154
+ amountDisplay: string;
2155
+ id: string;
2156
+ name: string;
2157
+ orderHistoryLineId: string | null;
2158
+ promotionResultType: string;
2159
+ }
2160
+ export interface OrderModel extends BaseModel {
2161
+ billToCity: string;
2162
+ billToPostalCode: string;
2163
+ billToState: string;
2164
+ btAddress1: string;
2165
+ btAddress2: string;
2166
+ btAddress3: string;
2167
+ btAddress4: string;
2168
+ btCompanyName: string;
2169
+ btCountry: string;
2170
+ canAddAllToCart: boolean;
2171
+ canAddToCart: boolean;
2172
+ currencyCode: string;
2173
+ currencySymbol: string;
2174
+ customerNumber: string;
2175
+ customerPO: string;
2176
+ customerSequence: string;
2177
+ customerVatNumber: string;
2178
+ discountAmount: number;
2179
+ discountAmountDisplay: string;
2180
+ erpOrderNumber: string;
2181
+ fulfillmentMethod: string;
2182
+ handlingCharges: number;
2183
+ handlingChargesDisplay: string;
2184
+ id: string;
2185
+ modifyDate: Date;
2186
+ notes: string;
2187
+ orderDate: Date;
2188
+ orderDiscountAmount: number;
2189
+ orderDiscountAmountDisplay: string;
2190
+ orderGrandTotalDisplay: string;
2191
+ orderHistoryTaxes: OrderHistoryTaxDto[] | null;
2192
+ orderLines?: OrderLineModel[] | null;
2193
+ orderPromotions: OrderPromotionModel[] | null;
2194
+ orderSubTotal: number;
2195
+ orderSubTotalDisplay: string;
2196
+ orderTotal: number;
2197
+ orderTotalDisplay: string;
2198
+ otherCharges: number;
2199
+ otherChargesDisplay: string;
2200
+ productDiscountAmount: number;
2201
+ productDiscountAmountDisplay: string;
2202
+ productTotal: number;
2203
+ productTotalDisplay: string;
2204
+ requestedDeliveryDateDisplay: Date | null;
2205
+ returnReasons: string[] | null;
2206
+ salesperson: string;
2207
+ shipCode: string;
2208
+ shipToCity: string;
2209
+ shipToPostalCode: string;
2210
+ shipToState: string;
2211
+ shipViaDescription?: string;
2212
+ shipmentPackages: ShipmentPackageDto[] | null;
2213
+ shippingAndHandling: number;
2214
+ shippingAndHandlingDisplay: string;
2215
+ shippingCharges: number;
2216
+ shippingChargesDisplay: string;
2217
+ showTaxAndShipping: boolean;
2218
+ stAddress1: string;
2219
+ stAddress2: string;
2220
+ stAddress3: string;
2221
+ stAddress4: string;
2222
+ stCompanyName: string;
2223
+ stCountry: string;
2224
+ status: string;
2225
+ statusDisplay: string;
2226
+ taxAmount: number;
2227
+ taxAmountDisplay: string;
2228
+ terms: string;
2229
+ totalTaxDisplay: string;
2230
+ vmiLocationId: string;
2231
+ vmiLocationName: string;
2232
+ webOrderNumber: string;
2233
+ }
2234
+ export interface OrderLineModel extends BaseModel {
2235
+ altText: string;
2236
+ availability: AvailabilityDto | null;
2237
+ brand: BrandDto | null;
2238
+ canAddToCart: boolean;
2239
+ canAddToWishlist: boolean;
2240
+ costCode: string;
2241
+ customerName: string;
2242
+ customerNumber: string;
2243
+ customerProductNumber: string;
2244
+ customerSequence: string;
2245
+ description: string;
2246
+ discountAmount: number;
2247
+ discountAmountDisplay: string;
2248
+ discountPercent: number;
2249
+ extendedUnitNetPrice: number;
2250
+ extendedUnitNetPriceDisplay: string;
2251
+ id: string;
2252
+ inventoryQtyOrdered: number;
2253
+ inventoryQtyShipped: number;
2254
+ isActiveProduct: boolean;
2255
+ isActiveVmiBin: boolean;
2256
+ lastShipDate: Date | null;
2257
+ lineNumber: number;
2258
+ linePOReference: string;
2259
+ lineTotal: number;
2260
+ lineTotalDisplay: string;
2261
+ lineType: string;
2262
+ manufacturerItem: string;
2263
+ mediumImagePath: string;
2264
+ netPriceWithVat: number;
2265
+ netPriceWithVatDisplay: string;
2266
+ notes: string;
2267
+ orderLineOtherCharges: number;
2268
+ orderLineOtherChargesDisplay: string;
2269
+ productErpNumber: string;
2270
+ productId: string;
2271
+ productName: string;
2272
+ productUri: string;
2273
+ promotionAmountApplied: number;
2274
+ promotionAmountAppliedDisplay: string;
2275
+ qtyOrdered: number;
2276
+ qtyShipped: number;
2277
+ releaseNumber: number;
2278
+ requiredDate: Date | null;
2279
+ returnReason: string;
2280
+ rmaQtyReceived: number;
2281
+ rmaQtyRequested: number;
2282
+ salePriceLabel: string;
2283
+ sectionOptions: SectionOptionDto[] | null;
2284
+ shortDescription: string;
2285
+ status: string;
2286
+ taxAmount: number;
2287
+ taxRate: number;
2288
+ totalDiscountAmount: number;
2289
+ totalDiscountAmountDisplay: string;
2290
+ totalRegularPrice: number;
2291
+ totalRegularPriceDisplay: string;
2292
+ unitCost: number;
2293
+ unitCostDisplay: string;
2294
+ unitDiscountAmount: number;
2295
+ unitDiscountAmountDisplay: string;
2296
+ unitListPrice: number;
2297
+ unitListPriceDisplay: string;
2298
+ unitNetPrice: number;
2299
+ unitNetPriceDisplay: string;
2300
+ unitOfMeasure: string;
2301
+ unitOfMeasureDescription: string;
2302
+ unitOfMeasureDisplay: string;
2303
+ unitPrice: number;
2304
+ unitPriceDisplay: string;
2305
+ unitPriceWithVat: number;
2306
+ unitPriceWithVatDisplay: string;
2307
+ unitRegularPrice: number;
2308
+ unitRegularPriceDisplay: string;
2309
+ vmiBinId: string;
2310
+ vmiBinNumber: string;
2311
+ warehouse: string;
2312
+ }
2313
+ export interface OrderSettingsModel extends BaseModel {
2314
+ allowCancellationRequest: boolean;
2315
+ allowQuickOrder: boolean;
2316
+ allowRma: boolean;
2317
+ canOrderUpload: boolean;
2318
+ canReorderItems: boolean;
2319
+ lookBackDays: number;
2320
+ showCostCode: boolean;
2321
+ showErpOrderNumber: boolean;
2322
+ showOrderStatus: boolean;
2323
+ showOrders: boolean;
2324
+ showPoNumber: boolean;
2325
+ showTermsCode: boolean;
2326
+ showWebOrderNumber: boolean;
2327
+ vmiEnabled: boolean;
2328
+ }
2329
+ export interface OrderStatusMappingCollectionModel extends BaseModel {
2330
+ orderStatusMappings: OrderStatusMappingModel[] | null;
2331
+ }
2332
+ export interface OrderStatusMappingModel extends BaseModel {
2333
+ allowCancellation: boolean;
2334
+ allowRma: boolean;
2335
+ displayName: string;
2336
+ erpOrderStatus: string;
2337
+ id: string;
2338
+ isDefault: boolean;
2339
+ }
2340
+ export interface RmaModel extends BaseModel {
2341
+ message: string;
2342
+ notes: string;
2343
+ orderNumber: string;
2344
+ rmaLines: RmaLineDto[] | null;
2345
+ }
2346
+ export interface ShareOrderModel extends BaseModel {
2347
+ emailFrom: string;
2348
+ emailTo: string;
2349
+ entityId: string;
2350
+ entityName: string;
2351
+ message: string;
2352
+ stEmail: string;
2353
+ stPostalCode: string;
2354
+ subject: string;
2355
+ }
2356
+ export interface RmaLineDto {
2357
+ line: number;
2358
+ rmaQtyRequested: number;
2359
+ rmaReasonCode: string;
2360
+ }
2361
+ export interface SectionOptionDto {
2362
+ optionName: string;
2363
+ sectionName: string;
2364
+ sectionOptionId: string;
2365
+ }
2366
+ export interface ShipmentPackageDto {
2367
+ carrier: string;
2368
+ id: string;
2369
+ packSlip: string;
2370
+ packageNumber: string;
2371
+ shipVia: string;
2372
+ shipmentDate: Date;
2373
+ shipmentPackageLineDtos: ShipmentPackageLineDto[] | null;
2374
+ trackingNumber: string;
2375
+ trackingUrl: string;
2376
+ }
2377
+ export interface ShipmentPackageLineDto {
2378
+ id: string;
2379
+ orderLineId: string | null;
2380
+ price: number;
2381
+ productCode: string;
2382
+ productDescription: string;
2383
+ productName: string;
2384
+ qtyOrdered: number;
2385
+ qtyShipped: number;
2386
+ }
2387
+ export interface OrderHistoryTaxDto {
2388
+ sortOrder: number;
2389
+ taxAmount: number;
2390
+ taxAmountDisplay: string;
2391
+ taxCode: string;
2392
+ taxDescription: string;
2393
+ taxRate: number;
2394
+ }
2395
+ export interface OrderApprovalCollectionModel extends BaseModel {
2396
+ cartCollection: CartModel[] | null;
2397
+ pagination: PaginationModel | null;
2398
+ }
2399
+ export interface PromotionCollectionModel extends BaseModel {
2400
+ promotions: PromotionModel[] | null;
2401
+ }
2402
+ export interface PromotionModel extends BaseModel {
2403
+ amount: number;
2404
+ amountDisplay: string;
2405
+ id: string;
2406
+ message: string;
2407
+ name: string;
2408
+ orderLineId: string | null;
2409
+ promotionApplied: boolean;
2410
+ promotionCode: string;
2411
+ promotionResultType: string;
2412
+ }
2413
+ export interface OrderRequestModel extends BaseModel {
2414
+ xml: string;
2415
+ }
2416
+ export interface PoRequisitionModel extends BaseModel {
2417
+ html: string;
2418
+ }
2419
+ export interface ProfileTransactionRequestModel extends BaseModel {
2420
+ xml: string;
2421
+ }
2422
+ export interface SetupRequestModel extends BaseModel {
2423
+ xml: string;
2424
+ }
2425
+ export interface SessionRequestModel extends BaseModel {
2426
+ redirectUrl: string;
2427
+ }
2428
+ export interface RealTimeInventoryModel extends BaseModel {
2429
+ realTimeInventoryResults: ProductInventoryDto[] | null;
2430
+ }
2431
+ export interface RealTimeCartInventoryModel extends BaseModel {
2432
+ warehouseAvailabilities: {
2433
+ [key: string]: AvailabilityDto;
2434
+ } | null;
2435
+ }
2436
+ export interface ProductInventoryDto {
2437
+ additionalResults: {
2438
+ [key: string]: string;
2439
+ } | null;
2440
+ inventoryAvailabilityDtos: InventoryAvailabilityDto[] | null;
2441
+ inventoryWarehousesDtos: InventoryWarehousesDto[] | null;
2442
+ productId: string;
2443
+ qtyOnHand: number;
2444
+ }
2445
+ export interface InventoryWarehousesDto {
2446
+ unitOfMeasure: string;
2447
+ warehouseDtos: WarehouseDto[] | null;
2448
+ }
2449
+ export interface InventoryAvailabilityDto {
2450
+ availability: AvailabilityDto | null;
2451
+ unitOfMeasure: string;
2452
+ }
2453
+ export interface RealTimePricingModel extends BaseModel {
2454
+ realTimePricingResults: ProductPriceDto[] | null;
2455
+ }
2456
+ export interface RequisitionLineCollectionModel extends BaseModel {
2457
+ pagination: PaginationModel | null;
2458
+ requisitionLines: RequisitionLineModel[] | null;
2459
+ }
2460
+ export interface RequisitionLineModel extends BaseModel {
2461
+ brand: BrandDto | null;
2462
+ costCode: string;
2463
+ firstName: string;
2464
+ id: string;
2465
+ lastName: string;
2466
+ orderDate: Date;
2467
+ qtyOrdered: number;
2468
+ userName: string;
2469
+ }
2470
+ export interface RequisitionModel extends BaseModel {
2471
+ allowZeroPricing: boolean;
2472
+ altText: string;
2473
+ availability: AvailabilityDto | null;
2474
+ baseUnitOfMeasure: string;
2475
+ baseUnitOfMeasureDisplay: string;
2476
+ brand: BrandDto | null;
2477
+ breakPrices: BreakPriceDto[] | null;
2478
+ canAddToCart: boolean;
2479
+ canAddToWishlist: boolean;
2480
+ canBackOrder: boolean;
2481
+ cantBuy: boolean;
2482
+ costCode: string;
2483
+ customerName: string;
2484
+ erpNumber: string;
2485
+ hasInsufficientInventory: boolean;
2486
+ id: string;
2487
+ isActive: boolean;
2488
+ isApproved: boolean;
2489
+ isConfigured: boolean;
2490
+ isDiscontinued: boolean;
2491
+ isDiscounted: boolean;
2492
+ isFixedConfiguration: boolean;
2493
+ isPromotionItem: boolean;
2494
+ isQtyAdjusted: boolean;
2495
+ isRestricted: boolean;
2496
+ isSubscription: boolean;
2497
+ line: number | null;
2498
+ manufacturerItem: string;
2499
+ notes: string;
2500
+ pricing: ProductPriceDto | null;
2501
+ productId: string | null;
2502
+ productName: string;
2503
+ productSubscription: ProductSubscriptionDto | null;
2504
+ productUri: string;
2505
+ qtyLeft: number;
2506
+ qtyOnHand: number;
2507
+ qtyOrdered: number | null;
2508
+ qtyPerBaseUnitOfMeasure: number;
2509
+ quoteRequired: boolean;
2510
+ requisitionId: string | null;
2511
+ requisitionLineCollection: RequisitionLineCollectionModel | null;
2512
+ requisitionLinesUri: string;
2513
+ salePriceLabel: string;
2514
+ sectionOptions: SectionOptionDto[] | null;
2515
+ shortDescription: string;
2516
+ smallImagePath: string;
2517
+ trackInventory: boolean;
2518
+ unitOfMeasure: string;
2519
+ unitOfMeasureDescription: string;
2520
+ unitOfMeasureDisplay: string;
2521
+ }
2522
+ export interface RequisitionCollectionModel extends BaseModel {
2523
+ pagination: PaginationModel | null;
2524
+ requisitions: RequisitionModel[] | null;
2525
+ }
2526
+ export interface MessageModel extends BaseModel {
2527
+ body: string;
2528
+ createdDate: Date;
2529
+ displayName: string;
2530
+ message: string;
2531
+ quoteId: string;
2532
+ }
2533
+ export interface QuoteCollectionModel extends BaseModel {
2534
+ pagination: PaginationModel | null;
2535
+ quotes: QuoteModel[] | null;
2536
+ salespersonList: SalespersonModel[] | null;
2537
+ }
2538
+ export interface QuoteLineModel extends BaseModel {
2539
+ allowZeroPricing: boolean;
2540
+ altText: string;
2541
+ availability: AvailabilityDto | null;
2542
+ baseUnitOfMeasure: string;
2543
+ baseUnitOfMeasureDisplay: string;
2544
+ brand: BrandDto | null;
2545
+ breakPrices: BreakPriceDto[] | null;
2546
+ canAddToCart: boolean;
2547
+ canAddToWishlist: boolean;
2548
+ canBackOrder: boolean;
2549
+ cantBuy: boolean;
2550
+ costCode: string;
2551
+ customerName: string;
2552
+ erpNumber: string;
2553
+ hasInsufficientInventory: boolean;
2554
+ id: string;
2555
+ isActive: boolean;
2556
+ isConfigured: boolean;
2557
+ isDiscontinued: boolean;
2558
+ isDiscounted: boolean;
2559
+ isFixedConfiguration: boolean;
2560
+ isPromotionItem: boolean;
2561
+ isQtyAdjusted: boolean;
2562
+ isRestricted: boolean;
2563
+ isSubscription: boolean;
2564
+ line: number | null;
2565
+ manufacturerItem: string;
2566
+ maxQty: number;
2567
+ notes: string;
2568
+ pricing: ProductPriceDto | null;
2569
+ pricingRfq: PricingRfqModel | null;
2570
+ productId: string | null;
2571
+ productName: string;
2572
+ productSubscription: ProductSubscriptionDto | null;
2573
+ productUri: string;
2574
+ qtyLeft: number;
2575
+ qtyOnHand: number;
2576
+ qtyOrdered: number | null;
2577
+ qtyPerBaseUnitOfMeasure: number;
2578
+ quoteRequired: boolean;
2579
+ requisitionId: string | null;
2580
+ salePriceLabel: string;
2581
+ sectionOptions: SectionOptionDto[] | null;
2582
+ shortDescription: string;
2583
+ smallImagePath: string;
2584
+ trackInventory: boolean;
2585
+ unitOfMeasure: string;
2586
+ unitOfMeasureDescription: string;
2587
+ unitOfMeasureDisplay: string;
2588
+ }
2589
+ export interface QuoteModel extends BaseModel {
2590
+ additionalEmails: string;
2591
+ alsoPurchasedProducts: ProductDto[] | null;
2592
+ approverReason: string;
2593
+ billTo?: BillToModel | null;
2594
+ calculationMethods: CalculationMethod[] | null;
2595
+ canBypassCheckoutAddress: boolean;
2596
+ canCheckOut: boolean;
2597
+ canEditCostCode: boolean;
2598
+ canModifyOrder: boolean;
2599
+ canRequestQuote: boolean;
2600
+ canRequisition: boolean;
2601
+ canSaveOrder: boolean;
2602
+ carrier: CarrierDto | null;
2603
+ carriers?: CarrierDto[] | null;
2604
+ cartLines?: CartLineModel[] | null;
2605
+ cartLinesUri: string;
2606
+ cartNotPriced: boolean;
2607
+ costCodeLabel: string;
2608
+ costCodes: CostCodeDto[] | null;
2609
+ creditCardBillingAddress: CreditCardBillingAddressDto | null;
2610
+ currencySymbol: string;
2611
+ customerName: string;
2612
+ customerNumber: string;
2613
+ customerOrderTaxes: CustomerOrderTaxDto[] | null;
2614
+ customerVatNumber: string;
2615
+ defaultWarehouse: WarehouseModel | null;
2616
+ displayContinueShoppingLink: boolean;
2617
+ erpOrderNumber: string;
2618
+ expirationDate: Date | null;
2619
+ failedToGetRealTimeInventory: boolean;
2620
+ fulfillmentMethod: string;
2621
+ hasApprover: boolean;
2622
+ hasInsufficientInventory: boolean;
2623
+ id: string;
2624
+ initiatedByUserName: string;
2625
+ isAuthenticated: boolean;
2626
+ isAwaitingApproval: boolean;
2627
+ isEditable: boolean;
2628
+ isGuestOrder: boolean;
2629
+ isJobQuote: boolean;
2630
+ isSalesperson: boolean;
2631
+ isSubscribed: boolean;
2632
+ jobName: string;
2633
+ lineCount: number;
2634
+ messageCollection: MessageModel[] | null;
2635
+ messages: string[] | null;
2636
+ notes: string;
2637
+ orderDate: Date | null;
2638
+ orderGrandTotal: number;
2639
+ orderGrandTotalDisplay: string;
2640
+ orderNumber: string;
2641
+ orderSubTotal: number;
2642
+ orderSubTotalDisplay: string;
2643
+ orderSubTotalWithOutProductDiscounts: number;
2644
+ orderSubTotalWithOutProductDiscountsDisplay: string;
2645
+ paymentMethod?: PaymentMethodDto | null;
2646
+ paymentOptions?: PaymentOptionsDto | null;
2647
+ poNumber: string;
2648
+ promotionCode: string;
2649
+ quoteLineCollection: QuoteLineModel[] | null;
2650
+ quoteLinesUri: string;
2651
+ quoteNumber: string;
2652
+ quoteRequiredCount: number;
2653
+ requestedDeliveryDate: string;
2654
+ requestedDeliveryDateDisplay: Date | null;
2655
+ requestedPickupDate: string;
2656
+ requestedPickupDateDisplay: Date | null;
2657
+ requiresApproval: boolean;
2658
+ requiresPoNumber: boolean;
2659
+ salespersonName: string;
2660
+ shipTo?: ShipToModel | null;
2661
+ shipToFullAddress: string;
2662
+ shipToLabel: string;
2663
+ shipVia: ShipViaDto | null;
2664
+ shippingAndHandling: number;
2665
+ shippingAndHandlingDisplay: string;
2666
+ showCostCode: boolean;
2667
+ showCreditCard: boolean;
2668
+ showECheck: boolean;
2669
+ showLineNotes: boolean;
2670
+ showNewsletterSignup: boolean;
2671
+ showPayPal: boolean;
2672
+ showPoNumber: boolean;
2673
+ showTaxAndShipping: boolean;
2674
+ status: string;
2675
+ statusDisplay: string;
2676
+ taxFailureReason: string;
2677
+ totalCountDisplay: number;
2678
+ totalQtyOrdered: number;
2679
+ totalTax: number;
2680
+ totalTaxDisplay: string;
2681
+ trackId: string;
2682
+ type: string;
2683
+ typeDisplay: string;
2684
+ unassignCart: boolean;
2685
+ userLabel: string;
2686
+ userName: string;
2687
+ userRoles: string;
2688
+ warehouses: WarehouseDto[] | null;
2689
+ }
2690
+ export interface QuoteSettingsModel extends BaseModel {
2691
+ jobQuoteEnabled: boolean;
2692
+ quoteExpireDays: number;
2693
+ }
2694
+ export interface SalespersonModel extends BaseModel {
2695
+ name: string;
2696
+ salespersonNumber: string;
2697
+ }
2698
+ export interface AddressFieldCollectionModel extends BaseModel {
2699
+ billToAddressFields: AddressFieldDisplayCollectionModel | null;
2700
+ shipToAddressFields: AddressFieldDisplayCollectionModel | null;
2701
+ }
2702
+ export interface AddressFieldDisplayCollectionModel extends BaseModel {
2703
+ address1: AddressFieldDisplayModel | null;
2704
+ address2: AddressFieldDisplayModel | null;
2705
+ address3: AddressFieldDisplayModel | null;
2706
+ address4: AddressFieldDisplayModel | null;
2707
+ attention: AddressFieldDisplayModel | null;
2708
+ city: AddressFieldDisplayModel | null;
2709
+ companyName: AddressFieldDisplayModel | null;
2710
+ contactFullName: AddressFieldDisplayModel | null;
2711
+ country: AddressFieldDisplayModel | null;
2712
+ email: AddressFieldDisplayModel | null;
2713
+ fax: AddressFieldDisplayModel | null;
2714
+ firstName: AddressFieldDisplayModel | null;
2715
+ lastName: AddressFieldDisplayModel | null;
2716
+ phone: AddressFieldDisplayModel | null;
2717
+ postalCode: AddressFieldDisplayModel | null;
2718
+ state: AddressFieldDisplayModel | null;
2719
+ }
2720
+ export interface AddressFieldDisplayModel extends BaseModel {
2721
+ displayName: string;
2722
+ isVisible: boolean;
2723
+ }
2724
+ export interface SiteMessageCollectionModel extends BaseModel {
2725
+ pagination: PaginationModel | null;
2726
+ siteMessages: SiteMessageModel[] | null;
2727
+ }
2728
+ export interface CountryCollectionModel extends BaseModel {
2729
+ countries: CountryModel[] | null;
2730
+ }
2731
+ export interface CurrencyCollectionModel extends BaseModel {
2732
+ currencies: CurrencyModel[] | null;
2733
+ }
2734
+ export interface LanguageCollectionModel extends BaseModel {
2735
+ languages: LanguageModel[] | null;
2736
+ }
2737
+ export interface SettingsCollectionModel extends BaseModel {
2738
+ settingsCollection: {
2739
+ [key: string]: any;
2740
+ } | null;
2741
+ }
2742
+ export interface StateCollectionModel extends BaseModel {
2743
+ states: StateModel[] | null;
2744
+ }
2745
+ export interface TranslationDictionaryCollectionModel extends BaseModel {
2746
+ pagination: PaginationModel | null;
2747
+ translationDictionaries: TranslationDictionaryModel[] | null;
2748
+ }
2749
+ export interface WebsiteModel extends BaseModel {
2750
+ countries: CountryCollectionModel | null;
2751
+ countriesUri: string;
2752
+ currencies: CurrencyCollectionModel | null;
2753
+ currenciesUri: string;
2754
+ description: string;
2755
+ id: string;
2756
+ isActive: boolean;
2757
+ isRestricted: boolean;
2758
+ languages: LanguageCollectionModel | null;
2759
+ languagesUri: string;
2760
+ mobilePrimaryColor: string;
2761
+ mobilePrivacyPolicyUrl: string;
2762
+ mobileTermsOfUseUrl: string;
2763
+ name: string;
2764
+ states: StateCollectionModel | null;
2765
+ statesUri: string;
2766
+ websiteFavicon: string;
2767
+ }
2768
+ export interface WebsiteSettingsModel extends BaseModel {
2769
+ advancedSpireCmsFeatures: boolean;
2770
+ cmsType: 'Classic' | 'Spire' | null;
2771
+ defaultPageSize: number;
2772
+ enableCookiePrivacyPolicyPopup: boolean;
2773
+ enableDynamicRecommendations: boolean;
2774
+ enableTokenAuthentication: boolean;
2775
+ googleMapsApiKey: string;
2776
+ googleTrackingAccountId: string;
2777
+ googleTrackingTypeComputed: string;
2778
+ includeRealTimeInventoryAndPricingForSeo: boolean;
2779
+ includeSiteNameInPageTitle: boolean;
2780
+ maintenanceModeEnabled: boolean;
2781
+ mobileAppEnabled: boolean;
2782
+ pageTitleDelimiter: string;
2783
+ paystandPublishableKey: string;
2784
+ paystandTestMode: boolean;
2785
+ previewLoginEnabled: boolean;
2786
+ reCaptchaEnabledForContactUs: boolean;
2787
+ reCaptchaEnabledForCreateAccount: boolean;
2788
+ reCaptchaEnabledForForgotPassword: boolean;
2789
+ reCaptchaEnabledForShareProduct: boolean;
2790
+ reCaptchaSiteKey: string;
2791
+ siteNameAfterTitle: boolean;
2792
+ squareApplicationId: string;
2793
+ squareLive: boolean;
2794
+ squareLocationId: string;
2795
+ tokenExTestMode: boolean;
2796
+ useAdyenDropIn: boolean;
2797
+ useECheckTokenExGateway: boolean;
2798
+ usePaymetricGateway: boolean;
2799
+ usePaystandDropIn: boolean;
2800
+ usePaystandGateway: boolean;
2801
+ useSquareGateway: boolean;
2802
+ useTokenExGateway: boolean;
2803
+ }
2804
+ export interface TranslationDictionaryModel {
2805
+ keyword: string;
2806
+ languageCode: string;
2807
+ languageId: string | null;
2808
+ source: string;
2809
+ translation: string;
2810
+ }
2811
+ export interface SiteMessageModel {
2812
+ languageCode: string;
2813
+ message: string;
2814
+ name: string;
2815
+ }
2816
+ export interface WishListCollectionModel extends BaseModel {
2817
+ pagination: PaginationModel | null;
2818
+ wishListCollection: WishListModel[] | null;
2819
+ }
2820
+ export interface WishListEmailScheduleModel extends BaseModel {
2821
+ endDate: Date | null;
2822
+ lastDateSent: Date | null;
2823
+ message: string;
2824
+ repeatInterval: number;
2825
+ repeatPeriod: string;
2826
+ sendDayOfMonth: number;
2827
+ sendDayOfWeek: string;
2828
+ startDate: Date;
2829
+ }
2830
+ export interface UpdateWishListLineCollectionModel extends BaseModel {
2831
+ changedSharedListLinesQuantities: {
2832
+ [key: string]: number;
2833
+ } | null;
2834
+ includeListLines: boolean;
2835
+ wishListId: string;
2836
+ }
2837
+ export interface WishListLineCollectionModel extends BaseModel {
2838
+ changedListLineQuantities: {
2839
+ [key: string]: number;
2840
+ } | null;
2841
+ pagination: PaginationModel | null;
2842
+ wishListLines: WishListLineModel[] | null;
2843
+ }
2844
+ export interface WishListSettingsModel extends BaseModel {
2845
+ allowEditingOfWishLists: boolean;
2846
+ allowListSharing: boolean;
2847
+ allowMultipleWishLists: boolean;
2848
+ allowWishListsByCustomer: boolean;
2849
+ enableWishListReminders: boolean;
2850
+ productsPerPage: number;
2851
+ }
2852
+ export interface WishListShareModel extends BaseModel {
2853
+ displayName: string;
2854
+ id: string;
2855
+ }
2856
+ export interface WishListLineModel extends BaseModel {
2857
+ allowZeroPricing: boolean;
2858
+ altText: string;
2859
+ availability: AvailabilityDto | null;
2860
+ baseUnitOfMeasure: string;
2861
+ baseUnitOfMeasureDisplay: string;
2862
+ brand: BrandDto | null;
2863
+ breakPrices: BreakPriceDto[] | null;
2864
+ canAddToCart: boolean;
2865
+ canBackOrder: boolean;
2866
+ canEnterQuantity: boolean;
2867
+ canShowPrice: boolean;
2868
+ canShowUnitOfMeasure: boolean;
2869
+ createdByDisplayName: string;
2870
+ createdOn: Date;
2871
+ customerName: string;
2872
+ erpNumber: string;
2873
+ id: string;
2874
+ isActive: boolean;
2875
+ isDiscontinued: boolean;
2876
+ isQtyAdjusted: boolean;
2877
+ isSharedLine: boolean;
2878
+ isVisible: boolean;
2879
+ manufacturerItem: string;
2880
+ notes: string;
2881
+ packDescription: string;
2882
+ pricing: ProductPriceDto | null;
2883
+ productId: string;
2884
+ productName: string;
2885
+ productUnitOfMeasures: ProductUnitOfMeasureDto[] | null;
2886
+ productUri: string;
2887
+ qtyOnHand: number;
2888
+ qtyOrdered: number;
2889
+ qtyPerBaseUnitOfMeasure: number;
2890
+ quoteRequired: boolean;
2891
+ selectedUnitOfMeasure: string;
2892
+ shortDescription: string;
2893
+ smallImagePath: string;
2894
+ sortOrder: number;
2895
+ trackInventory: boolean;
2896
+ unitOfMeasure: string;
2897
+ unitOfMeasureDescription: string;
2898
+ unitOfMeasureDisplay: string;
2899
+ }
2900
+ export interface WishListModel extends BaseModel {
2901
+ allowEdit: boolean;
2902
+ canAddAllToCart: boolean;
2903
+ canAddToCart: boolean;
2904
+ description: string;
2905
+ hasAnyLines: boolean;
2906
+ id: string;
2907
+ isAutogenerated: boolean;
2908
+ isGlobal: boolean;
2909
+ isSharedList: boolean;
2910
+ message: string;
2911
+ name: string;
2912
+ pagination: PaginationModel | null;
2913
+ recipientEmailAddress: string;
2914
+ schedule: WishListEmailScheduleModel | null;
2915
+ sendDayOfMonthPossibleValues: {
2916
+ key: number;
2917
+ value: string;
2918
+ }[] | null;
2919
+ sendDayOfWeekPossibleValues: {
2920
+ key: string;
2921
+ value: string;
2922
+ }[] | null;
2923
+ sendEmail: boolean;
2924
+ senderName: string;
2925
+ shareOption: string;
2926
+ sharedByDisplayName: string;
2927
+ sharedUsers: WishListShareModel[] | null;
2928
+ updatedByDisplayName: string;
2929
+ updatedOn: Date;
2930
+ wishListLineCollection: WishListLineModel[] | null;
2931
+ wishListLinesCount: number;
2932
+ wishListLinesUri: string;
2933
+ wishListSharesCount: number;
2934
+ }
2935
+ export interface VmiUserImportModel extends BaseModel {
2936
+ userId: string;
2937
+ vmiLocationNames: string[] | null;
2938
+ vmiRoles: string[] | null;
2939
+ }
2940
+ export interface VmiUserImportCollectionModel extends BaseModel {
2941
+ vmiUsers: VmiUserImportModel[] | null;
2942
+ }