/**
 * @packageDocumentation
 * @module translate
 */
import { Arrayable } from '../core';
export declare type TranslationValue = Arrayable<string | number | boolean | Translation>;
export interface Translation {
    [key: string]: TranslationValue;
}
export declare type Translations<T extends string = string> = Partial<Record<T, Translation>>;
export declare type TranslateKey<T extends string = string> = string | Partial<Record<T, string>>;
export interface TranslateOptions<T extends string = string> {
    locale?: T;
    defaultLocale?: T;
    locales?: T[];
    translations?: Translations<T>;
    loose?: boolean;
    remoteTranslations?: Translations<T>;
    remoteUrl?: string | string[];
}
