import { Renderer } from '../../types';
import { Canvas2DRendererBase } from './base/canvas-2d-renderer';
/**
 * A horizontal hue sweep renderer using 2D canvas.
 *
 * This renderer generates a horizontally scrolling gradient across a configurable hue range.
 * The hue scrolls left-to-right in HSL color space, creating a smooth and colorful sweep animation.
 */
export declare class SweepRenderer extends Canvas2DRendererBase implements Renderer {
    /** The horizontal pixel offset into the hue sweep */
    private offset;
    /** Minimum hue (in degrees) to include in the sweep (e.g. 0 for red) */
    private minHue;
    /** Maximum hue (in degrees) to include in the sweep (e.g. 60 for yellow) */
    private maxHue;
    /** Horizontal sweep speed in pixels per update step */
    private speed;
    /**
     * Constructs a sweep renderer.
     *
     * @param minHue - Start of the hue range (in degrees, default 0)
     * @param maxHue - End of the hue range (in degrees, default 360)
     * @param speed - Horizontal speed of the sweep (pixels per update, default 1)
     */
    constructor({ minHue, maxHue, speed, }?: {
        minHue?: number;
        maxHue?: number;
        speed?: number;
    });
    /**
     * Resets the animation state to the beginning of the sweep.
     */
    reset(): void;
    /**
     * Converts an HSL color to RGB.
     *
     * @param h - Hue [0, 1]
     * @param s - Saturation [0, 1]
     * @param l - Lightness [0, 1]
     * @returns Tuple of [r, g, b] in range [0, 255]
     */
    private hslToRgb;
    /**
     * Renders the current frame by drawing a hue-mapped horizontal gradient across the canvas.
     *
     * @param width - Width of the canvas in pixels
     * @param height - Height of the canvas in pixels
     */
    renderFrame(width: number, height: number): void;
}
//# sourceMappingURL=sweep-renderer.d.ts.map