import { Object3D, Vector3 } from "three";
import { ObjectSnapMode } from "../../Editor/ObjectSnapMode";
import { RenderType } from "../../GraphicsSystem/RenderType";
import { CADFiler } from "../CADFiler";
import { Light } from "./Light";
export declare class SpotLight extends Light {
    /**
     * If non-zero, light will attenuate linearly from maximum intensity at light position down to zero at distance.
     * Default — 0.0.
     */
    private _Distance;
    protected _Intensity: number;
    private _Decay;
    private _Angle;
    private _Penumbra;
    InnerConeAngle: number;
    OuterConeAngle: number;
    SourceRadius: number;
    SoftSourceRadius: number;
    SourceLength: number;
    AttenuationRadius: number;
    get Target(): Vector3;
    set Target(p: Vector3);
    get Angle(): number;
    set Angle(rad: number);
    get Decay(): number;
    set Decay(decay: number);
    get Distance(): number;
    set Distance(dist: number);
    get Penumbra(): number;
    set Penumbra(v: number);
    get EndPoint(): Vector3;
    get WebIntensity(): number;
    GetGripPoints(): Vector3[];
    MoveGripPoints(indexList: number[], vec: Vector3): void;
    GetStretchPoints(): Vector3[];
    MoveStretchPoints(indexList: Array<number>, vec: Vector3): void;
    GetObjectSnapPoints(snapMode: ObjectSnapMode, pickPoint: Vector3, lastPoint: Vector3): Vector3[];
    protected InitDrawObject(renderType?: RenderType): Object3D;
    UpdateDrawObject(type: RenderType, en: Object3D): void;
    protected _ReadFile(file: CADFiler): void;
    WriteFile(file: CADFiler): void;
}
//# sourceMappingURL=SpotLight.d.ts.map