import { Camera, DirectionalLight } from 'three'; import { StorageTexture, TempNode, NodeBuilder, NodeFrame, TextureNode } from 'three/webgpu'; export declare class ScreenSpaceShadowNode extends TempNode { get type(): string; depthNode: TextureNode; camera: Camera; mainLight: DirectionalLight; sampleCount: number; hardShadowSamples: number; fadeOutSamples: number; readonly outputTexture: StorageTexture; private readonly textureNode; thickness: import('three/webgpu').UniformNode; shadowContrast: import('three/webgpu').UniformNode; shadowIntensity: import('three/webgpu').UniformNode; bilinearThreshold: import('three/webgpu').UniformNode; nearDepth: import('three/webgpu').UniformNode; farDepth: import('three/webgpu').UniformNode; private readonly lightCoordinate; private readonly dispatchOffset; private readonly dispatchIndex; private readonly dispatches; private dispatchCount; private computeNode?; constructor(depthNode: TextureNode, camera: Camera, mainLight: DirectionalLight); customCacheKey(): number; getTextureNode(): TextureNode; setSize(width: number, height: number): this; updateBefore(frame: NodeFrame): void; private updateDispatchList; private setupCompute; setup(builder: NodeBuilder): unknown; dispose(): void; } export declare const screenSpaceShadow: (...args: ConstructorParameters) => ScreenSpaceShadowNode;