import { NumberInputProps as chakraNumbetInpurProps } from "@chakra-ui/react"; /** Picks a safe subset of Chakra's NumberInput props and adds label/stepper-color props of its own. */ export type NumberInputProps = Pick & { /** NumberIncrementStepperChildren/NumberDecrementStepperChildren accept only a string, not an icon — omit them to keep Chakra's default chevrons. */ NumberIncrementStepperBg?: string; /** Background of the increment button while pressed. */ NumberIncrementStepperActive?: ActiveStyle; /** Replaces the increment chevron with this text. */ NumberIncrementStepperChildren?: string; /** Background of the decrement button; defaults to Chakra's stepper style. */ NumberDecrementStepperBg?: string; /** Replaces the decrement chevron with this text. */ NumberDecrementStepperChildren?: string; /** Background of the decrement button while pressed. */ NumberDecrementStepperActive?: ActiveStyle; label?: string; /** Shows an info icon beside the label; needs both `label` and `informationMessage` to render. */ isInformation?: boolean; /** Tooltip text for the info icon; ignored unless `isInformation` is true. */ informationMessage?: string; /** Shows the label asterisk and sets native `required` via FormControl. */ isRequired?: boolean; id?: string; /** Marks the field invalid (error border + `aria-invalid`) and swaps the helper for `errorMessage`. */ error?: boolean; /** Shown under the field while `error` is true. */ errorMessage?: string; /** Shown under the field when there is no error; linked via `aria-describedby`. */ helperText?: string; /** Hint text inside the empty field. */ placeholder?: string; /** Width of the whole field; defaults to `"100%"`. */ width?: string; /** Applied to the whole field wrapper. */ minW?: string; /** Applied to both the field wrapper and the number input. */ maxW?: string; }; /** Background applied to a stepper button's `_active` (pressed) state. */ export type ActiveStyle = { bg: string; };