import * as THREE from 'three'; import { FivePass } from './pass'; import { type Camera } from '../../../core/camera'; export type FlowingLight3DPassLine = { id?: string; points: THREE.Vector3[]; totalLength: number; color: THREE.Color; opacity?: number; duration?: number; lineWidth?: number; tailLengthRatio?: number; startTime?: number; }; export declare class FlowingLight3DPass extends FivePass { private camera; private mesh; private material; private uTime; private lines; private lineScene; private orthoCamera; private lineRenderTarget; private blendMaterial; private blendQuad; constructor(camera: Camera); setLines(lines: FlowingLight3DPassLine[]): void; addLine(...lines: FlowingLight3DPassLine[]): string[]; removeLine(...ids: string[]): number; setLine(params: { id: string; } & Partial>): void; private _updateLineAttributes; private _rebuildMesh; render(renderer: THREE.WebGLRenderer, writeBuffer: THREE.WebGLRenderTarget, readBuffer: THREE.WebGLRenderTarget, deltaTime: number, maskActive?: boolean): void; dispose(): void; }