import { ExtractPropTypes, PropType } from 'vue'; import { BooleanType, DropPlacementsType, ShapeType, SizeType, ThemeType } from '../const/types'; import { IconType } from '../icon'; type DatePickerValueType = "date" | "timestamp" | "unix" | "string"; type DatePickerModeType = "year" | "month" | "date" | "time" | "dateTime" | "dateRange" | "dateTimeRange"; interface DatePickerPresetsType { label: string; value: () => any; } export declare const datePickerProps: { modelValue: { type: (NumberConstructor | ObjectConstructor | StringConstructor | DateConstructor | ArrayConstructor)[]; default: null; }; startDate: { type: (NumberConstructor | ObjectConstructor | StringConstructor | DateConstructor)[]; default: null; }; endDate: { type: (NumberConstructor | ObjectConstructor | StringConstructor | DateConstructor)[]; default: null; }; valueType: { type: PropType; default: string; }; mode: { type: PropType; default: string; }; presets: PropType; disabled: { type: BooleanType; }; opened: { type: BooleanType; }; clearable: { type: BooleanType; default: boolean; }; editable: { type: BooleanType; default: boolean; }; placeholder: { type: PropType; default: string; }; format: { type: StringConstructor; default: null; }; disabledDate: { type: PropType<(date: Date) => boolean>; default: () => boolean; }; disabledTime: { type: PropType<(date: Date) => boolean>; default: () => boolean; }; size: { type: PropType; }; dateIcon: { type: PropType; }; theme: { type: PropType; default: string; }; shape: { type: PropType; }; bordered: { type: BooleanType; default: boolean; }; placement: { type: PropType; default: string; }; onChange: { type: PropType<(date: Date | Date[], dateStr: string | string[]) => void>; }; onOpenChange: { type: PropType<(open: boolean) => void>; }; onClear: { type: PropType<() => void>; }; }; export type DatePickerProps = ExtractPropTypes; declare const DatePicker: import('vue').DefineComponent; default: string; }; mode: { type: PropType; default: string; }; presets: PropType; disabled: { type: BooleanType; }; opened: { type: BooleanType; }; clearable: { type: BooleanType; default: boolean; }; editable: { type: BooleanType; default: boolean; }; placeholder: { type: PropType; default: string; }; format: { type: StringConstructor; default: null; }; disabledDate: { type: PropType<(date: Date) => boolean>; default: () => boolean; }; disabledTime: { type: PropType<(date: Date) => boolean>; default: () => boolean; }; size: { type: PropType; }; dateIcon: { type: PropType; }; theme: { type: PropType; default: string; }; shape: { type: PropType; }; bordered: { type: BooleanType; default: boolean; }; placement: { type: PropType; default: string; }; onChange: { type: PropType<(date: Date | Date[], dateStr: string | string[]) => void>; }; onOpenChange: { type: PropType<(open: boolean) => void>; }; onClear: { type: PropType<() => void>; }; }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly; default: string; }; mode: { type: PropType; default: string; }; presets: PropType; disabled: { type: BooleanType; }; opened: { type: BooleanType; }; clearable: { type: BooleanType; default: boolean; }; editable: { type: BooleanType; default: boolean; }; placeholder: { type: PropType; default: string; }; format: { type: StringConstructor; default: null; }; disabledDate: { type: PropType<(date: Date) => boolean>; default: () => boolean; }; disabledTime: { type: PropType<(date: Date) => boolean>; default: () => boolean; }; size: { type: PropType; }; dateIcon: { type: PropType; }; theme: { type: PropType; default: string; }; shape: { type: PropType; }; bordered: { type: BooleanType; default: boolean; }; placement: { type: PropType; default: string; }; onChange: { type: PropType<(date: Date | Date[], dateStr: string | string[]) => void>; }; onOpenChange: { type: PropType<(open: boolean) => void>; }; onClear: { type: PropType<() => void>; }; }>> & Readonly<{}>, { bordered: boolean | undefined; mode: DatePickerModeType; theme: ThemeType; placeholder: string | string[]; modelValue: string | number | Record | Date | unknown[]; valueType: DatePickerValueType; placement: DropPlacementsType; clearable: boolean | undefined; startDate: string | number | Record | Date; endDate: string | number | Record | Date; editable: boolean | undefined; format: string; disabledDate: (date: Date) => boolean; disabledTime: (date: Date) => boolean; }, {}, {}, { transfer: import('vue').ObjectDirective; resize: import('vue').ObjectDirective; }, string, import('vue').ComponentProvideOptions, true, {}, any>; export default DatePicker;