import { CategoriesConfiguration } from "./categories";
import { ParsedTemplate } from "./parse";
export declare type Template = readonly (Template.Chunk | Template.Group | Template.Arg)[];
export declare namespace Template {
    type Chunk = ParsedTemplate.Chunk;
    function isChunk(value: Chunk | Group | Arg): value is Chunk;
    type Group = {
        readonly argIndex: number;
        readonly categoryToResult: CategoryToResult;
    };
    type CategoryToResult = {
        readonly [key in Intl.LDMLPluralRule]?: string;
    };
    type Arg = ParsedTemplate.Arg;
    function isArg(value: Chunk | Group | Arg): value is Arg;
    function fromParsedTemplate(template: ParsedTemplate, { categories, categoryOrders, categoryFallback }: CategoriesConfiguration): Template;
}
//# sourceMappingURL=template.d.ts.map