/**
 * @license
 *-------------------------------------------------------------------------------------------
 * Copyright © 2026 Progress Software Corporation. All rights reserved.
 * Licensed under commercial license. See LICENSE.md in the package root for more information
 *-------------------------------------------------------------------------------------------
 */
import { IntlService, DateFormatOptions } from '@progress/kendo-vue-intl';
import { TimePickerIncrementalSteps } from './models/IncrementalSteps';
import { PropType } from 'vue';
/**
 * @hidden
 */
export declare enum Direction {
    Left = 0,
    Right = 1
}
/**
 * @hidden
 */
export interface TimeSelectorChangeEvent {
    event?: any;
    value: Date;
    target: any;
}
/**
 * @hidden
 */
export interface TimeSelectorProps {
    cancelButton?: boolean;
    disabled?: boolean;
    format?: string | DateFormatOptions;
    max?: Date;
    min?: Date;
    nowButton?: boolean;
    onChange?: any;
    onReject?: any;
    onKeydown?: any;
    steps?: TimePickerIncrementalSteps;
    smoothScroll?: boolean;
    tabIndex?: number;
    value?: Date | null;
    boundRange?: boolean;
}
/**
 * @hidden
 */
export interface TimeSelectorComputed {
    [key: string]: any;
    computedValue: Date | null;
    intl: IntlService;
    current: Date | null;
}
/**
 * @hidden
 */
declare const TimeSelector: import('vue').DefineComponent<import('vue').ExtractPropTypes<{
    cancelButton: {
        type: PropType<boolean>;
        default: boolean;
    };
    boundRange: {
        type: PropType<boolean>;
        default: boolean;
    };
    disabled: {
        type: PropType<boolean>;
        default: boolean;
    };
    format: {
        type: PropType<string | DateFormatOptions>;
        default: () => string;
    };
    max: {
        type: PropType<Date>;
        default: () => Date;
    };
    min: {
        type: PropType<Date>;
        default: () => Date;
    };
    nowButton: PropType<boolean>;
    steps: {
        type: PropType<TimePickerIncrementalSteps>;
        default: () => {};
    };
    smoothScroll: {
        type: PropType<boolean>;
        default: boolean;
    };
    tabIndex: PropType<number>;
    value: {
        type: PropType<Date>;
        default: () => any;
    };
    onChange: PropType<any>;
    onReject: PropType<any>;
    onKeydown: PropType<any>;
}>, {
    kendoIntlService: {};
    kendoLocalizationService: {};
}, {
    currentState: any;
    currentValue: any;
    valueDuringOnChange: any;
}, {
    computedValue(): Date | null;
    intl(): IntlService;
    current(): Date | null;
}, {
    handleBlur(event: any): void;
    handleFocus(event: any): void;
    focusActiveList(): void;
    hasActiveButton(): boolean;
    handleKeyDown(event: any): void;
    handleAccept(event: any): void;
    handleReject(event: any): void;
    handleNowClick(event: any): void;
    handleChange(candidate: Date): void;
}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
    change: (event: any) => true;
    focus: (event: FocusEvent) => true;
    blur: (event: FocusEvent) => true;
    keydown: (event: KeyboardEvent) => true;
    reject: (event: Event) => true;
}, string, import('vue').PublicProps, Readonly<import('vue').ExtractPropTypes<{
    cancelButton: {
        type: PropType<boolean>;
        default: boolean;
    };
    boundRange: {
        type: PropType<boolean>;
        default: boolean;
    };
    disabled: {
        type: PropType<boolean>;
        default: boolean;
    };
    format: {
        type: PropType<string | DateFormatOptions>;
        default: () => string;
    };
    max: {
        type: PropType<Date>;
        default: () => Date;
    };
    min: {
        type: PropType<Date>;
        default: () => Date;
    };
    nowButton: PropType<boolean>;
    steps: {
        type: PropType<TimePickerIncrementalSteps>;
        default: () => {};
    };
    smoothScroll: {
        type: PropType<boolean>;
        default: boolean;
    };
    tabIndex: PropType<number>;
    value: {
        type: PropType<Date>;
        default: () => any;
    };
    onChange: PropType<any>;
    onReject: PropType<any>;
    onKeydown: PropType<any>;
}>> & Readonly<{
    onBlur?: (event: FocusEvent) => any;
    onChange?: (event: any) => any;
    onFocus?: (event: FocusEvent) => any;
    onKeydown?: (event: KeyboardEvent) => any;
    onReject?: (event: Event) => any;
}>, {
    value: Date;
    disabled: boolean;
    format: string;
    max: Date;
    min: Date;
    steps: TimePickerIncrementalSteps;
    boundRange: boolean;
    smoothScroll: boolean;
    cancelButton: boolean;
}, {}, {}, {}, string, import('vue').ComponentProvideOptions, true, {}, any>;
export { TimeSelector };
