aura-glass
Version:
A comprehensive glassmorphism design system for React applications with 142+ production-ready components
94 lines • 4.27 kB
TypeScript
import { ChartDataPoint } from '../types';
export interface DataProcessingOptions {
normalize?: boolean;
smooth?: boolean;
smoothWindow?: number;
removeOutliers?: boolean;
outlierThreshold?: number;
aggregate?: boolean;
aggregateMethod?: 'sum' | 'avg' | 'min' | 'max' | 'count';
aggregateWindow?: number;
sort?: boolean;
sortBy?: 'x' | 'y' | 'value';
sortOrder?: 'asc' | 'desc';
filter?: (point: ChartDataPoint) => boolean;
transform?: (point: ChartDataPoint) => ChartDataPoint;
}
export declare class ChartDataUtils {
/**
* Normalize data points to a specific range
*/
static normalizeData(data: ChartDataPoint[], min?: number, max?: number): ChartDataPoint[];
/**
* Apply smoothing to data points using moving average
*/
static smoothData(data: ChartDataPoint[], windowSize?: number): ChartDataPoint[];
/**
* Remove outliers using statistical methods
*/
static removeOutliers(data: ChartDataPoint[], threshold?: number): ChartDataPoint[];
/**
* Aggregate data points using various methods
*/
static aggregateData(data: ChartDataPoint[], method?: 'sum' | 'avg' | 'min' | 'max' | 'count', windowSize?: number): ChartDataPoint[];
/**
* Sort data points by specified criteria
*/
static sortData(data: ChartDataPoint[], sortBy?: 'x' | 'y' | 'value', order?: 'asc' | 'desc'): ChartDataPoint[];
/**
* Filter data points using a predicate function
*/
static filterData(data: ChartDataPoint[], predicate: (point: ChartDataPoint) => boolean): ChartDataPoint[];
/**
* Transform data points using a transformation function
*/
static transformData(data: ChartDataPoint[], transformer: (point: ChartDataPoint) => ChartDataPoint): ChartDataPoint[];
/**
* Process data with multiple operations in sequence
*/
static processData(data: ChartDataPoint[], options: DataProcessingOptions): ChartDataPoint[];
/**
* Generate sample data for testing
*/
static generateSampleData(count?: number, type?: 'linear' | 'sine' | 'random' | 'exponential', range?: [number, number]): ChartDataPoint[];
/**
* Calculate statistical measures for data
*/
static calculateStatistics(data: ChartDataPoint[]): {
mean: number;
median: number;
mode: number[];
variance: number;
standardDeviation: number;
min: number;
max: number;
range: number;
quartiles: [number, number, number];
};
/**
* Detect trends in data
*/
static detectTrend(data: ChartDataPoint[]): 'increasing' | 'decreasing' | 'stable' | 'volatile';
}
export declare const normalizeData: (data: ChartDataPoint[], min?: number, max?: number) => ChartDataPoint[];
export declare const smoothData: (data: ChartDataPoint[], windowSize?: number) => ChartDataPoint[];
export declare const removeOutliers: (data: ChartDataPoint[], threshold?: number) => ChartDataPoint[];
export declare const aggregateData: (data: ChartDataPoint[], method?: "sum" | "avg" | "min" | "max" | "count", windowSize?: number) => ChartDataPoint[];
export declare const sortData: (data: ChartDataPoint[], sortBy?: "x" | "y" | "value", order?: "asc" | "desc") => ChartDataPoint[];
export declare const filterData: (data: ChartDataPoint[], predicate: (point: ChartDataPoint) => boolean) => ChartDataPoint[];
export declare const transformData: (data: ChartDataPoint[], transformer: (point: ChartDataPoint) => ChartDataPoint) => ChartDataPoint[];
export declare const processData: (data: ChartDataPoint[], options: DataProcessingOptions) => ChartDataPoint[];
export declare const generateSampleData: (count?: number, type?: "linear" | "sine" | "random" | "exponential", range?: [number, number]) => ChartDataPoint[];
export declare const calculateStatistics: (data: ChartDataPoint[]) => {
mean: number;
median: number;
mode: number[];
variance: number;
standardDeviation: number;
min: number;
max: number;
range: number;
quartiles: [number, number, number];
};
export declare const detectTrend: (data: ChartDataPoint[]) => "stable" | "increasing" | "decreasing" | "volatile";
//# sourceMappingURL=ChartDataUtils.d.ts.map