/**
 * @typedef {object} BufferedViewRenderingOptions
 * @prop {import("../../gl/webGLHelper.js").default} webGLHelper
 * @prop {{width: number, height: number}} canvasSize Size of the canvas in logical pixels.
 * @prop {number} devicePixelRatio
 * @prop {import("twgl.js").FramebufferInfo} [framebufferInfo]
 * @prop {string} [clearColor] Clear color for the  WebGL context,
 *      defaults to transparent black.
 */
/**
 * View rendering context that buffers the actual WebGL rendering for
 * efficient animation.
 */
export default class BufferedViewRenderingContext extends ViewRenderingContext {
    /**
     * @param {import("../../types/rendering.js").GlobalRenderingOptions} globalOptions
     * @param {BufferedViewRenderingOptions} bufferedOptions
     */
    constructor(globalOptions: import("../../types/rendering.js").GlobalRenderingOptions, bufferedOptions: BufferedViewRenderingOptions);
    /**
     * Renders marks in an optimized order, minimizing the number of WebGL state
     * changes.
     */
    render(): void;
    #private;
}
export type BufferedViewRenderingOptions = {
    webGLHelper: import("../../gl/webGLHelper.js").default;
    /**
     * Size of the canvas in logical pixels.
     */
    canvasSize: {
        width: number;
        height: number;
    };
    devicePixelRatio: number;
    framebufferInfo?: import("twgl.js").FramebufferInfo;
    /**
     * Clear color for the  WebGL context,
     * defaults to transparent black.
     */
    clearColor?: string;
};
import ViewRenderingContext from "./viewRenderingContext.js";
//# sourceMappingURL=bufferedViewRenderingContext.d.ts.map