import { OnInit, OnChanges, OnDestroy, EventEmitter, ComponentRef, SimpleChanges, ViewContainerRef, ComponentFactoryResolver } from '@angular/core';
import { DatePickerComponent } from './date-picker.component';
import { DatePickerOptions } from './date-picker-options.provider';
import { ControlValueAccessor } from '@angular/forms';
import * as i0 from "@angular/core";
export declare class DatePickerDirective implements OnDestroy, OnChanges, OnInit, ControlValueAccessor {
    private _viewContainerRef;
    private _defaultOptions;
    private _cfr;
    picker: ComponentRef<DatePickerComponent>;
    appendToBodyElement: HTMLElement;
    private _eventListeners;
    private _ngModelOnChange;
    private _ngModelOnTouched;
    isOpen: boolean;
    mode: string;
    minDate: string;
    maxDate: string;
    use12Hours: boolean;
    minuteStep: number;
    value: Date;
    mask: boolean;
    title: string;
    okText: string;
    dismissText: string;
    disabled: boolean;
    locale: any;
    appendToBody: boolean;
    showErrorToast: boolean;
    showErrorToastInterval: number;
    onVisibleChange: EventEmitter<boolean>;
    onValueChange: EventEmitter<any>;
    onOk: EventEmitter<any>;
    onDismiss: EventEmitter<any>;
    togglePicker(): void;
    constructor(_viewContainerRef: ViewContainerRef, _defaultOptions: DatePickerOptions, _cfr: ComponentFactoryResolver);
    showPicker(): void;
    hidePicker(): void;
    writeValue(value: Date): void;
    registerOnChange(fn: (_: Date) => {}): void;
    registerOnTouched(fn: () => {}): void;
    setDisabledState(isDisabled: boolean): void;
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<DatePickerDirective, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<DatePickerDirective, "[DatePicker]", never, { "isOpen": { "alias": "isOpen"; "required": false; }; "mode": { "alias": "mode"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "use12Hours": { "alias": "use12Hours"; "required": false; }; "minuteStep": { "alias": "minuteStep"; "required": false; }; "value": { "alias": "value"; "required": false; }; "mask": { "alias": "mask"; "required": false; }; "title": { "alias": "title"; "required": false; }; "okText": { "alias": "okText"; "required": false; }; "dismissText": { "alias": "dismissText"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "locale": { "alias": "locale"; "required": false; }; "appendToBody": { "alias": "appendToBody"; "required": false; }; "showErrorToast": { "alias": "showErrorToast"; "required": false; }; "showErrorToastInterval": { "alias": "showErrorToastInterval"; "required": false; }; }, { "onVisibleChange": "onVisibleChange"; "onValueChange": "onValueChange"; "onOk": "onOk"; "onDismiss": "onDismiss"; }, never, never, false, never>;
}
