import type { DocSearchHit, DocSearchSuggestion, SearchSource } from '../types';
interface UseDocSearchOptions {
    apiEndpoint?: string;
    apiKey?: string;
    sources?: SearchSource[];
    maxResults?: number;
    debounceMs?: number;
    processGroupedResults?: (sourceId: string, items: DocSearchSuggestion[]) => DocSearchSuggestion[];
}
export declare function useDocSearch(options: UseDocSearchOptions): {
    sources: SearchSource[];
    setQuery: (query: string) => void;
    search: (q: string) => Promise<void>;
    fetchSuggestions: (query: string) => Promise<void>;
    selectNext: () => void;
    selectPrev: () => void;
    setSelectedIndex: (index: number) => void;
    reset: () => void;
    getSelectedItem: () => DocSearchHit | DocSearchSuggestion | null;
    groupedSuggestions: {
        source: SearchSource;
        items: DocSearchSuggestion[];
    }[];
    query: string;
    results: DocSearchHit[];
    suggestions: DocSearchSuggestion[];
    isLoading: boolean;
    error: string | null;
    selectedIndex: number;
    mode: "suggestions" | "results";
};
export {};
//# sourceMappingURL=useDocSearch.d.ts.map