import * as React from 'react'; import type { LayoutChangeEvent, NativeSyntheticEvent, ReturnKeyTypeOptions, StyleProp, TextInputSubmitEditingEventData, TextStyle, ViewStyle } from 'react-native'; import { UseFormField } from './useFormField'; declare type UseTextInput = Omit & { onLayout?: (event: LayoutChangeEvent) => void; returnKeyType?: ReturnKeyTypeOptions; onSubmitEditing?: (event: NativeSyntheticEvent) => void; accessibilityLabel: string; editable?: boolean; style?: ViewStyle | StyleProp | null; required: boolean; requiredMessage?: string; hasValidation: boolean; hasError?: boolean; errorMessage?: string; }; export declare const useTextInput: ({ onLayout, returnKeyType, onSubmitEditing, accessibilityLabel, requiredMessage, required, ...rest }: UseTextInput) => { accessibilityLabel: string; returnKeyType: "default" | "search" | "none" | "done" | "go" | "next" | "previous" | "send" | "join" | "google" | "route" | "yahoo" | "emergency-call"; onSubmitEditing: (event: NativeSyntheticEvent) => void; onLayout: (event: LayoutChangeEvent) => void; style: any; focusNextFormField: () => void; isLastField: () => boolean; accessibilityHint: string; ref?: React.RefObject | React.ForwardedRef | undefined; id?: string | undefined; hasValidation: boolean; hasError?: boolean | undefined; nextFieldId?: string | undefined; nextFormFieldRef?: React.RefObject | undefined; errorMessage?: string | undefined; editable?: boolean | undefined; } | { accessibilityLabel: string; returnKeyType: "default" | "search" | "none" | "done" | "go" | "next" | "previous" | "send" | "join" | "google" | "route" | "yahoo" | "emergency-call"; onSubmitEditing: (event: NativeSyntheticEvent) => void; onLayout: (event: LayoutChangeEvent) => void; focusNextFormField: () => void; isLastField: () => boolean; accessibilityHint: string; style?: (Record & (false | ViewStyle | TextStyle | import("react-native").RegisteredStyle | import("react-native").RecursiveArray> | null)) | undefined; ref?: React.RefObject | React.ForwardedRef | undefined; id?: string | undefined; hasValidation: boolean; hasError?: boolean | undefined; nextFieldId?: string | undefined; nextFormFieldRef?: React.RefObject | undefined; errorMessage?: string | undefined; editable?: boolean | undefined; }; export {};