import type { TimeListRef } from '../timepicker/timepicker-list'; export interface UseTimePanelOptions { step: number; minTime?: Date | null; maxTime?: Date | null; locale?: string | null; timeFormat?: string; } export interface UseTimePanelResult { displayedTimes: Date[]; formatTime: (time: Date) => string; parseTime: (input: string, requireExact?: boolean) => Date | null; isValidTime: (time: Date | null) => boolean; timeListRef: React.RefObject; ensureSelectedVisible: () => void; forwardListKeyDown: (e: React.KeyboardEvent, isOpen: boolean) => void; } /** * Hook for managing time panel state, including time list generation, formatting, parsing, and keyboard navigation. * * @param {UseTimePanelOptions} options - Configuration options including step, min/max time, locale, and format. * @returns {UseTimePanelResult} Object containing displayed times and interaction utilities. */ export default function useTimePanel(options: UseTimePanelOptions): UseTimePanelResult;