Types
LumiPDF ships full TypeScript definitions. Import types alongside components.
Importing types
tsx
import type {
FileSource,
DocumentModel,
PdfViewerProps,
PdfViewerRef,
Annotation,
Theme,
FitMode,
} from "lumipdf";Core types
- FileSource - url | file | buffer | handle
- DocumentModel - loaded document metadata and page list
- PdfViewerProps / PdfViewerRef - component surface
- Annotation and related tool / style types
- Theme, FitMode, ScrollMode, SidebarView
FileSource
ts
type FileSource =
| { kind: "file"; file: File }
| { kind: "handle"; handle: FileSystemFileHandle }
| { kind: "url"; url: string; filename?: string }
| { kind: "buffer"; buffer: ArrayBuffer; name: string; type?: string };Annotation helpers
Use serializeAnnotations and parseAnnotations for validated storage payloads.