import { EventEmitter, OnInit, ElementRef, QueryList, AfterViewInit, SimpleChanges, OnChanges, Renderer2, OnDestroy } from '@angular/core';
import { ActiveDescendantKeyManager } from '@angular/cdk/a11y';
import { TlListItem } from './list-item/list-item';
import { TlInput } from '../input/input';
import { I18nService } from '../i18n/i18n.service';
import { ListItemInterface } from '../dropdownlist/interfaces/list-item';
import * as path from 'object-path';
export declare class GroupList {
    description: string;
    items: Array<any>;
}
export declare class TlOverlayList implements OnInit, AfterViewInit, OnChanges, OnDestroy {
    private renderer;
    private i18n;
    set dataSource(data: any[]);
    get dataSource(): any[];
    searchOnList: boolean;
    itemHeight: string;
    inputModelIndex: any;
    optionSelected: any;
    typeOfData: any;
    keyText: string;
    groupBy: any;
    keyIcon: string;
    icon: any;
    defaultIcon: any;
    defaultOptionText: string;
    width: string;
    maxHeight: string;
    customInput: any;
    customFocus: any;
    hasDefaultOption: boolean;
    selectOption: EventEmitter<ListItemInterface>;
    defaultOption: EventEmitter<any>;
    search: EventEmitter<any>;
    findByLetter: EventEmitter<any>;
    close: EventEmitter<any>;
    list: ElementRef;
    tlInput: TlInput;
    defaultPlaceholder: ElementRef;
    items: QueryList<TlListItem>;
    keyManager: ActiveDescendantKeyManager<TlListItem>;
    notFound: boolean;
    groups: GroupList[];
    unGrouped: any[];
    objectPath: path.ObjectPathStatic & {
        withInheritedProps: path.ObjectPathStatic;
        create(options?: path.Options): path.ObjectPathStatic;
    };
    searchText: string;
    private _datasource;
    private numberItems;
    private subscription;
    get emptyList(): string;
    constructor(renderer: Renderer2, i18n: I18nService);
    ngOnInit(): void;
    ngAfterViewInit(): void;
    getFilteredData(): void;
    existGroup(group: any): boolean;
    getTextContent(item: any): any;
    getItemsGroup(group: any): any[];
    handleCustomInputEvents(): void;
    handleEscape($event: any): void;
    handleInputFocus(): void;
    hasDataOnDataSource(): boolean;
    handleActiveItem(): void;
    setFirstItemActive(): void;
    setActiveItem(index: number): void;
    removeSelectedAll(): void;
    handleScrollIntoView(): void;
    handleInput($event: any): void;
    handleModelOption(): void;
    handleSearchByLetter($event: any): void;
    handleClickOption($event: any, item: TlListItem): void;
    defaultOptionClick(): void;
    stopEvent($event: any): void;
    emitSelectOption(): void;
    trackByFn(index: any): any;
    keydownSearch($event: any): void;
    setNotFound(): void;
    ngOnChanges(changes: SimpleChanges): void;
    ngOnDestroy(): void;
}
