/**
 * Vignette - Adds a simulated lens edge darkening effect.
 */
export type VignetteProps = {
    /** 0 to 1 (0 for center of frame, 1 for edge of frame) */
    radius?: number;
    /** 0 to 1 (0 for no effect, 1 for maximum lens darkening) */
    amount?: number;
};
export type VignetteUniforms = VignetteProps;
/**
 * Vignette -
 * Adds a simulated lens edge darkening effect.
 */
export declare const vignette: {
    readonly props: VignetteProps;
    readonly uniforms: VignetteUniforms;
    readonly name: "vignette";
    readonly source: "struct vignetteUniforms {\n  radius: f32,\n  amount: f32\n};\n\n@group(0) @binding(1) var<uniform> vignette: vignetteUniforms;\n\nfn vibrance_filterColor(color: vec4f) -> vec4f {\n  let average: f32 = (color.r + color.g + color.b) / 3.0;\n  let mx: f32 = max(color.r, max(color.g, color.b));\n  let amt: f32 = (mx - average) * (-vibrance.amount * 3.0);\n  color.rgb = mix(color.rgb, vec3f(mx), amt);\n  return color;\n}\n\nfn vignette_filterColor_ext(color: vec4f, texSize: vec2f, texCoord: vec2f) ->vec4f {\n  let dist: f32 = distance(texCoord, vec2f(0.5, 0.5));\n  let ratio: f32 = smoothstep(0.8, vignette.radius * 0.799, dist * (vignette.amount + vignette.radius));\n  return color.rgba * ratio + (1.0 - ratio)*vec4f(0.0, 0.0, 0.0, 1.0);\n}\n";
    readonly fs: "uniform vignetteUniforms {\n  float radius;\n  float amount;\n} vignette;\n\nvec4 vignette_filterColor_ext(vec4 color, vec2 texSize, vec2 texCoord) {\n  float dist = distance(texCoord, vec2(0.5, 0.5));\n  float ratio = smoothstep(0.8, vignette.radius * 0.799, dist * (vignette.amount + vignette.radius));\n  return color.rgba * ratio + (1.0 - ratio)*vec4(0.0, 0.0, 0.0, 1.0);\n}\n";
    readonly uniformTypes: {
        readonly radius: "f32";
        readonly amount: "f32";
    };
    readonly defaultUniforms: {
        readonly radius: 0.5;
        readonly amount: 0.5;
    };
    readonly propTypes: {
        readonly radius: {
            readonly value: 0.5;
            readonly min: 0;
            readonly max: 1;
        };
        readonly amount: {
            readonly value: 0.5;
            readonly min: 0;
            readonly max: 1;
        };
    };
    readonly passes: [{
        readonly filter: true;
    }];
};
//# sourceMappingURL=vignette.d.ts.map