import { ReactElement, ChangeEvent, FocusEvent, KeyboardEvent, MouseEvent } from "react"; import { ITheme } from "../Palette/variables"; export declare type TDimension = "small" | "medium" | "large"; declare type TPosition = "top" | "bottom" | "left" | "right" | "top-start" | "top-end" | "bottom-start" | "bottom-end" | "left-start" | "left-end" | "right-start" | "right-end" | "auto" | "auto-start" | "auto-end"; export interface IProps { dimension?: TDimension; autoFocus?: boolean; error?: string | boolean; isClearable?: boolean; isDisabled?: boolean; name?: string; onChange?: (event: ChangeEvent | MouseEvent, value: string) => void; onBlur?: (event: FocusEvent) => void; onFocus?: (event: FocusEvent) => void; onKeyPress?: (event: KeyboardEvent) => void; onResize?: () => void; placeholder?: string; tooltipContent?: string | ReactElement | HTMLElement; tooltipPosition?: TPosition; value?: string; maxLength?: number; icon?: any; title?: string; minRows?: number; maxRows?: number; className?: string; theme: ITheme; } export interface IShared { maxLength?: number; isDisabled?: boolean; disabled?: boolean; name?: string; autoFocus?: boolean; value: string | any; maxRows?: number; onChange?: (event: ChangeEvent) => void; onBlur?: (event: FocusEvent) => void; onFocus?: (event: FocusEvent) => void; onKeyPress?: (event: KeyboardEvent) => void; onKeyDown?: (event: KeyboardEvent) => void; } export interface IDimension { dimension?: TDimension; theme: ITheme; } export interface IStyleProps extends IDimension { isFocused: boolean; isDisabled?: boolean; } export interface IStylePropsError extends IDimension { isFocused: boolean; error?: string | boolean; isDisabled?: boolean; } export interface IPlaceholder extends IDimension { error?: string | boolean; isFocused: boolean; isDisabled?: boolean; isHasValue: boolean; } export interface IWrapper extends IDimension { isDisabled?: boolean; isClearable?: boolean; disabled?: boolean; } export {};