/** @packageDocumentation
 * @module DisplayStyles
 */
/** Namespace containing types controlling how ambient occlusion should be drawn.
 * @public
 */
export declare namespace AmbientOcclusion {
    /** Describes the properties with which ambient occlusion should be drawn. These properties correspond to a horizon-based ambient occlusion approach. */
    interface Props {
        /** If defined, represents an angle in radians. If the dot product between the normal of the sample and the vector to the camera is less than this value, sampling stops in the current direction. This is used to remove shadows from near planar edges. If undefined, the bias defaults to 0.25. */
        readonly bias?: number;
        /** If defined, if the distance in linear depth from the current sample to first sample is greater than this value, sampling stops in the current direction. If undefined, the zLengthCap defaults to 0.0025.  The full range of linear depth is 0 to 1. */
        readonly zLengthCap?: number;
        /** If defined, the maximum distance from the camera's near plane in meters at which ambient occlusion will be applied. If undefined, the maximum distance defaults to 10000. */
        readonly maxDistance?: number;
        /** If defined, raise the final ambient occlusion to the power of this value. Larger values make the ambient shadows darker. If undefined, the intensity defaults to 2.0. */
        readonly intensity?: number;
        /** If defined, indicates the texel distance to step toward the next texel sample in the current direction. For portions of geometry close to the near plane, this value will be what is used. As portions of geometry extend away from the near plane, this value will gradually reduce until it reaches a minimum value of 1.0 at the far plane. If undefined, texelStepSize defaults to 1.95. */
        readonly texelStepSize?: number;
        /** If defined, blurDelta is used to compute the weight of a Gaussian filter. The equation is exp((-0.5 * blurDelta * blurDelta) / (blurSigma * blurSigma)). If undefined, blurDelta defaults to 1.0. */
        readonly blurDelta?: number;
        /** If defined, blurSigma is used to compute the weight of a Gaussian filter. The equation is exp((-0.5 * blurDelta * blurDelta) / (blurSigma * blurSigma)). If undefined, blurSigma defaults to 2.0. */
        readonly blurSigma?: number;
        readonly blurTexelStepSize?: number;
    }
    /** Describes the properties with which ambient occlusion should be drawn. These properties correspond to a horizon-based ambient occlusion approach. */
    class Settings implements Props {
        private static _defaultBias;
        private static _defaultZLengthCap;
        private static _defaultMaxDistance;
        private static _defaultIntensity;
        private static _defaultTexelStepSize;
        private static _defaultBlurDelta;
        private static _defaultBlurSigma;
        private static _defaultBlurTexelStepSize;
        readonly bias: number;
        readonly zLengthCap: number;
        readonly maxDistance: number;
        readonly intensity: number;
        readonly texelStepSize: number;
        readonly blurDelta: number;
        readonly blurSigma: number;
        readonly blurTexelStepSize: number;
        private constructor();
        static defaults: Settings;
        static fromJSON(json?: Props): Settings;
        toJSON(): Props;
    }
}
//# sourceMappingURL=AmbientOcclusion.d.ts.map