ideaz-element
Version:
<p align="center"> <a href="" target="_blank" rel="noopener noreferrer"> <img src="./docs/public/logo.svg" alt="Ideaz Element" width="180" style="width: 180px;" /> </a> </p>
22 lines (20 loc) • 852 B
TypeScript
import { MaybeRef } from '@vueuse/core';
import { Ref } from 'vue';
export interface TranslatePair {
[key: string]: string | string[] | TranslatePair;
}
export interface Language {
name: string;
el?: TranslatePair;
}
export type TranslatorOption = Record<string, string | number>;
export type Translator = (path: string, option?: TranslatorOption) => string;
export interface LocaleContext {
locale: Ref<Language>;
lang: Ref<string>;
t: Translator;
}
export declare function translate(path: string, option: undefined | TranslatorOption, locale: Language): string;
export declare function buildTranslator(locale: MaybeRef<Language>): Translator;
export declare function buildLocaleContext(locale: MaybeRef<Language>): LocaleContext;
export declare function useLocale(localeOverrides?: Ref<Language | undefined>): LocaleContext;