///
import type { TextFieldProps } from "@react-types/textfield";
import type { IconProps } from "../Icon";
import type { Sizes } from "../__config__/types";
export type InputSizes = Extract;
export type InputTypes = "text" | "password" | "email" | "number" | "tel" | "url" | "search" | "currency";
interface Props extends TextFieldProps {
/** TODO: renderAs needs to changed to as */
/** Attribute to change the rendering component */
renderAs?: "input" | "textarea";
/** (try not to) pass addition classes here */
className?: string;
/** whether only input is disabled. */
disableTextInput?: boolean;
/** label position */
labelPosition?: "top" | "left";
/** name */
name?: string;
/** start icon */
startIcon?: string;
/** start icon props */
startIconProps?: Omit;
/** end icon */
endIcon?: string;
/** end icon props */
endIconProps?: Omit;
/** size */
size?: InputSizes;
/** type */
type?: InputTypes;
/** width */
UNSAFE_width?: string;
/** height */
UNSAFE_height?: string;
/** value */
value?: string;
/** onValue change trigger */
onChange?: (value: string) => void;
/** Whether the input given passes the validation parameters. */
isValid?: boolean;
}
export interface InputProps extends Props, Omit, keyof Props> {
}
export {};