import type { EditorKeyboardHandlers, EditorKeyboardConfig } from './editorTypes';
/**
 * Hook for standardized keyboard navigation in cell editors.
 * Handles common editor keyboard interactions (Enter, Escape, Tab, etc.)
 */
export declare function useEditorKeyboardNavigation(handlers: EditorKeyboardHandlers, config?: EditorKeyboardConfig): {
    handleKeyDown: (event: React.KeyboardEvent) => void;
};
/**
 * Hook for auto-focusing an element when the editor mounts
 */
export declare function useEditorAutoFocus<T extends HTMLElement>(autoFocus?: boolean, selectAll?: boolean): import("react").RefObject<T | null>;
/**
 * Hook for handling click outside to commit editor
 */
export declare function useEditorClickOutside(ref: React.RefObject<HTMLElement | null>, onClickOutside: () => void, enabled?: boolean): void;
/**
 * Hook for positioning a popup/dropdown relative to an anchor element
 */
export declare function usePopupPosition(anchorRef: React.RefObject<HTMLElement | null>, popupRef: React.RefObject<HTMLElement | null>, isOpen: boolean, placement?: 'top' | 'bottom' | 'left' | 'right' | 'auto'): void;
/**
 * Debounce utility for editor operations
 */
export declare function debounce<T extends (...args: any[]) => any>(func: T, wait: number): (...args: Parameters<T>) => void;
/**
 * Format number with thousands separator and decimal places
 */
export declare function formatNumber(value: number, decimals?: number, thousandsSeparator?: string, decimalSeparator?: string): string;
/**
 * Parse formatted number string back to number
 */
export declare function parseFormattedNumber(value: string, thousandsSeparator?: string, decimalSeparator?: string): number | null;
/**
 * Filter options based on search query
 */
export declare function filterOptions<T extends {
    label: string;
}>(options: T[], searchQuery: string): T[];
