import { DrawList } from '../drawList'; import { GpuBackend, RGBA } from '../types'; /** * Series style from the original renderer */ export interface SeriesStyle { color?: string | RGBA; opacity?: number; lineWidth?: number; pointSize?: number; symbol?: string; } /** * Series render data from the chart system */ export interface SeriesData { id: string; type: "line" | "scatter" | "line+scatter" | "step" | "step+scatter" | "band" | "bar" | "heatmap"; visible: boolean; /** Main vertex data */ data: Float32Array; /** Style properties */ style: SeriesStyle; /** For step charts */ stepData?: Float32Array; /** Y-axis bounds for multi-axis support */ yBounds?: { min: number; max: number; }; /** For heatmaps */ zBounds?: { min: number; max: number; }; colormapData?: Uint8Array; colormap?: string; } /** * Mutable color tuple for internal use */ type MutableRGBA = [number, number, number, number]; /** * Parse color from various formats to RGBA */ export declare function parseColorToRGBA(color: string | RGBA | undefined): MutableRGBA; /** * Series Adapter class * * Manages the conversion of chart series to GPU resources and draw calls. */ export declare class SeriesAdapter { private backend; private seriesBufferMap; private seriesStepBufferMap; private seriesTextureMap; constructor(backend: GpuBackend); /** * Get buffer ID for a series */ private getBufferId; /** * Get step buffer ID for a series */ private getStepBufferId; /** * Get texture ID for a series */ private getTextureId; /** * Update series data in GPU buffers */ updateSeries(series: SeriesData): void; /** * Remove a series from GPU resources */ removeSeries(seriesId: string): void; /** * Build draw list from series array */ buildDrawList(seriesArray: SeriesData[]): DrawList; /** * Cleanup all resources */ destroy(): void; } export {};