export type CurrencyInputClassNames = {
    root?: string;
    input?: string;
};
export type CurrencyInputProps = {
    /** Numeric value (controlled) */
    value: number;
    /** Called with the parsed number on every change and on blur */
    onChange?: (value: number) => void;
    /** Symbol shown before the number. Defaults to "$" */
    prefix?: string;
    /** Lowest allowed value. Defaults to 0 (prevents negatives) */
    min?: number;
    /** Highest allowed value */
    max?: number;
    /** Maximum decimal places shown. Defaults to 2 */
    decimalPlaces?: number;
    /** Whether the input should be non-interactive. */
    disabled?: boolean;
    /** Whether the input should receive focus on mount. */
    autoFocus?: boolean;
    /** Visual error state */
    isInvalid?: boolean;
    /** Class name overrides for the input wrapper and field. */
    classNames?: CurrencyInputClassNames;
    /** Accessible label announced for the input. */
    ariaLabel?: string;
    /** Called when the input receives focus. */
    onFocus?: () => void;
    /** Called when the input loses focus. */
    onBlur?: () => void;
};
export type CurrencyInputFormatParts = {
    group: string;
    decimal: string;
};
