import { ContributionProvider } from '../../common';
import { Localization } from '../../common/i18n/localization';
import { LocalizationProvider } from './localization-provider';
export declare const LocalizationContribution: unique symbol;
export interface LocalizationContribution {
    registerLocalizations(registry: LocalizationRegistry): Promise<void>;
}
export declare class LocalizationRegistry {
    protected readonly localizationProvider: LocalizationProvider;
    protected readonly contributions: ContributionProvider<LocalizationContribution>;
    initialize(): Promise<void>;
    registerLocalization(localization: Localization): void;
    registerLocalizationFromRequire(locale: string, required: unknown): void;
    registerLocalizationFromFile(localizationPath: string, locale?: string): Promise<void>;
    protected flattenTranslations(localization: unknown): Record<string, string>;
    protected identifyLocale(localizationPath: string): string | undefined;
}
//# sourceMappingURL=localization-contribution.d.ts.map