UNPKG

@qwu4xyv/system

Version:

xyflow core system that powers React Flow and Svelte Flow.

49 lines 1.99 kB
import type { ZoomTransform } from 'd3-zoom'; import { PanOnScrollMode, type CoordinateExtent, type Transform, type Viewport } from './'; export type OnDraggingChange = (dragging: boolean) => void; export type OnTransformChange = (transform: Transform) => void; export type PanZoomParams = { domNode: Element; minZoom: number; maxZoom: number; viewport: Viewport; translateExtent: CoordinateExtent; onTransformChange: OnTransformChange; onDraggingChange: OnDraggingChange; onPanZoomStart?: OnPanZoom; onPanZoom?: OnPanZoom; onPanZoomEnd?: OnPanZoom; }; export type PanZoomTransformOptions = { duration?: number; }; export type OnPanZoom = (event: MouseEvent | TouchEvent | null, viewport: Viewport) => void; export type PanZoomUpdateOptions = { noWheelClassName: string; noPanClassName: string; onPaneContextMenu?: (event: MouseEvent) => void; preventScrolling: boolean; panOnScroll: boolean; panOnDrag: boolean | number[]; panOnScrollMode: PanOnScrollMode; panOnScrollSpeed: number; userSelectionActive: boolean; zoomOnPinch: boolean; zoomOnScroll: boolean; zoomOnDoubleClick: boolean; zoomActivationKeyPressed: boolean; lib: string; }; export type PanZoomInstance = { update: (params: PanZoomUpdateOptions) => void; destroy: () => void; getViewport: () => Viewport; setViewport: (viewport: Viewport, options?: PanZoomTransformOptions) => ZoomTransform | undefined; setViewportConstrained: (viewport: Viewport, extent: CoordinateExtent, translateExtent: CoordinateExtent) => ZoomTransform | undefined; setScaleExtent: (scaleExtent: [number, number]) => void; setTranslateExtent: (translateExtent: CoordinateExtent) => void; scaleTo: (scale: number, options?: PanZoomTransformOptions) => void; scaleBy: (factor: number, options?: PanZoomTransformOptions) => void; syncViewport: (viewport: Viewport) => void; }; //# sourceMappingURL=panzoom.d.ts.map