UNPKG

app-datepicker

Version:

Google Material Design based date picker built with lit

40 lines 1.85 kB
import type { Calendar, CalendarInit, CalendarWeekday } from 'nodemod/dist/calendar/typings.js'; import type { ElementMixinProperties } from '../mixins/typings.js'; import type { CustomEventDetail, DatePickerProperties, Formatters, SupportedKey } from '../typings.js'; import type { OmitKey } from '../utility-typings.js'; export interface DateValidatorResult { date: Date; isValid: boolean; } export type MaybeDate = Date | null | number | string; export interface MultiCalendars extends Omit<Calendar, 'calendar'> { calendars: Pick<Calendar, 'calendar' | 'key'>[]; weekdays: CalendarWeekday[]; } export interface SlotDatePickerInit extends OmitKey<DatePickerProperties, keyof ElementMixinProperties> { onDatePickerDateUpdated(event: CustomEvent<CustomEventDetail['date-updated']['detail']>): Promise<void> | void; onDatePickerFirstUpdated(event: CustomEvent<CustomEventDetail['first-updated']['detail']>): Promise<void> | void; } export interface ToMultiCalendarsInit extends Pick<Formatters, 'dayFormat' | 'fullDateFormat' | 'longWeekdayFormat' | 'narrowWeekdayFormat'>, Partial<Pick<DatePickerProperties, 'firstDayOfWeek' | 'showWeekNumber' | 'weekLabel' | 'weekNumberType'>>, Pick<DatePickerProperties, 'locale'>, Pick<CalendarInit, 'disabledDates' | 'disabledDays' | 'max' | 'min'> { count?: number; currentDate: CalendarInit['date']; } export interface ToNextSelectableDateInit { date: Date; disabledDatesSet: Set<number>; disabledDaysSet: Set<number>; key: SupportedKey; maxTime: number; minTime: number; } export interface ToNextSelectedDateInit { currentDate: Date; date: Date; disabledDatesSet: Set<number>; disabledDaysSet: Set<number>; hasAltKey: boolean; key: SupportedKey; maxTime: number; minTime: number; } //# sourceMappingURL=typings.d.ts.map