import { EventEmitter, TemplateRef } from '@angular/core';
import { DatePickerBase } from '../date-picker-base';
import { ControlValueAccessor } from '@angular/forms';
import * as moment from 'moment';
import * as i0 from "@angular/core";
export declare class TimePickerComponent extends DatePickerBase implements ControlValueAccessor {
    /**
     * 内部用的值
     */
    value: Date;
    /**
     * 日期 Moment
     */
    ngModel: moment.Moment;
    /**
     * 不可选择的时间
     */
    nzDisabledTime: (current: Date) => {
        nzDisabledHours: any;
        nzDisabledMinutes: any;
        nzDisabledSeconds: any;
    };
    /**
     * 展示的日期格式，见nzFormat特别说明
     */
    nzFormat: string;
    /**
     * 预设时间范围快捷选择
     */
    nzRanges: {
        [key: string]: Date[];
    } | {
        [key: string]: () => Date[];
    };
    /**
     * 在面板中添加额外的页脚
     */
    nzRenderExtraFooter: TemplateRef<any> | string | (() => TemplateRef<any> | string);
    /**
     * 增加时间选择功能
     */
    nzShowTime: object | boolean;
    /**
     * 输入框提示文字
     */
    nzPlaceHolder: string;
    /**
     * 选择框底部显示自定义的内容
     */
    nzAddOn: TemplateRef<void>;
    /**
     * 自动获取焦点
     */
    nzAutoFocus: boolean;
    /**
     * 禁止选择部分小时选项
     */
    nzDisabledHours: () => number[];
    /**
     * 禁止选择部分分钟选项
     */
    nzDisabledMinutes: (hour: number) => number[];
    /**
     * 禁止选择部分秒选项
     */
    nzDisabledSeconds: (hour: number, minute: number) => number[];
    /**
     * 隐藏禁止选择的选项
     */
    nzHideDisabledOptions: boolean;
    /**
     * 小时选项间隔
     */
    nzHourStep: number;
    /**
     * 分钟选项间隔
     */
    nzMinuteStep: number;
    /**
     * 	秒选项间隔
     */
    nzSecondStep: number;
    /**
     * 面板是否打开，可双向绑定
     */
    nzOpen: boolean;
    /**
     * 弹出层类名
     */
    nzPopupClassName: string;
    /**
     * 当 [ngModel] 不存在时，可以设置面板打开时默认选中的值
     */
    nzDefaultOpenValue: Date;
    /**
     * 使用12小时制，为true时format默认为h:mm:ss a
     */
    nzUse12Hours: boolean;
    /**
     * 点击确定按钮的回调
     */
    nzOnOk: EventEmitter<moment.Moment[]>;
    /**
     * 时间发生变化的回调
     */
    ngModelChange: EventEmitter<moment.Moment[]>;
    /**
     * 待选日期发生变化的回调
     */
    nzOnCalendarChange: EventEmitter<moment.Moment[]>;
    constructor();
    /**
     * 点击确定按钮的回调
     * @param event 数据
     */
    onNzOk(event: Date[]): void;
    /**
     * 时间发生变化的回调
     * @param event 数据
     */
    onNgModelChangeChange(event: Date[]): void;
    /**
     * 待选日期发生变化的回调
     * @param event 数据
     */
    onNzOnCalendarChange(event: Date[]): void;
    registerOnChange(fn: any): void;
    registerOnTouched(fn: any): void;
    setDisabledState(isDisabled: boolean): void;
    writeValue(obj: any): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<TimePickerComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TimePickerComponent, "l-time-picker", never, { "ngModel": "ngModel"; "nzDisabledTime": "nzDisabledTime"; "nzFormat": "nzFormat"; "nzRanges": "nzRanges"; "nzRenderExtraFooter": "nzRenderExtraFooter"; "nzShowTime": "nzShowTime"; "nzPlaceHolder": "nzPlaceHolder"; "nzAddOn": "nzAddOn"; "nzAutoFocus": "nzAutoFocus"; "nzDisabledHours": "nzDisabledHours"; "nzDisabledMinutes": "nzDisabledMinutes"; "nzDisabledSeconds": "nzDisabledSeconds"; "nzHideDisabledOptions": "nzHideDisabledOptions"; "nzHourStep": "nzHourStep"; "nzMinuteStep": "nzMinuteStep"; "nzSecondStep": "nzSecondStep"; "nzOpen": "nzOpen"; "nzPopupClassName": "nzPopupClassName"; "nzDefaultOpenValue": "nzDefaultOpenValue"; "nzUse12Hours": "nzUse12Hours"; }, { "nzOnOk": "nzOnOk"; "ngModelChange": "ngModelChange"; "nzOnCalendarChange": "nzOnCalendarChange"; }, never, never>;
}
