import type { CoreNode } from '../../CoreNode.js';
import { type Texture } from '../../textures/Texture.js';
import type { CoreContextTexture } from '../CoreContextTexture.js';
import { CoreRenderer, type CoreRendererOptions, type QuadOptions } from '../CoreRenderer.js';
import { CanvasShaderNode, type CanvasShaderType } from './CanvasShaderNode.js';
export declare class CanvasRenderer extends CoreRenderer {
    private context;
    private canvas;
    private pixelRatio;
    private clearColor;
    renderToTextureActive: boolean;
    activeRttNode: CoreNode | null;
    private parsedColorCache;
    constructor(options: CoreRendererOptions);
    reset(): void;
    render(): void;
    addQuad(quad: QuadOptions): void;
    renderContext(quad: QuadOptions): void;
    createShaderNode(shaderKey: string, shaderType: Readonly<CanvasShaderType>, props?: Record<string, any>): CanvasShaderNode<Record<string, any>, Record<string, unknown>>;
    createShaderProgram(shaderConfig: any): null;
    supportsShaderType(shaderType: Readonly<CanvasShaderType>): boolean;
    createCtxTexture(textureSource: Texture): CoreContextTexture;
    renderRTTNodes(): void;
    removeRTTNode(node: CoreNode): void;
    renderToTexture(node: CoreNode): void;
    getBufferInfo(): null;
    getQuadCount(): null;
    getParsedColor(color: number, isRGBA?: boolean): string;
    /**
     * Updates the clear color of the canvas renderer.
     *
     * @param color - The color to set as the clear color.
     */
    updateClearColor(color: number): void;
    getDefaultShaderNode(): null;
}
