import './LinearChart.css'; import * as d3 from 'd3'; import React from 'react'; import { GridConfig } from "./Frame/Frame"; import { FormatValue } from "../../types"; export declare type Item = { x: number | null; y: number | null; }; export declare type NotEmptyItem = { x: number; y: number; }; export declare const itemIsNotEmpty: (item: Item) => item is NotEmptyItem; export declare type NumberRange = readonly [number, number]; export declare type TickValues = readonly number[]; export declare type ScaleLinear = d3.ScaleLinear; export declare const directionsX: readonly ["toRight", "toLeft"]; export declare type DirectionX = typeof directionsX[number]; export declare const directionsY: readonly ["toTop", "toBottom"]; export declare type DirectionY = typeof directionsY[number]; export declare const axes: readonly ["x", "y"]; export declare type Axis = typeof axes[number]; export declare const legendPositions: readonly ["top", "bottom"]; export declare type LegendPosition = typeof legendPositions[number]; export declare const legendAligns: readonly ["left", "center", "right"]; export declare type LegendAlign = typeof legendAligns[number]; export declare const tooltipVariants: readonly ["line", "dot"]; export declare type TooltipVariant = typeof tooltipVariants[number]; export declare type Line = { values: readonly Item[]; dots?: boolean; dashed?: boolean; withGradient?: boolean; lineName: string; color: string; } & ({ showValues?: false; } | { showValues?: true; formatValueForDot?: FormatValue; }); export declare type LegendItem = { text: string; color: string; }; export declare type LegendItems = readonly LegendItem[]; declare type ThresholdLine = { name?: string; label?: string; values: readonly NotEmptyItem[]; }; export declare type Threshold = { max: ThresholdLine; min?: ThresholdLine; }; export declare type HoveredMainValue = number | undefined; export declare type HoveredDotValue = NotEmptyItem | undefined; declare type LegendProps = { items: LegendItems; position?: LegendPosition; align?: LegendAlign; }; declare type Props = { lines: Line[]; gridConfig: GridConfig; threshold?: Threshold; legend?: LegendProps; unit?: string; yLabelsShowInPercent?: boolean; xLabelsShowVertical?: boolean; xHideFirstLabel?: boolean; formatValueForLabel?: FormatValue; formatValueForTooltip?: FormatValue; formatValueForTooltipTitle?: FormatValue; onClickHoverLine?: (value: number) => void; onClickHoverDot?: (value: Item) => void; limitMinimumStepSize?: boolean; tooltipVariant?: TooltipVariant; }; export declare const domainPaddings: { top: number; right: number; bottom: number; left: number; }; export declare const LinearChart: React.FC; export {};