/**
 * Configuration for the useNumberFieldKeys hook
 */
export type UseNumberFieldKeysConfig = {
    /** Function to increment the value by a specified amount */
    increment: (amount: number) => void;
    /** Function to decrement the value by a specified amount */
    decrement: (amount: number) => void;
    /** Function to set the value to the minimum allowed value */
    setToMin: () => void;
    /** Function to set the value to the maximum allowed value */
    setToMax: () => void;
    /** The step value for increment/decrement operations */
    step: number;
    /** Multiplier for large step operations (PageUp/PageDown) */
    largeStepMultiplier: number;
    /** When true, keyboard interactions that would mutate the value are ignored */
    readOnly?: boolean;
};
/**
 * Custom hook that handles keyboard interactions for number fields.
 *
 * This hook provides keyboard navigation support for number input fields:
 * - Arrow Up/Down: Increment/decrement by step value
 * - Page Up/Down: Increment/decrement by step * largeStepMultiplier
 * - Home: Set to minimum value
 * - End: Set to maximum value
 *
 * @param config - Configuration object containing increment/decrement functions and step values
 * @returns Object containing the input ref to attach to the input element
 *
 * @example
 * const { inputRef } = useNumberFieldKeys({
 *   increment: (amount) => setValue(prev => prev + amount),
 *   decrement: (amount) => setValue(prev => prev - amount),
 *   setToMin: () => setValue(minValue),
 *   setToMax: () => setValue(maxValue),
 *   step: 1,
 *   largeStepMultiplier: 10
 * });
 */
declare function useNumberFieldKeys(config: UseNumberFieldKeysConfig): {
    inputRef: import('react').RefObject<HTMLInputElement>;
};
export default useNumberFieldKeys;
