UNPKG

vue-data-ui

Version:

A user-empowering data visualization Vue 3 components library for eloquent data storytelling

1,716 lines (1,640 loc) 219 kB
declare module "vue-data-ui" { import { DefineComponent } from "vue"; export type VueUiUnknownObj = { [key: string]: unknown; }; export const VueDataUi: DefineComponent<{ dataset?: | VueUi3dBarDataset | VueUiAgePyramidDataset | VueUiAnnotatorDataset | Array<Array<string | number>> | VueUiChestnutDatasetRoot[] | VueUiDashboardElement[] | number | string | VueUiDonutEvolutionDatasetItem[] | VueUiDonutDatasetItem[] | VueUiGaugeDataset | VueUiHeatmapDatasetItem[] | VueUiMoleculeDatasetNode[] | VueUiMoodRadarDataset | VueUiNestedDonutsDatasetItem[] | VueUiOnionDatasetItem[] | VueUiQuadrantDatasetItem[] | VueUiRadarDataset | VueUiRatingDataset | VueUiRelationCircleDatasetItem[] | VueUiRingsDatasetItem[] | VueUiScatterDatasetItem[] | VueUiSparkbarDatasetItem[] | VueUiSparkgaugeDataset | VueUiSparkHistogramDatasetItem[] | VueUiSparklineDatasetItem[] | VueUiSparkStackbarDatasetItem[] | VueUiTableSparklineDatasetItem[] | VueUiTableDataset | VueUiThermometerDataset | VueUiTiremarksDataset | VueUiVerticalBarDatasetItem[] | VueUiWaffleDatasetItem[] | VueUiWheelDataset | VueUiXyDatasetItem[] | VueUiTreemapDatasetItem[] | VueUiQuickChartDataset | number[] | VueUiStripPlotDataset[] | VueUiWordCloudDatasetItem[] | VueUiXyCanvasDatasetItem[] | VueUiFlowDatasetItem[] | VueUiParallelCoordinatePlotDatasetItem[] | VueUiCarouselTableDataset | VueUiGizmoDataset | VueUiStackbarDatasetItem[] | VueUiBulletDataset | VueUiFunnelDatasetItem[] | VueUiHistoryPlotDatasetItem[] | VueUiCirclePackDatasetItem[]; config?: | VueUi3dBarConfig | VueUiAgePyramidConfig | VueUiAnnotatorConfig | VueUiCandlestickConfig | VueUiChestnutConfig | VueUiDashboardConfig | VueUiDigitsConfig | VueUiDonutEvolutionConfig | VueUiDonutConfig | VueUiGaugeConfig | VueUiHeatmapConfig | VueUiMiniLoaderConfig | VueUiMoleculeConfig | VueUiMoodRadarConfig | VueUiNestedDonutsConfig | VueUiOnionConfig | VueUiQuadrantConfig | VueUiRadarConfig | VueUiRatingConfig | VueUiRelationCircleConfig | VueUiRingsConfig | VueUiScatterConfig | VueUiScreenshotConfig | VueUiSkeletonConfig | VueUiSmileyConfig | VueUiSparkbarConfig | VueUiSparkgaugeConfig | VueUiSparkHistogramConfig | VueUiSparklineConfig | VueUiSparkStackbarConfig | VueUiTableSparklineConfig | VueUiTableConfig | VueUiThermometerConfig | VueUiTiremarksConfig | VueUiVerticalBarConfig | VueUiWaffleConfig | VueUiWheelConfig | VueUiXyConfig | VueUiKpiConfig | VueUiTreemapConfig | VueUiQuickChartConfig | VueUiCursorConfig | VueUiSparkTrendConfig | VueUiStripPlotConfig | VueUiDumbbellConfig | VueUiWordCloudConfig | VueUiXyCanvasConfig | VueUiFlowConfig | VueUiParallelCoordinatePlotConfig | VueUiTimerConfig | VueUiCarouselTableConfig | VueUiGizmoConfig | VueUiStackbarConfig | VueUiBulletConfig | VueUiFunnelConfig | VueUiHistoryPlotConfig | VueUiCirclePackConfig; }>; export type VueUiPatternName = | "bubbles" | "flooring" | "grid" | "hexagon-diamond" | "hexagon-flooring" | "hexagon-grid" | "maze" | "redrum" | "scales" | "squares" | "wave" | "zig-zag"; export const VueUiPattern: DefineComponent<{ name: VueUiPatternName; id: string; fill?: string; stroke?: string; strokeWidth?: number; scale?: number; }>; export type ChartTitle = { text?: string; color?: string; fontSize?: number; bold?: boolean; textAlign?: TextAlign; paddingLeft?: number; paddingRight?: number; subtitle?: { color?: string; text?: string; fontSize?: number; bold?: boolean; }; }; export type ChartComments = { show?: boolean; showInTooltip?: boolean; width?: number; offsetY?: number; offsetX?: number; }; export type ChartPadding = { top?: number; right?: number; bottom?: number; left?: number; }; export type ChartBaseLegend = { color?: string; show?: boolean; fontSize?: number; bold?: boolean; }; export type ChartUserOptions = { show?: boolean; showOnChartHover?: boolean; keepStateOnChartLeave?: boolean; position?: "left" | "right"; buttons?: { animation?: boolean; annotator?: boolean; csv?: boolean; fullscreen?: boolean; img?: boolean; labels?: boolean; pdf?: boolean; sort?: boolean; stack?: boolean; table?: boolean; tooltip?: boolean; }; buttonTitles?: { animation?: string; annotator?: string; close?: string; csv?: string; fullscreen?: string; img?: string; labels?: string; open?: string; pdf?: string; sort?: string; stack?: string; table?: string; tooltip?: string; }; }; export type ChartTableCell = { backgroundColor?: string; color?: string; outline?: string; }; export type ChartTooltip = { show?: boolean; color?: string; backgroundColor?: string; fontSize?: number; borderRadius?: number; borderColor?: string; borderWidth?: number; backgroundOpacity?: number; position?: TooltipPosition; offsetY?: number; }; export type ZoomMinimap = { show?: boolean; smooth?: boolean; selectedColor?: string; selectedColorOpacity?: number; lineColor?: string; selectionRadius?: number; indicatorColor?: string; verticalHandles?: boolean; }; export type ChartZoom = { show?: boolean; color?: string; highlightColor?: string; fontSize?: number; useResetSlot?: boolean; minimap?: ZoomMinimap; startIndex?: number | null; endIndex?: number | null; enableRangeHandles?: boolean; enableSelectionDrag?: boolean; }; export type Theme = | "" | "zen" | "hack" | "concrete" | "celebration" | "celebrationNight"; export type TextAlign = "left" | "center" | "right"; export type TooltipPosition = TextAlign; export type FontVariantNumeric = | "normal" | "slashed-zero" | "tabular-nums" | "oldstyle-nums"; export type Shape = | "circle" | "triangle" | "square" | "diamond" | "pentagon" | "hexagon" | "star"; export type FormatterParams = { value: number; config?: any; }; export type Formatter = null | ((params: FormatterParams) => string | number); export type VueUiTooltipParams< TDatapoint, TSeries, TConfig, TBar = any, TLine = any, TPlot = any > = { seriesIndex?: number; plotIndex?: number; series?: TSeries; datapoint?: TDatapoint; config?: TConfig; bars?: TBar; lines?: TLine; plots?: TPlot; }; export type VueUiTreemapDatasetItem = { name: string; value: number; children?: VueUiTreemapDatasetItem[]; parentId?: string; color?: string; }; export type VueUiTreemapConfig = { responsive?: boolean; theme?: Theme; customPalette?: string[]; userOptions?: ChartUserOptions; style?: { fontFamily?: string; chart?: { backgroundColor?: string; color?: string; height?: number; width?: number; padding?: ChartPadding; layout?: { sorted?: boolean; rects?: { stroke?: string; strokeWidth?: number; borderRadius?: number; colorRatio?: number; gradient?: { show?: boolean; intensity?: number; }; selected?: { stroke?: string; strokeWidth?: number; unselectedOpacity?: number; }; }; labels?: { showDefaultLabels?: boolean; fontSize?: number; minFontSize?: number; hideUnderProportion?: number; prefix?: string; suffix?: string; rounding?: number; formatter?: Formatter; }; }; legend?: ChartBaseLegend & { backgroundColor?: string; roundingValue?: number; roundingPercentage?: number; }; title?: ChartTitle; tooltip?: ChartTooltip & { roundingValue?: number; customFormat?: | null | (( params: VueUiTooltipParams< VueUiTreemapDatapoint, VueUiTreemapSeriesItem[], VueUiTreemapConfig > ) => string); }; }; }; table?: { show?: boolean; responsiveBreakpoint?: number; columnNames?: { series?: string; value?: string; percentage?: string; }; th?: ChartTableCell; td?: ChartTableCell & { roundingValue?: number; roundingPercentage?: number; }; }; }; export type VueUiTreemapDatapoint = { children?: VueUiTreemapDatapoint[]; color: string; id: string; name: string; normalizedValue: number; parentName?: string; proportion: number; value: number; x0: number; x1: number; y0: number; y1: number; }; export type VueUiTreemapSeriesItem = { children?: VueUiTreemapSeriesItem[]; color?: string; id?: string; name?: string; value?: string; }; export const VueUiTreemap: DefineComponent<{ config?: VueUiTreemapConfig; dataset: VueUiTreemapDatasetItem[]; }>; export type VueUiKpiConfig = { animationFrames?: number; animationValueStart?: number; backgroundColor?: string; fontFamily?: string; layoutClass?: string; layoutCss?: string; prefix?: string; suffix?: string; title?: string; titleBold?: boolean; titleColor?: string; titleClass?: string; titleCss?: string; titleFontSize?: number; useAnimation?: boolean; valueBold?: boolean; valueColor?: string; valueClass?: string; valueCss?: string; valueFontSize?: number; valueRounding?: number; formatter?: Formatter; analogDigits?: { show?: boolean; height?: number; color?: string; skeletonColor?: string; }; }; export const VueUiKpi: DefineComponent<{ dataset: number; config?: VueUiKpiConfig; }>; export type VueUiGalaxyDatasetItem = VueUiDonutDatasetItem; export type VueUiGalaxyConfig = { theme?: Theme; customPalette?: string[]; useCssAnimation?: boolean; useBlurOnHover?: boolean; style?: { fontFamily?: string; chart?: { backgroundColor?: string; color?: string; layout?: { arcs?: { strokeWidth?: number; borderWidth?: number; offsetX?: number; offsetY?: number; hoverEffect?: { show?: boolean; multiplicator?: number; }; gradient?: { show?: boolean; intensity?: number; color?: string; }; }; labels?: { dataLabels?: { prefix?: string; suffix?: string; formatter?: Formatter; }; }; }; legend?: ChartBaseLegend & { backgroundColor?: string; roundingValue?: number; roundingPercentage?: number; }; title?: ChartTitle; tooltip?: ChartTooltip & { showValue?: boolean; showPercentage: boolean; roundingValue?: number; roundingPercentage?: number; customFormat?: | null | (( params: VueUiTooltipParams< VueUiGalaxyDatapoint, VueUiGalaxySeriesItem[], VueUiGalaxyConfig > ) => string); }; }; }; table?: { show?: boolean; responsiveBreakpoint?: number; columnNames?: { series?: string; value?: string; percentage?: string; }; th?: ChartTableCell; td?: ChartTableCell & { roundingValue?: number; roundingPercentage?: number; }; }; userOptions?: ChartUserOptions; }; export type VueUiGalaxyDatapoint = VueUiGalaxyDatasetItem & { color: string; id: string; path: string; points: number; proportion: number; seriesIndex: number; value: number; }; export type VueUiGalaxySeriesItem = VueUiGalaxyDatasetItem & { id: string; color: string; seriesIndex: number; value: number; }; export const VueUiGalaxy: DefineComponent<{ config?: VueUiGalaxyConfig; dataset: VueUiGalaxyDatasetItem[]; }>; export type VueUiSparkgaugeDataset = { value: number; min: number; max: number; title?: string; }; export type VueUiSparkgaugeConfig = { theme?: Theme; style?: { fontFamily?: string; background?: string; height?: number; basePosition?: number; animation?: { show?: boolean; speedMs?: number; }; title?: { show?: boolean; fontSize?: number; position?: "top" | "bottom"; textAlign?: TextAlign; bold?: boolean; color?: string; }; dataLabel?: { fontSize?: number; autoColor?: boolean; color?: string; offsetY?: number; bold?: boolean; rounding?: number; prefix?: string; suffix?: string; formatter?: Formatter; }; colors?: { min?: string; max?: string; showGradient?: boolean; }; track?: { autoColor?: boolean; color?: string; strokeLinecap?: "round" | "square" | "butt"; }; gutter?: { color?: string; strokeLinecap?: "round" | "square" | "butt"; }; }; }; export const VueUiSparkgauge: DefineComponent<{ dataset: VueUiSparkgaugeDataset; config?: VueUiSparkgaugeConfig; }>; export type VueUiMiniLoaderConfigType = { gutterColor?: string; gutterOpacity?: number; gutterBlur?: number; trackHueRotate?: number; trackBlur?: number; trackColor?: string; }; export type VueUiMiniLoaderConfig = { type?: "line" | "bar" | "onion"; onion?: VueUiMiniLoaderConfigType; line?: VueUiMiniLoaderConfigType; bar?: VueUiMiniLoaderConfigType; }; export const VueUiMiniLoader: DefineComponent<{ config?: VueUiMiniLoaderConfig; }>; export const Arrow: DefineComponent<{ markerEnd?: boolean; markerSize?: number; markerStart?: boolean; stroke?: string; strokeDasharray?: number; strokeLinecap?: "round" | "butt" | "square"; strokeWidth?: number; x1: number; x2: number; y1: number; y2: number; }>; export type VueUiTableSparklineDatasetItem = { name: string; values: number[]; color?: string; }; export type VueUiTableSparklineConfig = { theme?: Theme; customPalette?: string[]; responsiveBreakpoint?: number; showAverage?: boolean; showMedian?: boolean; showTotal?: boolean; roundingAverage?: number; roundingMedian?: number; roundingValues?: number; roundingTotal?: number; prefix?: string; suffix?: string; showSparklines?: boolean; fontFamily?: string; colNames?: string[]; sortedDataColumnIndices?: number[]; sortedSeriesName?: boolean; sortedSum?: boolean; sortedAverage?: boolean; sortedMedian?: boolean; resetSortOnClickOutside?: boolean; formatter?: Formatter; sparkline?: { useGradient?: boolean; showArea?: boolean; strokeWidth?: number; type?: "line" | "bar"; smooth?: boolean; dimensions?: { width?: number; heightRatio?: number; }; animation?: { show?: boolean; animationFrames?: number; }; }; translations?: { serie?: string; total?: string; average?: string; median?: string; chart?: string; }; title?: { backgroundColor?: string; text?: string; fontSize?: number; color?: string; bold?: boolean; textAlign?: TextAlign; subtitle?: { text?: string; color?: string; fontSize?: number; bold?: boolean; }; }; thead?: ChartTableCell & { fontSize?: number; textAlign?: TextAlign; bold?: boolean; }; tbody?: ChartTableCell & { fontSize?: number; textAlign?: TextAlign; bold?: boolean; showColorMarker?: boolean; selectedColor?: { useSerieColor?: boolean; fallback?: string; }; }; userOptions?: ChartUserOptions; }; export const VueUiTableSparkline: DefineComponent<{ dataset: VueUiTableSparklineDatasetItem[]; config: VueUiTableSparklineConfig; }>; export type VueUiMoleculeDatasetNode = { name: string; details?: string; nodes?: VueUiMoleculeDatasetNode[]; }; export type VueUiMoleculeConfig = { theme?: Theme; customPalette?: string[]; style?: { fontFamily?: string; chart?: { backgroundColor?: string; color?: string; nodes?: { stroke?: string; strokeHovered?: string; }; links?: { stroke?: string; }; title?: ChartTitle; tooltip?: ChartTooltip & { customFormat?: | null | (( params: VueUiTooltipParams< VueUiMoleculeDatapoint, VueUiMoleculeDatapoint[], VueUiMoleculeConfig > ) => string); }; zoom?: { speed?: number; }; }; }; table?: { show?: boolean; responsiveBreakpoint?: number; th?: ChartTableCell; td?: ChartTableCell; translations?: { nodeName?: string; details?: string; ancestor?: string; }; }; userOptions?: ChartUserOptions; }; export type VueUiMoleculeDatapoint = { circleRadius: number; color: string; name: string; details?: string; nodes?: VueUiMoleculeDatapoint; ancestor?: VueUiMoleculeDatapoint; polygonPath: { coordinates: Array<{ x: number; y: number; }>; }; uid: string; }; export const VueUiMolecule: DefineComponent<{ dataset: VueUiMoleculeDatasetNode[]; config?: VueUiMoleculeConfig; }>; export type VueUiDigitsConfig = { backgroundColor?: string; height?: string; width?: string; digits?: { color?: string; skeletonColor?: string; }; }; export const VueUiDigits: DefineComponent<{ dataset: number; config?: VueUiDigitsConfig; }>; export type VueUi3dBarDatasetBreakdown = { name: string; value: number; }; export type VueUi3dBarDataset = { percentage?: number; series?: Array<{ name: string; value: number; color?: string; breakdown?: VueUi3dBarDatasetBreakdown[]; }>; }; export type VueUi3dBarConfig = { theme?: Theme; customPalette?: string[]; style?: { fontFamily?: string; shape?: "bar" | "tube"; chart?: { animation?: { use?: boolean; speed?: number; acceleration?: number; }; backgroundColor?: string; color?: string; bar?: { color?: string; stroke?: string; strokeWidth?: number; shadeColor?: string; }; box?: { stroke?: string; strokeWidth?: number; strokeDasharray?: number; dimensions?: { width?: number; height?: number; top?: number; bottom?: number; left?: number; right?: number; perspective?: number; }; }; title?: ChartTitle; legend?: { showDefault?: boolean; fontSize?: number; color?: string; bold?: boolean; roundingValue?: number; roundingPercentage?: number; prefix?: string; suffix?: string; hideUnderPercentage?: number; }; dataLabel?: { show?: boolean; bold?: boolean; color?: string; fontSize?: number; rounding?: number; formatter?: Formatter; }; }; }; userOptions?: ChartUserOptions; table?: { show?: boolean; responsiveBreakpoint?: number; columnNames?: { series?: string; value?: string; percentage?: string; }; th?: ChartTableCell; td?: ChartTableCell & { roundingValue?: number; roundingPercentage?: number; }; }; }; export const VueUi3dBar: DefineComponent<{ config?: VueUi3dBarConfig; dataset: VueUi3dBarDataset; }>; export type VueUiMoodRadarDataset = { "1": number; "2": number; "3": number; "4": number; "5": number; }; export type VueUiMoodRadarConfig = { theme?: Theme; style?: { fontFamily?: string; chart?: { backgroundColor?: string; color?: string; layout?: { grid?: { show?: boolean; stroke?: string; strokeWidth?: number; }; outerPolygon?: { stroke?: string; strokeWidth?: number; }; dataPolygon?: { color?: string; opacity?: number; gradient?: { show?: boolean; intensity?: number; }; stroke?: string; strokeWidth?: number; }; smileys?: { strokeWidth?: number; colors?: { "1": string; "2": string; "3": string; "4": string; "5": string; }; }; dataLabel?: { color?: string; roundingPercentage?: number; roundingValue?: number; bold?: boolean; formatter?: Formatter; prefix?: string; suffix?: string; }; }; title?: ChartTitle; legend?: ChartBaseLegend & { backgroundColor?: string; roundingPercentage?: number; roundingValue?: number; }; }; }; table?: { show?: boolean; responsiveBreakpoint?: number; columnNames?: { series?: string; value?: string; percentage?: string; }; th?: ChartTableCell; td?: ChartTableCell & { roundingValue?: number; roundingPercentage?: number; }; }; userOptions?: ChartUserOptions; }; export const VueUiMoodRadar: DefineComponent<{ dataset: VueUiMoodRadarDataset; config?: VueUiMoodRadarConfig; }>; export type VueUiIconName = | "accordion" | "annotator" | "annotatorDisabled" | "arrowBottom" | "arrowLeft" | "arrowRight" | "arrowTop" | "battery" | "boxes" | "carouselTable" | "chart3dBar" | "chartAgePyramid" | "chartBar" | "chartBullet" | "chartCandlestick" | "chartChestnut" | "chartCirclePack" | "chartCluster" | "chartDonut" | "chartDonutEvolution" | "chartDumbbell" | "chartFlow" | "chartFunnel" | "chartGalaxy" | "chartGauge" | "chartHeatmap" | "chartHistoryPlot" | "chartLine" | "chartMoodRadar" | "chartNestedDonuts" | "chartOnion" | "chartParallelCoordinatePlot" | "chartQuadrant" | "chartRadar" | "chartRelationCircle" | "chartRings" | "chartScatter" | "chartSparkHistogram" | "chartSparkStackbar" | "chartSparkbar" | "chartSparkline" | "chartStackbar" | "chartStripPlot" | "chartTable" | "chartTableSparkline" | "chartThermometer" | "chartTiremarks" | "chartVerticalBar" | "chartWaffle" | "chartWheel" | "chartWordCloud" | "circle" | "circleCancel" | "circleCheck" | "circleExclamation" | "circleFill" | "circleQuestion" | "clipBoard" | "clipboardBar" | "clipboardDonut" | "clipboardLine" | "clipboardVariable" | "close" | "colorPicker" | "copy" | "copyLeft" | "csv" | "cursor" | "dashboard" | "diamond" | "diamondFill" | "digit0" | "digit1" | "digit2" | "digit3" | "digit4" | "digit5" | "digit6" | "digit7" | "digit8" | "digit9" | "excel" | "exitFullscreen" | "fullscreen" | "func" | "hexagon" | "hexagonFill" | "image" | "kpi" | "kpiBox" | "labelClose" | "labelOpen" | "lambda" | "lap" | "legend" | "menu" | "moodEmbarrassed" | "moodFlat" | "moodHappy" | "moodLaughing" | "moodNeutral" | "moodSad" | "moodSurprised" | "moodWink" | "mu" | "numbers" | "palette" | "pause" | "pdf" | "pentagon" | "pentagonFill" | "people" | "play" | "ratio" | "refresh" | "restart" | "screenshot" | "settings" | "sigma" | "skeleton" | "smiley" | "sort" | "spin" | "square" | "squareFill" | "stack" | "star" | "starFace" | "starFill" | "stop" | "tableClose" | "tableOpen" | "tooltip" | "tooltipDisabled" | "trash" | "trend" | "trendDown" | "trendUp" | "triangle" | "triangleFill" | "unstack" | "vueDataUi" | "zoomMinus" | "zoomPlus"; export const VueUiIcon: DefineComponent<{ name: VueUiIconName; stroke?: string; strokeWidth?: number; size?: number | string; isSpin?: boolean; }>; export type VueUiDonutEvolutionConfig = { theme?: Theme; customPalette?: string[]; style?: { fontFamily?: string; chart?: { backgroundColor?: string; color?: string; zoom?: ChartZoom; donuts?: { hover?: { hideLabelsUnderValue?: number; }; zoom?: { hideLabelsUnderValue?: number; } }; layout?: { height?: number; width?: number; padding?: ChartPadding; grid?: { show?: boolean; stroke?: string; strokeWidth?: number; showVerticalLines?: boolean; yAxis?: { dataLabels?: { show?: boolean; fontSize?: number; color?: string; roundingValue?: number; offsetX?: number; bold?: boolean; steps?: number; }; }; xAxis?: { dataLabels?: { show?: boolean; values?: string[]; fontSize?: number; showOnlyFirstAndLast?: boolean; color?: string; rotation?: number; offsetY?: number; }; }; }; line?: { show?: boolean; stroke?: string; strokeWidth?: number; }; highlighter?: { color?: string; opacity?: number; }; dataLabels?: { show?: boolean; fontSize?: number; color?: string; bold?: boolean; rounding?: number; prefix?: string; suffix?: string; offsetY?: number; formatter?: Formatter; }; }; title?: ChartTitle; legend?: ChartBaseLegend & { backgroundColor?: string; roundingPercentage?: number; roundingValue?: number; }; }; }; table?: { show?: boolean; responsiveBreakpoint?: number; columnNames?: { period?: string; total?: string; }; th?: ChartTableCell; td?: ChartTableCell & { roundingValue?: number; roundingPercentage?: number; }; }; userOptions?: ChartUserOptions; }; export type VueUiDonutEvolutionDatasetItem = { name: string; values: number[]; color?: string; }; export const VueUiDonutEvolution: DefineComponent<{ config?: VueUiDonutEvolutionConfig; dataset: VueUiDonutEvolutionDatasetItem[]; }>; export type VueUiTiremarksConfig = { theme?: Theme; userOptions?: ChartUserOptions; style?: { fontFamily?: string; chart?: { backgroundColor?: string; color?: string; animation?: { use?: boolean; speed?: number; acceleration?: number; }; layout?: { display?: "horizontal" | "vertical"; crescendo?: boolean; curved?: boolean; curveAngleX?: number; curveAngleY?: number; activeColor?: string; inactiveColor?: string; ticks?: { gradient?: { show?: boolean; shiftHueIntensity?: number; }; }; }; percentage?: { show?: boolean; useGradientColor?: boolean; color?: string; fontSize?: number; bold?: boolean; rounding?: number; verticalPosition?: "bottom" | "top"; horizontalPosition?: "left" | "right"; formatter?: Formatter; }; title?: ChartTitle; }; }; }; export type VueUiTiremarksDataset = { percentage: number; }; export const VueUiTiremarks: DefineComponent<{ config?: VueUiTiremarksConfig; dataset: VueUiTiremarksDataset; }>; export type VueUiWheelConfig = { responsive?: boolean; theme?: Theme; style?: { fontFamily?: string; chart?: { backgroundColor?: string; color?: string; animation?: { use?: boolean; speed?: number; acceleration?: number; }; layout?: { wheel?: { ticks?: { type?: 'classic' | 'arc'; rounded?: boolean; inactiveColor?: string; activeColor?: string; sizeRatio?: number; quantity?: number; strokeWidth?: number; gradient?: { show?: boolean; shiftHueIntensity?: number; }; }; }; innerCircle?: { show?: boolean; stroke?: string; strokeWidth?: number; }; percentage?: { show?: boolean; fontSize?: number; rounding?: number; bold?: boolean; formatter?: Formatter; }; }; title?: ChartTitle; }; }; userOptions?: ChartUserOptions; }; export type VueUiWheelDataset = { percentage: number; }; export const VueUiWheel: DefineComponent<{ dataset: VueUiWheelDataset; config?: VueUiWheelConfig; }>; export type VueUiRingsConfig = { responsive?: boolean; theme?: Theme; customPalette?: string[]; useCssAnimation?: boolean; useBlurOnHover?: boolean; style?: { fontFamily?: string; chart?: { backgroundColor?: string; color?: string; layout?: { labels?: { dataLabels?: { prefix?: string; suffix?: string; formatter?: Formatter; }; }; rings?: { strokeWidth?: number; stroke?: string; gradient?: { show?: boolean; intensity?: number; underlayerColor?: string; }; useShadow?: boolean; }; }; legend?: ChartBaseLegend & { backgroundColor?: string; roundingValue?: number; roundingPercentage?: number; }; title?: ChartTitle; tooltip?: ChartTooltip & { showValue?: boolean; showPercentage?: boolean; roundingValue?: number; roundingPercentage?: number; customFormat?: | null | (( params: VueUiTooltipParams< VueUiRingsDatapoint, VueUiRingsDatapoint[], VueUiRingsConfig > ) => string); }; }; }; userOptions?: ChartUserOptions; table?: { show?: boolean; responsiveBreakpoint?: number; columnNames?: { series?: string; value?: string; percentage?: string; }; th?: ChartTableCell; td?: ChartTableCell & { roundingValue?: number; roundingPercentage?: number; }; }; }; export type VueUiRingsDatapoint = { color: string; name: string; percentage: number; proportion: number; strokeWidth: number; uid: string; value: number; }; export type VueUiRingsDatasetItem = { name: string; color?: string; values: number[]; }; export const VueUiRings: DefineComponent<{ config?: VueUiRingsConfig; dataset: VueUiRingsDatasetItem[]; }>; export type VueUiSparkHistogramConfig = { theme?: Theme; style?: { backgroundColor?: string; fontFamily?: string; animation?: { show?: boolean; speedMs?: number; }; layout?: { height?: number; width?: number; padding?: ChartPadding; }; bars?: { shape?: | "circle" | "triangle" | "square" | "diamond" | "pentagon" | "hexagon" | "star"; strokeWidth?: number; colors?: { positive?: string; negative?: string; gradient?: { show?: boolean; }; }; borderRadius?: number; gap?: number; }; labels?: { value?: { fontSize?: number; color?: string; bold?: boolean; rounding?: number; prefix?: string; suffix?: string; offsetY?: number; formatter?: Formatter; }; valueLabel?: { fontSize?: number; color?: string; bold?: boolean; rounding?: number; }; timeLabel?: { fontSize?: number; color?: string; bold?: boolean; }; }; selector?: { stroke?: string; strokeDasharray?: number; strokeWidth?: number; borderRadius?: number; }; title?: { textAlign?: TextAlign; text?: string; color?: string; fontSize?: number; bold?: boolean; margin?: string; subtitle?: { color?: string; text?: string; fontSize?: number; bold?: boolean; }; }; }; }; export type VueUiSparkHistogramDatasetItem = { intensity?: number; color?: string; gradient?: string; height?: number; proportion?: number; stroke?: string; textAnchor?: number; timeLabel?: string; trapX?: number; unitWidth?: number; value?: number; valueLabel?: string; width?: number; x?: number; y?: number; }; export const VueUiSparkHistogram: DefineComponent<{ config?: VueUiSparkHistogramConfig; dataset: VueUiSparkHistogramDatasetItem[]; }>; export type VueUiSparkStackbarConfig = { theme?: Theme; customPalette?: string[]; style?: { backgroundColor?: string; fontFamily?: string; animation?: { show?: boolean; animationFrames?: number; }; bar?: { gradient?: { show?: boolean; intensity?: number; underlayerColor?: string; }; }; legend?: { textAlign?: TextAlign; show?: boolean; margin?: string; fontSize?: number; name?: { color?: string; bold?: boolean; }; value?: { show?: boolean; color?: string; bold?: boolean; prefix?: string; suffix?: string; rounding?: number; formatter?: Formatter; }; percentage?: { show?: boolean; color?: string; bold?: boolean; rounding?: number; }; }; title?: { textAlign?: TextAlign; text?: string; color?: string; fontSize?: number; bold?: boolean; margin?: string; paddingLeft?: number; paddingRight?: number; subtitle?: { color?: string; text?: string; fontSize?: number; bold?: boolean; }; }; tooltip?: ChartTooltip & { customFormat?: | null | (( params: VueUiTooltipParams< VueUiSparkStackbarDatasetItem, VueUiSparkStackbarDatasetItem[], VueUiSparkStackbarConfig > ) => string); }; }; }; export type VueUiSparkStackbarDatasetItem = { name: string; color?: string; proportion?: number; proportionLabel?: string; start?: number; value?: number; width?: number; }; export const VueUiSparkStackbar: DefineComponent<{ config?: VueUiSparkStackbarConfig; dataset: VueUiSparkStackbarDatasetItem[]; }>; export type VueUiThermometerConfig = { theme?: Theme; customPalette?: string[]; style?: { fontFamily?: string; chart?: { backgroundColor?: string; color?: string; height?: number; thermometer?: { width?: number; }; padding?: ChartPadding; graduations?: { show?: boolean; sides?: "left" | "right" | "both" | "none"; height?: number; stroke?: string; strokeWidth?: number; showIntermediate?: boolean; gradient?: { show?: boolean; intensity?: number; }; }; animation?: { use?: boolean; speedMs?: number; }; label?: { fontSize?: number; rounding?: number; bold?: boolean; prefix?: string; suffix?: string; formatter?: Formatter; color?: string; }; }; title?: ChartTitle; }; userOptions?: ChartUserOptions; }; export type VueUiThermometerDataset = { value: number; from: number; to: number; steps?: number; colors?: { from?: string; to?: string; }; }; export const VueUiThermometer: DefineComponent<{ config?: VueUiThermometerConfig; dataset: VueUiThermometerDataset; }>; export type VueUiRelationCircleConfig = { responsive?: boolean; theme?: Theme; customPalette?: string[]; style?: { color?: string; backg