import type { Results } from '@orama/orama'; import type { COLOR_SCHEME_DARK, COLOR_SCHEME_LIGHT, COLOR_SCHEME_SYSTEM, MODE_CLOUD, MODE_LOCAL, PRESET_DOCS, PRESET_SHOPIFY } from '../const'; import type { SearchResultGroups } from '../utils'; export type Mode = typeof MODE_CLOUD | typeof MODE_LOCAL; export type Preset = typeof PRESET_DOCS | typeof PRESET_SHOPIFY; export type ColorScheme = typeof COLOR_SCHEME_DARK | typeof COLOR_SCHEME_LIGHT | typeof COLOR_SCHEME_SYSTEM; export type Theme = 'primary' | 'secondary'; export type Document = { [key: string]: string; }; export interface ShopifyDocument { title: string; tags: string[]; description: string; availableForSale: boolean; priceRange: { max: number; min: number; }; } export interface DocsDocument { [key: string]: string; } export type SearchResults = Results & { groupedResults: SearchResultGroups; }; export type Analytics = { apiKey: string; indexId: string; enable: boolean; }; export type ReturningProps = { path: string; title: string; description: string; section: string; category: string; }; export type SetSeeAllLinkProps = { term: string; label: string | ((count: string, term?: string) => string); count: string; }; export type SeeAllLinkProps = { url: string; label: string | ((count: string, term?: string) => string); }; export type SummaryChatMessage = { role: string; content: string; originalContent?: string; };