import * as React from 'react'; import type { Timeout } from '@base-ui-components/utils/useTimeout'; import type { EventWithOptionalKeyState, IncrementValueParameters } from "../utils/types.js"; import type { NumberFieldRoot } from "./NumberFieldRoot.js"; import type { HTMLProps } from "../../utils/types.js"; export declare function useNumberFieldButton(params: useNumberFieldButton.Parameters): React.DetailedHTMLProps, HTMLButtonElement>; export interface UseNumberFieldButtonParameters { allowInputSyncRef: React.RefObject; disabled: boolean; formatOptionsRef: React.RefObject; getStepAmount: (event?: EventWithOptionalKeyState) => number | undefined; id: string | undefined; incrementValue: (amount: number, params: IncrementValueParameters) => void; inputRef: React.RefObject; inputValue: string; intentionalTouchCheckTimeout: Timeout; isIncrement: boolean; isPressedRef: React.RefObject; locale?: Intl.LocalesArgument; maxWithDefault: number; minWithDefault: number; movesAfterTouchRef: React.RefObject; readOnly: boolean; setValue: (value: number | null, details: NumberFieldRoot.ChangeEventDetails) => void; startAutoChange: (isIncrement: boolean, event?: React.MouseEvent | Event) => void; stopAutoChange: () => void; value: number | null; valueRef: React.RefObject; lastChangedValueRef: React.RefObject; onValueCommitted: (value: number | null, eventDetails: NumberFieldRoot.CommitEventDetails) => void; } export interface UseNumberFieldButtonReturnValue { props: HTMLProps; } export declare namespace useNumberFieldButton { type Parameters = UseNumberFieldButtonParameters; type ReturnValue = UseNumberFieldButtonReturnValue; }