UNPKG

@phensley/cldr-core

Version:
32 lines (31 loc) 1.03 kB
import { Part } from '../types'; import { WrapperNode } from '../parsing/patterns/wrapper'; export interface Renderer<R> { add(type: string, value: string): void; append(rendered: R): void; literal(value: string): void; get(): R; join(...elems: R[]): R; wrap(format: WrapperNode[], args: R[]): void; empty(): R; } export declare class StringRenderer implements Renderer<string> { protected str: string; literal(value: string): void; add(type: string, value: string): void; append(rendered: string): void; get(): string; join(...str: string[]): string; empty(): string; wrap(pattern: WrapperNode[], args: string[]): void; } export declare class PartsRenderer implements Renderer<Part[]> { protected parts: Part[]; literal(value: string): void; add(type: string, value: string): void; append(rendered: Part[]): void; get(): Part[]; join(...parts: Part[][]): Part[]; empty(): Part[]; wrap(pattern: WrapperNode[], args: Part[][]): void; }