import { Instance } from "../../instance-provider"; import { IRenderTextureResource } from "../../resources"; import { IRenderTextureResourceRequest } from "../../resources/texture/render-texture-resource-request"; import { ILayerProps, Layer } from "../../surface"; import { Color, IShaderInitialization, IUniform } from "../../types"; declare class PostProcessInstance extends Instance { tint: Color; request: IRenderTextureResourceRequest; constructor(); } export interface IPostProcessLayer extends ILayerProps { /** List of resource names and their respective keys to apply */ buffers: Record; /** * This is the fragment shader that will handle the operation to perform * computations against all of the input shaders. */ fs: string; /** * Additional uniforms to inject into the program. */ uniforms?: IUniform[]; } /** * This layer takes in several resources and sets up an appropriate geometry and * shader IO to allow for an aggregation shader to be specified. */ export declare class PostProcessLayer extends Layer { static defaultProps: IPostProcessLayer; initShader(): IShaderInitialization; getMaterialOptions(): import("../../util").CommonMaterial; } export {};