import { TextureNode, UniformNode } from "three/tsl"; import { BufferGeometry, Color, ColorRepresentation, Mesh, NodeMaterial, Texture, Vector3 } from "three/webgpu"; export interface WaterMeshOptions { resolution?: number | undefined; waterNormals: Texture; alpha?: number | undefined; size?: number | undefined; sunColor?: ColorRepresentation | undefined; sunDirection?: Vector3 | undefined; waterColor?: ColorRepresentation | undefined; distortionScale?: number | undefined; } declare class WaterMesh extends Mesh { readonly isWater: true; resolution: number; waterNormals: TextureNode; alpha: UniformNode; size: UniformNode; sunColor: UniformNode; sunDirection: UniformNode; waterColor: UniformNode; distortionScale: UniformNode; constructor(geometry: BufferGeometry, options: WaterMeshOptions); } export { WaterMesh };