import { Formatters, MessageDescriptor, CustomFormats, OnErrorFn } from './types'; import { FormatXMLElementFn, PrimitiveType, Formatters as IntlMessageFormatFormatters, Options } from 'intl-messageformat'; import { MessageFormatElement } from '@formatjs/icu-messageformat-parser'; export type FormatMessageFn = ({ locale, formats, messages, defaultLocale, defaultFormats, fallbackOnEmptyString, onError, timeZone, defaultRichTextElements, }: { locale: string; timeZone?: string; formats: CustomFormats; messages: Record | Record; defaultLocale: string; defaultFormats: CustomFormats; defaultRichTextElements?: Record>; fallbackOnEmptyString?: boolean; onError: OnErrorFn; }, state: IntlMessageFormatFormatters & Pick, messageDescriptor: MessageDescriptor, values?: Record>, opts?: Options) => T extends string ? string : Array | string | T; export declare const formatMessage: FormatMessageFn;