import type { PropType } from 'vue'; import type { ClassValue } from '../../../composables/component.js'; export type SparklineItem = number | { value: number; }; export type SparklineText = { x: number; value: string; }; export interface Boundary { minX: number; minY: number; maxX: number; maxY: number; } export interface Point { x: number; y: number; value: number; } export type SparklineAnimationConfig = { duration?: number; easing?: string; }; export type SparklineTooltipConfig = { titleFormat?: (item: { index: number; value: number; }) => string; offset?: number; class?: ClassValue; showCrosshair?: boolean; }; export declare const makeLineProps: (defaults?: Defaults | undefined) => { animation: unknown extends Defaults["animation"] ? { type: PropType; default: boolean; } : Omit<{ type: PropType; default: boolean; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["animation"] ? boolean | SparklineAnimationConfig : Defaults["animation"] | NonNullable; }; autoDraw: unknown extends Defaults["autoDraw"] ? { type: PropType; default: boolean; } : Omit<{ type: PropType; default: boolean; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["autoDraw"] ? "once" | boolean : Defaults["autoDraw"] | NonNullable<"once" | boolean>; }; autoDrawDuration: unknown extends Defaults["autoDrawDuration"] ? (NumberConstructor | StringConstructor)[] : { type: PropType; default: unknown extends Defaults["autoDrawDuration"] ? string | number : Defaults["autoDrawDuration"] | NonNullable; }; autoDrawEasing: unknown extends Defaults["autoDrawEasing"] ? { type: StringConstructor; default: string; } : Omit<{ type: StringConstructor; default: string; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["autoDrawEasing"] ? string : string | Defaults["autoDrawEasing"]; }; color: unknown extends Defaults["color"] ? StringConstructor : { type: PropType; default: unknown extends Defaults["color"] ? string : string | Defaults["color"]; }; gradient: unknown extends Defaults["gradient"] ? { type: PropType; default: () => never[]; } : Omit<{ type: PropType; default: () => never[]; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["gradient"] ? string[] : string[] | Defaults["gradient"]; }; gradientDirection: unknown extends Defaults["gradientDirection"] ? { type: PropType<'top' | 'bottom' | 'left' | 'right'>; validator: (val: string) => boolean; default: string; } : Omit<{ type: PropType<'top' | 'bottom' | 'left' | 'right'>; validator: (val: string) => boolean; default: string; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["gradientDirection"] ? "bottom" | "left" | "right" | "top" : Defaults["gradientDirection"] | NonNullable<"bottom" | "left" | "right" | "top">; }; height: unknown extends Defaults["height"] ? { type: (NumberConstructor | StringConstructor)[]; default: number; } : Omit<{ type: (NumberConstructor | StringConstructor)[]; default: number; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["height"] ? string | number : Defaults["height"] | NonNullable; }; labels: unknown extends Defaults["labels"] ? { type: PropType<(string | SparklineItem)[]>; default: () => never[]; } : Omit<{ type: PropType<(string | SparklineItem)[]>; default: () => never[]; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["labels"] ? (string | SparklineItem)[] : (string | SparklineItem)[] | Defaults["labels"]; }; labelSize: unknown extends Defaults["labelSize"] ? { type: (NumberConstructor | StringConstructor)[]; default: number; } : Omit<{ type: (NumberConstructor | StringConstructor)[]; default: number; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["labelSize"] ? string | number : Defaults["labelSize"] | NonNullable; }; lineWidth: unknown extends Defaults["lineWidth"] ? { type: (NumberConstructor | StringConstructor)[]; default: number; } : Omit<{ type: (NumberConstructor | StringConstructor)[]; default: number; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["lineWidth"] ? string | number : Defaults["lineWidth"] | NonNullable; }; id: unknown extends Defaults["id"] ? StringConstructor : { type: PropType; default: unknown extends Defaults["id"] ? string : string | Defaults["id"]; }; itemValue: unknown extends Defaults["itemValue"] ? { type: StringConstructor; default: string; } : Omit<{ type: StringConstructor; default: string; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["itemValue"] ? string : string | Defaults["itemValue"]; }; modelValue: unknown extends Defaults["modelValue"] ? { type: PropType; default: () => never[]; } : Omit<{ type: PropType; default: () => never[]; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["modelValue"] ? SparklineItem[] : SparklineItem[] | Defaults["modelValue"]; }; min: unknown extends Defaults["min"] ? (NumberConstructor | StringConstructor)[] : { type: PropType; default: unknown extends Defaults["min"] ? string | number : Defaults["min"] | NonNullable; }; max: unknown extends Defaults["max"] ? (NumberConstructor | StringConstructor)[] : { type: PropType; default: unknown extends Defaults["max"] ? string | number : Defaults["max"] | NonNullable; }; padding: unknown extends Defaults["padding"] ? { type: (NumberConstructor | StringConstructor)[]; default: number; } : Omit<{ type: (NumberConstructor | StringConstructor)[]; default: number; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["padding"] ? string | number : Defaults["padding"] | NonNullable; }; markerSize: unknown extends Defaults["markerSize"] ? { type: (NumberConstructor | StringConstructor)[]; default: number; } : Omit<{ type: (NumberConstructor | StringConstructor)[]; default: number; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["markerSize"] ? string | number : Defaults["markerSize"] | NonNullable; }; markerStroke: unknown extends Defaults["markerStroke"] ? { type: StringConstructor; default: string; } : Omit<{ type: StringConstructor; default: string; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["markerStroke"] ? string : string | Defaults["markerStroke"]; }; inset: unknown extends Defaults["inset"] ? BooleanConstructor : { type: PropType; default: unknown extends Defaults["inset"] ? boolean : boolean | Defaults["inset"]; }; showLabels: unknown extends Defaults["showLabels"] ? BooleanConstructor : { type: PropType; default: unknown extends Defaults["showLabels"] ? boolean : boolean | Defaults["showLabels"]; }; showMarkers: unknown extends Defaults["showMarkers"] ? BooleanConstructor : { type: PropType; default: unknown extends Defaults["showMarkers"] ? boolean : boolean | Defaults["showMarkers"]; }; smooth: unknown extends Defaults["smooth"] ? (BooleanConstructor | NumberConstructor | StringConstructor)[] : { type: PropType; default: unknown extends Defaults["smooth"] ? string | number | boolean : Defaults["smooth"] | NonNullable; }; smoothMode: unknown extends Defaults["smoothMode"] ? { type: PropType<'default' | 'monotone'>; default: string; } : Omit<{ type: PropType<'default' | 'monotone'>; default: string; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["smoothMode"] ? "default" | "monotone" : Defaults["smoothMode"] | NonNullable<"default" | "monotone">; }; interactive: unknown extends Defaults["interactive"] ? BooleanConstructor : { type: PropType; default: unknown extends Defaults["interactive"] ? boolean : boolean | Defaults["interactive"]; }; tooltip: unknown extends Defaults["tooltip"] ? { type: PropType; default: boolean; } : Omit<{ type: PropType; default: boolean; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["tooltip"] ? boolean | SparklineTooltipConfig : Defaults["tooltip"] | NonNullable; }; width: unknown extends Defaults["width"] ? { type: (NumberConstructor | StringConstructor)[]; default: number; } : Omit<{ type: (NumberConstructor | StringConstructor)[]; default: number; }, "default" | "type"> & { type: PropType; default: unknown extends Defaults["width"] ? string | number : Defaults["width"] | NonNullable; }; }; export declare function resample(values: number[], targetCount: number): number[]; export declare function extendPoints(points: Point[], inset: boolean, totalWidth: number): Point[]; export interface BuildPathOptions { smooth: boolean | string | number | undefined; smoothMode: 'default' | 'monotone'; height: number; fill: boolean; animation: boolean; } export declare function buildPath(points: Point[], options: BuildPathOptions): string;