import { PanOnScrollMode, type CoordinateExtent, type OnPanZoom, type PanZoomInstance, type Transform, type Viewport } from '@xyflow/system';
type ZoomParams = {
    viewport: Viewport;
    initialViewport: Viewport;
    minZoom: number;
    maxZoom: number;
    setPanZoomInstance: (panZoomInstance: PanZoomInstance) => void;
    onPanZoomStart?: OnPanZoom;
    onPanZoom?: OnPanZoom;
    onPanZoomEnd?: OnPanZoom;
    onPaneContextMenu?: (event: MouseEvent) => void;
    translateExtent: CoordinateExtent;
    zoomOnScroll: boolean;
    zoomOnPinch: boolean;
    zoomOnDoubleClick: boolean;
    panOnScroll: boolean;
    panOnDrag: boolean | number[];
    panOnScrollSpeed: number;
    panOnScrollMode: PanOnScrollMode;
    zoomActivationKeyPressed: boolean;
    preventScrolling: boolean;
    noPanClassName: string;
    noWheelClassName: string;
    userSelectionActive: boolean;
    lib: string;
    paneClickDistance: number;
    selectionOnDrag?: boolean;
    onTransformChange: (transform: Transform) => void;
    onDraggingChange: (dragging: boolean) => void;
    connectionInProgress: boolean;
};
export default function zoom(domNode: Element, params: ZoomParams): {
    update(params: ZoomParams): void;
};
export {};
