import { AbstractMesh, Scene } from '../babylonjs-import';
import { CullingMaterial, UniformsAndDefinesAndSamplers } from './CullingMaterial';
import { LazyResizableRawTexture } from '../LazyResizableRawTexture';
import { ProductMeshesGroupRenderInfo } from '../ProductMeshesGroupRenderInfo';
export declare class GpuPickingMaterial extends CullingMaterial {
    readonly diffuseTexture: LazyResizableRawTexture;
    readonly propertiesTexture?: LazyResizableRawTexture | undefined;
    readonly isOutlineDiscerner: boolean;
    constructor(name: string, scene: Scene, renderingInfo: ProductMeshesGroupRenderInfo, diffuseTexture: LazyResizableRawTexture, propertiesTexture?: LazyResizableRawTexture | undefined, isOutlineDiscerner?: boolean);
    getFragmentSource(): string;
    getVertexSource(): string;
    getUniformsAndDefinesAndSamplers(): UniformsAndDefinesAndSamplers;
    bindFunction(mesh: AbstractMesh): void;
}
//# sourceMappingURL=GpuPickingMaterial.d.ts.map