nsn-util
Version:
NSN工具辅助组件
60 lines (59 loc) • 2.09 kB
TypeScript
import { PrimitiveType } from 'intl-messageformat';
import { LangEnum } from 'nsn-enum';
import { LocaleKey } from 'nsn-locale';
import { RepData } from 'nsn-service-type';
import { MessageDescriptor } from 'umi';
/** umi语言环境设置的变量 */
declare const UMI_LOCALE_KEY = "umi_locale";
declare type MessageDescriptorType<ID> = Omit<MessageDescriptor, 'id'> & {
id: ID;
};
/**
* 获取语言
* @returns [ zh-CN,简体中文,🇨🇳 ] / [ en-US,English,🇺🇸 ]
*/
declare const getLangValue: (lang: LangEnum) => string[];
/**
* 获取语言编码
* @return EG: zh-CN / en-US
*/
declare const getLangCode: (lang: LangEnum) => string;
/**
* 获取语言描述
* @return EG: 简体中文 / English
*/
declare const getLangLabel: (lang: LangEnum) => string;
/**
* 获取语言国旗
* @return EG: 🇨🇳 / 🇺🇸
*/
declare const getLangIcon: (lang: LangEnum) => string;
/**
* 获取当前语言环境.
* @returns en-US / zh-CN
*/
declare const get: () => string;
/** 英文环境 */
declare const isEN: () => boolean;
/** 中文环境 */
declare const isCN: () => boolean;
/** 切换语言 */
declare const setLang: (lang: LangEnum) => void;
/** 切换语言 */
declare const set: (lang: string) => void;
/** 获取全部语言环境 */
declare const getLangAll: () => LangEnum[];
/** 获取当前语言环境 */
declare const getLang: () => LangEnum;
/** 格式化语言 */
declare const format: <ID extends string>(descriptor: MessageDescriptorType<ID | LocaleKey>, values?: Record<string, PrimitiveType>) => string;
/**
* 获取国际化内容
* @param ID 规范 id 的可选值
* @param id 配置的 locales 的标识
* @param values 格式化参数
*/
declare const getText: <ID extends string>(id: ID | LocaleKey, values?: Record<string, PrimitiveType>) => string;
/** 从响应数据中返回当前语言环境的提示信息 */
declare const getMsg: (repData: Partial<RepData>) => string;
export { isEN, isCN, set, setLang, get, getLang, getLangAll, getLangValue, getLangCode, getLangLabel, getLangIcon, getText, format, getMsg, UMI_LOCALE_KEY, };