@formatjs/icu-messageformat-parser
Version:
Hand-written ICU MessageFormat parser with compatible output as [`intl-messageformat-parser`](https://www.npmjs.com/package/intl-messageformat-parser) but 6 - 10 times as fast.
14 lines • 648 B
TypeScript
import { MessageFormatElement } from './types';
/**
* Hoist all selectors to the beginning of the AST & flatten the
* resulting options. E.g:
* "I have {count, plural, one{a dog} other{many dogs}}"
* becomes "{count, plural, one{I have a dog} other{I have many dogs}}".
* If there are multiple selectors, the order of which one is hoisted 1st
* is non-deterministic.
* The goal is to provide as many full sentences as possible since fragmented
* sentences are not translator-friendly
* @param ast AST
*/
export declare function hoistSelectors(ast: MessageFormatElement[]): MessageFormatElement[];
//# sourceMappingURL=manipulator.d.ts.map