import { Ref, ComponentPublicInstance, MaybeRef } from 'vue'; import { ValidationRule } from '../../../composables/validation/useValidation'; import { DateObjectValue } from '../types'; export interface InputHandlerOptions { format: MaybeRef; displayRange: MaybeRef; dateFormatReturn?: string; disableErrorHandling?: MaybeRef; parseDate: (dateStr: string, format: string) => Date | null; formatDate: (date: Date, format: string) => string; generateDateRange: (startDate: Date, endDate: Date) => Date[]; isDateComplete: (value: string) => boolean; displayFormattedDate: Ref; selectedDates: Ref; isFormatting: Ref; isManualInputActive: Ref; isUpdatingFromInternal: Ref; clearValidation: () => void; validateField: (value: unknown, rules?: ValidationRule[], warningRules?: ValidationRule[]) => unknown; updateModel: (value: unknown) => void; emitInput: (value: string) => void; inputRef: Ref; } export declare function useInputHandler(options: InputHandlerOptions): { handleInput: (event: Event) => void; updateModelFromSelectedDates: () => void; updateCursorPosition: (inputElement: HTMLInputElement | null, position: number) => void; formatRangeInput: (value: string, cursorPos: number) => { formattedInput: string; newCursorPos: number; }; updateSelectedDatesFromFormattedValue: (formattedInput: string) => void; };