import type { WebGLContextManager } from "../../../webgl/context-manager"; import type { CandlestickChart } from "../candlestick"; type GL = WebGL2RenderingContext | WebGLRenderingContext; /** * OHLC bar glyph. Owns the OHLC program + per-color persistent segment * buffers built per data load. Co-tenanted with `BodyWickGlyph` on * `CandlestickChart`; only one of the two is active per frame depending * on `_defaultChartType`. */ export declare class OHLCGlyph { private _program; private _buffers; private ensureProgram; /** * Drop persistent OHLC vertex buffers. Called from data-load (before * `rebuildBuffers`) and from chart-destroy paths. */ invalidateBuffers(chart: CandlestickChart): void; /** * Pre-build the per-group OHLC instance buffers. Each candle emits 3 * line segments (H–L, open tick, close tick); layout per instance is * `[start.x, start.y, end.x, end.y]`. Single GPU upload per group per * data load. */ rebuildBuffers(chart: CandlestickChart, glManager: WebGLContextManager): void; /** * Bind the persistent up/down OHLC buffers and dispatch one instanced * draw per color group. */ draw(chart: CandlestickChart, gl: GL, glManager: WebGLContextManager, projection: Float32Array): void; destroy(chart: CandlestickChart): void; } export {};