import { type Nullable, type AbstractEngine, type EffectWrapperCreationOptions } from "../index.js"; import { EffectWrapper } from "../Materials/effectRenderer.pure.js"; /** * Post process used to render a grain effect */ export declare class ThinGrainPostProcess extends EffectWrapper { /** * The fragment shader url */ static readonly FragmentUrl = "grain"; /** * The list of uniforms used by the effect */ static readonly Uniforms: string[]; protected _gatherImports(useWebGPU: boolean, list: Promise[]): void; /** * Constructs a new grain post process * @param name Name of the effect * @param engine Engine to use to render the effect. If not provided, the last created engine will be used * @param options Options to configure the effect */ constructor(name: string, engine?: Nullable, options?: EffectWrapperCreationOptions); /** * The intensity of the grain added (default: 30) */ intensity: number; /** * If the grain should be randomized on every frame */ animated: boolean; bind(noDefaultBindings?: boolean): void; }