import React, { EventHandler, FocusEvent } from "react"; import { CommonComponentProps } from "Types/common"; import { IconName } from "Icon"; export type InputType = "text" | "password" | "number" | "email" | "tel"; export type Validator = (value: string) => { isValid: boolean; message: string; }; export declare function emailValidator(email: string): { isValid: boolean; message: string; }; export declare function notEmptyValidator(value: string): { isValid: boolean; message: string; }; export type TextInputProps = CommonComponentProps & { autoFocus?: boolean; placeholder?: string; fill?: boolean; defaultValue?: string; value?: string; validator?: (value: string) => { isValid: boolean; message: string; }; onChange?: (value: string) => void; readOnly?: boolean; dataType?: string; leftIcon?: IconName; prefix?: string; helperText?: string; rightSideComponent?: React.ReactNode; width?: string; height?: string; noBorder?: boolean; noCaret?: boolean; onBlur?: EventHandler>; onFocus?: EventHandler>; errorMsg?: string; trimValue?: boolean; $padding?: string; useTextArea?: boolean; isCopy?: boolean; border?: boolean; style?: any; tabIndex?: number; }; type boxReturnType = { bgColor: string; color: string; borderColor: string; }; export declare const InputWrapper: import("styled-components").StyledComponent<"div", any, { value?: string | undefined; isFocused: boolean; fill?: number | undefined; noBorder?: boolean | undefined; height?: string | undefined; width?: string | undefined; inputStyle: boxReturnType; isValid?: boolean | undefined; disabled?: boolean | undefined; $isLoading?: boolean | undefined; readOnly?: boolean | undefined; }, never>; declare const TextInput: React.ForwardRefExoticComponent { isValid: boolean; message: string; }) | undefined; onChange?: ((value: string) => void) | undefined; readOnly?: boolean | undefined; dataType?: string | undefined; leftIcon?: string | undefined; prefix?: string | undefined; helperText?: string | undefined; rightSideComponent?: React.ReactNode; width?: string | undefined; height?: string | undefined; noBorder?: boolean | undefined; noCaret?: boolean | undefined; onBlur?: ((event: React.FocusEvent) => void) | undefined; onFocus?: ((event: React.FocusEvent) => void) | undefined; errorMsg?: string | undefined; trimValue?: boolean | undefined; $padding?: string | undefined; useTextArea?: boolean | undefined; isCopy?: boolean | undefined; border?: boolean | undefined; style?: any; tabIndex?: number | undefined; } & React.RefAttributes>; export default TextInput;