templural
Version:
Template function for plural-sensitive formatting
24 lines • 961 B
TypeScript
export declare function parseChunks(chunks: TemplateStringsArray): Template;
export declare function parseChunk(chunk: string, chunkIndex: number): Template;
declare type Template = readonly (Template.Chunk | Template.Group | Template.Arg)[];
declare namespace Template {
type Chunk = string;
type Group = OrderedGroup | AssociativeGroup;
function isGroup(item: Chunk | Group | Arg): item is Group;
type OrderedGroup = {
readonly argIndex: number;
readonly orderedResults: OrderedResults;
};
function isOrdredGroup(group: Group): group is OrderedGroup;
type OrderedResults = readonly string[];
type AssociativeGroup = {
readonly argIndex: number;
readonly associativeResults: AssociativeResults;
};
type AssociativeResults = {
readonly [key in Intl.LDMLPluralRule]?: string;
};
type Arg = number;
}
export { Template as ParsedTemplate };
//# sourceMappingURL=parse.d.ts.map