export declare const SEARCH_HIGHLIGHT_CLASS = "search-result-highlight";
export type UseSearchHighlightParams = {
    /**
     * Ref to the element whose text content should be searched.
     */
    ref: React.RefObject<HTMLElement>;
    /**
     * Search query used for highlighting.
     */
    query: string;
    /**
     * Name of the CSS highlight.
     *
     * @default 'search-result-highlight'
     */
    highlightClassName?: string;
    /**
     * Optional selector to limit the search scope
     * (e.g. '.ListMenuGroup' or '.OptionLabel').
     */
    scopeSelector?: string;
    /**
     * Whether to perform a case-sensitive match.
     *
     * @default false
     */
    caseSensitive?: boolean;
    /**
     * Optional dependencies that should trigger re-collecting and applying ranges.
     * Useful when the DOM changes after the query changes (e.g. debounced filtering).
     */
    deps?: unknown[];
};
/**
 * React hook for visually highlighting search query matches
 * using the native CSS Highlight API.
 *
 * The hook scans the text content of the referenced element
 * and applies a named CSS highlight to all matching substrings.
 *
 * Key characteristics:
 * - Progressive enhancement: safely no-ops in unsupported browsers
 * - Does not modify or re-render DOM markup
 * - Designed for search UIs (Autocomplete, ListMenu, Dropdown, etc.)
 *
 * Usage notes:
 * - The hook must always be called unconditionally
 * - Use `useSearchHighlight.supported()` only for render-time
 *   fallback decisions (e.g. `<mark>` rendering)
 *
 * @param ref           Ref to the element whose text should be searched
 * @param query         Search query to highlight
 * @param highlightName Optional CSS highlight name
 * @param scopeSelector Optional selector to limit the search scope
 */
declare const useSearchHighlight: {
    (params: UseSearchHighlightParams): void;
    supported(): boolean;
};
export default useSearchHighlight;
