import type { DatePickerProps } from './props';
import type { ComputedPlacement } from '@popperjs/core';
export type DatePickerPlacementType = ComputedPlacement;
export type DatePickerTypeType = 'date' | 'daterange' | 'datetime' | 'datetimerange' | 'month' | 'monthrange' | 'year' | 'yearrange';
export type TimePickerTypeType = 'time' | 'timerange';
export type PickerTypeType = DatePickerTypeType | TimePickerTypeType;
export interface IDatePickerShortcut {
    text: string;
    value?: () => Date[];
    onClick?: (picker: any) => void;
}
export type DatePickerShortcutsType = IDatePickerShortcut[];
type ValueType = Date | number | string;
export type DatePickerValueType = [ValueType, ValueType] | ValueType;
export type DisabledDateType = (date: Date | number) => boolean;
export interface IDatePickerCtx {
    props: DatePickerProps;
    focus: () => void;
}
export interface ITimePickerCtx {
    parentName: string;
    panelDate?: Date | number | string;
    dates?: [ValueType, ValueType] | ValueType;
}
export type DatePickerPanelType = 'DatePanel' | 'DateRangePanel' | 'RangeTimePickerPanel' | 'TimePickerPanel';
export type SelectionModeType = 'date' | 'month' | 'time' | 'year';
export interface IDisabledHMS {
    disabledHours?: number[];
    disabledMinutes?: number[];
    disabledSeconds?: number[];
}
export {};
