import { MessageDescriptor } from './types';
export declare const enum ReactIntlErrorCode {
    FORMAT_ERROR = "FORMAT_ERROR",
    UNSUPPORTED_FORMATTER = "UNSUPPORTED_FORMATTER",
    INVALID_CONFIG = "INVALID_CONFIG",
    MISSING_DATA = "MISSING_DATA",
    MISSING_TRANSLATION = "MISSING_TRANSLATION"
}
export declare class ReactIntlError<T extends ReactIntlErrorCode = ReactIntlErrorCode.FORMAT_ERROR> extends Error {
    readonly code: T;
    constructor(code: T, message: string, exception?: Error);
}
export declare class UnsupportedFormatterError extends ReactIntlError<ReactIntlErrorCode.UNSUPPORTED_FORMATTER> {
    constructor(message: string, exception?: Error);
}
export declare class InvalidConfigError extends ReactIntlError<ReactIntlErrorCode.INVALID_CONFIG> {
    constructor(message: string, exception?: Error);
}
export declare class MissingDataError extends ReactIntlError<ReactIntlErrorCode.MISSING_DATA> {
    constructor(message: string, exception?: Error);
}
export declare class MessageFormatError extends ReactIntlError<ReactIntlErrorCode.FORMAT_ERROR> {
    readonly descriptor?: MessageDescriptor;
    constructor(message: string, locale: string, descriptor?: MessageDescriptor, exception?: Error);
}
export declare class MissingTranslationError extends ReactIntlError<ReactIntlErrorCode.MISSING_TRANSLATION> {
    readonly descriptor?: MessageDescriptor;
    constructor(descriptor: MessageDescriptor, locale: string);
}
//# sourceMappingURL=error.d.ts.map