import { Mesh, ShaderMaterial, Color, ConeGeometry } from 'three';
import type { SpotLightContainer } from '../SpotLight';
interface SpotLightVolumetricMaterial extends ShaderMaterial {
    uniforms: {
        attenuation: {
            value: number;
        };
        anglePower: {
            value: number;
        };
        lightColor: {
            value: Color;
        };
    };
}
export interface VolumetricSpotLightParams {
    tvolumetric: boolean;
    volAttenuation: number;
    volAnglePower: number;
}
export declare class VolumetricSpotLight {
    readonly container: SpotLightContainer;
    private _mesh;
    constructor(container: SpotLightContainer);
    update(params: VolumetricSpotLightParams): void;
    object(): Mesh<ConeGeometry, SpotLightVolumetricMaterial, import("three").Object3DEventMap>;
    private _createMesh;
    private _createMaterial;
}
export {};
