import { BlendFunction, KernelSize, GodRaysEffect } from 'postprocessing';
import { Points, Mesh } from 'three';
export interface GodRaysPmndrsProps {
    /**
     * The blend function of this effect.
     */
    blendFunction?: BlendFunction;
    /**
     * The light source. Must not write depth and has to be flagged as transparent.
     */
    lightSource?: Mesh | Points | null;
    /**
     * The opacity of the God Rays.
     */
    opacity?: number;
    /**
     * The density of the light rays.
     */
    density?: number;
    /**
     * The decay of the light rays.
     */
    decay?: number;
    /**
     * The blur kernel size. Has no effect if blur is disabled.
     */
    kernelSize?: KernelSize;
    /**
     * The resolution scale.
     */
    resolutionScale?: number;
    /**
     * Whether the god rays should be blurred to reduce artifacts.
     */
    blur?: boolean;
    /**
     * The horizontal resolution.
     */
    resolutionX?: number;
    /**
     * The vertical resolution.
     */
    resolutionY?: number;
    /**
     * The weight of the light rays.
     */
    weight?: number;
    /**
     * A constant attenuation coefficient.
     */
    exposure?: number;
    /**
     * The number of samples per pixel.
     */
    samples?: number;
    /**
     * An upper bound for the saturation of the overall effect.
     */
    clampMax?: number;
}
declare const _default: import('vue').DefineComponent<GodRaysPmndrsProps, {
    pass: import('vue').ShallowRef<import('postprocessing').EffectPass | null>;
    effect: import('vue').ShallowRef<GodRaysEffect | null>;
}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<GodRaysPmndrsProps> & Readonly<{}>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
export default _default;
