import { FieldValues, UseFormReturn } from "react-hook-form";
import "./styles.scss";
export type MaskFunction = (value: string, isBlur?: boolean) => string;
type DefaultEndAdornmentType = "password" | "close" | "info";
type Props<TFieldValues extends FieldValues = FieldValues, TContext = any, TTransformedValues = TFieldValues> = {
    attr: string;
    label?: string;
    createdForm: UseFormReturn<TFieldValues, TContext, TTransformedValues>;
    className?: string;
    disabled?: boolean;
    multiline?: boolean;
    title?: string;
    placeholder?: string;
    maxChars?: number;
    required?: boolean;
    showEndAdornment?: boolean;
    startAdornment?: React.ReactNode;
    endAdornment?: React.ReactNode[];
    defaultEndAdornments?: DefaultEndAdornmentType[];
    onChange?: (attr: string, value: any) => void;
    onFocus?: (e: React.FocusEvent<HTMLInputElement | HTMLTextAreaElement, Element>) => void;
    onKeyDown?: (e: React.KeyboardEvent<HTMLDivElement>) => void;
    onRemove?: () => void;
    onBlur?: (e: React.FocusEvent<HTMLInputElement | HTMLTextAreaElement, Element>) => void;
    rows?: number;
    infoText?: string;
    inputRef?: React.Ref<HTMLInputElement | HTMLTextAreaElement>;
    width?: string | number;
    height?: string | number;
    mask?: MaskFunction;
    blurMask?: MaskFunction;
};
export default function TextField<TFieldValues extends FieldValues = FieldValues, TContext = any, TTransformedValues = TFieldValues>({ className, attr, label, createdForm, disabled, title, placeholder, multiline, maxChars, required, startAdornment, endAdornment, defaultEndAdornments, showEndAdornment, onChange, onFocus, onKeyDown, onRemove, onBlur, rows, infoText, inputRef, width, height, mask, blurMask, }: Props<TFieldValues, TContext, TTransformedValues>): import("react").JSX.Element;
export {};
