import React from "react"; import { Dayjs } from "dayjs"; type Props = { date: Dayjs | null; format?: string; disabled?: boolean; onDateChange?: (date: Dayjs) => void; }; /** * React Aria 方式の DateField2 向けフック。 * 各セグメント span が contentEditable + tabIndex={0} で直接フォーカス・入力を受ける。 * setSelectionRange を使わないためモバイル (iOS) でも安定動作する。 */ export declare const useDateField2: ({ date, format, disabled, onDateChange, }: Props) => { value: string; sections: { start: number; end: number; value: string; editable: boolean; }[]; focusedIndex: number | null; isFocused: boolean; getSegmentProps: (index: number) => { ref: (el: HTMLSpanElement | null) => void; "aria-hidden": true; role?: undefined; contentEditable?: undefined; suppressContentEditableWarning?: undefined; inputMode?: undefined; tabIndex?: undefined; enterKeyHint?: undefined; spellCheck?: undefined; autoCorrect?: undefined; style?: undefined; "aria-label"?: undefined; onFocus?: undefined; onBlur?: undefined; onKeyDown?: undefined; onBeforeInput?: undefined; onPointerDown?: undefined; onMouseDown?: undefined; } | { ref: (el: HTMLSpanElement | null) => void; role: "spinbutton"; contentEditable: true; suppressContentEditableWarning: true; inputMode: "numeric"; tabIndex: number; enterKeyHint: "next"; spellCheck: false; autoCorrect: "off"; style: { caretColor: "transparent"; }; "aria-label": string | undefined; onFocus: () => void; onBlur: (e: React.FocusEvent) => void; onKeyDown: (event: React.KeyboardEvent) => void; onBeforeInput: (e: React.FormEvent) => void; onPointerDown(e: React.PointerEvent): void; onMouseDown(e: React.MouseEvent): void; "aria-hidden"?: undefined; }; groupProps: { ref: React.RefObject; onKeyDown: (event: React.KeyboardEvent) => void; onPaste: (event: React.ClipboardEvent) => void; }; }; export {};