import type { Generic } from 'adopted-style-sheets';
import locale_de from '../locales/de';
export type ResourcePrefix = 'Kol';
export type ComponentKeys = keyof typeof locale_de;
interface ITranslationOptions {
    placeholders?: {
        [K: string]: string;
    };
}
export declare class I18nService {
    private resourceMap;
    language: Generic.I18n.Locale.ISO_639_1;
    constructor(initialLanguage?: Generic.I18n.Locale.ISO_639_1);
    addTranslations(translations?: Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, string, string> | Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, string, string>[] | Set<Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, string, string>>): void;
    setLanguage(lng: Generic.I18n.Locale.ISO_639_1): void;
    translate(key: string, options?: ITranslationOptions): string;
}
export declare const getI18nInstance: () => I18nService;
export declare const initializeI18n: (lng: Generic.I18n.Locale.ISO_639_1, translations?: Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, string, string> | Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, string, string>[] | Set<Generic.I18n.RegisterPatch<Generic.I18n.Locale.ISO_639_1, string, string>>) => I18nService;
export {};
