/**
 * SearchBarWithSuggestions Component
 *
 * Integrated search bar with query suggestions dropdown.
 * Combines SearchBar with any of the suggestion dropdown variants.
 */
import React from 'react';
import type { SuggestionItem, ProductItem, QuerySuggestionsVariant, QuerySuggestionsClassNames } from '@seekora-ai/ui-sdk-types';
export interface SearchBarWithSuggestionsProps {
    /** Dropdown variant to use */
    variant?: QuerySuggestionsVariant;
    /** Placeholder text */
    placeholder?: string;
    /** Initial query value */
    initialQuery?: string;
    /** Controlled query value */
    value?: string;
    /** Callback when query changes */
    onQueryChange?: (query: string) => void;
    /** Callback when search is submitted */
    onSearch?: (query: string) => void;
    /** Callback when suggestion is selected */
    onSuggestionSelect?: (suggestion: SuggestionItem) => void;
    /** Callback when product is clicked */
    onProductClick?: (product: ProductItem) => void;
    /** Show search button */
    showSearchButton?: boolean;
    /** Search button text */
    searchButtonText?: string;
    /** Show clear button */
    showClearButton?: boolean;
    /** Auto focus on mount */
    autoFocus?: boolean;
    /** Min query length for suggestions */
    minQueryLength?: number;
    /** Max suggestions to show */
    maxSuggestions?: number;
    /** Max products to show in dropdown (federated/rich) */
    maxProducts?: number;
    /** Debounce delay (ms) */
    debounceMs?: number;
    /** Show recent searches */
    showRecentSearches?: boolean;
    /** Show trending when empty */
    showTrendingOnEmpty?: boolean;
    /** Include dropdown recommendations */
    includeDropdownRecommendations?: boolean;
    /** Filtered tabs config */
    filteredTabs?: Array<{
        id?: string;
        label: string;
        filter: string;
    }>;
    /** Enable analytics tracking */
    enableAnalytics?: boolean;
    /** Analytics tags */
    analyticsTags?: string[];
    /** Include facets in suggestions API response (federated/rich) */
    includeFacets?: boolean;
    /** Include categories in suggestions API response (federated/rich) */
    includeCategories?: boolean;
    /** Dropdown width */
    dropdownWidth?: string | number;
    /** Dropdown max height */
    dropdownMaxHeight?: string | number;
    /** Custom class names */
    classNames?: {
        wrapper?: string;
        input?: string;
        button?: string;
        clearButton?: string;
        dropdown?: string;
    } & QuerySuggestionsClassNames;
    /** Custom styles */
    style?: React.CSSProperties;
    /** Input style */
    inputStyle?: React.CSSProperties;
    /** ARIA label */
    ariaLabel?: string;
}
export interface SearchBarWithSuggestionsRef {
    /** Focus the input */
    focus: () => void;
    /** Blur the input */
    blur: () => void;
    /** Clear the input */
    clear: () => void;
    /** Get current query */
    getQuery: () => string;
    /** Set query value */
    setQuery: (query: string) => void;
    /** Open dropdown */
    openDropdown: () => void;
    /** Close dropdown */
    closeDropdown: () => void;
    /** Navigate to next suggestion */
    navigateNext: () => void;
    /** Navigate to previous suggestion */
    navigatePrevious: () => void;
    /** Select current suggestion */
    selectCurrent: () => void;
}
export declare const SearchBarWithSuggestions: React.ForwardRefExoticComponent<SearchBarWithSuggestionsProps & React.RefAttributes<SearchBarWithSuggestionsRef>>;
export default SearchBarWithSuggestions;
//# sourceMappingURL=SearchBarWithSuggestions.d.ts.map