import * as THREE from 'three'; import { Uniforms } from './uniform'; export interface ShaderMaterialParameters> extends THREE.ShaderMaterialParameters { uniforms: U; defines: D; } export declare class ShaderMaterial> extends THREE.ShaderMaterial { uniforms: U; defines: D; constructor(options: ShaderMaterialParameters); getUniform(name: K): Uniforms[K]['value']; setUniform(name: K, value: Uniforms[K]['value']): void; } export declare class RawShaderMaterial> extends THREE.RawShaderMaterial { uniforms: U; defines: D; constructor(options: ShaderMaterialParameters); getUniform(name: K): Uniforms[K]['value']; setUniform(name: K, value: Uniforms[K]['value']): void; }