/// export interface ArgsObj { [key: string]: string | number | boolean | null | undefined; } export interface ArgsObjJsx { [key: string]: string | number | boolean | null | undefined | JSX.Element; } export declare type FArgsPrimitives = (string | number | boolean | null | undefined | ArgsObj)[]; export declare type FArgs = (string | number | boolean | null | undefined | JSX.Element | ArgsObj | ArgsObjJsx)[]; export interface JSXConfig { isValidElement: (v: any) => v is JSX.Element; cloneElement: (v: any, props: any, ...children: (JSX.Element | string)[]) => any; toFragment: (v: any | any[]) => any; } declare type ParsedElement = { type: "text"; value: string; } | { type: "subst"; value: string; }; export declare function parseFormat(text: string): ParsedElement[]; export declare const format: (cfg: JSXConfig, template: string, ...args: TArgs) => TArgs extends FArgsPrimitives ? string : string | JSX.Element; export {};