import { DateValue } from '@internationalized/date'; import { Ref } from 'vue'; import { Granularity, HourCycle } from '../shared/date'; import { Matcher, WeekDayFormat } from '../date'; import { CalendarRootProps, DateFieldRoot, DateFieldRootProps, PopoverRootProps } from '..'; import { Direction } from '../shared/types'; type DatePickerRootContext = { id: Ref; name: Ref; minValue: Ref; maxValue: Ref; hourCycle: Ref; granularity: Ref; hideTimeZone: Ref; required: Ref; locale: Ref; dateFieldRef: Ref | undefined>; modelValue: Ref; placeholder: Ref; pagedNavigation: Ref; preventDeselect: Ref; weekStartsOn: Ref<0 | 1 | 2 | 3 | 4 | 5 | 6>; weekdayFormat: Ref; fixedWeeks: Ref; numberOfMonths: Ref; disabled: Ref; readonly: Ref; isDateDisabled?: Matcher; isDateUnavailable?: Matcher; defaultOpen: Ref; open: Ref; modal: Ref; onDateChange: (date: DateValue | undefined) => void; onPlaceholderChange: (date: DateValue) => void; dir: Ref; }; export type DatePickerRootProps = DateFieldRootProps & PopoverRootProps & Pick; export type DatePickerRootEmits = { /** Event handler called whenever the model value changes */ 'update:modelValue': [date: DateValue | undefined]; /** Event handler called whenever the placeholder value changes */ 'update:placeholder': [date: DateValue]; }; export declare const injectDatePickerRootContext: (fallback?: T | undefined) => T extends null ? DatePickerRootContext | null : DatePickerRootContext, provideDatePickerRootContext: (contextValue: DatePickerRootContext) => DatePickerRootContext; declare const _default: __VLS_WithTemplateSlots, { defaultValue: undefined; defaultOpen: boolean; open: undefined; modal: boolean; pagedNavigation: boolean; preventDeselect: boolean; weekStartsOn: number; weekdayFormat: string; fixedWeeks: boolean; numberOfMonths: number; disabled: boolean; readonly: boolean; initialFocus: boolean; placeholder: undefined; locale: string; isDateDisabled: undefined; isDateUnavailable: undefined; }>, {}, unknown, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, { "update:open": (value: boolean) => void; "update:modelValue": (date: DateValue | undefined) => void; "update:placeholder": (date: DateValue) => void; }, string, import('vue').PublicProps, Readonly, { defaultValue: undefined; defaultOpen: boolean; open: undefined; modal: boolean; pagedNavigation: boolean; preventDeselect: boolean; weekStartsOn: number; weekdayFormat: string; fixedWeeks: boolean; numberOfMonths: number; disabled: boolean; readonly: boolean; initialFocus: boolean; placeholder: undefined; locale: string; isDateDisabled: undefined; isDateUnavailable: undefined; }>>> & { "onUpdate:open"?: ((value: boolean) => any) | undefined; "onUpdate:modelValue"?: ((date: DateValue | undefined) => any) | undefined; "onUpdate:placeholder"?: ((date: DateValue) => any) | undefined; }, { defaultValue: DateValue; locale: string; disabled: boolean; weekStartsOn: 0 | 2 | 1 | 3 | 4 | 5 | 6; fixedWeeks: boolean; numberOfMonths: number; pagedNavigation: boolean; defaultOpen: boolean; open: boolean; modal: boolean; placeholder: DateValue; preventDeselect: boolean; weekdayFormat: WeekDayFormat; readonly: boolean; isDateDisabled: Matcher; isDateUnavailable: Matcher; }, {}>, { default?(_: {}): any; }>; export default _default; type __VLS_WithDefaults = { [K in keyof Pick]: K extends keyof D ? __VLS_PrettifyLocal : P[K]; }; type __VLS_NonUndefinedable = T extends undefined ? never : T; type __VLS_TypePropsToOption = { [K in keyof T]-?: {} extends Pick ? { type: import('vue').PropType<__VLS_NonUndefinedable>; } : { type: import('vue').PropType; required: true; }; }; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; }; type __VLS_PrettifyLocal = { [K in keyof T]: T[K]; } & {};