import { type PropsWithChildren } from 'react'; import type { BehaviorTrackingProps } from '../../core/types/behavior-tracking-props.js'; import type { FocusEvents } from '../../core/types/events.js'; import type { FormControlProps } from '../../core/types/form-control-props.js'; import type { BaseInputProps } from '../_base-input/base-input.types.js'; import type { FormControlRef } from '../shared-types.js'; import type { MessageTarget } from '../validation/message-routing.js'; /** * Number inputs let users enter and edit integers and floating-point numbers. * @public */ export type NumberInputProps = Pick & FormControlProps void> & PropsWithChildren & FocusEvents & BehaviorTrackingProps & { /** * Internal: associates this control with a `_Form` rendered outside its * React subtree via the native `form` attribute. Unstable. * @internal */ _form?: string; /** * Internal: routes this control's native/Strato validation messages to the * field outlet (default), the enclosing form's outlet, or both. Unstable. * @internal */ _messageTarget?: MessageTarget | MessageTarget[]; /** Minimum amount of the input. * @defaultValue undefined */ min?: number; /** Maximum amount of the input. * @defaultValue undefined */ max?: number; /** Defines the step in which increments/decrements can be performed on the input and validates the value. * Must be a positive number greater than 0. Values that are negative, zero, NaN, or undefined default to 1. * @defaultValue undefined */ step?: number; /** Multiplier applied to `step` (or 1 if no `step` is set) to determine how much the value changes * when using arrow keys or the scroll wheel. Must be a positive integer greater than 0. * Values that are negative, zero, NaN, or undefined default to 1. Decimal values are truncated to the nearest integer. * @defaultValue 1 */ stepMultiplier?: number; }; /** * Use `NumberInputV2` to let users enter integers and floating-point numbers. * @public */ export declare const NumberInput: ((props: NumberInputProps & import("react").RefAttributes>) => import("react").ReactElement | null) & { Prefix: (props: import("../index.js").BaseInputContentProps & import("react").RefAttributes) => import("react").ReactElement | null; Suffix: (props: import("../index.js").BaseInputContentProps & import("react").RefAttributes) => import("react").ReactElement | null; Button: (props: import("../index.js").BaseInputButtonProps & import("react").RefAttributes) => import("react").ReactElement | null; }; //# sourceMappingURL=NumberInput.d.ts.map