import { AriaLabelingProps, DOMAttributes, DOMProps, GroupDOMAttributes, InputDOMProps, RefObject, ValidationResult } from '@react-types/shared'; import { FocusManager } from '../focus/FocusScope'; import { DateFieldProps, DateFieldState, DateValue } from 'react-stately/useDateFieldState'; import { InputHTMLAttributes } from 'react'; import { TimeFieldState, TimePickerProps, TimeValue } from 'react-stately/useTimeFieldState'; export interface AriaDateFieldProps extends DateFieldProps, AriaLabelingProps, DOMProps, InputDOMProps { /** * Describes the type of autocomplete functionality the input should provide if any. See [MDN](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#htmlattrdefautocomplete). */ autoComplete?: string; } export interface AriaDateFieldOptions extends Omit, 'value' | 'defaultValue' | 'onChange' | 'minValue' | 'maxValue' | 'placeholderValue' | 'validate'> { /** A ref for the hidden input element for HTML form submission. */ inputRef?: RefObject; } export interface DateFieldAria extends ValidationResult { /** Props for the field's visible label element, if any. */ labelProps: DOMAttributes; /** Props for the field grouping element. */ fieldProps: GroupDOMAttributes; /** Props for the hidden input element for HTML form submission. */ inputProps: InputHTMLAttributes; /** Props for the description element, if any. */ descriptionProps: DOMAttributes; /** Props for the error message element, if any. */ errorMessageProps: DOMAttributes; } interface HookData { ariaLabel?: string; ariaLabelledBy?: string; ariaDescribedBy?: string; focusManager: FocusManager; } export declare const hookData: WeakMap; export declare const roleSymbol: string; export declare const focusManagerSymbol: string; /** * Provides the behavior and accessibility implementation for a date field component. * A date field allows users to enter and edit date and time values using a keyboard. * Each part of a date value is displayed in an individually editable segment. */ export declare function useDateField(props: AriaDateFieldOptions, state: DateFieldState, ref: RefObject): DateFieldAria; export interface AriaTimeFieldProps extends TimePickerProps, AriaLabelingProps, DOMProps, InputDOMProps { } export interface AriaTimeFieldOptions extends AriaTimeFieldProps { /** A ref for the hidden input element for HTML form submission. */ inputRef?: RefObject; } /** * Provides the behavior and accessibility implementation for a time field component. * A time field allows users to enter and edit time values using a keyboard. * Each part of a time value is displayed in an individually editable segment. */ export declare function useTimeField(props: AriaTimeFieldOptions, state: TimeFieldState, ref: RefObject): DateFieldAria; export {};