import { Ogma, EdgeList, NodeList } from "@linkurious/ogma"; import { Timeline as VTimeline, TimelineEventPropertiesResult } from "vis-timeline"; import { Chart } from "./chart"; import { Id, TimelineOptions } from "./types"; /** * @typedef {object} TimelineOptions * @property {number} [barWidth=50] Barchart bar width * @property {'center'|'left'|'right'} [barAlign='center'] Barchart bars alignment * @property {'top'|'bottom'} [barAxisOrientation='top'] Axis position * @property {number} [minTime] Unix timestamp of the earliest event * @property {number} [maxTime] Unix timestamp of the latest event * */ export declare const defaultTimelineOptions: Required; export declare class Timeline extends Chart { protected options: Required>; private nodeItems; private edgeItems; /** * @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; protected onRangeChange(): void; highlightNodes(nodes: NodeList | Id[]): void; resethighlight(): void; onBarClick(evt: TimelineEventPropertiesResult): void; 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 _filter; }