import { Color, Node, UniformNode } from 'three/webgpu'; export type GridNodeUniforms = { /** World-space size of each grid cell in meters. */ uGridSize: UniformNode<'float', number>; /** Draw a major line every N cells. */ uMajorLineEvery: UniformNode<'float', number>; /** Color of minor grid lines. */ uMinorLineColor: UniformNode<'color', Color>; /** Color of major grid lines. */ uMajorLineColor: UniformNode<'color', Color>; /** How opaque minor grid lines are drawn, 0 to 1. */ uMinorLineOpacity: UniformNode<'float', number>; /** How opaque major grid lines are drawn, 0 to 1. */ uMajorLineOpacity: UniformNode<'float', number>; /** Distance at which the grid fades out in meters. */ uFadeDistance: UniformNode<'float', number>; }; export declare class GridNode extends Node { constructor(uniforms: GridNodeUniforms); }