import { Signal } from '@angular/core';
import { FudisLanguageAbbr } from '../../types/miscellaneous';
import { FudisTranslationConfig } from './translationKeys';
import * as i0 from "@angular/core";
export declare class FudisTranslationService {
    constructor();
    /**
     * Signal for Application's translation texts, default language for translations is English
     */
    private _appTranslationsSignal;
    /**
     * Application language, default language is English
     */
    private _appLanguage;
    /**
     * Currently available languages in Fudis are Finnish, Swedish and English
     */
    private _selectableLanguages;
    /**
     * Set language of repeated texts Fudis uses for its components. E. g. 'required' text of form
     * components or help texts for screen readers for various buttons. Also as Error Summary
     * Component reloads its errors if error's language has changed, here is defined component to NOT
     * focus to the updated list on only language change.
     */
    setLanguage(language: FudisLanguageAbbr): void;
    /**
     * Get current language of Fudis configs
     */
    getLanguage(): FudisLanguageAbbr;
    /**
     * Get current language as Signal
     */
    getLanguageSignal(): Signal<FudisLanguageAbbr>;
    /**
     * Get application's translation config values Signal
     */
    getTranslations(): Signal<FudisTranslationConfig>;
    /**
     * Set which languages are visible in Language Badges
     */
    setSelectableLanguages(languages: FudisLanguageAbbr[]): void;
    /**
     * Get visible languages of Language Badges
     */
    getSelectableLanguages(): Signal<FudisLanguageAbbr[]>;
    static ɵfac: i0.ɵɵFactoryDeclaration<FudisTranslationService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<FudisTranslationService>;
}
