import { ThreeEvent } from '@react-three/fiber'; import { FC } from 'react'; import { ColorRepresentation, Curve, Vector3 } from 'three'; export interface LineProps { /** * Whether the line should be animated. */ animated?: boolean; /** * The color of the line. */ color?: ColorRepresentation; /** * Whether the line should be curved. */ curved: boolean; /** * The curve of the line in 3D space. */ curve: Curve; /** * Whether the line should be dashed. */ dashed?: boolean; /** * Dash pattern for the line: [dashSize, gapSize] */ dashArray?: [number, number]; /** * The unique identifier of the line. */ id: string; /** * The opacity of the line. */ opacity?: number; /** * The size of the line. */ size?: number; /** * The render order of the line. Useful when edges are rendered on top of each other. */ renderOrder?: number; /** * A function that is called when the line is clicked. */ onClick?: (event: ThreeEvent) => void; /** * A function that is called when the line is right-clicked. */ onContextMenu?: () => void; /** * A function that is called when the mouse pointer is moved over the line. */ onPointerOver?: (event: ThreeEvent) => void; /** * A function that is called when the mouse pointer is moved out of the line. */ onPointerOut?: (event: ThreeEvent) => void; /** * The offset of the curve. */ curveOffset?: number; } export declare const Line: FC;