import { BasePlugin, PluginRegistry } from '@embedpdf/core'; import { ZoomAction } from './actions'; import { ZoomPluginConfig, ZoomState, ZoomCapability, RegisterMarqueeOnPageOptions } from './types'; export declare class ZoomPlugin extends BasePlugin { static readonly id: "zoom"; private readonly zoom$; private readonly state$; private readonly viewport; private readonly viewportPlugin; private readonly scroll; private readonly interactionManager; private readonly spread; private readonly presets; private readonly zoomRanges; private readonly defaultZoomLevel; private readonly minZoom; private readonly maxZoom; private readonly zoomStep; constructor(id: string, registry: PluginRegistry, cfg: ZoomPluginConfig); protected onDocumentLoadingStarted(documentId: string): void; protected onDocumentLoaded(documentId: string): void; protected onDocumentClosed(documentId: string): void; protected onRotationChanged(documentId: string): void; protected buildCapability(): ZoomCapability; private createZoomScope; private getDocumentState; private getDocumentStateOrThrow; private requestZoom; private requestZoomBy; private zoomIn; private zoomOut; private zoomToArea; private enableMarqueeZoom; private disableMarqueeZoom; private toggleMarqueeZoom; private isMarqueeZoomActive; private handleRequest; private computeZoomForMode; private computeScrollForZoomChange; private handleZoomToArea; private recalcAuto; private normalizeRanges; private stepFor; private toZoom; registerMarqueeOnPage(opts: RegisterMarqueeOnPageOptions): () => void; onStoreUpdated(prevState: ZoomState, newState: ZoomState): void; initialize(): Promise; destroy(): Promise; }