import { default as React, ChangeEventHandler, ClipboardEventHandler, FocusEventHandler, KeyboardEventHandler, ReactNode, Ref } from 'react'; import { CleaveOptions } from 'cleave.js/options'; export type InputVariant = 'default' | 'magicGradient'; export type InputProps = { ref?: Ref; /** * className for the element. */ className?: string; /** * Whether the Input should fit its parent or content. * @default content */ fit?: 'content' | 'parent'; /** * The id of the Input. */ id?: string; /** * The name of the Input, used when submitting an HTML form. */ name?: string; /** * The type of the HTML input element. * @default text */ type?: string; /** * The autocomplete value for the input element. */ autoComplete?: string; /** * The interval between numbers in an input of type number. */ step?: string; /** * The current value (controlled). */ value?: string | number; /** * The default value (uncontrolled). */ defaultValue?: string | number; /** * Temporary text that occupies the Input when it is empty. */ placeholder?: string; /** * Whether the Input is invalid. */ isInvalid?: boolean; /** * Whether the Input should be read only. */ isReadOnly?: boolean; /** * Whether the Input is disabled. */ isDisabled?: boolean; /** * Left addon of the input. */ leftAddon?: ReactNode; /** * Right addon of the input. */ rightAddon?: ReactNode; /** * The maximum number of characters supported by the Input. */ maxLength?: number; /** * @deprecated This props will be removed in a near futur */ maskOptions?: CleaveOptions; /** * Specifies how the text is aligned. * @default left */ textAlign?: 'left' | 'right' | 'center'; /** * The visual style of the input * @default default */ variant?: InputVariant; /** * Minimum value in a number input. */ min?: number; /** * Maximum value in a number input. */ max?: number; /** * Type of data that might be entered, to display the appropriate virtual * keyboard. */ inputMode?: 'decimal' | 'numeric'; /** * Regular expression that the input's value must match in order for the value to pass */ pattern?: string; /** * Handler that is called when the value changes. */ onChange?: ChangeEventHandler; /** * Handler that is called when the element receives focus. */ onFocus?: FocusEventHandler; /** * Handler that is called when the element loses focus. */ onBlur?: FocusEventHandler; /** * Handler that is called when the user copies text. */ onCopy?: ClipboardEventHandler; /** * Handler that is called when the user pastes text. */ onPaste?: ClipboardEventHandler; /** * Handler that is called when a key is pressed. */ onKeyDown?: KeyboardEventHandler; /** * Handler that is called when the mouse is rolled over the element. */ onWheel?: React.WheelEventHandler; }; export declare const Input: ({ className, fit, type, id, isInvalid, isReadOnly, isDisabled, leftAddon, rightAddon, maskOptions, textAlign, variant, onChange, onFocus, onBlur, onCopy, onKeyDown, onWheel, ref, ...rest }: InputProps) => React.JSX.Element; //# sourceMappingURL=Input.d.ts.map