vue-data-ui-hq
Version:
A user-empowering data visualization Vue 3 components library for eloquent data storytelling
1,506 lines (1,425 loc) • 201 kB
text/typescript
declare module 'vue-data-ui' {
import { DefineComponent } from 'vue-demi';
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[],
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;
}>
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?: boolean;
annotator?: boolean;
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;
}
export type ChartZoom = {
show?: boolean;
color?: string;
highlightColor?: string;
fontSize?: number;
useResetSlot?: boolean;
minimap?: ZoomMinimap;
startIndex?: number | null;
endIndex?: number | null;
}
export type Theme = "" | "zen" | "hack" | "concrete";
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;
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;
};
};
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 = "annotator" | "chart3dBar" | "chartAgePyramid" | "chartBar" | "chartCandlestick" | "chartChestnut" | "chartDonut" | "chartDonutEvolution" | "chartGauge" | "chartHeatmap" | "chartLine" | "chartMoodRadar" | "chartOnion" | "chartQuadrant" | "chartRadar" | "chartRelationCircle" | "chartRings" | "chartScatter" | "chartSparkHistogram" | "chartSparkStackbar" | "chartTable" | "chartThermometer" | "chartTiremarks" | "chartVerticalBar" | "chartWaffle" | "chartWheel" | "close" | "dashboard" | "digit0" | "digit1" | "digit2" | "digit3" | "digit4" | "digit5" | "digit6" | "digit7" | "digit8" | "digit9" | "excel" | "image" | "labelClose" | "labelOpen" | "menu" | "moodFlat" | "moodHappy" | "moodNeutral" | "moodSad" | "pdf" | "screenshot" | "skeleton" | "smiley" | "sort" | "spin" | "star" | "tableClose" | "tableOpen" | "chartNestedDonuts" | "chartSparkbar" | "refresh" | "circleQuestion" | "circleExclamation" | "circleCheck" | "circleCancel" | "moodLaughing" | "moodWink" | "moodEmbarrassed" | "moodSurprised" | "exitFullscreen" | "fullscreen" | "arrowRight" | "arrowTop" | "arrowBottom" | "arrowLeft" | "chartCluster" | "chartSparkline" | "legend" | "csv" | "chartGalaxy" | "kpi" | "kpiBox" | "tooltip" | "vueDataUi" | "ratio" | "func" | "settings" | "trendUp" | "trendDown" | "clipBoard" | "zoomPlus" | "zoomMinus" | "clipboardLine" | "clipboardDonut" | "clipboardBar" | "clipboardVariable" | "triangle" | "triangleFill" | "square" | "squareFill" | "diamond" | "diamondFill" | "pentagon" | "pentagonFill" | "hexagon" | "hexagonFill" | "circle" | "circleFill" | "starFill" | "numbers" | "sigma" | "mu" | "lambda" | "people" | "copy" | "accordion" | "cursor" | "trend" | "chartStripPlot" | "chartDumbbell" | "copyLeft" | "chartWordCloud" | "stack" | "unstack" | "chartFlow" | "chartParallelCoordinatePlot" | "tooltipDisabled" | "pause" | "play" | "stop" | "restart" | "lap" | "carouselTable" | "battery" | "chartStackbar" | "starFace" | "chartBullet" | "trash" | "annotatorDisabled" | "palette" | "colorPicker" | "boxes" | "chartFunnel" | "chartHistoryPlot" | "chartTableSparkline";
export const VueUiIcon: DefineComponent<{
name: VueUiIconName,
stroke?: string,
strokeWidth?: number,
size?: number,
isSpin?: boolean
}>;
export type VueUiDonutEvolutionConfig = {
theme?: Theme;
customPalette?: string[];
style?: {
fontFamily?: string;
chart?: {
backgroundColor?: string;
color?: string;
zoom?: ChartZoom;
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;
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?: {
rounded?: boolean;
inactiveColor?: string;
activeColor?: string;
sizeRatio?: 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;
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;
};
};
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;
backgroundColor?: string;
fontFamily?: string;
size?: number;
limit?: number;
animation?: {
show?: boolean;
speedMs?: number;
};
labels?: {
color?: string;
fontSize?: number;
};
weightLabels?: {
size?: number;
show?: boolean;
formatter?: Formatter;
prefix?: string;
suffix?: string;
rounding?: number;
};
links?: {
curved?: boolean;
maxWidth?: number;
};
circle?: {
radiusProportion?: number;
stroke?: string;
strokeWidth?: number;
offsetY?: number;
};
plot?: {
radius?: number;
useSerieColor?: boolean;
color?: string;
};
title?: ChartTitle;
};
userOptions?: ChartUserOptions;
};
export type VueUiRelationCircleDatasetItem = {
id: string | number;
label: string;
relations: Array<string | number>;
weights?: number[];
color?: string;
}
export const VueUiRelationCircle: DefineComponent<{
config?: VueUiRelationCircleConfig,
dataset: VueUiRelationCircleDatasetItem[]
}>;
export type VueUiAnnotatorConfig = {
style?: {
backgroundColor?: string;
color?: string;
fixedTools?: boolean;
fontFamily?: string;
hideWhenFolded?: boolean;
showPrint?: boolean;
showSave?: boolean;
showTooltips?: boolean;
buttons?: {
borderRadius?: number;
controls?: {
backgroundColor?: string;
color?: string;
border?: string;
selected?: {
backgroundColor?: string;
color?: string;
border?: string;
};
};
shapes?: {
backgroundColor?: string;
color?: string;
border?: string;
selected?: {
backgroundColor?: string;
color?: string;
border?: string;
};
};
};
tooltips?: {
backgroundColor?: string;
color?: string;
border?: string;
borderRadius?: number;
boxShadow?: string;
};
};
translations?: {
colorAlpha?: string;
dashedLines?: string;
filled?: string;
fontSize?: string;
thickness?: string;
title?: string;
tooltipGroup?: string;
tooltipDelete?: string;
tooltipMove?: string;
tooltipResize?: string;
tooltipBringToFront?: string;
tooltipBringToBack?: string;
tooltipDuplicate?: string;
tooltipUndo?: string;
tooltipPdf?: string;
tooltipSave?: string;
tooltipShapeCircle?: string;
tooltipShapeRect?: string;
tooltipShapeArrow?: string;
tooltipShapeFreehand?: string;
tooltipShapeText?: string;
tooltipShapeTextLeft?: string;
tooltipShapeTextCenter?: string;
tooltipShapeTextRight?: string;
tooltipShapeTextBullet?: string;
tooltipShapeTextBold?: string;
tooltipShapeTextItalic?: string;
tooltipShapeTextUnderline?: string;
tooltipShapeColor?: string;
}
}
export type VueUiAnnotatorDataset = VueUiUnknownObj;
export const VueUiAnnotator: DefineComponent<{
config?: VueUiAnnotatorConfig,
dataset: VueUiAnnotatorDataset
}>
export type VueUiDashboardConfig = {
locked?: boolean;
style?: {
board?: {
backgroundColor?: string;
color?: string;
aspectRatio?: string;
border?: string;
};
item?: {
backgroundColor?: string;
borderColor?: string;
};
resizeHandles?: {
backgroundColor?: string;
border?: string;
};
};
allowPrint?: boolean;
}
export type VueUiDashboardElement = {
id