import type { UDateLocale } from '../../locales'; import type { DatePickerGetDefaultTime, DatePickerGetRangeDefaultTime, Value } from './interface'; declare function getDerivedTimeFromKeyboardEvent(prevValue: number | null, event: KeyboardEvent): number; export interface DateItem { type: 'date'; dateObject: { date: number; month: number; year: number; }; inCurrentMonth: boolean; isCurrentDate: boolean; inSpan: boolean; startOfSpan: boolean; endOfSpan: boolean; selected: boolean; ts: number; } export interface MonthItem { type: 'month'; dateObject: { month: number; year: number; }; isCurrent: boolean; selected: boolean; ts: number; } export interface YearItem { type: 'year'; dateObject: { year: number; }; isCurrent: boolean; selected: boolean; ts: number; } export interface QuarterItem { type: 'quarter'; dateObject: { quarter: number; year: number; }; isCurrent: boolean; selected: boolean; ts: number; } export type DateCommonItem = DateItem | MonthItem | YearItem | QuarterItem; /** * Given time to display calendar, given the selected time, given current time, * return the date array of display time's month. */ declare function dateArray(monthTs: number, valueTs: number | [number, number] | null, currentTs: number | null, startDay: 0 | 1 | 2 | 3 | 4 | 5 | 6, strip?: boolean): DateItem[]; declare function monthArray(yearAnchorTs: number, valueTs: number | null, currentTs: number | null): MonthItem[]; declare function quarterArray(yearAnchorTs: number, valueTs: number | null, currentTs: number | null): QuarterItem[]; declare function yearArray(valueTs: number | null, currentTs: number | null, maxDate?: number): YearItem[]; declare function strictParse(string: string, pattern: string, backup: Date, option: { locale: UDateLocale['locale']; }): Date; declare function extractSingleDefaultTime(timestamp: number, defaultTimeExtractor: DatePickerGetDefaultTime): { hours: number; minutes: number; seconds: number; } | undefined; declare function extractRangeDefaultTime(timestamp: number, defaultTimeExtractor: DatePickerGetRangeDefaultTime, position: 'start' | 'end', value: [number, number] | null): { hours: number; minutes: number; seconds: number; } | undefined; declare function getDefaultTime(timeValue: string | undefined): { hours: number; minutes: number; seconds: number; } | undefined; declare function pluckValueFromRange(value: Value | null, type: 'start' | 'end'): number | null; declare function getMsByDateCommonItem(item?: DateCommonItem): number; export { dateArray, extractRangeDefaultTime, extractSingleDefaultTime, getDefaultTime, getDerivedTimeFromKeyboardEvent, getMsByDateCommonItem, monthArray, pluckValueFromRange, quarterArray, strictParse, yearArray };