import { OnDestroy } from '@angular/core';
import { GlobalConfig, I18nService } from '@eui/core';
import { EclLanguage } from '../model/ecl-language.model';
import { EclLanguageService } from './ecl-language.service';
import { Subject } from 'rxjs';
import * as i0 from "@angular/core";
export declare class EclDefaultLanguageService implements EclLanguageService, OnDestroy {
    protected config: GlobalConfig;
    protected i18nService: I18nService;
    currentLanguage$: Subject<EclLanguage>;
    private currentLanguage;
    private readonly FALLBACK_LANGUAGE;
    private destroy$;
    constructor(config: GlobalConfig, i18nService: I18nService);
    ngOnDestroy(): void;
    getCurrentLanguage(): EclLanguage;
    updateCurrentLanguage(lang: EclLanguage): void;
    getConfiguredLanguages(): Array<EclLanguage>;
    getEULanguageCodes(): Array<string>;
    getAllLanguageCodes(): string[];
    getEULanguages(): Array<EclLanguage>;
    getLanguageByCode(code: string): EclLanguage;
    getLanguagesByCodes(codes: Array<string>): Array<EclLanguage>;
    isEuLanguage(code: string): boolean;
    getAllLanguages(): Array<EclLanguage>;
    private handleActiveLanguageChangeState;
    static ɵfac: i0.ɵɵFactoryDeclaration<EclDefaultLanguageService, [{ optional: true; }, null]>;
    static ɵprov: i0.ɵɵInjectableDeclaration<EclDefaultLanguageService>;
}
//# sourceMappingURL=ecl-default-language.service.d.ts.map