import { RegisterOptions } from 'react-hook-form';
import { DisableMode } from '../common/common';
/**
 * Component & its Props
 */
export type FormattedTextFieldType = "email" | "number" | "password" | "tel" | "text" | "url";
interface NumberFormatProps {
    allowEmptyFormatting?: boolean;
    allowLeadingZeros?: boolean;
    allowNegative?: boolean;
    decimalScale?: number;
    decimalSeparator?: string;
    fixedDecimalScale?: boolean;
    format?: string | ((inputValue: string) => string);
    inputMode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search";
    isNumericString?: boolean;
    mask?: string | string[];
    maxLength?: number;
    prefix?: string;
    returnValueType?: "floatValue" | "formattedValue" | "value";
    suffix?: string;
    thousandSeparator?: boolean | string;
    thousandsGroupStyle?: "thousand" | "lakh" | "wan";
}
export interface FormattedTextFieldProps extends NumberFormatProps {
    /**
     * Unique name to be registered with react-hook-form
     */
    name: string;
    type: FormattedTextFieldType;
    autoComplete?: "off" | "on" | "new-password";
    autoFocus?: boolean;
    defaultValue?: string | number;
    disableCopyPaste?: boolean;
    focus?: boolean;
    inputStyle?: React.CSSProperties;
    isDisabled?: DisableMode;
    isFieldError?: boolean;
    isMasked?: boolean;
    placeholder?: string;
    placeholderAlignment?: "left" | "right" | "center";
    protectedInfoText?: string;
    registerOptions?: RegisterOptions;
    shouldHighlightZeroAmount?: boolean;
    style?: React.CSSProperties;
    onClick?: (event: React.MouseEvent<HTMLDivElement>) => void;
    onInputBlur?: () => void;
}
export declare function FormattedTextField({ type, name, placeholder, autoComplete, inputMode, prefix, suffix, format, maxLength, mask, isFieldError, isNumericString, allowNegative, allowLeadingZeros, allowEmptyFormatting, returnValueType, decimalSeparator, decimalScale, fixedDecimalScale, thousandSeparator, thousandsGroupStyle, isDisabled, defaultValue, style, inputStyle, registerOptions, protectedInfoText, autoFocus, focus, disableCopyPaste, isMasked, shouldHighlightZeroAmount, onClick, onInputBlur, }: Readonly<FormattedTextFieldProps>): import("react/jsx-runtime").JSX.Element;
export {};
