import { QueryList, EventEmitter, ElementRef, AfterViewInit, AfterContentInit, OnDestroy } from '@angular/core';
import { EclLanguage } from '../../model/ecl-language.model';
import { EclLanguageListItemComponent } from './ecl-language-list-item.component';
import { EclBaseEvent } from '../../model/ecl-base.event';
import { EclLanguageService } from '../../services';
import { ECLBaseDirective } from '../ecl-base.directive';
import * as i0 from "@angular/core";
export declare class EclLanguageListLanguageSelectedEvent extends EclBaseEvent {
    language: EclLanguage;
    constructor(language: EclLanguage);
}
export declare class EclLanguageListCloseEvent extends EclBaseEvent {
}
export declare class EclLanguageListComponent extends ECLBaseDirective implements AfterContentInit, AfterViewInit, OnDestroy {
    private eclLanguageService;
    isOverlay: boolean | any;
    selectedLanguageCode: string;
    isHidden: boolean | any;
    euLeftContainer: ElementRef;
    euRightContainer: ElementRef;
    nonEuLeftContainer: ElementRef;
    nonEuRightContainer: ElementRef;
    eclLanguageListItems: QueryList<EclLanguageListItemComponent>;
    languageSelected: EventEmitter<EclLanguageListLanguageSelectedEvent>;
    close: EventEmitter<EclLanguageListCloseEvent>;
    private destroy$;
    get cssClasses(): string;
    constructor(eclLanguageService: EclLanguageService);
    get isSplash(): boolean;
    get euLanguageListItems(): Array<EclLanguageListItemComponent>;
    get hasEuLanguageListItems(): boolean;
    get nonEuLanguageListItems(): Array<EclLanguageListItemComponent>;
    get hasNonEuLanguageListItems(): boolean;
    ngAfterContentInit(): void;
    ngAfterViewInit(): void;
    ngOnDestroy(): void;
    onCloseClick(evt: any): void;
    onKeydownHandler(event: KeyboardEvent): void;
    private initLangListItems;
    private createDOMLayout;
    private distributeItemsToColumns;
    static ɵfac: i0.ɵɵFactoryDeclaration<EclLanguageListComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<EclLanguageListComponent, "ecl-language-list", never, { "isOverlay": "isOverlay"; "selectedLanguageCode": "selectedLanguageCode"; "isHidden": "isHidden"; }, { "languageSelected": "languageSelected"; "close": "close"; }, ["eclLanguageListItems"], never, false>;
}
//# sourceMappingURL=ecl-language-list.component.d.ts.map