/**
 * Base context containing refs, stable IDs, menu visibility state, and callbacks.
 * This context changes when menu opens/closes or selection changes, but NOT on every keystroke.
 * Consumers like AutocompleteOverlay that don't need input text should use only this context.
 */
export declare const AutocompleteContext: import("react").Context<{
    activeDescendantRef: React.MutableRefObject<HTMLElement | null>;
    id: string;
    inputRef: React.MutableRefObject<HTMLInputElement | null>;
    scrollContainerRef: React.MutableRefObject<HTMLElement | null>;
    selectedItemLength: number;
    setAutocompleteSuggestion: (value: string) => void;
    setInputValue: (value: string) => void;
    setIsMenuDirectlyActivated: (value: boolean) => void;
    setSelectedItemLength: (value: number) => void;
    setShowMenu: (value: boolean) => void;
    showMenu: boolean;
} | null>;
/**
 * Input-related state that changes on every keystroke.
 * Only AutocompleteInput needs this for immediate text display and suggestion highlighting.
 */
export declare const AutocompleteInputContext: import("react").Context<{
    autocompleteSuggestion: string;
    inputValue: string;
    isMenuDirectlyActivated: boolean;
} | null>;
/**
 * Deferred input value for expensive operations like filtering.
 * Uses React's useDeferredValue to allow typing to remain responsive while
 * filtering large lists at lower priority.
 * AutocompleteMenu uses this to avoid blocking keystrokes during filtering.
 */
export declare const AutocompleteDeferredInputContext: import("react").Context<{
    deferredInputValue: string;
} | null>;
//# sourceMappingURL=AutocompleteContext.d.ts.map