import { ShaderMaterial2 } from './ShaderMaterial2';
import { BufferGeometry, Camera, ColorSpace, Object3D, Scene, Shader, ShaderMaterialParameters, WebGLRenderer } from 'three';
import { IMaterialUserData } from '../IMaterial';
export declare class ExtendedShaderMaterial extends ShaderMaterial2 {
    ['constructor']: (typeof ExtendedShaderMaterial) & (typeof ShaderMaterial2);
    textures: {
        colorSpace: ColorSpace;
        id: string;
    }[];
    userData: IMaterialUserData;
    constructor(parameters: ShaderMaterialParameters, textureIds: string[], isRawShaderMaterial?: boolean);
    setTextureIds(ids: string[]): void;
    private _setUniformTexSize;
    onBeforeRender(renderer: WebGLRenderer, scene: Scene, camera: Camera, geometry: BufferGeometry, object: Object3D): void;
    onBeforeCompile(s: Shader, renderer: WebGLRenderer): void;
    customProgramCacheKey(): string;
}
//# sourceMappingURL=ExtendedShaderMaterial.d.ts.map