import { type DeletedAnnotationData } from "@vue-pdf-viewer/shared"; import type { Annotation } from "../types"; export declare class AnnotationPdfSerializer { /** * Serialize annotations into a PDF document * @param originalBytes - The original PDF bytes * @param annotations - Annotations to add to the PDF * @param deletedAnnotations - Annotation data for removal (supports both string IDs and full objects) */ static serializeAnnotationsToPdf(originalBytes: Uint8Array, annotations: Annotation[], deletedAnnotations?: DeletedAnnotationData[] | string[]): Promise; /** * Remove annotations from the PDF * Supports both ID-based matching (via /NM field) and position-based matching as fallback */ private static removeAnnotations; /** * Check if a PDF annotation matches any of the deleted annotations * First tries to match by /NM (ID), then falls back to position matching */ private static matchesDeletedAnnotation; private static addTextMarkupAnnotation; /** * Format a JavaScript Date object to PDF date string format * PDF spec format: D:YYYYMMDDHHmmSSOHH'mm * @param date - JavaScript Date object * @returns PDF date string */ private static formatPdfDate; /** * Add a rectangle (square) annotation to the PDF * Rectangle annotations are PDF annotation type 5 (Square) */ private static addRectangleAnnotation; private static convertRectToPdfCoords; private static convertQuadPointsToPdfCoords; }