import { OnInit, ElementRef, ViewContainerRef, OnDestroy, AfterViewInit } from '@angular/core';
import { Subject } from 'rxjs';
import { LocaleProviderService } from '../locale-provider/locale-provider.service';
import { DatePickerOptions } from './date-picker-options.provider';
import { ToastService } from '../toast/toast.service';
import * as i0 from "@angular/core";
export declare type DateMode = 'date' | 'time' | 'datetime' | 'year' | 'month';
export declare class DatePickerComponent implements OnInit, OnDestroy, AfterViewInit {
    elementRef: ElementRef;
    options: DatePickerOptions;
    toast: ToastService;
    localeProviderService: LocaleProviderService;
    transitionName: string;
    maskTransitionName: string;
    modeSwitch: number[];
    localMinDate: any[];
    localMaxDate: any[];
    currentTime: any[];
    indexArray: any;
    min_date: number[];
    max_date: number[];
    current_time: any[];
    clos: number;
    resultArr: any;
    resultDate: Date;
    data: any[];
    dataWithStr: any[];
    startY: number;
    differY: number;
    currentY: number;
    len: number;
    dom: any;
    index: number;
    maxY: number;
    lineHeight: number;
    selectedTarget: any[];
    isMouseDown: boolean;
    currentPicker: any;
    localeNew: any;
    unsubscribe$: Subject<void>;
    Velocity: {
        record: (y: any) => void;
        getVelocity: (y: any) => number;
    };
    errorMessage: string;
    curTLessThanMin: boolean;
    curTMoreThanMax: boolean;
    ngModelOnChange: (value: Date) => {};
    ngModelOnTouched: () => {};
    picker: ViewContainerRef;
    panstart(event: any): void;
    panmove(event: any): void;
    panend(event: any): void;
    constructor(elementRef: ElementRef, options: DatePickerOptions, toast: ToastService, localeProviderService: LocaleProviderService);
    init(): void;
    reloadPicker(): void;
    localeProvider(): void;
    transformDateFormat(date: Date): any;
    preZero(val: number): string;
    getInitValueIndex(): void;
    checkMode(mode: any): void;
    initResult(): void;
    checkTime(): boolean;
    judgeTime(arr1: number[], arr2: number[]): boolean;
    judgeEqualArray(arr1: any, arr2: any, length: any): boolean;
    initReady(): void;
    initData(tempArr: any, min: any, max: any, str: any, idx: any): void;
    ok(): void;
    handleReslut(): Date;
    cancel(): void;
    setTransitionName(): void;
    setCurrentSelected(checkIdx: any, sta: any, indexT: any): void;
    initRangeArr(min: any, max: any, indexT: any, checkIdx: any, str: any): void;
    getEventTarget(event: any): any;
    ngOnInit(): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<DatePickerComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DatePickerComponent, "DatePicker, nzm-date-picker", never, {}, {}, never, never>;
}
