import { AbstractMesh, IShaderMaterialOptions, Scene } from '../babylonjs-import';
import { ProductMeshesGroupRenderInfo } from '../ProductMeshesGroupRenderInfo';
import { CullingMaterial, UniformsAndDefinesAndSamplers } from './CullingMaterial';
import { DitherTexture } from './DitherTexture';
export declare abstract class DitheringMaterial extends CullingMaterial {
    readonly ditherTexture: DitherTexture;
    protected _ditherSize: number;
    protected _isDitherModeEnabled: boolean;
    abstract getFragmentSource(): string;
    abstract getVertexSource(): string;
    constructor(name: string, scene: Scene, renderingInfo: ProductMeshesGroupRenderInfo, options: Partial<IShaderMaterialOptions>, ditherTexture: DitherTexture, writeColorBlending: boolean, excludeIgnoreDepthWriteCuttingPlanes: boolean);
    getUniformsAndDefinesAndSamplers(): UniformsAndDefinesAndSamplers;
    bindFunction(mesh: AbstractMesh): void;
}
//# sourceMappingURL=DitheringMaterial.d.ts.map