@shoppexio/storefront 0.3.7 → 0.3.9

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 (117) hide show
  1. package/README.md +201 -42
  2. package/dist/__tests__/affiliates.test.d.ts +2 -0
  3. package/dist/__tests__/affiliates.test.d.ts.map +1 -0
  4. package/dist/__tests__/analytics.test.d.ts +2 -0
  5. package/dist/__tests__/analytics.test.d.ts.map +1 -0
  6. package/dist/__tests__/cache.test.d.ts +2 -0
  7. package/dist/__tests__/cache.test.d.ts.map +1 -0
  8. package/dist/__tests__/cart.test.d.ts +2 -0
  9. package/dist/__tests__/cart.test.d.ts.map +1 -0
  10. package/dist/__tests__/checkout.test.d.ts +2 -0
  11. package/dist/__tests__/checkout.test.d.ts.map +1 -0
  12. package/dist/__tests__/client.test.d.ts +2 -0
  13. package/dist/__tests__/client.test.d.ts.map +1 -0
  14. package/dist/__tests__/config.test.d.ts +2 -0
  15. package/dist/__tests__/config.test.d.ts.map +1 -0
  16. package/dist/__tests__/coupons.test.d.ts +2 -0
  17. package/dist/__tests__/coupons.test.d.ts.map +1 -0
  18. package/dist/__tests__/endpoint.test.d.ts +2 -0
  19. package/dist/__tests__/endpoint.test.d.ts.map +1 -0
  20. package/dist/__tests__/invoices.test.d.ts +2 -0
  21. package/dist/__tests__/invoices.test.d.ts.map +1 -0
  22. package/dist/__tests__/navigation.test.d.ts +2 -0
  23. package/dist/__tests__/navigation.test.d.ts.map +1 -0
  24. package/dist/__tests__/pages.test.d.ts +2 -0
  25. package/dist/__tests__/pages.test.d.ts.map +1 -0
  26. package/dist/__tests__/products.test.d.ts +2 -0
  27. package/dist/__tests__/products.test.d.ts.map +1 -0
  28. package/dist/__tests__/reviews.test.d.ts +2 -0
  29. package/dist/__tests__/reviews.test.d.ts.map +1 -0
  30. package/dist/__tests__/sdk.smoke.test.d.ts +2 -0
  31. package/dist/__tests__/sdk.smoke.test.d.ts.map +1 -0
  32. package/dist/__tests__/search.test.d.ts +2 -0
  33. package/dist/__tests__/search.test.d.ts.map +1 -0
  34. package/dist/__tests__/setup.d.ts +2 -0
  35. package/dist/__tests__/setup.d.ts.map +1 -0
  36. package/dist/__tests__/store.test.d.ts +2 -0
  37. package/dist/__tests__/store.test.d.ts.map +1 -0
  38. package/dist/__tests__/storefront-custom-fields.test.d.ts +2 -0
  39. package/dist/__tests__/storefront-custom-fields.test.d.ts.map +1 -0
  40. package/dist/__tests__/storefront-stock.test.d.ts +2 -0
  41. package/dist/__tests__/storefront-stock.test.d.ts.map +1 -0
  42. package/dist/__tests__/theme.test.d.ts +2 -0
  43. package/dist/__tests__/theme.test.d.ts.map +1 -0
  44. package/dist/core/cache.d.ts +26 -0
  45. package/dist/core/cache.d.ts.map +1 -0
  46. package/dist/core/client.d.ts +17 -0
  47. package/dist/core/client.d.ts.map +1 -0
  48. package/dist/core/config.d.ts +10 -0
  49. package/dist/core/config.d.ts.map +1 -0
  50. package/dist/core/endpoint.d.ts +2 -0
  51. package/dist/core/endpoint.d.ts.map +1 -0
  52. package/dist/core/errors.d.ts +22 -0
  53. package/dist/core/errors.d.ts.map +1 -0
  54. package/dist/core/telemetry.d.ts +20 -0
  55. package/dist/core/telemetry.d.ts.map +1 -0
  56. package/dist/core/typed-client.d.ts +15 -0
  57. package/dist/core/typed-client.d.ts.map +1 -0
  58. package/dist/index.d.ts +34 -1118
  59. package/dist/index.d.ts.map +1 -0
  60. package/dist/modules/affiliates.d.ts +15 -0
  61. package/dist/modules/affiliates.d.ts.map +1 -0
  62. package/dist/modules/analytics.d.ts +2 -0
  63. package/dist/modules/analytics.d.ts.map +1 -0
  64. package/dist/modules/cart.d.ts +21 -0
  65. package/dist/modules/cart.d.ts.map +1 -0
  66. package/dist/modules/checkout.d.ts +28 -0
  67. package/dist/modules/checkout.d.ts.map +1 -0
  68. package/dist/modules/coupons.d.ts +3 -0
  69. package/dist/modules/coupons.d.ts.map +1 -0
  70. package/dist/modules/invoices.d.ts +6 -0
  71. package/dist/modules/invoices.d.ts.map +1 -0
  72. package/dist/modules/navigation.d.ts +20 -0
  73. package/dist/modules/navigation.d.ts.map +1 -0
  74. package/dist/modules/pages.d.ts +10 -0
  75. package/dist/modules/pages.d.ts.map +1 -0
  76. package/dist/modules/presence.d.ts +6 -0
  77. package/dist/modules/presence.d.ts.map +1 -0
  78. package/dist/modules/products.d.ts +16 -0
  79. package/dist/modules/products.d.ts.map +1 -0
  80. package/dist/modules/reviews.d.ts +3 -0
  81. package/dist/modules/reviews.d.ts.map +1 -0
  82. package/dist/modules/search.d.ts +6 -0
  83. package/dist/modules/search.d.ts.map +1 -0
  84. package/dist/modules/store.d.ts +11 -0
  85. package/dist/modules/store.d.ts.map +1 -0
  86. package/dist/modules/theme.d.ts +27 -0
  87. package/dist/modules/theme.d.ts.map +1 -0
  88. package/dist/shoppex.esm.js +3 -0
  89. package/dist/shoppex.esm.js.map +1 -0
  90. package/dist/shoppex.umd.js +2 -0
  91. package/dist/shoppex.umd.js.map +1 -0
  92. package/dist/types/api.d.ts +580 -0
  93. package/dist/types/api.d.ts.map +1 -0
  94. package/dist/types/cart.d.ts +102 -0
  95. package/dist/types/cart.d.ts.map +1 -0
  96. package/dist/types/config.d.ts +18 -0
  97. package/dist/types/config.d.ts.map +1 -0
  98. package/dist/types/index.d.ts +7 -0
  99. package/dist/types/index.d.ts.map +1 -0
  100. package/dist/types/theme-config.d.ts +109 -0
  101. package/dist/types/theme-config.d.ts.map +1 -0
  102. package/dist/utils/format.d.ts +6 -0
  103. package/dist/utils/format.d.ts.map +1 -0
  104. package/dist/utils/storage.d.ts +10 -0
  105. package/dist/utils/storage.d.ts.map +1 -0
  106. package/dist/utils/storefront-custom-fields.d.ts +13 -0
  107. package/dist/utils/storefront-custom-fields.d.ts.map +1 -0
  108. package/dist/utils/storefront-stock.d.ts +10 -0
  109. package/dist/utils/storefront-stock.d.ts.map +1 -0
  110. package/package.json +38 -20
  111. package/CHANGELOG.md +0 -20
  112. package/LICENSE +0 -21
  113. package/dist/index.cjs +0 -18360
  114. package/dist/index.cjs.map +0 -1
  115. package/dist/index.d.cts +0 -1192
  116. package/dist/index.js +0 -18318
  117. package/dist/index.js.map +0 -1
