import { Block } from "./block.js"; import { LayoutNode } from "./nodes.js"; import { NodeHandler, SizingContext } from "./sizing.js"; export type BarKey = { name: string; color?: string; symbol?: string; }; export type Bar = { label: string; values: number[]; }; export type BarMode = "stacked" | "grouped"; export type ResolvedKey = { name: string; color: string; symbol: string; }; export declare const DEFAULT_COLORS: string[]; export declare const DEFAULT_SYMBOLS: string[]; export declare function resolveColor(name: unknown): (s: string) => string; export declare function resolveKeys(keys: BarKey[] | null, barChar: string): ResolvedKey[]; export declare function dataRange(data: Bar[], mode: BarMode): { min: number; max: number; }; export declare function barCells(value: number, rangeSpan: number, barArea: number): number; export declare function baselineColumn(rangeMin: number, rangeMax: number, barArea: number): number; export declare function stackSegments(values: number[], rangeSpan: number, barArea: number): number[]; export declare function validateChart(keys: ResolvedKey[], data: Bar[], mode: BarMode): void; export declare function renderBarChart(node: LayoutNode): Block; export declare function sizeBarChart(node: LayoutNode, ctx: SizingContext): LayoutNode; export declare const barchart: NodeHandler;