rspace-online/types/3d-force-graph.d.ts

37 lines
1.7 KiB
TypeScript

declare module "3d-force-graph" {
interface ForceGraph3DInstance {
(element: HTMLElement): ForceGraph3DInstance;
backgroundColor(color: string): ForceGraph3DInstance;
showNavInfo(show: boolean): ForceGraph3DInstance;
nodeId(id: string): ForceGraph3DInstance;
nodeLabel(label: string | ((node: any) => string)): ForceGraph3DInstance;
nodeThreeObject(fn: (node: any) => any): ForceGraph3DInstance;
nodeThreeObjectExtend(extend: boolean): ForceGraph3DInstance;
linkSource(source: string): ForceGraph3DInstance;
linkTarget(target: string): ForceGraph3DInstance;
linkColor(fn: (link: any) => string): ForceGraph3DInstance;
linkWidth(fn: (link: any) => number): ForceGraph3DInstance;
linkOpacity(opacity: number): ForceGraph3DInstance;
linkDirectionalArrowLength(len: number | ((link: any) => number)): ForceGraph3DInstance;
linkDirectionalArrowRelPos(pos: number): ForceGraph3DInstance;
linkDirectionalArrowColor(fn: (link: any) => string): ForceGraph3DInstance;
linkCurvature(curvature: number | ((link: any) => number)): ForceGraph3DInstance;
onNodeClick(fn: (node: any, event: MouseEvent) => void): ForceGraph3DInstance;
onNodeHover(fn: (node: any | null, prev: any | null) => void): ForceGraph3DInstance;
graphData(data: { nodes: any[]; links: any[] }): ForceGraph3DInstance;
graphData(): { nodes: any[]; links: any[] };
d3Force(name: string, force?: any): any;
width(width: number): ForceGraph3DInstance;
height(height: number): ForceGraph3DInstance;
refresh(): ForceGraph3DInstance;
scene(): any;
camera(): any;
renderer(): any;
controls(): any;
[key: string]: any;
}
function ForceGraph3D(config?: { controlType?: string }): ForceGraph3DInstance;
export default ForceGraph3D;
}