@useinsider/guido 1.0.3-beta.ce4cdcb → 1.0.3-beta.cedc8cb

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 (115) hide show
  1. package/dist/@types/generic.d.ts +13 -0
  2. package/dist/components/Guido.vue.d.ts +3 -2
  3. package/dist/components/Guido.vue.js +4 -4
  4. package/dist/components/Guido.vue2.js +99 -70
  5. package/dist/components/organisms/extensions/recommendation/FilterItem.vue.d.ts +19 -0
  6. package/dist/components/organisms/extensions/recommendation/FilterItem.vue.js +28 -0
  7. package/dist/components/organisms/extensions/recommendation/FilterItem.vue2.js +38 -0
  8. package/dist/components/organisms/extensions/recommendation/FilterSelectionDrawer.vue.d.ts +2 -0
  9. package/dist/components/organisms/extensions/recommendation/FilterSelectionDrawer.vue.js +17 -0
  10. package/dist/components/organisms/extensions/recommendation/FilterSelectionDrawer.vue2.js +37 -0
  11. package/dist/components/organisms/extensions/recommendation/Filters.vue.d.ts +2 -0
  12. package/dist/components/organisms/extensions/recommendation/Filters.vue.js +20 -0
  13. package/dist/components/organisms/extensions/recommendation/Filters.vue2.js +44 -0
  14. package/dist/components/organisms/extensions/recommendation/LogicAdapter.vue.d.ts +16 -0
  15. package/dist/components/organisms/extensions/recommendation/LogicAdapter.vue.js +17 -0
  16. package/dist/components/organisms/extensions/recommendation/LogicAdapter.vue2.js +27 -0
  17. package/dist/components/organisms/unsubscribe/UnsubscribeBreadcrumb.vue.d.ts +2 -0
  18. package/dist/components/organisms/unsubscribe/UnsubscribeBreadcrumb.vue.js +18 -0
  19. package/dist/components/organisms/unsubscribe/UnsubscribeBreadcrumb.vue2.js +16 -0
  20. package/dist/components/organisms/unsubscribe/UnsubscribePageSelection.vue.d.ts +2 -0
  21. package/dist/components/organisms/unsubscribe/UnsubscribePageSelection.vue.js +24 -0
  22. package/dist/components/organisms/unsubscribe/UnsubscribePageSelection.vue2.js +64 -0
  23. package/dist/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue.d.ts +2 -0
  24. package/dist/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue.js +18 -0
  25. package/dist/components/organisms/unsubscribe/UnsubscribeTypeSelection.vue2.js +107 -0
  26. package/dist/components/organisms/unsubscribe/UnsubscribeWrapper.vue.d.ts +2 -0
  27. package/dist/components/organisms/unsubscribe/UnsubscribeWrapper.vue.js +18 -0
  28. package/dist/components/organisms/unsubscribe/UnsubscribeWrapper.vue2.js +12 -0
  29. package/dist/components/wrappers/WpDrawer.vue.d.ts +6 -4
  30. package/dist/components/wrappers/WpDrawer.vue.js +6 -4
  31. package/dist/composables/useApiErrorTracking.d.ts +26 -0
  32. package/dist/composables/useApiErrorTracking.js +120 -0
  33. package/dist/composables/useErrorTracking.d.ts +30 -0
  34. package/dist/composables/useErrorTracking.js +98 -0
  35. package/dist/composables/useHttp.js +89 -52
  36. package/dist/composables/useStripo.js +160 -61
  37. package/dist/composables/useStripoErrorCategory.d.ts +26 -0
  38. package/dist/composables/useStripoErrorCategory.js +86 -0
  39. package/dist/composables/useStripoSlackNotifier.d.ts +8 -0
  40. package/dist/composables/useStripoSlackNotifier.js +47 -0
  41. package/dist/config/compiler/unsubscribeCompilerRules.js +42 -29
  42. package/dist/config/migrator/index.d.ts +1 -1
  43. package/dist/config/migrator/index.js +7 -6
  44. package/dist/config/migrator/unsubscribeMigrator.d.ts +1 -0
  45. package/dist/config/migrator/unsubscribeMigrator.js +124 -0
  46. package/dist/enums/defaults.js +6 -3
  47. package/dist/enums/extensions/recommendationBlock.d.ts +16 -0
  48. package/dist/enums/extensions/recommendationBlock.js +80 -0
  49. package/dist/enums/unsubscribe.d.ts +19 -0
  50. package/dist/enums/unsubscribe.js +39 -6
  51. package/dist/extensions/Blocks/Checkbox/control.js +35 -39
  52. package/dist/extensions/Blocks/RadioButton/control.js +33 -37
  53. package/dist/extensions/Blocks/RadioButton/template.js +6 -6
  54. package/dist/extensions/Blocks/Recommendation/block.d.ts +10 -0
  55. package/dist/extensions/Blocks/Recommendation/block.js +27 -0
  56. package/dist/extensions/Blocks/Recommendation/control.d.ts +29 -0
  57. package/dist/extensions/Blocks/Recommendation/control.js +277 -0
  58. package/dist/extensions/Blocks/Recommendation/extension.d.ts +2 -0
  59. package/dist/extensions/Blocks/Recommendation/extension.js +10 -0
  60. package/dist/extensions/Blocks/Recommendation/iconsRegistry.d.ts +4 -0
  61. package/dist/extensions/Blocks/Recommendation/iconsRegistry.js +51 -0
  62. package/dist/extensions/Blocks/Recommendation/recommendation.css.js +19 -0
  63. package/dist/extensions/Blocks/Recommendation/settingsPanel.d.ts +4 -0
  64. package/dist/extensions/Blocks/Recommendation/settingsPanel.js +32 -0
  65. package/dist/extensions/Blocks/Recommendation/store/recommendation.d.ts +555 -0
  66. package/dist/extensions/Blocks/Recommendation/store/recommendation.js +266 -0
  67. package/dist/extensions/Blocks/Recommendation/template.d.ts +6 -0
  68. package/dist/extensions/Blocks/Recommendation/template.js +200 -0
  69. package/dist/extensions/Blocks/Recommendation/utils/filterUtil.d.ts +7 -0
  70. package/dist/extensions/Blocks/Recommendation/utils/filterUtil.js +28 -0
  71. package/dist/extensions/Blocks/Unsubscribe/block.d.ts +32 -0
  72. package/dist/extensions/Blocks/Unsubscribe/block.js +131 -0
  73. package/dist/extensions/Blocks/Unsubscribe/control.d.ts +29 -0
  74. package/dist/extensions/Blocks/Unsubscribe/control.js +167 -0
  75. package/dist/extensions/Blocks/Unsubscribe/elements/preview.d.ts +11 -0
  76. package/dist/extensions/Blocks/Unsubscribe/elements/preview.js +42 -0
  77. package/dist/extensions/Blocks/Unsubscribe/extension.d.ts +2 -0
  78. package/dist/extensions/Blocks/Unsubscribe/extension.js +21 -0
  79. package/dist/extensions/Blocks/Unsubscribe/iconsRegistry.d.ts +4 -0
  80. package/dist/extensions/Blocks/Unsubscribe/iconsRegistry.js +21 -0
  81. package/dist/extensions/Blocks/Unsubscribe/settingsPanel.d.ts +4 -0
  82. package/dist/extensions/Blocks/Unsubscribe/settingsPanel.js +35 -0
  83. package/dist/extensions/Blocks/Unsubscribe/styles.css.js +42 -0
  84. package/dist/extensions/Blocks/Unsubscribe/tagRegistry.d.ts +4 -0
  85. package/dist/extensions/Blocks/Unsubscribe/tagRegistry.js +10 -0
  86. package/dist/extensions/Blocks/Unsubscribe/template.d.ts +12 -0
  87. package/dist/extensions/Blocks/Unsubscribe/template.js +22 -0
  88. package/dist/extensions/Blocks/Unsubscribe/utils/constants.d.ts +9 -0
  89. package/dist/extensions/Blocks/Unsubscribe/utils/constants.js +11 -0
  90. package/dist/extensions/Blocks/Unsubscribe/utils/utils.d.ts +7 -0
  91. package/dist/extensions/Blocks/Unsubscribe/utils/utils.js +6 -0
  92. package/dist/extensions/Blocks/common-control.d.ts +66 -0
  93. package/dist/extensions/Blocks/common-control.js +102 -0
  94. package/dist/guido.css +1 -1
  95. package/dist/mock/api/recommendation.d.ts +2 -0
  96. package/dist/node_modules/@stripoinc/ui-editor-extensions/dist/esm/index.js +83 -71
  97. package/dist/services/recommendationApi.d.ts +6 -0
  98. package/dist/services/recommendationApi.js +43 -0
  99. package/dist/services/slackNotificationService.d.ts +110 -0
  100. package/dist/services/slackNotificationService.js +167 -0
  101. package/dist/services/stripoApi.js +49 -19
  102. package/dist/services/stripoErrorDeduplicationService.d.ts +75 -0
  103. package/dist/services/stripoErrorDeduplicationService.js +91 -0
  104. package/dist/services/unsubscribeApi.d.ts +4 -0
  105. package/dist/services/unsubscribeApi.js +16 -0
  106. package/dist/stores/config.d.ts +96 -0
  107. package/dist/stores/config.js +17 -0
  108. package/dist/stores/editor.d.ts +21 -0
  109. package/dist/stores/editor.js +2 -1
  110. package/dist/stores/unsubscribe.d.ts +253 -5
  111. package/dist/stores/unsubscribe.js +126 -6
  112. package/dist/utils/genericUtil.d.ts +1 -0
  113. package/dist/utils/genericUtil.js +8 -7
  114. package/dist/utils/templatePreparation.js +17 -16
  115. package/package.json +2 -2
