@vue-pdf-viewer/viewer
Version:
A vue-pdf-viewer component for Vue and Nuxt. Suitable for vue-pdf document.
34 lines (33 loc) • 1.89 kB
TypeScript
import { ViewMode, ZoomLevel } from './utils/enumerators';
import type { ClassValue } from 'clsx';
export declare function cn(...inputs: ClassValue[]): string;
export declare function formatNumber(value?: string): string;
export declare function formatFileSize(bytes: number, decimalPoint?: number): string;
export declare function generateUniqueCSSClassName(): string;
export declare const attachWatermarkShadowDOM: (rootViewer: HTMLDivElement) => HTMLDivElement;
export declare const formatDate: (date: string) => string;
export declare const formatCommentTimestamp: (date: string | Date) => string;
/**
* Calculate scale for ZoomLevel presets based on container and page dimensions.
* Handles dual page modes by doubling effective page width.
*
* @param container - The container element
* @param pageHeight - Height of a single page
* @param pageWidth - Width of a single page
* @param scale - ZoomLevel preset (ActualSize, PageFit, PageWidth)
* @param viewMode - Current view mode
* @param numPages - Total number of pages in document
* @returns Calculated scale value
*/
export declare function calculateScale(container: HTMLElement, pageHeight: number, pageWidth: number, scale: ZoomLevel, viewMode: ViewMode, numPages: number): number;
export declare const getTodayPdfDate: () => string;
export declare const getPdfDate: (date: string | Date) => string | Date;
export declare const cssTextToObject: (cssText: string) => Record<string, string>;
export declare function rectBoundingBox(x0: number, y0: number, x1: number, y1: number, minMax: number[]): void;
export declare function MathClamp(v: number, min: number, max: number): number;
/**
* Recursively removes 'bitmap' properties from annotation storage.
* Supports both Map and plain object storage.
* Call this before printing or saving!
*/
export declare function sanitizeAnnotationStorage(storage: any): any;