import { Size } from '../../shared/src/size.js'; import { ForwardedRef, ChangeEventHandler, ChangeEvent } from 'react'; import { MergedRef } from '../../shared/src/useMergedRefs.js'; import { ValidationState } from './types.js'; import '../../group/src/Group.js'; import 'react/jsx-runtime'; import '../../layout/src/Flex.js'; import '../../styling/src/styled-system/props-handler.js'; import 'csstype'; import '../../styling/src/useResponsiveValue.js'; import '../../styling/src/BreakpointProvider.js'; import '../../shared/src/type-fest.js'; import '../../styling/src/styled-system/StylingContext.js'; import '../../shared/src/types.js'; interface UseInputProps { active?: boolean; autoFocus?: boolean | number; cssModule?: string; disabled?: boolean; fluid?: boolean; focus?: boolean; forwardedRef: ForwardedRef; hover?: boolean; id?: string; loading?: boolean; onChange?: ChangeEventHandler; placeholder?: string; readOnly?: boolean; required?: boolean; size?: Size; type?: "text" | "password" | "search" | "url" | "tel" | "email" | "number"; validationState?: ValidationState; value?: string | number; } declare function useInput({ active, autoFocus, cssModule: module, disabled, fluid, focus, forwardedRef, hover, id, loading, onChange, placeholder, readOnly, required, size, type, validationState, value }: UseInputProps): { inputProps: { "aria-invalid": boolean; "aria-required": boolean; disabled: boolean; id: string; onChange: (event: ChangeEvent) => void; placeholder: string; readOnly: boolean; ref: MergedRef; type: "number" | "search" | "text" | "tel" | "url" | "email" | "password"; value: string | number; }; inputRef: MergedRef; wrapperProps: { className: string; role: string; }; }; export { type UseInputProps, useInput };