import type { LegendOptions, TooltipOptions, Plugin } from 'chart.js'; import type { FmChartAxisOptions, FmChartDataLabelsOptions } from '../../../components/chart'; export interface Dataset { label: string; data: number[]; fill?: boolean; dash?: boolean; color: string; borderColor?: string; backgroundColor?: string; legend?: boolean; } export interface XAxis { categories: string[]; } type FmLineProp = { /** * chart name */ name?: string; /** * chart paragraph */ paragraph?: string; /** * datasets * each line is one dataset */ datasets: Dataset[]; /** * x axis labels */ xAxis: XAxis; /** * transpose * display value on the x or y */ transpose?: boolean; /** * stack chart */ stacked?: boolean; /** * @deprecated Please use `:xCfg={stacked: false}` and `:yCfg={stacked: false}` from now on. */ maintainAspectRatio?: boolean; /** * @deprecated Please use `:xCfg={display: false}` from now on. */ hideXAxis?: boolean; /** * @deprecated Please use `:yCfg={display: false}` from now on. */ hideYAxis?: boolean; /** * hide the legend * this will have priority over any other */ legend?: Partial>; /** * customize tooltip */ tooltip?: Omit>, 'callbacks'> & { callbacks?: Partial['callbacks']>; }; /** * customize datalabels */ datalabels?: Partial; /** * customize X axis */ xCfg?: Partial; /** * customize Y axis */ yCfg?: Partial; /** * custom chart plugins */ plugins?: Plugin<'line'>[]; /** * custom chart height */ height?: string; /** * custom chart width */ width?: string; }; declare const _default: __VLS_WithTemplateSlots, { name: undefined; paragraph: undefined; transpose: boolean; hideXAxis: undefined; hideYAxis: undefined; xCfg: undefined; yCfg: undefined; legend: undefined; tooltip: undefined; datalabels: undefined; height: undefined; width: undefined; }>, {}, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly, { name: undefined; paragraph: undefined; transpose: boolean; hideXAxis: undefined; hideYAxis: undefined; xCfg: undefined; yCfg: undefined; legend: undefined; tooltip: undefined; datalabels: undefined; height: undefined; width: undefined; }>>>, { name: string; legend: Partial>; width: string; height: string; tooltip: Omit>, "callbacks"> & { callbacks?: Partial, import("chart.js").TooltipItem<"line">>> | undefined; }; paragraph: string; transpose: boolean; hideXAxis: boolean; hideYAxis: boolean; datalabels: Partial; xCfg: Partial; yCfg: Partial; }, {}>, { title?(_: {}): any; }>; export default _default; type __VLS_NonUndefinedable = T extends undefined ? never : T; type __VLS_TypePropsToRuntimeProps = { [K in keyof T]-?: {} extends Pick ? { type: import('vue').PropType<__VLS_NonUndefinedable>; } : { type: import('vue').PropType; required: true; }; }; type __VLS_WithDefaults = { [K in keyof Pick]: K extends keyof D ? __VLS_Prettify : P[K]; }; type __VLS_Prettify = { [K in keyof T]: T[K]; } & {}; type __VLS_WithTemplateSlots = T & { new (): { $slots: S; }; };