interface ConfigOptions {} type Accessor = Out | string | ((obj: In) => Out); type NodeAccessor = Accessor; interface Node { __dataNode?: DataNode; name?: string; children?: Node[]; } interface DataNode { data: Node; id: number; value: number; depth: number; height: number; parent: DataNode | null; children?: DataNode[]; x0?: number; y0?: number; x1?: number; y1?: number; } type CompareFn = (a: ItemType, b: ItemType) => number; type TooltipFn = (node: Node, dataNode: DataNode) => string; declare class TreemapChart { constructor(element: HTMLElement, configOptions?: ConfigOptions); width(): number; width(width: number): TreemapChart; height(): number; height(height: number): TreemapChart; data(): Node; data(rootNode: Node): TreemapChart; children(): NodeAccessor; children(childrenAccessor: NodeAccessor): TreemapChart; label(): NodeAccessor; label(textAccessor: NodeAccessor): TreemapChart; size(): NodeAccessor; size(sizeAccessor: NodeAccessor): TreemapChart; padding(): number; padding(padding: number): TreemapChart; color(): NodeAccessor; color(colorAccessor: NodeAccessor): TreemapChart; nodeClassName(): NodeAccessor; nodeClassName(nodeClassName: NodeAccessor): TreemapChart; minBlockArea(): number; minBlockArea(area: number): TreemapChart; excludeRoot(): boolean; excludeRoot(exclude: boolean): TreemapChart; sort(): CompareFn | null; sort(cmpFn: CompareFn | null): TreemapChart; showLabels(): boolean; showLabels(show: boolean): TreemapChart; showTooltip(): (node: Node) => boolean; showTooltip(showTooltipFn: (node: Node) => boolean): TreemapChart; tooltipTitle(): TooltipFn; tooltipTitle(fn: TooltipFn): TreemapChart; tooltipContent(): TooltipFn; tooltipContent(fn: TooltipFn): TreemapChart; onClick(cb: ((node: Node, event: MouseEvent) => void) | null): TreemapChart; onRightClick(cb: ((node: Node, event: MouseEvent) => void) | null): TreemapChart; onHover(cb: ((node: Node | null, event: MouseEvent) => void) | null): TreemapChart; zoomToNode(node: Node): TreemapChart; zoomBy(k: number):TreemapChart; zoomReset():TreemapChart; transitionDuration(): number; transitionDuration(duration: number): TreemapChart; } export { type ConfigOptions, type DataNode, type Node, TreemapChart as default };