import { ChangeDetectorRef, ElementRef, OnChanges, OnDestroy, OnInit, Renderer2, SimpleChanges } from '@angular/core';
import { PoControlPositionService } from '../../services/po-control-position/po-control-position.service';
import { PoLanguageService } from '../../services/po-language/po-language.service';
import { PoDropdownAction } from '../po-dropdown';
import { PoListBoxComponent } from '../po-listbox';
import { PoSearchFilterSelect } from './interfaces/po-search-filter-select.interface';
import { PoSearchOption } from './interfaces/po-search-option.interface';
import { PoSearchBaseComponent } from './po-search-base.component';
/**
* @docsExtends PoSearchBaseComponent
*
* @example
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*
*/
export declare class PoSearchComponent extends PoSearchBaseComponent implements OnInit, OnDestroy, OnChanges {
languageService: PoLanguageService;
protected renderer: Renderer2;
protected changeDetector: ChangeDetectorRef;
protected controlPosition: PoControlPositionService;
private clickoutListener;
private eventResizeListener;
private _locateCounter;
set locateCounter(element: ElementRef);
get locateCounter(): ElementRef;
poSearchInput: ElementRef;
poListboxContainerElement: ElementRef;
poListboxElement: ElementRef;
poListbox: PoListBoxComponent;
basePaddingRightSmall: number;
basePaddingRightMedium: number;
dynamicPaddingRight: number;
listboxFilteredItems: Array;
filteredItems: Array;
listboxOpen: boolean;
shouldMarkLetters: boolean;
isFiltering: boolean;
isInputFocused: boolean;
listboxItemclicked: boolean;
showSearchLocateControls: boolean;
showNoResults: boolean;
locateCounterResize: ResizeObserver;
searchFilter: {};
searchFilterSelectLabel: string;
searchFilterSelectActions: Array;
idSearchButtonClean: string;
protected showFooterActionListbox: boolean;
protected showSeparator: boolean;
protected placeholderListbox: string | null;
protected modelSelected: string;
constructor();
ngOnInit(): void;
ngOnChanges(changes: SimpleChanges): void;
private configureSearchModeExecute;
ngOnDestroy(): void;
clearSearch(): void;
onCleanKeydown(event: KeyboardEvent): void;
onEnterKey(event: any): void;
onSearchChange(searchText: string, activated: boolean, buttonClick?: boolean): void;
private updateFilteredItems;
private getFilteredItems;
private itemMatchesFilter;
getListboxFilteredItems(searchText: string): any[];
private filterValue;
get listboxItems(): {
label: string;
value: string;
}[];
get autocomplete(): string;
onCloseListbox(): void;
onListboxClick(option: PoSearchOption | any, event?: any): void;
onBlur(): void;
onFocus(): void;
onInputHandler(value: string): void;
onKeyDown(event?: KeyboardEvent): void;
private focusItem;
private setContainerPosition;
private adjustContainerPosition;
private openListbox;
closeListbox(): void;
clickedOutsideInput(event: MouseEvent): void;
private initializeListeners;
private removeListeners;
private updatePaddingRightLocate;
private updateShowSearchLocateControls;
private readonly onScroll;
getInputValue(): any;
createDropdownFilterSelect(): void;
isSelected(filterOption: PoSearchFilterSelect): boolean;
changeFilterSelect(filterOption: PoSearchFilterSelect, focus?: boolean): void;
handlerFooterActionListbox(): void;
private openListboxFooterAction;
private handlerPlaceholderListbox;
}