@@ -0,0 +1,580 @@
1
+ import { NavigationMenuSlot } from '@shoppex/contracts/navigation';
2
+ /**
3
+ * API Response Types
4
+ *
5
+ * Backend returns: { status: number, data: T, error: string | null }
6
+ * SDK maps to: { success: boolean, data?: T, message?: string }
7
+ */
8
+ export interface ApiResponse<T> {
9
+ status: number;
10
+ data: T;
11
+ error: string | null;
12
+ message?: string | null;
13
+ }
14
+ export interface SDKResponse<T> {
15
+ success: boolean;
16
+ data?: T;
17
+ message?: string;
18
+ }
19
+ export interface Shop {
20
+ id: string;
21
+ name: string;
22
+ slug: string;
23
+ domain?: string;
24
+ description?: string;
25
+ title?: string;
26
+ message?: string;
27
+ url?: string;
28
+ logo?: string;
29
+ banner?: string;
30
+ avatar?: string;
31
+ average_score?: number | null;
32
+ rating?: number | null;
33
+ products_sold_count?: number;
34
+ customers_count?: number;
35
+ hide_products_sold?: boolean;
36
+ currency: string;
37
+ tos_enabled?: boolean;
38
+ dark_mode?: boolean;
39
+ search_enabled?: boolean;
40
+ sort_enabled?: boolean;
41
+ cart_enabled?: boolean;
42
+ hide_out_of_stock?: boolean;
43
+ hide_stock_counter?: boolean;
44
+ center_product_titles?: boolean;
45
+ center_group_titles?: boolean;
46
+ default_sort?: string;
47
+ social?: Record<string, string | null>;
48
+ discord_link?: string | null;
49
+ twitter_link?: string | null;
50
+ instagram_link?: string | null;
51
+ facebook_link?: string | null;
52
+ telegram_link?: string | null;
53
+ youtube_link?: string | null;
54
+ reddit_link?: string | null;
55
+ tiktok_link?: string | null;
56
+ verified?: boolean;
57
+ on_hold?: boolean;
58
+ theme?: ShopTheme | null;
59
+ builder_settings?: Record<string, unknown> | null;
60
+ feedback?: ShopFeedback;
61
+ trusted_checks?: TrustedChecks | null;
62
+ available_gateways?: string[];
63
+ reward_program_summary?: RewardProgramSummary | null;
64
+ }
65
+ export interface RewardProgramTeaserItem {
66
+ trigger_type: RewardReason;
67
+ action_type: RewardActionType;
68
+ label: string;
69
+ }
70
+ export interface RewardProgramSummary {
71
+ enabled: boolean;
72
+ headline: string;
73
+ items: RewardProgramTeaserItem[];
74
+ }
75
+ export interface ShopTheme {
76
+ primary_color?: string;
77
+ secondary_color?: string;
78
+ font?: string;
79
+ logo?: string | null;
80
+ logo_cloudflare_image_id?: string | null;
81
+ background_image?: string | null;
82
+ background_image_cloudflare_image_id?: string | null;
83
+ cards_in_row?: number | string;
84
+ cards_align?: string;
85
+ card_animation?: string;
86
+ dark_color?: string;
87
+ light_color?: string;
88
+ border_color?: string;
89
+ button_color?: string;
90
+ }
91
+ export interface ShopFeedback {
92
+ positive: number;
93
+ neutral: number;
94
+ negative: number;
95
+ total: number;
96
+ }
97
+ export interface TrustedChecks {
98
+ identity_verified?: boolean;
99
+ feedback_score?: string | null;
100
+ trusted_score?: number;
101
+ sales_last14days_metric?: string;
102
+ }
103
+ export interface ProductCategory {
104
+ uniqid: string;
105
+ title: string;
106
+ description?: string | null;
107
+ image_attachment?: string | null;
108
+ image_name?: string | null;
109
+ image_storage?: string | null;
110
+ cloudflare_image_id?: string | null;
111
+ cdn_image_url?: string | null;
112
+ }
113
+ export interface Product {
114
+ id?: string;
115
+ uniqid: string;
116
+ title: string;
117
+ slug?: string | null;
118
+ description?: string | null;
119
+ product_highlights?: string[];
120
+ price: string;
121
+ price_display?: string;
122
+ price_discount?: number;
123
+ currency: string;
124
+ stock?: number;
125
+ quantity_min?: number;
126
+ quantity_max?: number;
127
+ min_quantity?: number;
128
+ max_quantity?: number;
129
+ on_hold?: boolean | number;
130
+ unlisted?: boolean | number;
131
+ private?: boolean | number;
132
+ bestseller?: boolean | number;
133
+ type?: string;
134
+ subtype?: string | null;
135
+ isSubscription?: boolean;
136
+ isGroup?: boolean;
137
+ images: ProductImage[];
138
+ image_name?: string | null;
139
+ image_storage?: string | null;
140
+ cloudflare_image_id?: string | null;
141
+ image_attachment?: string | null;
142
+ sold_count?: number;
143
+ soldCount?: number;
144
+ image_attachments?: unknown[];
145
+ file_attachments?: unknown[];
146
+ variants?: ProductVariant[];
147
+ addons?: ProductAddon[];
148
+ price_variants?: PriceVariant[];
149
+ volume_discounts?: unknown;
150
+ custom_fields?: string | unknown[] | null;
151
+ categories?: ProductCategory[];
152
+ bundles?: ProductBundle[];
153
+ faqs?: ProductFaq[];
154
+ subscription?: Subscription;
155
+ feedbacks?: Feedback[];
156
+ feedback?: ProductFeedback;
157
+ cdn_image_url?: string;
158
+ detail_image_url?: string | null;
159
+ recurring_interval?: string | null;
160
+ recurring_interval_count?: number | null;
161
+ trial_period?: number | null;
162
+ setup_cost?: string;
163
+ licensing_enabled?: boolean | number;
164
+ license_period?: number | null;
165
+ gateways?: string;
166
+ delivery_text?: string;
167
+ service_text?: string;
168
+ terms_of_service?: string | null;
169
+ warranty?: number;
170
+ warranty_text?: string | null;
171
+ sort_priority?: number;
172
+ price_conversions?: Record<string, number>;
173
+ pay_what_you_want?: boolean | number;
174
+ cost?: string | null;
175
+ cost_display?: string | null;
176
+ youtube_link?: string | null;
177
+ }
178
+ export interface ProductFeedback {
179
+ total: number;
180
+ positive: number;
181
+ neutral: number;
182
+ negative: number;
183
+ numbers?: Record<number, number>;
184
+ list?: Array<{
185
+ score: number;
186
+ message: string | null;
187
+ reply: string | null;
188
+ created_at: string | null;
189
+ createdAt?: string | null;
190
+ updated_at: string | null;
191
+ updatedAt?: string | null;
192
+ is_automated?: boolean;
193
+ isAutomated?: boolean;
194
+ }>;
195
+ }
196
+ export interface ProductImage {
197
+ id: string;
198
+ url: string;
199
+ cloudflare_image_id?: string;
200
+ alt?: string;
201
+ }
202
+ export interface ProductVariant {
203
+ id: string;
204
+ title: string;
205
+ price?: number;
206
+ stock?: number;
207
+ quantity_min?: number;
208
+ quantity_max?: number;
209
+ quantityMin?: number;
210
+ quantityMax?: number;
211
+ image_id?: string | null;
212
+ imageId?: string | null;
213
+ cloudflare_image_id?: string | null;
214
+ cloudflareImageId?: string | null;
215
+ image_url?: string | null;
216
+ imageUrl?: string | null;
217
+ }
218
+ export interface ProductAddon {
219
+ id: string;
220
+ name?: string;
221
+ title?: string;
222
+ price: number;
223
+ required?: boolean;
224
+ }
225
+ export interface PriceVariant {
226
+ id: string;
227
+ label?: string;
228
+ title?: string;
229
+ price: number;
230
+ stock?: number;
231
+ quantity_min?: number;
232
+ quantity_max?: number;
233
+ quantityMin?: number;
234
+ quantityMax?: number;
235
+ image_id?: string | null;
236
+ imageId?: string | null;
237
+ cloudflare_image_id?: string | null;
238
+ cloudflareImageId?: string | null;
239
+ image_url?: string | null;
240
+ imageUrl?: string | null;
241
+ }
242
+ export interface CustomFieldDefinition {
243
+ id: string;
244
+ name: string;
245
+ type: 'text' | 'textarea' | 'select' | 'checkbox';
246
+ required?: boolean;
247
+ options?: string[];
248
+ }
249
+ export interface Feedback {
250
+ id: string;
251
+ rating: number;
252
+ score?: number;
253
+ author?: string;
254
+ customer_name?: string;
255
+ comment?: string;
256
+ message?: string | null;
257
+ reply?: string | null;
258
+ is_automated?: boolean;
259
+ isAutomated?: boolean;
260
+ product_id?: string | null;
261
+ product_title?: string | null;
262
+ cloudflare_image_id?: string | null;
263
+ created_at: string;
264
+ updated_at?: string | number | null;
265
+ }
266
+ export interface ProductBundle {
267
+ id?: string;
268
+ uniqid?: string;
269
+ title?: string;
270
+ discount_type?: 'PERCENTAGE' | 'FIXED';
271
+ discount_amount?: number;
272
+ products?: ProductBundleProduct[];
273
+ }
274
+ export interface ProductBundleProduct {
275
+ id?: string;
276
+ uniqid: string;
277
+ title?: string | null;
278
+ default_variant_id?: string;
279
+ }
280
+ export interface ProductFaq {
281
+ id?: string;
282
+ uniqid?: string;
283
+ question: string;
284
+ answer: string;
285
+ }
286
+ export interface SubscriptionInterval {
287
+ unit?: string;
288
+ count?: number;
289
+ label?: string;
290
+ }
291
+ export interface SubscriptionFlags {
292
+ cancel_anytime?: boolean;
293
+ }
294
+ export interface Subscription {
295
+ id?: string;
296
+ name?: string;
297
+ description?: string;
298
+ badge?: string;
299
+ interval?: SubscriptionInterval;
300
+ flags?: SubscriptionFlags;
301
+ }
302
+ export interface Invoice {
303
+ uniqid: string;
304
+ status: string;
305
+ total: number;
306
+ currency: string;
307
+ gateway?: string;
308
+ products: InvoiceProduct[];
309
+ created_at: string;
310
+ rewards?: BuyerRewards | null;
311
+ }
312
+ export interface InvoiceProduct {
313
+ product_id: string;
314
+ title: string;
315
+ quantity: number;
316
+ price: number;
317
+ }
318
+ export type RewardActionType = 'WALLET_CREDIT' | 'COUPON';
319
+ export type RewardGrantStatus = 'PENDING' | 'FULFILLED' | 'FAILED' | 'REVOKED';
320
+ export type RewardReason = 'ORDER_COMPLETED' | 'ORDER_COUNT_REACHED' | 'SPEND_AMOUNT_REACHED' | 'POSITIVE_REVIEW_LEFT' | 'FIRST_PURCHASE_COMPLETED';
321
+ export interface BuyerRewardActivityItem {
322
+ id: string;
323
+ type: RewardActionType;
324
+ status: RewardGrantStatus;
325
+ amount: string | null;
326
+ currency: string | null;
327
+ coupon_code: string | null;
328
+ reason: RewardReason;
329
+ trigger_reference_type: string;
330
+ trigger_reference_id: string;
331
+ created_at: number;
332
+ fulfilled_at: number | null;
333
+ expires_at: number | null;
334
+ }
335
+ export interface BuyerRewards {
336
+ summary: {
337
+ available: string;
338
+ pending: string;
339
+ lifetime_earned: string;
340
+ redeemed: string | null;
341
+ currency: string;
342
+ };
343
+ activity: BuyerRewardActivityItem[];
344
+ earned_after_invoice: BuyerRewardActivityItem[];
345
+ pending_after_invoice: BuyerRewardActivityItem[];
346
+ }
347
+ export interface CouponValidation {
348
+ valid: boolean;
349
+ discount?: number;
350
+ discount_type?: 'percentage' | 'fixed';
351
+ source?: 'COUPON' | 'AFFILIATE';
352
+ product_restricted?: boolean;
353
+ variant_restricted?: boolean;
354
+ restriction_scope?: 'all' | 'products' | 'variants' | 'products_and_variants';
355
+ allowed_product_ids?: string[];
356
+ allowed_variant_ids?: string[];
357
+ message?: string;
358
+ }
359
+ export interface CouponValidationOptions {
360
+ productId?: string;
361
+ variantId?: string;
362
+ }
363
+ export interface AffiliateValidation {
364
+ valid: boolean;
365
+ program_enabled?: boolean;
366
+ affiliate_code: string | null;
367
+ discount_active: boolean;
368
+ discount_percent: number;
369
+ message?: string;
370
+ }
371
+ export interface ProductGroup {
372
+ id?: string;
373
+ uniqid: string;
374
+ category_id?: string | null;
375
+ slug?: string | null;
376
+ name?: string | null;
377
+ title: string;
378
+ description?: string | null;
379
+ products_bound?: Product[];
380
+ products_count?: number;
381
+ image_attachment?: string | null;
382
+ image_name?: string | null;
383
+ image_storage?: string | null;
384
+ cloudflare_image_id?: string | null;
385
+ cdn_image_url?: string | null;
386
+ sort_priority?: number | null;
387
+ }
388
+ export interface Category {
389
+ uniqid: string;
390
+ title: string;
391
+ description?: string | null;
392
+ image_attachment?: string | null;
393
+ image_name?: string | null;
394
+ image_storage?: string | null;
395
+ cloudflare_image_id?: string | null;
396
+ cdn_image_url?: string | null;
397
+ product_uniqids?: string[];
398
+ products_bound?: Product[];
399
+ products_count?: number;
400
+ groups_bound?: ProductGroup[];
401
+ groups_count?: number;
402
+ }
403
+ export interface CursorPagination {
404
+ next_cursor: string | null;
405
+ has_more: boolean;
406
+ }
407
+ export interface StorefrontAnnouncementBarAddon {
408
+ id: string;
409
+ type: 'announcement_bar';
410
+ slot: string;
411
+ component: 'announcement_bar';
412
+ sort_order: number;
413
+ props: {
414
+ addon_id: string;
415
+ text: string;
416
+ link_label?: string | null;
417
+ link_url?: string | null;
418
+ dismissible: boolean;
419
+ display_mode: 'static' | 'marquee';
420
+ theme_preset: 'brand_blue' | 'emerald' | 'sunset' | 'rose' | 'charcoal' | 'custom';
421
+ animation_speed_seconds: number;
422
+ background_color: string;
423
+ text_color: string;
424
+ };
425
+ }
426
+ export interface StorefrontCountdownBarAddon {
427
+ id: string;
428
+ type: 'countdown_bar';
429
+ slot: string;
430
+ component: 'countdown_bar';
431
+ sort_order: number;
432
+ props: {
433
+ addon_id: string;
434
+ text: string;
435
+ end_at: string;
436
+ link_label?: string | null;
437
+ link_url?: string | null;
438
+ dismissible: boolean;
439
+ theme_preset: 'brand_blue' | 'emerald' | 'sunset' | 'rose' | 'charcoal' | 'custom';
440
+ expired_behavior: 'hide' | 'message';
441
+ expired_message?: string | null;
442
+ density: 'compact' | 'comfortable';
443
+ cta_style: 'subtle' | 'outline' | 'solid';
444
+ timer_style: 'minimal' | 'boxed';
445
+ background_color: string;
446
+ text_color: string;
447
+ };
448
+ }
449
+ export interface StorefrontPromoInfoCardAddon {
450
+ id: string;
451
+ type: 'promo_info_card';
452
+ slot: string;
453
+ component: 'promo_info_card';
454
+ sort_order: number;
455
+ props: {
456
+ addon_id: string;
457
+ eyebrow?: string | null;
458
+ title: string;
459
+ body: string;
460
+ link_label?: string | null;
461
+ link_url?: string | null;
462
+ theme_preset: 'indigo' | 'emerald' | 'amber' | 'rose' | 'slate' | 'custom';
463
+ layout_style: 'compact' | 'feature' | 'alert';
464
+ density: 'compact' | 'comfortable';
465
+ cta_style: 'subtle' | 'outline' | 'solid';
466
+ icon: 'sparkles' | 'megaphone' | 'gift' | 'truck' | 'shield' | 'support' | 'none';
467
+ icon_visibility: 'show' | 'hide';
468
+ background_color: string;
469
+ text_color: string;
470
+ accent_color: string;
471
+ };
472
+ }
473
+ export interface StorefrontRecentPurchasePopupAddon {
474
+ id: string;
475
+ type: 'recent_purchase_popup';
476
+ slot: string;
477
+ component: 'recent_purchase_popup';
478
+ sort_order: number;
479
+ props: {
480
+ addon_id: string;
481
+ title: string;
482
+ cooldown_seconds: number;
483
+ items: Array<{
484
+ customer_label: string;
485
+ product_title: string;
486
+ created_at: string;
487
+ }>;
488
+ };
489
+ }
490
+ export interface StorefrontCouponPopupModalAddon {
491
+ id: string;
492
+ type: 'coupon_popup_modal';
493
+ slot: string;
494
+ component: 'coupon_popup_modal';
495
+ sort_order: number;
496
+ props: {
497
+ addon_id: string;
498
+ eyebrow?: string | null;
499
+ title: string;
500
+ body: string;
501
+ coupon_code: string;
502
+ primary_button_label: string;
503
+ secondary_button_label: string;
504
+ disclaimer?: string | null;
505
+ theme_preset: 'midnight' | 'ocean' | 'ember' | 'forest' | 'custom';
506
+ trigger: 'delay' | 'exit_intent';
507
+ delay_seconds: number;
508
+ show_once_per_session: boolean;
509
+ reminder_hours: number;
510
+ background_color: string;
511
+ text_color: string;
512
+ accent_color: string;
513
+ hero_image_url?: string | null;
514
+ discount_display?: string | null;
515
+ expires_at?: string | null;
516
+ };
517
+ }
518
+ export type StorefrontAddon = StorefrontAnnouncementBarAddon | StorefrontCountdownBarAddon | StorefrontPromoInfoCardAddon | StorefrontRecentPurchasePopupAddon | StorefrontCouponPopupModalAddon;
519
+ export interface StorefrontAddonBootstrap {
520
+ items: StorefrontAddon[];
521
+ }
522
+ export interface StorefrontOnlineUsers {
523
+ count: number;
524
+ window_seconds: number;
525
+ }
526
+ export type StorefrontItem = {
527
+ item_type: 'PRODUCT' | 'GROUP';
528
+ uniqid: string;
529
+ sort_priority?: number | null;
530
+ title?: string | null;
531
+ name?: string | null;
532
+ };
533
+ export interface StorefrontData {
534
+ shop: Shop;
535
+ products: Product[];
536
+ products_pagination?: CursorPagination | null;
537
+ groups: ProductGroup[];
538
+ items: StorefrontItem[];
539
+ categories: Category[];
540
+ addons: StorefrontAddonBootstrap;
541
+ }
542
+ export interface Page {
543
+ id: string;
544
+ shop_id?: string;
545
+ slug: string;
546
+ name: string;
547
+ content: string | null;
548
+ template_type: string;
549
+ is_system: boolean;
550
+ settings: Record<string, unknown> | null;
551
+ visible_after: string | null;
552
+ created_at: number;
553
+ updated_at: number;
554
+ }
555
+ export interface Menu {
556
+ id: string;
557
+ shop_id: string;
558
+ title: string;
559
+ slot?: NavigationMenuSlot | null;
560
+ item_count?: number | null;
561
+ items?: MenuItem[];
562
+ created_at: number;
563
+ updated_at: number;
564
+ }
565
+ export interface MenuItem {
566
+ id: string;
567
+ shop_id?: string;
568
+ menu_id: string;
569
+ page_id: string | null;
570
+ title: string;
571
+ url?: string | null;
572
+ link_type?: 'LINK' | 'PAGE' | 'link' | 'page' | null;
573
+ target?: '_self' | '_blank' | null;
574
+ sort_order: number;
575
+ page_slug: string | null;
576
+ created_at: number;
577
+ updated_at: number;
578
+ children?: MenuItem[];
579
+ }
580
+ //# sourceMappingURL=api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/types/api.ts"],"names":[],"mappings":"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"}