import type { Node } from './data-model/types.ts'; /** * Base error class used by MessageFormat * * @category Errors */ export declare class MessageError extends Error { type: string; constructor(type: string, message: string); } /** * Errors in the message syntax. * * @category Errors */ export declare class MessageSyntaxError extends MessageError { type: 'empty-token' | 'bad-escape' | 'bad-input-expression' | 'duplicate-attribute' | 'duplicate-declaration' | 'duplicate-option-name' | 'duplicate-variant' | 'extra-content' | 'key-mismatch' | 'parse-error' | 'missing-fallback' | 'missing-selector-annotation' | 'missing-syntax'; start: number; end: number; /** @private */ constructor(type: typeof MessageSyntaxError.prototype.type, start: number, end?: number, expected?: string); } /** * Errors in the message data model. * * @category Errors */ export declare class MessageDataModelError extends MessageSyntaxError { type: 'duplicate-declaration' | 'duplicate-variant' | 'key-mismatch' | 'missing-fallback' | 'missing-selector-annotation'; /** @private */ constructor(type: typeof MessageDataModelError.prototype.type, node: Node); } /** * Message runtime resolution errors * * @category Errors */ export declare class MessageResolutionError extends MessageError { type: 'bad-function-result' | 'bad-selector' | 'no-match' | 'unknown-function' | 'unresolved-variable'; source: string; cause?: unknown; constructor(type: typeof MessageResolutionError.prototype.type, message: string, source: string, cause?: unknown); } /** * Message runtime resolution errors * * @category Errors */ export declare class MessageFunctionError extends MessageError { type: 'bad-operand' | 'bad-option' | 'bad-variant-key' | 'function-error' | 'not-formattable' | 'unsupported-operation'; source: string; cause?: unknown; constructor(type: typeof MessageFunctionError.prototype.type, message: string); }