import { CalendarMode } from '../common/types/calendar-mode';
import { IDatePickerDirectiveConfig } from './date-picker-directive-config.model';
import { DatePickerDirectiveService } from './date-picker-directive.service';
import { IDpDayPickerApi } from './date-picker.api';
import { DatePickerComponent } from './date-picker.component';
import { ComponentFactoryResolver, ElementRef, EventEmitter, OnInit, ViewContainerRef } from '@angular/core';
import { NgControl } from '@angular/forms';
import { Moment } from 'moment';
export declare class DatePickerDirective implements OnInit {
    viewContainerRef: ViewContainerRef;
    componentFactoryResolver: ComponentFactoryResolver;
    formControl: NgControl;
    service: DatePickerDirectiveService;
    private _config;
    private _attachTo;
    private _theme;
    private _mode;
    private _minDate;
    private _maxDate;
    private _minTime;
    private _maxTime;
    private firstChange;
    config: IDatePickerDirectiveConfig;
    attachTo: ElementRef | string;
    theme: string;
    mode: CalendarMode;
    minDate: Moment | string;
    maxDate: Moment | string;
    minTime: Moment | string;
    maxTime: Moment | string;
    open: EventEmitter<void>;
    close: EventEmitter<void>;
    datePicker: DatePickerComponent;
    api: IDpDayPickerApi;
    constructor(viewContainerRef: ViewContainerRef, componentFactoryResolver: ComponentFactoryResolver, formControl: NgControl, service: DatePickerDirectiveService);
    ngOnInit(): void;
    createDatePicker(): DatePickerComponent;
    attachModelToDatePicker(): void;
    onClick(): void;
    onFocus(): void;
    private updateDatepickerConfig();
}
