import { CSSProperties, PropType, Ref } from 'vue'; import { MonthsGridFoundationProps, MonthsGridFoundationState, PanelType } from '@douyinfe/semi-foundation/lib/es/datePicker/monthsGridFoundation'; import { BaseProps } from '../_base/baseComponent'; import { DayStatusType } from '@douyinfe/semi-foundation/lib/es/datePicker/foundation'; import { CombineProps, VueJsxNode } from '../interface'; import type { ScrollItemProps } from '../scrollList'; export interface MonthsGridProps extends MonthsGridFoundationProps, BaseProps { navPrev?: VueJsxNode; navNext?: VueJsxNode; renderDate?: (dayNumber?: number, fullDate?: string) => VueJsxNode; renderFullDate?: (dayNumber?: number, fullDate?: string, dayStatus?: DayStatusType) => VueJsxNode; focusRecordsRef?: Ref<{ rangeStart: boolean; rangeEnd: boolean; }>; yearAndMonthOpts?: ScrollItemProps; motionEnd?: boolean; } export type MonthsGridState = MonthsGridFoundationState; export declare const vuePropsType: CombineProps; declare const monthsGrid: import("vue").DefineComponent | { type: PropType; default?: any; required?: false; }; navNext: PropType | { type: PropType; default?: any; required?: false; }; renderDate: PropType<(dayNumber?: number, fullDate?: string) => VueJsxNode> | { type: PropType<(dayNumber?: number, fullDate?: string) => VueJsxNode>; default?: any; required?: false; }; renderFullDate: PropType<(dayNumber?: number, fullDate?: string, dayStatus?: DayStatusType) => VueJsxNode> | { type: PropType<(dayNumber?: number, fullDate?: string, dayStatus?: DayStatusType) => VueJsxNode>; default?: any; required?: false; }; focusRecordsRef: PropType> | { type: PropType>; default?: any; required?: false; }; yearAndMonthOpts: PropType> | { type: PropType>; default?: any; required?: false; }; motionEnd: PropType | { type: PropType; default?: any; required?: false; }; type: PropType<"date" | "month" | "dateTime" | "year" | "dateRange" | "dateTimeRange" | "monthRange"> | { type: PropType<"date" | "month" | "dateTime" | "year" | "dateRange" | "dateTimeRange" | "monthRange">; default?: any; required?: false; }; defaultValue: PropType | { type: PropType; default?: any; required?: false; }; defaultPickerValue: PropType | { type: PropType; default?: any; required?: false; }; multiple: PropType | { type: PropType; default?: any; required?: false; }; max: PropType | { type: PropType; default?: any; required?: false; }; splitPanels: PropType | { type: PropType; default?: any; required?: false; }; weekStartsOn: PropType | { type: PropType; default?: any; required?: false; }; disabledDate: PropType<(date: Date, options?: { rangeStart: string; rangeEnd: string; }) => boolean> | { type: PropType<(date: Date, options?: { rangeStart: string; rangeEnd: string; }) => boolean>; default?: any; required?: false; }; disabledTime: PropType<(date: Date | Date[], panelType: PanelType) => void> | { type: PropType<(date: Date | Date[], panelType: PanelType) => void>; default?: any; required?: false; }; disabledTimePicker: PropType | { type: PropType; default?: any; required?: false; }; hideDisabledOptions: PropType | { type: PropType; default?: any; required?: false; }; onMaxSelect: PropType<(v?: any) => void> | { type: PropType<(v?: any) => void>; default?: any; required?: false; }; timePickerOpts: PropType | { type: PropType; default?: any; required?: false; }; isControlledComponent: PropType | { type: PropType; default?: any; required?: false; }; rangeStart: PropType | { type: PropType; default?: any; required?: false; }; rangeInputFocus: PropType | { type: PropType; default?: any; required?: false; }; locale: PropType | { type: PropType; default?: any; required?: false; }; localeCode: PropType | { type: PropType; default?: any; required?: false; }; format: PropType | { type: PropType; default?: any; required?: false; }; startDateOffset: PropType<() => void> | { type: PropType<() => void>; default?: any; required?: false; }; endDateOffset: PropType<() => void> | { type: PropType<() => void>; default?: any; required?: false; }; autoSwitchDate: PropType | { type: PropType; default?: any; required?: false; }; density: PropType | { type: PropType; default?: any; required?: false; }; dateFnsLocale: PropType | { type: PropType; default?: any; required?: false; }; timeZone: PropType | { type: PropType; default?: any; required?: false; }; syncSwitchMonth: PropType | { type: PropType; default?: any; required?: false; }; onChange: PropType<(value: [Date] | [Date, Date], options?: { closePanel?: boolean; needCheckFocusRecord?: boolean; }) => void> | { type: PropType<(value: [Date] | [Date, Date], options?: { closePanel?: boolean; needCheckFocusRecord?: boolean; }) => void>; default?: any; required?: false; }; onPanelChange: PropType<(date: Date | Date[], dateString: string | string[]) => void> | { type: PropType<(date: Date | Date[], dateString: string | string[]) => void>; default?: any; required?: false; }; setRangeInputFocus: PropType<(rangeInputFocus: "rangeStart" | "rangeEnd") => void> | { type: PropType<(rangeInputFocus: "rangeStart" | "rangeEnd") => void>; default?: any; required?: false; }; isAnotherPanelHasOpened: PropType<(currentRangeInput: "rangeStart" | "rangeEnd") => boolean> | { type: PropType<(currentRangeInput: "rangeStart" | "rangeEnd") => boolean>; default?: any; required?: false; }; triggerRender: PropType<(props: Record) => any> | { type: PropType<(props: Record) => any>; default?: any; required?: false; }; insetInput: { type: PropType; default?: any; required: true; }; presetPosition: PropType<"bottom" | "left" | "right" | "top"> | { type: PropType<"bottom" | "left" | "right" | "top">; default?: any; required?: false; }; renderQuickControls: PropType | { type: PropType; default?: any; required?: false; }; renderDateInput: PropType | { type: PropType; default?: any; required?: false; }; startYear: PropType | { type: PropType; default?: any; required?: false; }; endYear: PropType | { type: PropType; default?: any; required?: false; }; style: PropType | { type: PropType; default?: any; required?: false; }; className: PropType | { type: PropType; default?: any; required?: false; }; }>, () => import("vue/jsx-runtime").JSX.Element, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly | { type: PropType; default?: any; required?: false; }; navNext: PropType | { type: PropType; default?: any; required?: false; }; renderDate: PropType<(dayNumber?: number, fullDate?: string) => VueJsxNode> | { type: PropType<(dayNumber?: number, fullDate?: string) => VueJsxNode>; default?: any; required?: false; }; renderFullDate: PropType<(dayNumber?: number, fullDate?: string, dayStatus?: DayStatusType) => VueJsxNode> | { type: PropType<(dayNumber?: number, fullDate?: string, dayStatus?: DayStatusType) => VueJsxNode>; default?: any; required?: false; }; focusRecordsRef: PropType> | { type: PropType>; default?: any; required?: false; }; yearAndMonthOpts: PropType> | { type: PropType>; default?: any; required?: false; }; motionEnd: PropType | { type: PropType; default?: any; required?: false; }; type: PropType<"date" | "month" | "dateTime" | "year" | "dateRange" | "dateTimeRange" | "monthRange"> | { type: PropType<"date" | "month" | "dateTime" | "year" | "dateRange" | "dateTimeRange" | "monthRange">; default?: any; required?: false; }; defaultValue: PropType | { type: PropType; default?: any; required?: false; }; defaultPickerValue: PropType | { type: PropType; default?: any; required?: false; }; multiple: PropType | { type: PropType; default?: any; required?: false; }; max: PropType | { type: PropType; default?: any; required?: false; }; splitPanels: PropType | { type: PropType; default?: any; required?: false; }; weekStartsOn: PropType | { type: PropType; default?: any; required?: false; }; disabledDate: PropType<(date: Date, options?: { rangeStart: string; rangeEnd: string; }) => boolean> | { type: PropType<(date: Date, options?: { rangeStart: string; rangeEnd: string; }) => boolean>; default?: any; required?: false; }; disabledTime: PropType<(date: Date | Date[], panelType: PanelType) => void> | { type: PropType<(date: Date | Date[], panelType: PanelType) => void>; default?: any; required?: false; }; disabledTimePicker: PropType | { type: PropType; default?: any; required?: false; }; hideDisabledOptions: PropType | { type: PropType; default?: any; required?: false; }; onMaxSelect: PropType<(v?: any) => void> | { type: PropType<(v?: any) => void>; default?: any; required?: false; }; timePickerOpts: PropType | { type: PropType; default?: any; required?: false; }; isControlledComponent: PropType | { type: PropType; default?: any; required?: false; }; rangeStart: PropType | { type: PropType; default?: any; required?: false; }; rangeInputFocus: PropType | { type: PropType; default?: any; required?: false; }; locale: PropType | { type: PropType; default?: any; required?: false; }; localeCode: PropType | { type: PropType; default?: any; required?: false; }; format: PropType | { type: PropType; default?: any; required?: false; }; startDateOffset: PropType<() => void> | { type: PropType<() => void>; default?: any; required?: false; }; endDateOffset: PropType<() => void> | { type: PropType<() => void>; default?: any; required?: false; }; autoSwitchDate: PropType | { type: PropType; default?: any; required?: false; }; density: PropType | { type: PropType; default?: any; required?: false; }; dateFnsLocale: PropType | { type: PropType; default?: any; required?: false; }; timeZone: PropType | { type: PropType; default?: any; required?: false; }; syncSwitchMonth: PropType | { type: PropType; default?: any; required?: false; }; onChange: PropType<(value: [Date] | [Date, Date], options?: { closePanel?: boolean; needCheckFocusRecord?: boolean; }) => void> | { type: PropType<(value: [Date] | [Date, Date], options?: { closePanel?: boolean; needCheckFocusRecord?: boolean; }) => void>; default?: any; required?: false; }; onPanelChange: PropType<(date: Date | Date[], dateString: string | string[]) => void> | { type: PropType<(date: Date | Date[], dateString: string | string[]) => void>; default?: any; required?: false; }; setRangeInputFocus: PropType<(rangeInputFocus: "rangeStart" | "rangeEnd") => void> | { type: PropType<(rangeInputFocus: "rangeStart" | "rangeEnd") => void>; default?: any; required?: false; }; isAnotherPanelHasOpened: PropType<(currentRangeInput: "rangeStart" | "rangeEnd") => boolean> | { type: PropType<(currentRangeInput: "rangeStart" | "rangeEnd") => boolean>; default?: any; required?: false; }; triggerRender: PropType<(props: Record) => any> | { type: PropType<(props: Record) => any>; default?: any; required?: false; }; insetInput: { type: PropType; default?: any; required: true; }; presetPosition: PropType<"bottom" | "left" | "right" | "top"> | { type: PropType<"bottom" | "left" | "right" | "top">; default?: any; required?: false; }; renderQuickControls: PropType | { type: PropType; default?: any; required?: false; }; renderDateInput: PropType | { type: PropType; default?: any; required?: false; }; startYear: PropType | { type: PropType; default?: any; required?: false; }; endYear: PropType | { type: PropType; default?: any; required?: false; }; style: PropType | { type: PropType; default?: any; required?: false; }; className: PropType | { type: PropType; default?: any; required?: false; }; }>> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; export default monthsGrid;