import { type CytoscapeOptions } from 'cytoscape'; import type { GraphRuntimeUpdate } from '../../../../../types/graphViewRuntime'; import type { GraphViewCallbacks, GraphViewElementEventType, GraphViewRenderedNode, GraphViewSize } from './GraphView'; type GraphContainer = CytoscapeOptions['container']; type RenderedNodeListener = (nodes: readonly GraphViewRenderedNode[]) => void; export interface GraphRuntime { destroy(): void; handleOverlayNodeEvent(id: string, type: GraphViewElementEventType): void; setNodeSize(id: string, size: GraphViewSize): void; setSelectedNodeIds(nodeIds: readonly string[] | undefined): void; subscribeRenderedNodes(listener: RenderedNodeListener): () => void; update(input: GraphRuntimeUpdate): void; } /*** Create one Cytoscape runtime that exclusively owns layout, fit, resize, and disposal. */ export declare function createGraphRuntime(container: GraphContainer, callbacksRef: { current: GraphViewCallbacks; }): GraphRuntime; export {}; //# sourceMappingURL=createGraphRuntime.d.ts.map