import { type DfPoint } from '../../ng-draw-flow.interfaces'; import { type DfPanzoomModel } from './pan-zoom.interfaces'; import { type DfPanSizeDimensions, type DfPanZoomOptions } from './pan-zoom.options'; export interface DfContainerOffsets { readonly offsetX: number; readonly offsetY: number; readonly translateX: number; readonly translateY: number; } export interface DfPanZoomUsableRectBounds { readonly minX: number; readonly minY: number; readonly maxX: number; readonly maxY: number; } export interface DfPanZoomWorldRectBounds { readonly minX: number; readonly minY: number; readonly maxX: number; readonly maxY: number; } export declare function clampScale(scale: number, min: number, max: number): number; export declare function moveBy(camera: DfPanzoomModel, deltaX: number, deltaY: number): DfPanzoomModel; export declare function clampByPanSize(camera: DfPanzoomModel, panSize: Pick): DfPanzoomModel; export declare function clampByUsableRect(camera: DfPanzoomModel, usableRect: DfPanZoomUsableRectBounds, viewportSize: Pick, zeroPoint: DfPoint): DfPanzoomModel; export declare function zoomAtPoint(camera: DfPanzoomModel, point: DfPoint, targetScale: number, options: Pick): DfPanzoomModel; export declare function getViewportZeroPoint(rootSize: Pick, options: Pick): DfPoint; export declare function getContainerOffsets(rootSize: Pick, options: Pick): DfContainerOffsets; export declare function getViewportCenter(camera: Pick, panSize: Pick): DfPoint; export declare function alignCameraToWorldRect(camera: DfPanzoomModel, targetRect: Pick, viewportSize: Pick, options: Pick): DfPanzoomModel;