@omnia/fx
Version:
Provide Omnia Fx typings and tooling for clientside Omnia development.
33 lines (32 loc) • 1.57 kB
TypeScript
import { IMessageBusSubscriptionHandler, MultilingualString, MultilingualScopes, ScopedLanguageSetting, IMultilingualStore } from "../models";
import { Store } from "./Store";
export declare class MultilingualStore extends Store implements IMultilingualStore {
private localizationService;
private omniaContext;
private subscriptionHandler;
private userPreferredLanguage;
private scopeLanguages;
getters: {
languageSetting: (scope: MultilingualScopes) => ScopedLanguageSetting;
onLanguageSettingUpdated: () => (fn: (obj: import("@omnia/fx-models").StateMutation<{
[multilingualScope: number]: ScopedLanguageSetting;
}>) => void) => IMessageBusSubscriptionHandler;
/**
* Checks if the value as a string or MulitlingualString. A MultilingualString is always ensured.
* @param value - The string value or MulitlingualString value to ensure
*/
ensureMultilingualString: (value: string | MultilingualString) => MultilingualString;
/**
* Get the string value based on current language settings
* @param multilingualString - The string values to select from
* @param scope - The scope for which language settings to use
*/
stringValue: (multilingualString: MultilingualString, scope?: MultilingualScopes) => string;
};
private internalMutations;
private actions;
private tryGetMultilingualValue;
private createScopedLanguageSetting;
protected onActivated(): void;
protected onDisposing(): void;
}