UNPKG

@gravity-ui/graph

Version:

Modern graph editor component

18 lines (17 loc) 1.86 kB
import { GraphEventsDefinitions, UnwrapGraphEvents, UnwrapGraphEventsDetail } from "../graphEvents"; export type TGraphEventCallbacks = { click: (data: UnwrapGraphEventsDetail<"click">, event: UnwrapGraphEvents<"click">) => void; dblclick: (data: UnwrapGraphEventsDetail<"dblclick">, event: UnwrapGraphEvents<"dblclick">) => void; onCameraChange: (data: UnwrapGraphEventsDetail<"camera-change">, event: UnwrapGraphEvents<"camera-change">) => void; onBlockDragStart: (data: UnwrapGraphEventsDetail<"block-drag-start">, event: UnwrapGraphEvents<"block-drag-start">) => void; onBlockDrag: (data: UnwrapGraphEventsDetail<"block-drag">, event: UnwrapGraphEvents<"block-drag">) => void; onBlockDragEnd: (data: UnwrapGraphEventsDetail<"block-drag-end">, event: UnwrapGraphEvents<"block-drag-end">) => void; onBlockSelectionChange: (data: UnwrapGraphEventsDetail<"blocks-selection-change">, event: UnwrapGraphEvents<"blocks-selection-change">) => void; onBlockAnchorSelectionChange: (data: UnwrapGraphEventsDetail<"block-anchor-selection-change">, event: UnwrapGraphEvents<"block-anchor-selection-change">) => void; onBlockChange: (data: UnwrapGraphEventsDetail<"block-change">, event: UnwrapGraphEvents<"block-change">) => void; onConnectionSelectionChange: (data: UnwrapGraphEventsDetail<"connection-selection-change">, event: UnwrapGraphEvents<"connection-selection-change">) => void; onStateChanged: (data: UnwrapGraphEventsDetail<"state-change">, event: UnwrapGraphEvents<"state-change">) => void; }; export type GraphEventDetail<T extends keyof TGraphEventCallbacks> = Parameters<TGraphEventCallbacks[T]>[0]; export type GraphEvent<T extends keyof TGraphEventCallbacks> = Parameters<TGraphEventCallbacks[T]>[0]; export declare const GraphCallbacksMap: Record<keyof TGraphEventCallbacks, keyof GraphEventsDefinitions>;