import { AfterViewInit, ElementRef, OnDestroy, OnChanges, SimpleChanges } from '@angular/core';
import { PoButtonComponent } from '../../po-button/po-button.component';
import { PoCalendarComponent } from '../../po-calendar/po-calendar.component';
import { PoDatepickerBaseComponent } from './po-datepicker-base.component';
import { PoHelperComponent } from '../../po-helper';
/**
* @docsExtends PoDatepickerBaseComponent
*
* @example
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
export declare class PoDatepickerComponent extends PoDatepickerBaseComponent implements AfterViewInit, OnDestroy, OnChanges {
private readonly controlPosition;
private readonly renderer;
calendar: PoCalendarComponent;
dialogPicker: ElementRef;
iconDatepicker: PoButtonComponent;
inputEl: ElementRef;
iconClean: ElementRef;
helperEl?: PoHelperComponent;
/** Rótulo do campo. */
label?: string;
/** Texto de apoio do campo. */
help?: string;
displayAdditionalHelp: boolean;
el: ElementRef;
hour: string;
id: string;
visible: boolean;
literals: any;
eventListenerFunction: () => void;
eventResizeListener: () => void;
private clickListener;
private readonly dateRegex;
private readonly isoRegex;
private timeoutChange;
private valueBeforeChange;
private subscriptionValidator;
get autocomplete(): "off" | "on";
get dateInputValue(): string;
constructor();
onKeyup($event: any): void;
onKeydown($event?: any): void;
ngAfterViewInit(): void;
ngOnChanges(changes: SimpleChanges): void;
ngOnDestroy(): void;
emitAdditionalHelp(): void;
/**
* Função que atribui foco ao componente.
*
* Para utilizá-la é necessário ter a instância do componente no DOM, podendo ser utilizado o ViewChild da seguinte forma:
*
* ```
* import { PoDatepickerComponent } from '@po-ui/ng-components';
*
* ...
*
* @ViewChild(PoDatepickerComponent, { static: true }) datepicker: PoDatepickerComponent;
*
* focusDatepicker() {
* this.datepicker.focus();
* }
* ```
*/
focus(): void;
getAdditionalHelpTooltip(): string;
togglePicker(focusInput?: boolean): void;
closeCalendar(focusInput?: boolean): void;
dateSelected(event?: string): void;
wasClickedOnPicker(event: any): void;
hasInvalidClass(): boolean;
getErrorPattern(): string;
clear(): void;
clearAndFocus(): void;
eventOnBlur($event: any): void;
eventOnClick($event: any): void;
onKeyDown(event: KeyboardEvent): void;
onKeyPress(event: any): void;
formatToDate(value: Date): string;
refreshValue(value: Date): void;
/**
* Método que exibe `p-helper` ou executa a ação definida em `p-helper{eventOnClick}` ou em `p-additionalHelp`.
* Para isso, será necessário configurar uma tecla de atalho utilizando o evento `p-keydown`.
*
* > Exibe ou oculta o conteúdo do componente `po-helper` quando o componente estiver com foco.
*
* ```
* // Exemplo com p-label e p-helper
*
* ```
* ```
* ...
* onKeyDown(event: KeyboardEvent, inp: PoDatepickerComponent): void {
* if (event.code === 'F9') {
* inp.showAdditionalHelp();
* }
* }
* ```
*/
showAdditionalHelp(): boolean;
writeValue(value: any): void;
isValidDateIso(value: string): boolean;
isValidExtendedIso(value: any): boolean;
hasOverlayClass(element: any): any;
verifyErrorAsync(value: any): void;
verifyMobile(): RegExpMatchArray;
private controlChangeEmitter;
private hasAttrCalendar;
private initializeListeners;
private isAdditionalHelpEventTriggered;
private isFocusOnFirstCombo;
private isFocusOnLastCombo;
private readonly onScroll;
private removeListeners;
private setDialogPickerStyleDisplay;
private setCalendarPosition;
protected adjustCalendarPosition(): void;
handleCleanKeyboardTab(event: KeyboardEvent): void;
private shouldHandleTab;
private focusCalendar;
onCalendarKeyDown(event: KeyboardEvent): void;
setHelper(label?: string, additionalHelpTooltip?: string): {
hideAdditionalHelp: boolean;
helperSettings?: any;
};
}