/**
 * @import { VertexBuffer } from '../../platform/graphics/vertex-buffer.js'
 * @import { Layer } from '../layer.js'
 * @import { GraphNode } from '../graph-node.js'
 */
/**
 * Class that renders the splats from the work buffer.
 *
 * @ignore
 */
export class GSplatRenderer {
    constructor(device: any, node: any, cameraNode: any, layer: any, workBuffer: any);
    /** @type {ShaderMaterial} */
    _material: ShaderMaterial;
    /** @type {MeshInstance} */
    meshInstance: MeshInstance;
    /** @type {VertexBuffer|null} */
    instanceIndices: VertexBuffer | null;
    /** @type {number} */
    instanceIndicesCount: number;
    /** @type {Layer} */
    layer: Layer;
    /** @type {GraphNode} */
    cameraNode: GraphNode;
    viewportParams: number[];
    device: any;
    node: any;
    workBuffer: any;
    destroy(): void;
    setNumSplats(count: any): void;
    setMaxNumSplats(numSplats: any): void;
    createMeshInstance(): MeshInstance;
    updateViewport(cameraNode: any): void;
}
import { ShaderMaterial } from '../materials/shader-material.js';
import { MeshInstance } from '../mesh-instance.js';
import type { VertexBuffer } from '../../platform/graphics/vertex-buffer.js';
import type { Layer } from '../layer.js';
import type { GraphNode } from '../graph-node.js';
