import { OnInit, SimpleChanges, OnChanges, ChangeDetectorRef } from '@angular/core';
import { Observable } from 'rxjs/index';
import { Visibility } from '../enums';
import { DatepickerConfig } from './datepicker.config';
export declare class DatepickerComponent implements OnInit, OnChanges {
    private _changeDetectionRef;
    private datePickerConfig;
    OpenDiv: Boolean;
    showCalendar: Boolean;
    tabname1: String;
    activeVariable: Boolean;
    activeVariable1: Boolean;
    selectedDate: Date;
    validators: Array<(date: Date) => boolean>;
    placement: 'top' | 'bottom' | 'left' | 'right';
    allowInterval: boolean;
    selectedDueDateInterval: string;
    onDateSelected: (inputDate: Date) => void;
    visibilityEnum: typeof Visibility;
    visibility: Visibility;
    viewDate: Date;
    days: Array<Date>;
    week: Array<string>;
    private presentDate;
    private cellCount;
    private _dp;
    /** Subject for notifying that the calendar has been hidden from the view */
    private readonly _onHide;
    /** The timeout ID of any current timer set to show the calendar */
    private _showTimeoutId;
    /** The timeout ID of any current timer set to hide the calendar */
    private _hideTimeoutId;
    constructor(_changeDetectionRef: ChangeDetectorRef, datePickerConfig: DatepickerConfig);
    renderCalendar(): void;
    previousMonth(): void;
    nextMonth(): void;
    isCurrentMonth(inputDate: Date): boolean;
    isCurrentDay(inputDate: Date): boolean;
    isSelectedDay(inputDate: Date): boolean;
    isInvalidDay(inputDate: Date): boolean;
    setSelectedDate(date: Date): void;
    ngOnChanges(changes: SimpleChanges): void;
    ngOnInit(): void;
    /**
     * Shows the tooltip
     * @param delay Amount of milliseconds to the delay showing the tooltip.
     */
    show(delay: number): void;
    /**
     * Hide the tooltip after the provided delay in ms.
     * @param delay Amount of milliseconds to delay hiding the tooltip.
     */
    hide(delay: number): void;
    /** Returns an observable that notifies when the tooltip has been hidden from view. */
    afterHidden(): Observable<void>;
    isVisible(): boolean;
    onTabSelect(tabname: String): void;
}
