import { Ogma, EdgeList, NodeList } from "@linkurious/ogma"; import { Graph2d as VGraph2d, TimelineEventPropertiesResult } from "vis-timeline"; import { Chart } from "./chart"; import { BarchartOptions, Id } from "./types"; export declare const defaultBarchartOptions: Required; export declare class Barchart extends Chart { private nodeItemsByScale; private edgeItemsByScale; private currentNodeData; private currentEdgeData; private isTooZoomedByScale; private options; private rects; private nodeRects; private nodeGroups; private edgeGroups; private nodePoints; private edgeRects; private edgePoints; private groupDataset; /** * @param {HTMLDivElement} container * @param {Ogma} ogma * @param {TimelineOptions} options */ constructor(container: HTMLDivElement, ogma: Ogma, options: Required>, selectedNodes: Set, selectedEdges: Set); refresh(nodes: NodeList, edges: EdgeList, nodeStarts: number[], nodeEnds: number[], edgeStarts: number[], edgeEnds: number[]): void; /** * Compute the groups depending on the chart zoom. * Above a certain zoom, switch to timeline mode */ computeGroups(nodes: NodeList, edges: EdgeList, nodeStarts: number[], nodeEnds: number[], edgeStarts: number[], edgeEnds: number[]): void; onBarClick(evt: TimelineEventPropertiesResult): void; protected onRangeChange(force?: boolean): void; isTooZoomed(scale: number): boolean; setOptions(options: Required>): void; protected registerEvents(): void; private _group; applySelection(): void; getSelection(): { nodes: NodeList; edges: EdgeList; }; filterNodes(selector: (a: number, b: number) => boolean, filteredNodes: Set): void; filterEdges(selector: (a: number, b: number) => boolean, filteredEdges: Set): void; private _getOffsets; private _filter; private _getIdsAt; }