import type { VisualizationOptions } from '../../types'; export interface FishboneNode { name: string; children?: FishboneNode[]; } /** * FishboneDiagramConfig defines the configuration for rendering the fishbone diagram. */ export interface FishboneDiagramConfig { type?: 'fishbone-diagram'; data: FishboneNode; theme?: 'default' | 'academy' | 'dark'; title?: string; style?: { /** Custom color palette for branch nodes, overrides theme default */ palette?: string[]; /** Canvas background color, overrides theme default */ backgroundColor?: string; /** Node rendering style: 'rough' for hand-drawn look, 'default' for smooth */ texture?: 'rough' | 'default'; }; } /** * FishboneDiagramInstance represents a fishbone diagram instance. */ export interface FishboneDiagramInstance { render: (config: FishboneDiagramConfig) => void; destroy: () => void; zoomTo: (zoom: number) => void; getZoom: () => number | undefined; } /** * FishboneDiagram chart component using G6 with fishbone layout. */ export declare const FishboneDiagram: (options: VisualizationOptions) => FishboneDiagramInstance;