import { BaseSopOperation } from './_Base';
import { CoreGroup } from '../../../core/geometry/Group';
import { InputCloneMode } from '../../../engine/poly/InputCloneMode';
import { SpotLightParams, SpotLightContainer, SpotLightContainerParams } from '../../../core/lights/SpotLight';
export declare class SpotLightSopOperation extends BaseSopOperation {
    static readonly DEFAULT_PARAMS: SpotLightParams;
    static readonly INPUT_CLONED_STATE = InputCloneMode.NEVER;
    static type(): Readonly<'spotLight'>;
    cook(inputCoreGroups: CoreGroup[], params: SpotLightParams): Promise<CoreGroup>;
    createLight(params: SpotLightContainerParams): SpotLightContainer;
    updateLightParams(container: SpotLightContainer, params: SpotLightParams): Promise<void>;
    private _updateLightMap;
    updateShadowParams(container: SpotLightContainer, params: SpotLightParams): void;
}
