import { FieldSectionData, FieldSectionType, FieldValueType, DisplayedSection } from '../../models/dateSection'; import { FieldSectionOperation, SectionChangeCallback, UpdateSectionsCallback } from '../../models/hooks'; export interface CharacterQuery { value: string; sectionIndex: number; sectionType: FieldSectionType; lastUpdate: number; } export interface UseDateSectionsProps { value: string; onChange?: (value: string, reason?: FieldSectionOperation, activeSection?: number) => void; valueFormat?: string; format?: string; valueType?: FieldValueType; sections?: DisplayedSection[]; onSectionChange?: SectionChangeCallback; shouldDisableDate?: (date: Date) => boolean; isRtl?: boolean; formatDensity?: 'dense' | 'spacious'; } /** * Hook to manage date input sections in text fields */ export declare const useDateSections: ({ value, onChange, valueFormat, format, valueType, sections: displayedSections, onSectionChange, shouldDisableDate, isRtl, formatDensity, }: UseDateSectionsProps) => { sections: FieldSectionData[]; setSections: (newSections: FieldSectionData[]) => void; activeSection: number; setActiveSection: (sectionIndex: number | null) => void; moveToPreviousSection: () => void; moveToNextSection: () => void; processCharacterInput: (keyPressed: string) => boolean; handleClipboardPaste: (pastedText: string) => boolean; handleSectionSelect: (sectionIndex: number | null) => void; handleSectionClear: () => void; updateSectionValue: UpdateSectionsCallback; };