/** Reusable buffers for {@link simplifyLinePoints}. */ export interface LineSimplifyScratch { keep: number[]; stack: number[]; } /** Allocate simplification scratch once, outside the per-frame worklet. */ export declare function makeLineSimplifyScratch(): LineSimplifyScratch; /** * Simplify flat screen-space points (`[x0, y0, x1, y1, ...]`) with a bounded * Ramer-Douglas-Peucker pass. * * `tolerance` is the maximum removable deviation in pixels. The first and last * point, larger peaks/valleys, and the original point order are retained. Pass * distinct reusable `out` and `scratch` buffers to avoid per-frame allocation. * `absoluteXOffset` maps the viewport-relative X coordinates back onto a fixed * screen-pixel grid; live chart callers should pass `winStart * xScale` so * historical range membership does not change as the window advances. */ export declare function simplifyLinePoints(points: number[], tolerance: number, out: number[], scratch: LineSimplifyScratch, absoluteXOffset?: number): number[]; //# sourceMappingURL=simplify.d.ts.map