import React, { ChangeEvent, InputHTMLAttributes } from 'react'; import { InputAffixProps } from './InputAffix'; import { InputBaseType } from './InputBase'; interface NumberFormatValues { floatValue: number | undefined; formattedValue: string; value: string; } type ChangeHandler = T extends true ? (value: number | null, event: ChangeEvent) => void : (value: number, event: ChangeEvent) => void; export type NumericInputBaseType = Omit & InputAffixProps & { value?: number | string | null; defaultValue?: number | string; /** @default true */ allowNegative?: boolean; decimalScale?: number; allowEmpty?: TAllowEmpty; isAllowed?: (values: NumberFormatValues) => boolean; onChange?: ChangeHandler; }; export type NumericInputProps = Omit, 'type' | 'onChange' | 'width' | 'size'> & NumericInputBaseType; export declare const NumericInput: (props: Omit, "width" | "type" | "onChange" | "size"> & Omit & InputAffixProps & { value?: string | number | null | undefined; defaultValue?: string | number | undefined; /** @default true */ allowNegative?: boolean | undefined; decimalScale?: number | undefined; allowEmpty?: TAllowEmpty | undefined; isAllowed?: ((values: NumberFormatValues) => boolean) | undefined; onChange?: ChangeHandler | undefined; } & { ref?: React.Ref | undefined; }) => JSX.Element; export {};