import { ValidationError } from "../core/index.js";
import {} from "../math/index.js";
import {} from "./MathTypes.js";
import { SceneNode } from "./SceneNode.js";
export class Light extends SceneNode {
    kind;
    color = [1, 1, 1];
    castsShadow = false;
    currentIntensity = 1;
    constructor(kind, name, id) {
        super({ id, name });
        this.kind = kind;
    }
    get intensity() {
        return this.currentIntensity;
    }
    set intensity(value) {
        if (!(value >= 0) || !Number.isFinite(value))
            throw new ValidationError("LIGHT_INTENSITY", "Light intensity must be a finite non-negative number.");
        this.currentIntensity = value;
    }
}
//# sourceMappingURL=Light.js.map