import { type PluginRegistry, ZoomMode } from '@embedpdf/react-pdf-viewer'; export interface PdfSearchState { active: boolean; activeResultIndex: number; error: boolean; loading: boolean; query: string; total: number; } export interface PdfViewerFeatures { export: boolean; history: boolean; navigation: boolean; search: boolean; zoom: boolean; } export interface PdfViewerControllerState { canRedo: boolean; canUndo: boolean; currentPage: number; documentOpen: boolean; error: string | null; features: PdfViewerFeatures; ready: boolean; search: PdfSearchState; totalPages: number; zoomMode: ZoomMode | null; zoomPercent: number; } export interface PdfViewerController { state: PdfViewerControllerState; actualSize: () => void; clearSearch: () => void; fitPage: () => void; fitWidth: () => void; goToPage: (page: number) => void; nextPage: () => void; nextSearchResult: () => void; previousPage: () => void; previousSearchResult: () => void; redo: () => void; saveAsCopy: () => Promise; search: (query: string) => void; undo: () => void; zoomIn: () => void; zoomOut: () => void; } export interface PdfViewerHistoryOverride { canRedo: boolean; canUndo: boolean; redo: () => void; undo: () => void; } export declare const initialPdfViewerControllerState: PdfViewerControllerState; export declare function usePdfViewerController(registry: PluginRegistry | null, historyOverride?: PdfViewerHistoryOverride): PdfViewerController;