import { IMessages, IDetermineLocale, IFormatDateOptions } from './types'; /** * @public */ declare class IntlBase { static get LOCALE_ACCESS_KEY(): string; static get MESSAGES_ACCESS_KEY(): string; private _store; constructor(data?: { locale?: string; messages?: IMessages; }, options?: { isCrossModules?: boolean; determineLocale?: IDetermineLocale; }); resetStore(isCrossModules: boolean): void; setLocale(locale: string): void; getLocale(): string | undefined; setMessages(messages: IMessages, opts?: { mergeMessages?: boolean; }): void; getMessages(): IMessages | undefined; set(data: { locale?: string; messages?: IMessages; }, options?: { determineLocale?: IDetermineLocale; mergeMessages?: boolean; }): void; protected _onError?: OnError; registerOnError(onError: OnError): void; formatDate(value: Date | number, options?: IFormatDateOptions): string; formatNumber(value: number, options?: Intl.NumberFormatOptions): string; } export default IntlBase; export type OnError = (errorInfo: { code: ErrorCode; key?: string; ctx?: unknown; error?: any; }) => string | void; export type ErrorCode = 'formatDate' | 'formatNumber' | 'formatMessage.messagesNotSetYet' | 'formatMessage.notFound' | 'formatMessage.invalidMessage' | 'formatMessage.localeNotSet' | 'formatMessage.formatError';