@osaedasia/oresume
Version:
A user-friendly library for generating complete Single Page Applications (SPAs)
21 lines (20 loc) • 730 B
TypeScript
import { Observable } from "../../../infrastructure/observer/Observable";
import { ISO639_1 } from "../types/Country";
/**
* Interface representing a language service that manages supported languages.
* @template LSupported The type of supported languages, constrained to ISO639_1 codes.
*/
export interface ILanguageService<LSupported extends ISO639_1> {
/**
* Collection of languages supported by the application.
*/
readonly supportedLanguages: LSupported[];
/**
* Observable that emits updates when the country code changes.
*/
readonly countryCode: Observable<LSupported>;
/**
* @returns {LSupported} The default language code.
*/
get defaultLanguage(): LSupported;
}