/// import { FieldState, Initial, InputFieldData, RenderValue, FieldStateData, FieldStateValue, InputFieldHelpers, TextSelection } from "@reactway/forms-core"; import { UseFieldResult } from "./use-field"; import { FieldRef } from "."; export interface InputElementProps> { value: FieldStateValue | RenderValue>; onChange: React.ChangeEventHandler; onFocus: React.FocusEventHandler; onBlur: React.FocusEventHandler; onKeyDown?: React.KeyboardEventHandler; onKeyPress?: React.KeyboardEventHandler; onKeyUp?: React.KeyboardEventHandler; onClick?: React.MouseEventHandler; onSelect?: React.ReactEventHandler; onTouchCancel?: React.TouchEventHandler; onTouchCancelCapture?: React.TouchEventHandler; onTouchEnd?: React.TouchEventHandler; onTouchEndCapture?: React.TouchEventHandler; onTouchMove?: React.TouchEventHandler; onTouchMoveCapture?: React.TouchEventHandler; onTouchStart?: React.TouchEventHandler; onTouchStartCapture?: React.TouchEventHandler; onScroll?: React.UIEventHandler; onWheel?: React.WheelEventHandler; } export interface UseInputFieldResult> extends UseFieldResult { inputElementProps: InputElementProps; selectionUpdateGuard: SingleUpdateGuard; renderId: string; } export declare type InputElement = HTMLInputElement; export interface UseInputFieldEventHooks { getValueFromChangeEvent?: (event: React.ChangeEvent) => any; } export declare function getRenderValue>>(fieldState: TFieldState): RenderValue>; export declare function useInputField>>(fieldName: string, fieldRef: FieldRef | undefined, initialStateFactory: () => Initial, eventHooks?: UseInputFieldEventHooks): UseInputFieldResult; export declare function useInputFieldHelpers(fieldId: string): InputFieldHelpers; export declare function extractTextSelection(event: React.ChangeEvent | React.SyntheticEvent): TextSelection | undefined; export declare class SingleUpdateGuard { renderId: string; constructor(renderId: string); protected isUpdateHandled: boolean; get updated(): boolean; markAsUpdated(): void; } //# sourceMappingURL=use-input-field.d.ts.map