// Type definitions for i18n/util

type Omit<T, K extends keyof T> = Pick<T, Exclude<keyof T, K>>;
type Merge<M, N> = Omit<M, Extract<keyof M, keyof N>> & N;

/**
 * Takes content  `str`  and determines whether or not it is   .
 */
export function isRtlText(str: string): boolean;
/**
 * Capitalizes the first letter of a given string (locale aware).
 */
export function toCapitalized(str: string): string;
/**
 * Capitalizes every word in a string. Words are separated by spaces, not necessarily
word-breaks (locale aware).
 */
export function toWordCase(str: string): string;
/**
 * Locale-safely convert a string to lower case.
 */
export function toLowerCase(inString: string): string;
/**
 * Locale-safely convert a string to upper case.
 */
export function toUpperCase(inString: string): string;
