@gravity-ui/graph
Version:
Modern graph editor component
32 lines (31 loc) • 2.54 kB
TypeScript
import { 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;
onBlocksGeometryChange: (data: UnwrapGraphEventsDetail<"blocks-geometry-change">, event: UnwrapGraphEvents<"blocks-geometry-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: {
readonly click: "click";
readonly dblclick: "dblclick";
readonly onCameraChange: "camera-change";
readonly onBlockDragStart: "block-drag-start";
readonly onBlockDrag: "block-drag";
readonly onBlockDragEnd: "block-drag-end";
readonly onBlockSelectionChange: "blocks-selection-change";
readonly onBlockAnchorSelectionChange: "block-anchor-selection-change";
readonly onBlockChange: "block-change";
readonly onBlocksGeometryChange: "blocks-geometry-change";
readonly onConnectionSelectionChange: "connection-selection-change";
readonly onStateChanged: "state-change";
};