import { AfterViewInit, DoCheck, ElementRef, EventEmitter, OnDestroy, OnInit, Renderer2 } from '@angular/core';
import { PrimeNGConfig } from 'primeng/api';
import { Calendar } from 'primeng/calendar';
import { I18nService } from 'systelab-translate';
import { DataTransformerService } from './date-transformer.service';
import * as i0 from "@angular/core";
export declare class DatepickerComponent implements OnInit, AfterViewInit, DoCheck, OnDestroy {
    protected myRenderer: Renderer2;
    protected i18nService: I18nService;
    protected dataTransformerService: DataTransformerService;
    protected config: PrimeNGConfig;
    disabled: boolean;
    error: boolean;
    required: boolean;
    inputExpandHeight: boolean;
    markPreviousAfterDate: boolean;
    inputFontSize: number;
    showTodayButton: boolean;
    inline: boolean;
    minDate: Date;
    maxDate: Date;
    warnDaysBefore: number;
    warnDaysAfter: number;
    autofocus: boolean;
    fromDateForRelativeDates: Date;
    tabindex: number;
    withIntegratedTime: boolean;
    onlyTime: boolean;
    showOtherMonths: boolean;
    selectOtherMonths: boolean;
    dateFormat: string;
    get currentDate(): Date;
    set currentDate(value: Date);
    currentDateChange: EventEmitter<Date>;
    currentCalendar: Calendar;
    inputChanged: boolean;
    protected _currentDate: Date;
    previousAfterDate: boolean;
    tooFarDate: boolean;
    language: any;
    currentDocSize: number;
    currentLanguage: string;
    destroyWheelListener: Function;
    destroyKeyListener: Function;
    inputElement: ElementRef;
    focusEvt: FocusEvent;
    isTablet: boolean;
    datepickerId: string;
    formatError: boolean;
    private headerElement;
    constructor(myRenderer: Renderer2, i18nService: I18nService, dataTransformerService: DataTransformerService, config: PrimeNGConfig);
    ngOnInit(): void;
    ngAfterViewInit(): void;
    ngDoCheck(): void;
    ngOnDestroy(): void;
    selectDate(): void;
    changeDate(): void;
    private parseTime;
    private infereDate;
    onInput(event: KeyboardEvent): void;
    saveEventOnFocus(evt: FocusEvent): void;
    repositionateCalendar(element?: ElementRef): void;
    nextMonth(): void;
    prevMonth(): void;
    nextYear(): void;
    prevYear(): void;
    clearDate(event: any): void;
    setTodayDate(): void;
    closeDatepicker(): void;
    private checkPreviousAfterDate;
    private checkTooFarDate;
    private getLanguage;
    private addListeners;
    static ɵfac: i0.ɵɵFactoryDeclaration<DatepickerComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DatepickerComponent, "systelab-datepicker", never, { "disabled": { "alias": "disabled"; "required": false; }; "error": { "alias": "error"; "required": false; }; "required": { "alias": "required"; "required": false; }; "inputExpandHeight": { "alias": "inputExpandHeight"; "required": false; }; "markPreviousAfterDate": { "alias": "markPreviousAfterDate"; "required": false; }; "inputFontSize": { "alias": "inputFontSize"; "required": false; }; "showTodayButton": { "alias": "showTodayButton"; "required": false; }; "inline": { "alias": "inline"; "required": false; }; "minDate": { "alias": "minDate"; "required": false; }; "maxDate": { "alias": "maxDate"; "required": false; }; "warnDaysBefore": { "alias": "warnDaysBefore"; "required": false; }; "warnDaysAfter": { "alias": "warnDaysAfter"; "required": false; }; "autofocus": { "alias": "autofocus"; "required": false; }; "fromDateForRelativeDates": { "alias": "fromDateForRelativeDates"; "required": false; }; "tabindex": { "alias": "tabindex"; "required": false; }; "withIntegratedTime": { "alias": "withIntegratedTime"; "required": false; }; "onlyTime": { "alias": "onlyTime"; "required": false; }; "showOtherMonths": { "alias": "showOtherMonths"; "required": false; }; "selectOtherMonths": { "alias": "selectOtherMonths"; "required": false; }; "dateFormat": { "alias": "dateFormat"; "required": false; }; "currentDate": { "alias": "currentDate"; "required": false; }; }, { "currentDateChange": "currentDateChange"; }, never, never, false, never>;
}