@@ -0,0 +1,555 @@
1
+ import type { Orientation, Languages, Currency, NumericSeparator, FiltersResponse, Filter, RecommendationProduct } from '@@/Types/recommendation';
2
+ interface StoreState {
3
+ recommendationCampaignUrls: Record<string, string>;
4
+ recommendationConfigs: {
5
+ cardsInRow: number;
6
+ currencySettings: {
7
+ name: string;
8
+ value: string;
9
+ symbol: string;
10
+ alignment: string;
11
+ decimalCount: string;
12
+ decimalSeparator: NumericSeparator;
13
+ thousandSeparator: NumericSeparator;
14
+ };
15
+ filters: Filter[];
16
+ id: number;
17
+ language: string;
18
+ orientation: Orientation;
19
+ productIds: string[];
20
+ recommendedProducts: [];
21
+ sendProductRequestFlag: false;
22
+ shuffleProducts: false;
23
+ strategy: string;
24
+ textTrimming: boolean;
25
+ unresponsive: boolean;
26
+ size: string;
27
+ };
28
+ recommendationProducts: RecommendationProduct[];
29
+ activePredictiveAlgorithms: number[];
30
+ languages: Languages;
31
+ currencyList: Currency[];
32
+ filterStatus: boolean;
33
+ filterSelectionDrawerStatus: boolean;
34
+ filterList: FiltersResponse;
35
+ filterGroup: number;
36
+ }
37
+ export declare const useRecommendationExtensionStore: import("pinia").StoreDefinition<"recommendationExtension", StoreState, {
38
+ hasFilters: (state: {
39
+ recommendationCampaignUrls: Record<string, string>;
40
+ recommendationConfigs: {
41
+ cardsInRow: number;
42
+ currencySettings: {
43
+ name: string;
44
+ value: string;
45
+ symbol: string;
46
+ alignment: string;
47
+ decimalCount: string;
48
+ decimalSeparator: NumericSeparator;
49
+ thousandSeparator: NumericSeparator;
50
+ };
51
+ filters: {
52
+ type: string;
53
+ attribute: string;
54
+ operatorReplace: string;
55
+ operator: string;
56
+ innerGroupOperator: string;
57
+ outerGroupOperator: string;
58
+ value: string;
59
+ filterGroup: number;
60
+ filterNumber: number;
61
+ isValid: boolean;
62
+ }[];
63
+ id: number;
64
+ language: string;
65
+ orientation: Orientation;
66
+ productIds: string[];
67
+ recommendedProducts: [];
68
+ sendProductRequestFlag: false;
69
+ shuffleProducts: false;
70
+ strategy: string;
71
+ textTrimming: boolean;
72
+ unresponsive: boolean;
73
+ size: string;
74
+ };
75
+ recommendationProducts: {
76
+ image_url: string;
77
+ name: string;
78
+ item_id: string;
79
+ url: string;
80
+ in_stock: number;
81
+ price: {
82
+ [key: string]: number;
83
+ };
84
+ locale: string;
85
+ product_attributes: {
86
+ [key: string]: string;
87
+ };
88
+ category: string[];
89
+ discount: {
90
+ [key: string]: number;
91
+ };
92
+ original_price: {
93
+ [key: string]: number;
94
+ };
95
+ }[];
96
+ activePredictiveAlgorithms: number[];
97
+ languages: Languages;
98
+ currencyList: {
99
+ text: string;
100
+ value: string;
101
+ }[];
102
+ filterStatus: boolean;
103
+ filterSelectionDrawerStatus: boolean;
104
+ filterList: FiltersResponse;
105
+ filterGroup: number;
106
+ } & import("pinia").PiniaCustomStateProperties<StoreState>) => boolean;
107
+ getFilterGroupCount: (state: {
108
+ recommendationCampaignUrls: Record<string, string>;
109
+ recommendationConfigs: {
110
+ cardsInRow: number;
111
+ currencySettings: {
112
+ name: string;
113
+ value: string;
114
+ symbol: string;
115
+ alignment: string;
116
+ decimalCount: string;
117
+ decimalSeparator: NumericSeparator;
118
+ thousandSeparator: NumericSeparator;
119
+ };
120
+ filters: {
121
+ type: string;
122
+ attribute: string;
123
+ operatorReplace: string;
124
+ operator: string;
125
+ innerGroupOperator: string;
126
+ outerGroupOperator: string;
127
+ value: string;
128
+ filterGroup: number;
129
+ filterNumber: number;
130
+ isValid: boolean;
131
+ }[];
132
+ id: number;
133
+ language: string;
134
+ orientation: Orientation;
135
+ productIds: string[];
136
+ recommendedProducts: [];
137
+ sendProductRequestFlag: false;
138
+ shuffleProducts: false;
139
+ strategy: string;
140
+ textTrimming: boolean;
141
+ unresponsive: boolean;
142
+ size: string;
143
+ };
144
+ recommendationProducts: {
145
+ image_url: string;
146
+ name: string;
147
+ item_id: string;
148
+ url: string;
149
+ in_stock: number;
150
+ price: {
151
+ [key: string]: number;
152
+ };
153
+ locale: string;
154
+ product_attributes: {
155
+ [key: string]: string;
156
+ };
157
+ category: string[];
158
+ discount: {
159
+ [key: string]: number;
160
+ };
161
+ original_price: {
162
+ [key: string]: number;
163
+ };
164
+ }[];
165
+ activePredictiveAlgorithms: number[];
166
+ languages: Languages;
167
+ currencyList: {
168
+ text: string;
169
+ value: string;
170
+ }[];
171
+ filterStatus: boolean;
172
+ filterSelectionDrawerStatus: boolean;
173
+ filterList: FiltersResponse;
174
+ filterGroup: number;
175
+ } & import("pinia").PiniaCustomStateProperties<StoreState>) => number;
176
+ getActivePredictiveAlgorithms: (state: {
177
+ recommendationCampaignUrls: Record<string, string>;
178
+ recommendationConfigs: {
179
+ cardsInRow: number;
180
+ currencySettings: {
181
+ name: string;
182
+ value: string;
183
+ symbol: string;
184
+ alignment: string;
185
+ decimalCount: string;
186
+ decimalSeparator: NumericSeparator;
187
+ thousandSeparator: NumericSeparator;
188
+ };
189
+ filters: {
190
+ type: string;
191
+ attribute: string;
192
+ operatorReplace: string;
193
+ operator: string;
194
+ innerGroupOperator: string;
195
+ outerGroupOperator: string;
196
+ value: string;
197
+ filterGroup: number;
198
+ filterNumber: number;
199
+ isValid: boolean;
200
+ }[];
201
+ id: number;
202
+ language: string;
203
+ orientation: Orientation;
204
+ productIds: string[];
205
+ recommendedProducts: [];
206
+ sendProductRequestFlag: false;
207
+ shuffleProducts: false;
208
+ strategy: string;
209
+ textTrimming: boolean;
210
+ unresponsive: boolean;
211
+ size: string;
212
+ };
213
+ recommendationProducts: {
214
+ image_url: string;
215
+ name: string;
216
+ item_id: string;
217
+ url: string;
218
+ in_stock: number;
219
+ price: {
220
+ [key: string]: number;
221
+ };
222
+ locale: string;
223
+ product_attributes: {
224
+ [key: string]: string;
225
+ };
226
+ category: string[];
227
+ discount: {
228
+ [key: string]: number;
229
+ };
230
+ original_price: {
231
+ [key: string]: number;
232
+ };
233
+ }[];
234
+ activePredictiveAlgorithms: number[];
235
+ languages: Languages;
236
+ currencyList: {
237
+ text: string;
238
+ value: string;
239
+ }[];
240
+ filterStatus: boolean;
241
+ filterSelectionDrawerStatus: boolean;
242
+ filterList: FiltersResponse;
243
+ filterGroup: number;
244
+ } & import("pinia").PiniaCustomStateProperties<StoreState>) => {
245
+ text: string;
246
+ value: string;
247
+ }[];
248
+ getLanguages: (state: {
249
+ recommendationCampaignUrls: Record<string, string>;
250
+ recommendationConfigs: {
251
+ cardsInRow: number;
252
+ currencySettings: {
253
+ name: string;
254
+ value: string;
255
+ symbol: string;
256
+ alignment: string;
257
+ decimalCount: string;
258
+ decimalSeparator: NumericSeparator;
259
+ thousandSeparator: NumericSeparator;
260
+ };
261
+ filters: {
262
+ type: string;
263
+ attribute: string;
264
+ operatorReplace: string;
265
+ operator: string;
266
+ innerGroupOperator: string;
267
+ outerGroupOperator: string;
268
+ value: string;
269
+ filterGroup: number;
270
+ filterNumber: number;
271
+ isValid: boolean;
272
+ }[];
273
+ id: number;
274
+ language: string;
275
+ orientation: Orientation;
276
+ productIds: string[];
277
+ recommendedProducts: [];
278
+ sendProductRequestFlag: false;
279
+ shuffleProducts: false;
280
+ strategy: string;
281
+ textTrimming: boolean;
282
+ unresponsive: boolean;
283
+ size: string;
284
+ };
285
+ recommendationProducts: {
286
+ image_url: string;
287
+ name: string;
288
+ item_id: string;
289
+ url: string;
290
+ in_stock: number;
291
+ price: {
292
+ [key: string]: number;
293
+ };
294
+ locale: string;
295
+ product_attributes: {
296
+ [key: string]: string;
297
+ };
298
+ category: string[];
299
+ discount: {
300
+ [key: string]: number;
301
+ };
302
+ original_price: {
303
+ [key: string]: number;
304
+ };
305
+ }[];
306
+ activePredictiveAlgorithms: number[];
307
+ languages: Languages;
308
+ currencyList: {
309
+ text: string;
310
+ value: string;
311
+ }[];
312
+ filterStatus: boolean;
313
+ filterSelectionDrawerStatus: boolean;
314
+ filterList: FiltersResponse;
315
+ filterGroup: number;
316
+ } & import("pinia").PiniaCustomStateProperties<StoreState>) => {
317
+ text: string;
318
+ value: string;
319
+ }[];
320
+ getCurrencySymbolList: (state: {
321
+ recommendationCampaignUrls: Record<string, string>;
322
+ recommendationConfigs: {
323
+ cardsInRow: number;
324
+ currencySettings: {
325
+ name: string;
326
+ value: string;
327
+ symbol: string;
328
+ alignment: string;
329
+ decimalCount: string;
330
+ decimalSeparator: NumericSeparator;
331
+ thousandSeparator: NumericSeparator;
332
+ };
333
+ filters: {
334
+ type: string;
335
+ attribute: string;
336
+ operatorReplace: string;
337
+ operator: string;
338
+ innerGroupOperator: string;
339
+ outerGroupOperator: string;
340
+ value: string;
341
+ filterGroup: number;
342
+ filterNumber: number;
343
+ isValid: boolean;
344
+ }[];
345
+ id: number;
346
+ language: string;
347
+ orientation: Orientation;
348
+ productIds: string[];
349
+ recommendedProducts: [];
350
+ sendProductRequestFlag: false;
351
+ shuffleProducts: false;
352
+ strategy: string;
353
+ textTrimming: boolean;
354
+ unresponsive: boolean;
355
+ size: string;
356
+ };
357
+ recommendationProducts: {
358
+ image_url: string;
359
+ name: string;
360
+ item_id: string;
361
+ url: string;
362
+ in_stock: number;
363
+ price: {
364
+ [key: string]: number;
365
+ };
366
+ locale: string;
367
+ product_attributes: {
368
+ [key: string]: string;
369
+ };
370
+ category: string[];
371
+ discount: {
372
+ [key: string]: number;
373
+ };
374
+ original_price: {
375
+ [key: string]: number;
376
+ };
377
+ }[];
378
+ activePredictiveAlgorithms: number[];
379
+ languages: Languages;
380
+ currencyList: {
381
+ text: string;
382
+ value: string;
383
+ }[];
384
+ filterStatus: boolean;
385
+ filterSelectionDrawerStatus: boolean;
386
+ filterList: FiltersResponse;
387
+ filterGroup: number;
388
+ } & import("pinia").PiniaCustomStateProperties<StoreState>) => {
389
+ text: string;
390
+ value: string;
391
+ }[];
392
+ getFilterList: (state: {
393
+ recommendationCampaignUrls: Record<string, string>;
394
+ recommendationConfigs: {
395
+ cardsInRow: number;
396
+ currencySettings: {
397
+ name: string;
398
+ value: string;
399
+ symbol: string;
400
+ alignment: string;
401
+ decimalCount: string;
402
+ decimalSeparator: NumericSeparator;
403
+ thousandSeparator: NumericSeparator;
404
+ };
405
+ filters: {
406
+ type: string;
407
+ attribute: string;
408
+ operatorReplace: string;
409
+ operator: string;
410
+ innerGroupOperator: string;
411
+ outerGroupOperator: string;
412
+ value: string;
413
+ filterGroup: number;
414
+ filterNumber: number;
415
+ isValid: boolean;
416
+ }[];
417
+ id: number;
418
+ language: string;
419
+ orientation: Orientation;
420
+ productIds: string[];
421
+ recommendedProducts: [];
422
+ sendProductRequestFlag: false;
423
+ shuffleProducts: false;
424
+ strategy: string;
425
+ textTrimming: boolean;
426
+ unresponsive: boolean;
427
+ size: string;
428
+ };
429
+ recommendationProducts: {
430
+ image_url: string;
431
+ name: string;
432
+ item_id: string;
433
+ url: string;
434
+ in_stock: number;
435
+ price: {
436
+ [key: string]: number;
437
+ };
438
+ locale: string;
439
+ product_attributes: {
440
+ [key: string]: string;
441
+ };
442
+ category: string[];
443
+ discount: {
444
+ [key: string]: number;
445
+ };
446
+ original_price: {
447
+ [key: string]: number;
448
+ };
449
+ }[];
450
+ activePredictiveAlgorithms: number[];
451
+ languages: Languages;
452
+ currencyList: {
453
+ text: string;
454
+ value: string;
455
+ }[];
456
+ filterStatus: boolean;
457
+ filterSelectionDrawerStatus: boolean;
458
+ filterList: FiltersResponse;
459
+ filterGroup: number;
460
+ } & import("pinia").PiniaCustomStateProperties<StoreState>) => {
461
+ text: string;
462
+ value: string;
463
+ type: string;
464
+ }[];
465
+ getSelectedFilterGroup: (state: {
466
+ recommendationCampaignUrls: Record<string, string>;
467
+ recommendationConfigs: {
468
+ cardsInRow: number;
469
+ currencySettings: {
470
+ name: string;
471
+ value: string;
472
+ symbol: string;
473
+ alignment: string;
474
+ decimalCount: string;
475
+ decimalSeparator: NumericSeparator;
476
+ thousandSeparator: NumericSeparator;
477
+ };
478
+ filters: {
479
+ type: string;
480
+ attribute: string;
481
+ operatorReplace: string;
482
+ operator: string;
483
+ innerGroupOperator: string;
484
+ outerGroupOperator: string;
485
+ value: string;
486
+ filterGroup: number;
487
+ filterNumber: number;
488
+ isValid: boolean;
489
+ }[];
490
+ id: number;
491
+ language: string;
492
+ orientation: Orientation;
493
+ productIds: string[];
494
+ recommendedProducts: [];
495
+ sendProductRequestFlag: false;
496
+ shuffleProducts: false;
497
+ strategy: string;
498
+ textTrimming: boolean;
499
+ unresponsive: boolean;
500
+ size: string;
501
+ };
502
+ recommendationProducts: {
503
+ image_url: string;
504
+ name: string;
505
+ item_id: string;
506
+ url: string;
507
+ in_stock: number;
508
+ price: {
509
+ [key: string]: number;
510
+ };
511
+ locale: string;
512
+ product_attributes: {
513
+ [key: string]: string;
514
+ };
515
+ category: string[];
516
+ discount: {
517
+ [key: string]: number;
518
+ };
519
+ original_price: {
520
+ [key: string]: number;
521
+ };
522
+ }[];
523
+ activePredictiveAlgorithms: number[];
524
+ languages: Languages;
525
+ currencyList: {
526
+ text: string;
527
+ value: string;
528
+ }[];
529
+ filterStatus: boolean;
530
+ filterSelectionDrawerStatus: boolean;
531
+ filterList: FiltersResponse;
532
+ filterGroup: number;
533
+ } & import("pinia").PiniaCustomStateProperties<StoreState>) => (groupId: number) => {
534
+ type: string;
535
+ attribute: string;
536
+ operatorReplace: string;
537
+ operator: string;
538
+ innerGroupOperator: string;
539
+ outerGroupOperator: string;
540
+ value: string;
541
+ filterGroup: number;
542
+ filterNumber: number;
543
+ isValid: boolean;
544
+ }[];
545
+ }, {
546
+ fetchRecommendationCreateData(): Promise<void>;
547
+ fetchRecommendationFilters(): Promise<void>;
548
+ addFilterGroup(filterGroup: number): void;
549
+ updateFilter(updatedFilter: Filter): void;
550
+ deleteFilter(filter: Filter): void;
551
+ addFilter(filter: Filter): void;
552
+ generateFilterQuery(): string;
553
+ fetchRecommendationProducts(): Promise<void>;
554
+ }>;
555
+ export {};