import type { returnType } from '../../_utils';
import type { ExtractPropTypes, PropType, CSSProperties } from 'vue';
import type { dkPlusSize } from '../../_interface';
export type PopperStyle = string | CSSProperties;
export type TimePickerValue = string | number | Date;
export type TimePickerModelValue = TimePickerValue | TimePickerValue[];
export type TimePickerDefaultValue = Date | [Date, Date];
export declare const dkTimePickerProps: {
    readonly modelValue: {
        readonly type: PropType<TimePickerModelValue>;
        readonly default: "";
    };
    readonly readonly: returnType<BooleanConstructor, boolean>;
    readonly isRange: returnType<BooleanConstructor, boolean>;
    readonly disabled: returnType<BooleanConstructor, boolean>;
    readonly size: returnType<PropType<dkPlusSize>, dkPlusSize | null>;
    readonly editable: returnType<BooleanConstructor, boolean>;
    readonly clearable: returnType<BooleanConstructor, boolean>;
    readonly placeholder: returnType<PropType<string>, string | null>;
    readonly startPlaceholder: returnType<PropType<string>, string | null>;
    readonly endPlaceholder: returnType<PropType<string>, string | null>;
    readonly rangeSeparator: returnType<PropType<string>, string | null>;
    readonly format: returnType<PropType<string>, string | null>;
    readonly valueFormat: returnType<PropType<string>, string | null>;
    readonly defaultValue: {
        readonly type: PropType<TimePickerDefaultValue>;
        readonly default: undefined;
    };
    readonly disabledHours: returnType<PropType<() => number[]>, (() => number[]) | undefined>;
    readonly disabledMinutes: returnType<PropType<(hour: number) => number[]>, ((hour: number) => number[]) | undefined>;
    readonly disabledSeconds: returnType<PropType<(hour: number, minute: number) => number[]>, ((hour: number, minute: number) => number[]) | undefined>;
    readonly arrowControl: returnType<BooleanConstructor, boolean>;
    readonly popperClass: returnType<PropType<string>, string | null>;
    readonly popperStyle: {
        readonly type: PropType<PopperStyle>;
        readonly default: "";
    };
    readonly popperOptions: {
        readonly type: PropType<Record<string, unknown>>;
        readonly default: () => Record<string, unknown>;
    };
    readonly fallbackPlacements: {
        readonly type: PropType<string[]>;
        readonly default: () => string[];
    };
    readonly teleported: returnType<BooleanConstructor, boolean>;
    readonly placement: returnType<PropType<string>, string | null>;
    readonly tabindex: {
        readonly type: PropType<string | number>;
        readonly default: 0;
    };
    readonly ariaLabel: returnType<PropType<string>, string | null>;
    readonly emptyValues: {
        readonly type: PropType<unknown[]>;
        readonly default: undefined;
    };
    readonly valueOnClear: {
        readonly type: PropType<unknown>;
        readonly default: undefined;
    };
    readonly prefixIcon: returnType<PropType<string>, string | null>;
    readonly clearIcon: returnType<PropType<string>, string | null>;
    readonly id: {
        readonly type: PropType<string | string[]>;
        readonly default: undefined;
    };
    readonly name: {
        readonly type: PropType<string | string[]>;
        readonly default: undefined;
    };
};
export type DkTimePickerProps = ExtractPropTypes<typeof dkTimePickerProps>;
