import type { DateValue } from 'reka-ui';
import type { HTMLAttributes } from 'vue';
import type { LocaleValue } from '../../../share/locale.js';
import type { DatePickerType } from './types.js';
type ShortcutValue = string | (() => string);
export interface DatePickerShortcut {
    name: LocaleValue;
    value: ShortcutValue;
}
type __VLS_Props = {
    modelValue?: string;
    defaultValue?: string;
    type?: DatePickerType;
    format?: string;
    valueFormat?: string;
    placeholder?: string;
    clearable?: boolean;
    disabled?: boolean;
    readonly?: boolean;
    disabledDate?: (d: DateValue) => boolean;
    timeGranularity?: 'hour' | 'minute' | 'second';
    hourCycle?: 12 | 24;
    class?: HTMLAttributes['class'];
    popoverClass?: HTMLAttributes['class'];
    prefixIcon?: string;
    clearIcon?: string;
    shortcuts?: ReadonlyArray<DatePickerShortcut>;
    size?: 'sm' | 'md' | 'lg';
};
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
    clear: () => any;
    blur: (args_0: FocusEvent) => any;
    change: (args_0: string | undefined) => any;
    focus: (args_0: FocusEvent) => any;
    "update:modelValue": (args_0: string | undefined) => any;
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
    onClear?: (() => any) | undefined;
    onBlur?: ((args_0: FocusEvent) => any) | undefined;
    onChange?: ((args_0: string | undefined) => any) | undefined;
    onFocus?: ((args_0: FocusEvent) => any) | undefined;
    "onUpdate:modelValue"?: ((args_0: string | undefined) => any) | undefined;
}>, {
    size: "sm" | "md" | "lg";
    type: DatePickerType;
    hourCycle: 12 | 24;
    clearable: boolean;
    timeGranularity: "hour" | "minute" | "second";
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
declare const _default: typeof __VLS_export;
export default _default;
