@seekora-ai/ui-sdk-types 0.1.1

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.
@@ -0,0 +1,290 @@
1
+ /**
2
+ * Component Type Definitions
3
+ *
4
+ * Shared component types across all framework implementations
5
+ */
6
+ export interface FieldMapping {
7
+ /** Field path to extract the title (supports dot notation, e.g., "document.productName") */
8
+ title?: string;
9
+ /** Field path to extract the description */
10
+ description?: string;
11
+ /** Field path to extract the image URL */
12
+ image?: string;
13
+ /** Field path to extract the price */
14
+ price?: string;
15
+ /** Field path to extract the URL/link */
16
+ url?: string;
17
+ /** Field path to extract the ID */
18
+ id?: string;
19
+ /** Widget view fields (when widget_mode is enabled) */
20
+ primaryText?: string;
21
+ secondaryText?: string;
22
+ tertiaryText?: string;
23
+ imageUrl?: string;
24
+ /** Custom field mappings for additional data */
25
+ custom?: Record<string, string>;
26
+ }
27
+ export type ViewMode = 'list' | 'card' | 'grid' | 'table';
28
+ export interface ResultItem {
29
+ id: string;
30
+ title: string;
31
+ description?: string;
32
+ url?: string;
33
+ image?: string;
34
+ price?: string;
35
+ metadata?: Record<string, any>;
36
+ primaryText?: string;
37
+ secondaryText?: string;
38
+ tertiaryText?: string;
39
+ imageUrl?: string;
40
+ [key: string]: any;
41
+ }
42
+ /** Basic suggestion item */
43
+ export interface SuggestionItem {
44
+ query: string;
45
+ count?: number;
46
+ popularity?: number;
47
+ objectID?: string;
48
+ metadata?: Record<string, any>;
49
+ /** Highlighted query with match markers */
50
+ highlightedQuery?: string;
51
+ /** Categories associated with this suggestion */
52
+ categories?: SuggestionCategory[];
53
+ /** Facets associated with this suggestion */
54
+ facets?: SuggestionFacets;
55
+ }
56
+ /** Category information for a suggestion */
57
+ export interface SuggestionCategory {
58
+ value: string;
59
+ count?: number;
60
+ path?: string[];
61
+ }
62
+ /** Facet information for suggestions */
63
+ export interface SuggestionFacets {
64
+ exact_matches?: Record<string, FacetValue[]>;
65
+ analytics?: Record<string, FacetValue[]>;
66
+ }
67
+ /** Individual facet value */
68
+ export interface FacetValue {
69
+ value: string;
70
+ count: number;
71
+ highlighted?: string;
72
+ }
73
+ /** Product item in dropdown recommendations */
74
+ export interface ProductItem {
75
+ id: string;
76
+ objectID?: string;
77
+ title: string;
78
+ name?: string;
79
+ image?: string;
80
+ price?: number;
81
+ currency?: string;
82
+ url?: string;
83
+ clicks?: number;
84
+ conversions?: number;
85
+ revenue?: number;
86
+ trend_score?: number;
87
+ metadata?: Record<string, any>;
88
+ }
89
+ /** Filtered tab configuration */
90
+ export interface FilteredTab {
91
+ id: string;
92
+ label: string;
93
+ filter?: string;
94
+ products?: ProductItem[];
95
+ nb_hits?: number;
96
+ processing_time_ms?: number;
97
+ }
98
+ /** Dropdown recommendations from API */
99
+ export interface DropdownRecommendations {
100
+ trending_searches?: TrendingSearch[];
101
+ top_searches?: TopSearch[];
102
+ related_searches?: RelatedSearch[];
103
+ trending_products?: ProductItem[];
104
+ item_recommendations?: ProductItem[];
105
+ popular_brands?: PopularBrand[];
106
+ filtered_tabs?: FilteredTab[];
107
+ processing_time_ms?: number;
108
+ cached_at?: string;
109
+ }
110
+ /** Trending search item */
111
+ export interface TrendingSearch {
112
+ query: string;
113
+ count?: number;
114
+ trend_score?: number;
115
+ }
116
+ /** Top search item */
117
+ export interface TopSearch {
118
+ query: string;
119
+ count: number;
120
+ clicks?: number;
121
+ conversions?: number;
122
+ }
123
+ /** Related search item */
124
+ export interface RelatedSearch {
125
+ query: string;
126
+ relevance_score?: number;
127
+ }
128
+ /** Popular brand item */
129
+ export interface PopularBrand {
130
+ name: string;
131
+ count: number;
132
+ logo?: string;
133
+ }
134
+ /** Recent search stored locally */
135
+ export interface RecentSearch {
136
+ query: string;
137
+ timestamp: number;
138
+ resultsCount?: number;
139
+ }
140
+ /** Full query suggestions API response structure */
141
+ export interface QuerySuggestionsResponse {
142
+ /** Suggestion hits */
143
+ suggestions: SuggestionItem[];
144
+ /** Total number of hits */
145
+ nbHits: number;
146
+ /** Current page */
147
+ page: number;
148
+ /** Total pages */
149
+ nbPages: number;
150
+ /** Items per page */
151
+ hitsPerPage: number;
152
+ /** Processing time in ms */
153
+ processingTimeMS?: number;
154
+ /** Original query */
155
+ query: string;
156
+ /** Dropdown recommendations (when requested) */
157
+ dropdownRecommendations?: DropdownRecommendations;
158
+ /** Raw API results array (multi-index) */
159
+ results?: any[];
160
+ /** Extensions from response */
161
+ extensions?: Record<string, any>;
162
+ }
163
+ /** Layout variant for query suggestions dropdown */
164
+ export type QuerySuggestionsVariant = 'classic' | 'rich' | 'federated' | 'compact' | 'full-page';
165
+ /** Section types in the dropdown */
166
+ export type DropdownSection = 'suggestions' | 'recent' | 'trending' | 'products' | 'categories' | 'brands' | 'tabs';
167
+ /** Section configuration */
168
+ export interface DropdownSectionConfig {
169
+ id: DropdownSection;
170
+ title?: string;
171
+ maxItems?: number;
172
+ enabled?: boolean;
173
+ order?: number;
174
+ }
175
+ /** Highlight configuration */
176
+ export interface HighlightConfig {
177
+ /** Enable highlighting */
178
+ enabled?: boolean;
179
+ /** Pre tag for highlight (default: <mark>) */
180
+ preTag?: string;
181
+ /** Post tag for highlight (default: </mark>) */
182
+ postTag?: string;
183
+ /** CSS class for highlighted text */
184
+ highlightClass?: string;
185
+ }
186
+ /** Keyboard navigation options */
187
+ export interface KeyboardNavConfig {
188
+ /** Enable keyboard navigation */
189
+ enabled?: boolean;
190
+ /** Keys for navigation (default: ArrowUp, ArrowDown) */
191
+ upKey?: string;
192
+ downKey?: string;
193
+ /** Key to select (default: Enter) */
194
+ selectKey?: string;
195
+ /** Key to close (default: Escape) */
196
+ closeKey?: string;
197
+ /** Enable type-ahead selection */
198
+ typeAhead?: boolean;
199
+ }
200
+ /** Animation configuration */
201
+ export interface AnimationConfig {
202
+ /** Enable animations */
203
+ enabled?: boolean;
204
+ /** Animation duration in ms */
205
+ duration?: number;
206
+ /** Animation easing */
207
+ easing?: string;
208
+ /** Entrance animation */
209
+ entrance?: 'fade' | 'slide' | 'scale' | 'none';
210
+ /** Exit animation */
211
+ exit?: 'fade' | 'slide' | 'scale' | 'none';
212
+ }
213
+ /** Analytics tracking configuration */
214
+ export interface SuggestionsAnalyticsConfig {
215
+ /** Track suggestion clicks */
216
+ trackClicks?: boolean;
217
+ /** Track suggestion impressions */
218
+ trackImpressions?: boolean;
219
+ /** Track product clicks from dropdown */
220
+ trackProductClicks?: boolean;
221
+ /** Custom analytics tags */
222
+ analyticsTags?: string[];
223
+ /** Debounce impression tracking (ms) */
224
+ impressionDebounce?: number;
225
+ }
226
+ /** CSS class names for component parts */
227
+ export interface QuerySuggestionsClassNames {
228
+ root?: string;
229
+ container?: string;
230
+ header?: string;
231
+ section?: string;
232
+ sectionTitle?: string;
233
+ suggestionsList?: string;
234
+ suggestionItem?: string;
235
+ suggestionItemActive?: string;
236
+ suggestionItemHighlight?: string;
237
+ suggestionQuery?: string;
238
+ suggestionCount?: string;
239
+ suggestionCategory?: string;
240
+ productsList?: string;
241
+ productItem?: string;
242
+ productImage?: string;
243
+ productTitle?: string;
244
+ productPrice?: string;
245
+ recentSearches?: string;
246
+ recentItem?: string;
247
+ recentRemove?: string;
248
+ trendingSearches?: string;
249
+ trendingItem?: string;
250
+ trendingIcon?: string;
251
+ categoriesList?: string;
252
+ categoryItem?: string;
253
+ brandsList?: string;
254
+ brandItem?: string;
255
+ tabsList?: string;
256
+ tabItem?: string;
257
+ tabActive?: string;
258
+ tabContent?: string;
259
+ loadingState?: string;
260
+ emptyState?: string;
261
+ errorState?: string;
262
+ footer?: string;
263
+ viewAll?: string;
264
+ }
265
+ /** Event handlers for query suggestions */
266
+ export interface QuerySuggestionsEventHandlers {
267
+ /** Called when a suggestion is clicked/selected */
268
+ onSuggestionSelect?: (suggestion: SuggestionItem) => void;
269
+ /** Called when a product is clicked */
270
+ onProductClick?: (product: ProductItem) => void;
271
+ /** Called when a category is clicked */
272
+ onCategoryClick?: (category: SuggestionCategory) => void;
273
+ /** Called when a brand is clicked */
274
+ onBrandClick?: (brand: PopularBrand) => void;
275
+ /** Called when a tab is selected */
276
+ onTabSelect?: (tab: FilteredTab) => void;
277
+ /** Called when recent search is clicked */
278
+ onRecentSearchClick?: (search: RecentSearch) => void;
279
+ /** Called when recent search is removed */
280
+ onRecentSearchRemove?: (search: RecentSearch) => void;
281
+ /** Called when "View All" is clicked */
282
+ onViewAllClick?: (section: DropdownSection) => void;
283
+ /** Called when dropdown opens */
284
+ onOpen?: () => void;
285
+ /** Called when dropdown closes */
286
+ onClose?: () => void;
287
+ /** Called on keyboard navigation */
288
+ onNavigate?: (direction: 'up' | 'down', index: number) => void;
289
+ }
290
+ //# sourceMappingURL=components.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../src/components.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Component Type Definitions
3
+ *
4
+ * Shared component types across all framework implementations
5
+ */
6
+ export {};
@@ -0,0 +1,439 @@
1
+ /**
2
+ * Theme Type Definitions
3
+ *
4
+ * Shared theme types across all framework implementations
5
+ */
6
+
7
+ interface ThemeColors {
8
+ primary: string;
9
+ secondary: string;
10
+ background: string;
11
+ surface?: string;
12
+ text: string;
13
+ textSecondary?: string;
14
+ border: string;
15
+ hover: string;
16
+ focus: string;
17
+ error: string;
18
+ success?: string;
19
+ warning?: string;
20
+ }
21
+
22
+ interface ThemeTypography {
23
+ fontFamily: string;
24
+ fontSize: {
25
+ small: string;
26
+ medium: string;
27
+ large: string;
28
+ };
29
+ fontWeight?: {
30
+ normal?: number;
31
+ medium?: number;
32
+ semibold?: number;
33
+ bold?: number;
34
+ };
35
+ lineHeight?: {
36
+ tight?: number;
37
+ normal?: number;
38
+ relaxed?: number;
39
+ };
40
+ }
41
+
42
+ interface ThemeSpacing {
43
+ small: string;
44
+ medium: string;
45
+ large: string;
46
+ }
47
+
48
+ interface ThemeBorderRadius {
49
+ none?: string;
50
+ small?: string;
51
+ medium: string;
52
+ large?: string;
53
+ full?: string;
54
+ }
55
+
56
+ interface ThemeShadows {
57
+ small: string;
58
+ medium: string;
59
+ large: string;
60
+ }
61
+
62
+ interface ThemeTransitions {
63
+ fast?: string;
64
+ normal?: string;
65
+ slow?: string;
66
+ }
67
+
68
+ interface ThemeBreakpoints {
69
+ sm?: string;
70
+ md?: string;
71
+ lg?: string;
72
+ xl?: string;
73
+ }
74
+
75
+ interface ThemeZIndex {
76
+ dropdown?: number;
77
+ modal?: number;
78
+ tooltip?: number;
79
+ }
80
+
81
+ interface Theme {
82
+ colors: ThemeColors;
83
+ typography: ThemeTypography;
84
+ spacing: ThemeSpacing;
85
+ borderRadius: string | ThemeBorderRadius;
86
+ shadows: ThemeShadows;
87
+ transitions?: ThemeTransitions;
88
+ breakpoints?: ThemeBreakpoints;
89
+ zIndex?: ThemeZIndex;
90
+ }
91
+
92
+ interface ThemeConfig {
93
+ colors?: Partial<ThemeColors>;
94
+ typography?: Partial<ThemeTypography>;
95
+ spacing?: Partial<ThemeSpacing>;
96
+ borderRadius?: string | Partial<ThemeBorderRadius>;
97
+ shadows?: Partial<ThemeShadows>;
98
+ transitions?: Partial<ThemeTransitions>;
99
+ breakpoints?: Partial<ThemeBreakpoints>;
100
+ zIndex?: Partial<ThemeZIndex>;
101
+ }
102
+
103
+ /**
104
+ * Component Type Definitions
105
+ *
106
+ * Shared component types across all framework implementations
107
+ */
108
+
109
+ interface FieldMapping {
110
+ /** Field path to extract the title (supports dot notation, e.g., "document.productName") */
111
+ title?: string;
112
+ /** Field path to extract the description */
113
+ description?: string;
114
+ /** Field path to extract the image URL */
115
+ image?: string;
116
+ /** Field path to extract the price */
117
+ price?: string;
118
+ /** Field path to extract the URL/link */
119
+ url?: string;
120
+ /** Field path to extract the ID */
121
+ id?: string;
122
+ /** Widget view fields (when widget_mode is enabled) */
123
+ primaryText?: string;
124
+ secondaryText?: string;
125
+ tertiaryText?: string;
126
+ imageUrl?: string;
127
+ /** Custom field mappings for additional data */
128
+ custom?: Record<string, string>;
129
+ }
130
+
131
+ type ViewMode = 'list' | 'card' | 'grid' | 'table';
132
+
133
+ interface ResultItem {
134
+ id: string;
135
+ title: string;
136
+ description?: string;
137
+ url?: string;
138
+ image?: string;
139
+ price?: string;
140
+ metadata?: Record<string, any>;
141
+ // Widget view fields
142
+ primaryText?: string;
143
+ secondaryText?: string;
144
+ tertiaryText?: string;
145
+ imageUrl?: string;
146
+ [key: string]: any;
147
+ }
148
+
149
+ // ============================================================================
150
+ // Query Suggestions Types
151
+ // ============================================================================
152
+
153
+ /** Basic suggestion item */
154
+ interface SuggestionItem {
155
+ query: string;
156
+ count?: number;
157
+ popularity?: number;
158
+ objectID?: string;
159
+ metadata?: Record<string, any>;
160
+ /** Highlighted query with match markers */
161
+ highlightedQuery?: string;
162
+ /** Categories associated with this suggestion */
163
+ categories?: SuggestionCategory[];
164
+ /** Facets associated with this suggestion */
165
+ facets?: SuggestionFacets;
166
+ }
167
+
168
+ /** Category information for a suggestion */
169
+ interface SuggestionCategory {
170
+ value: string;
171
+ count?: number;
172
+ path?: string[];
173
+ }
174
+
175
+ /** Facet information for suggestions */
176
+ interface SuggestionFacets {
177
+ exact_matches?: Record<string, FacetValue[]>;
178
+ analytics?: Record<string, FacetValue[]>;
179
+ }
180
+
181
+ /** Individual facet value */
182
+ interface FacetValue {
183
+ value: string;
184
+ count: number;
185
+ highlighted?: string;
186
+ }
187
+
188
+ /** Product item in dropdown recommendations */
189
+ interface ProductItem {
190
+ id: string;
191
+ objectID?: string;
192
+ title: string;
193
+ name?: string;
194
+ image?: string;
195
+ price?: number;
196
+ currency?: string;
197
+ url?: string;
198
+ clicks?: number;
199
+ conversions?: number;
200
+ revenue?: number;
201
+ trend_score?: number;
202
+ metadata?: Record<string, any>;
203
+ }
204
+
205
+ /** Filtered tab configuration */
206
+ interface FilteredTab {
207
+ id: string;
208
+ label: string;
209
+ filter?: string;
210
+ products?: ProductItem[];
211
+ nb_hits?: number;
212
+ processing_time_ms?: number;
213
+ }
214
+
215
+ /** Dropdown recommendations from API */
216
+ interface DropdownRecommendations {
217
+ trending_searches?: TrendingSearch[];
218
+ top_searches?: TopSearch[];
219
+ related_searches?: RelatedSearch[];
220
+ trending_products?: ProductItem[];
221
+ item_recommendations?: ProductItem[];
222
+ popular_brands?: PopularBrand[];
223
+ filtered_tabs?: FilteredTab[];
224
+ processing_time_ms?: number;
225
+ cached_at?: string;
226
+ }
227
+
228
+ /** Trending search item */
229
+ interface TrendingSearch {
230
+ query: string;
231
+ count?: number;
232
+ trend_score?: number;
233
+ }
234
+
235
+ /** Top search item */
236
+ interface TopSearch {
237
+ query: string;
238
+ count: number;
239
+ clicks?: number;
240
+ conversions?: number;
241
+ }
242
+
243
+ /** Related search item */
244
+ interface RelatedSearch {
245
+ query: string;
246
+ relevance_score?: number;
247
+ }
248
+
249
+ /** Popular brand item */
250
+ interface PopularBrand {
251
+ name: string;
252
+ count: number;
253
+ logo?: string;
254
+ }
255
+
256
+ /** Recent search stored locally */
257
+ interface RecentSearch {
258
+ query: string;
259
+ timestamp: number;
260
+ resultsCount?: number;
261
+ }
262
+
263
+ /** Full query suggestions API response structure */
264
+ interface QuerySuggestionsResponse {
265
+ /** Suggestion hits */
266
+ suggestions: SuggestionItem[];
267
+ /** Total number of hits */
268
+ nbHits: number;
269
+ /** Current page */
270
+ page: number;
271
+ /** Total pages */
272
+ nbPages: number;
273
+ /** Items per page */
274
+ hitsPerPage: number;
275
+ /** Processing time in ms */
276
+ processingTimeMS?: number;
277
+ /** Original query */
278
+ query: string;
279
+ /** Dropdown recommendations (when requested) */
280
+ dropdownRecommendations?: DropdownRecommendations;
281
+ /** Raw API results array (multi-index) */
282
+ results?: any[];
283
+ /** Extensions from response */
284
+ extensions?: Record<string, any>;
285
+ }
286
+
287
+ // ============================================================================
288
+ // Query Suggestions Component Types
289
+ // ============================================================================
290
+
291
+ /** Layout variant for query suggestions dropdown */
292
+ type QuerySuggestionsVariant =
293
+ | 'classic' // Simple list of suggestions
294
+ | 'rich' // Suggestions with categories and trending
295
+ | 'federated' // Multi-section with products, categories, brands
296
+ | 'compact' // Minimal dropdown for mobile
297
+ | 'full-page'; // Full page modal for mobile
298
+
299
+ /** Section types in the dropdown */
300
+ type DropdownSection =
301
+ | 'suggestions'
302
+ | 'recent'
303
+ | 'trending'
304
+ | 'products'
305
+ | 'categories'
306
+ | 'brands'
307
+ | 'tabs';
308
+
309
+ /** Section configuration */
310
+ interface DropdownSectionConfig {
311
+ id: DropdownSection;
312
+ title?: string;
313
+ maxItems?: number;
314
+ enabled?: boolean;
315
+ order?: number;
316
+ }
317
+
318
+ /** Highlight configuration */
319
+ interface HighlightConfig {
320
+ /** Enable highlighting */
321
+ enabled?: boolean;
322
+ /** Pre tag for highlight (default: <mark>) */
323
+ preTag?: string;
324
+ /** Post tag for highlight (default: </mark>) */
325
+ postTag?: string;
326
+ /** CSS class for highlighted text */
327
+ highlightClass?: string;
328
+ }
329
+
330
+ /** Keyboard navigation options */
331
+ interface KeyboardNavConfig {
332
+ /** Enable keyboard navigation */
333
+ enabled?: boolean;
334
+ /** Keys for navigation (default: ArrowUp, ArrowDown) */
335
+ upKey?: string;
336
+ downKey?: string;
337
+ /** Key to select (default: Enter) */
338
+ selectKey?: string;
339
+ /** Key to close (default: Escape) */
340
+ closeKey?: string;
341
+ /** Enable type-ahead selection */
342
+ typeAhead?: boolean;
343
+ }
344
+
345
+ /** Animation configuration */
346
+ interface AnimationConfig {
347
+ /** Enable animations */
348
+ enabled?: boolean;
349
+ /** Animation duration in ms */
350
+ duration?: number;
351
+ /** Animation easing */
352
+ easing?: string;
353
+ /** Entrance animation */
354
+ entrance?: 'fade' | 'slide' | 'scale' | 'none';
355
+ /** Exit animation */
356
+ exit?: 'fade' | 'slide' | 'scale' | 'none';
357
+ }
358
+
359
+ /** Analytics tracking configuration */
360
+ interface SuggestionsAnalyticsConfig {
361
+ /** Track suggestion clicks */
362
+ trackClicks?: boolean;
363
+ /** Track suggestion impressions */
364
+ trackImpressions?: boolean;
365
+ /** Track product clicks from dropdown */
366
+ trackProductClicks?: boolean;
367
+ /** Custom analytics tags */
368
+ analyticsTags?: string[];
369
+ /** Debounce impression tracking (ms) */
370
+ impressionDebounce?: number;
371
+ }
372
+
373
+ /** CSS class names for component parts */
374
+ interface QuerySuggestionsClassNames {
375
+ root?: string;
376
+ container?: string;
377
+ header?: string;
378
+ section?: string;
379
+ sectionTitle?: string;
380
+ suggestionsList?: string;
381
+ suggestionItem?: string;
382
+ suggestionItemActive?: string;
383
+ suggestionItemHighlight?: string;
384
+ suggestionQuery?: string;
385
+ suggestionCount?: string;
386
+ suggestionCategory?: string;
387
+ productsList?: string;
388
+ productItem?: string;
389
+ productImage?: string;
390
+ productTitle?: string;
391
+ productPrice?: string;
392
+ recentSearches?: string;
393
+ recentItem?: string;
394
+ recentRemove?: string;
395
+ trendingSearches?: string;
396
+ trendingItem?: string;
397
+ trendingIcon?: string;
398
+ categoriesList?: string;
399
+ categoryItem?: string;
400
+ brandsList?: string;
401
+ brandItem?: string;
402
+ tabsList?: string;
403
+ tabItem?: string;
404
+ tabActive?: string;
405
+ tabContent?: string;
406
+ loadingState?: string;
407
+ emptyState?: string;
408
+ errorState?: string;
409
+ footer?: string;
410
+ viewAll?: string;
411
+ }
412
+
413
+ /** Event handlers for query suggestions */
414
+ interface QuerySuggestionsEventHandlers {
415
+ /** Called when a suggestion is clicked/selected */
416
+ onSuggestionSelect?: (suggestion: SuggestionItem) => void;
417
+ /** Called when a product is clicked */
418
+ onProductClick?: (product: ProductItem) => void;
419
+ /** Called when a category is clicked */
420
+ onCategoryClick?: (category: SuggestionCategory) => void;
421
+ /** Called when a brand is clicked */
422
+ onBrandClick?: (brand: PopularBrand) => void;
423
+ /** Called when a tab is selected */
424
+ onTabSelect?: (tab: FilteredTab) => void;
425
+ /** Called when recent search is clicked */
426
+ onRecentSearchClick?: (search: RecentSearch) => void;
427
+ /** Called when recent search is removed */
428
+ onRecentSearchRemove?: (search: RecentSearch) => void;
429
+ /** Called when "View All" is clicked */
430
+ onViewAllClick?: (section: DropdownSection) => void;
431
+ /** Called when dropdown opens */
432
+ onOpen?: () => void;
433
+ /** Called when dropdown closes */
434
+ onClose?: () => void;
435
+ /** Called on keyboard navigation */
436
+ onNavigate?: (direction: 'up' | 'down', index: number) => void;
437
+ }
438
+
439
+ export type { AnimationConfig, DropdownRecommendations, DropdownSection, DropdownSectionConfig, FacetValue, FieldMapping, FilteredTab, HighlightConfig, KeyboardNavConfig, PopularBrand, ProductItem, QuerySuggestionsClassNames, QuerySuggestionsEventHandlers, QuerySuggestionsResponse, QuerySuggestionsVariant, RecentSearch, RelatedSearch, ResultItem, SuggestionCategory, SuggestionFacets, SuggestionItem, SuggestionsAnalyticsConfig, Theme, ThemeBorderRadius, ThemeBreakpoints, ThemeColors, ThemeConfig, ThemeShadows, ThemeSpacing, ThemeTransitions, ThemeTypography, ThemeZIndex, TopSearch, TrendingSearch, ViewMode };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC"}
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=index.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.esm.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
package/dist/index.js ADDED
@@ -0,0 +1,3 @@
1
+ 'use strict';
2
+
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;"}
@@ -0,0 +1,92 @@
1
+ /**
2
+ * Theme Type Definitions
3
+ *
4
+ * Shared theme types across all framework implementations
5
+ */
6
+ export interface ThemeColors {
7
+ primary: string;
8
+ secondary: string;
9
+ background: string;
10
+ surface?: string;
11
+ text: string;
12
+ textSecondary?: string;
13
+ border: string;
14
+ hover: string;
15
+ focus: string;
16
+ error: string;
17
+ success?: string;
18
+ warning?: string;
19
+ }
20
+ export interface ThemeTypography {
21
+ fontFamily: string;
22
+ fontSize: {
23
+ small: string;
24
+ medium: string;
25
+ large: string;
26
+ };
27
+ fontWeight?: {
28
+ normal?: number;
29
+ medium?: number;
30
+ semibold?: number;
31
+ bold?: number;
32
+ };
33
+ lineHeight?: {
34
+ tight?: number;
35
+ normal?: number;
36
+ relaxed?: number;
37
+ };
38
+ }
39
+ export interface ThemeSpacing {
40
+ small: string;
41
+ medium: string;
42
+ large: string;
43
+ }
44
+ export interface ThemeBorderRadius {
45
+ none?: string;
46
+ small?: string;
47
+ medium: string;
48
+ large?: string;
49
+ full?: string;
50
+ }
51
+ export interface ThemeShadows {
52
+ small: string;
53
+ medium: string;
54
+ large: string;
55
+ }
56
+ export interface ThemeTransitions {
57
+ fast?: string;
58
+ normal?: string;
59
+ slow?: string;
60
+ }
61
+ export interface ThemeBreakpoints {
62
+ sm?: string;
63
+ md?: string;
64
+ lg?: string;
65
+ xl?: string;
66
+ }
67
+ export interface ThemeZIndex {
68
+ dropdown?: number;
69
+ modal?: number;
70
+ tooltip?: number;
71
+ }
72
+ export interface Theme {
73
+ colors: ThemeColors;
74
+ typography: ThemeTypography;
75
+ spacing: ThemeSpacing;
76
+ borderRadius: string | ThemeBorderRadius;
77
+ shadows: ThemeShadows;
78
+ transitions?: ThemeTransitions;
79
+ breakpoints?: ThemeBreakpoints;
80
+ zIndex?: ThemeZIndex;
81
+ }
82
+ export interface ThemeConfig {
83
+ colors?: Partial<ThemeColors>;
84
+ typography?: Partial<ThemeTypography>;
85
+ spacing?: Partial<ThemeSpacing>;
86
+ borderRadius?: string | Partial<ThemeBorderRadius>;
87
+ shadows?: Partial<ThemeShadows>;
88
+ transitions?: Partial<ThemeTransitions>;
89
+ breakpoints?: Partial<ThemeBreakpoints>;
90
+ zIndex?: Partial<ThemeZIndex>;
91
+ }
92
+ //# sourceMappingURL=themes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"themes.d.ts","sourceRoot":"","sources":["../src/themes.ts"],"names":[],"mappings":"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"}
package/dist/themes.js ADDED
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Theme Type Definitions
3
+ *
4
+ * Shared theme types across all framework implementations
5
+ */
6
+ export {};
package/package.json ADDED
@@ -0,0 +1,29 @@
1
+ {
2
+ "name": "@seekora-ai/ui-sdk-types",
3
+ "version": "0.1.1",
4
+ "description": "Shared TypeScript types for Seekora UI SDK",
5
+ "main": "dist/index.js",
6
+ "module": "dist/index.esm.js",
7
+ "types": "dist/index.d.ts",
8
+ "exports": {
9
+ ".": {
10
+ "import": "./dist/index.esm.js",
11
+ "require": "./dist/index.js",
12
+ "types": "./dist/index.d.ts"
13
+ }
14
+ },
15
+ "files": [
16
+ "dist"
17
+ ],
18
+ "scripts": {
19
+ "build": "tsc && rollup -c",
20
+ "dev": "tsc --watch",
21
+ "clean": "rm -rf dist"
22
+ },
23
+ "devDependencies": {
24
+ "@rollup/plugin-typescript": "^11.1.5",
25
+ "rollup": "^4.9.0",
26
+ "rollup-plugin-dts": "^6.1.0",
27
+ "typescript": "^5.0.0"
28
+ }
29
+ }