1import { ColumnarDataSource } from "../../models/sources/columnar_data_source";
2import { CustomJSHover } from "../../models/tools/inspectors/customjs_hover";
3import { ImageIndex } from "../../models/selections/selection";
4export declare const FormatterType: import("../kinds").Kinds.Enum<"numeral" | "printf" | "datetime">;
5export declare type FormatterType = "numeral" | "printf" | "datetime";
6export declare type FormatterSpec = CustomJSHover | FormatterType;
7export declare type Formatters = {
8    [key: string]: FormatterSpec;
9};
10export declare type FormatterFunc = (value: unknown, format: string, special_vars: Vars) => string;
11export declare type Index = number | ImageIndex;
12export declare type Vars = {
13    [key: string]: unknown;
14};
15export declare const DEFAULT_FORMATTERS: {
16    numeral: (value: unknown, format: string, _special_vars: Vars) => string;
17    datetime: (value: unknown, format: string, _special_vars: Vars) => string;
18    printf: (value: unknown, format: string, _special_vars: Vars) => string;
19};
20export declare function sprintf(format: string, ...args: unknown[]): string;
21export declare function basic_formatter(value: unknown, _format: string, _special_vars: Vars): string;
22export declare function get_formatter(raw_spec: string, format?: string, formatters?: Formatters): FormatterFunc;
23export declare function get_value(raw_name: string, data_source: ColumnarDataSource, i: Index, special_vars: Vars): any;
24export declare function replace_placeholders(content: string | {
25    html: string;
26}, data_source: ColumnarDataSource, i: Index, formatters?: Formatters, special_vars?: Vars, encode?: (v: string) => string): string | Node[];
27//# sourceMappingURL=templating.d.ts.map