safeer-pdf-generator
Version:
Framework-agnostic PDF generation library with chunking, merging, S3 upload, and email delivery
72 lines • 2.09 kB
TypeScript
import { MergePdfsOptions } from '../types.js';
/**
* Merge multiple PDF buffers into a single PDF
*/
export declare function mergePdfs(pdfBuffers: Buffer[], options?: MergePdfsOptions): Promise<Buffer>;
/**
* Merge PDF files from file paths
*/
export declare function mergePdfFiles(filePaths: string[], options?: MergePdfsOptions): Promise<Buffer>;
/**
* Analyze PDF buffers without merging
*/
export declare function analyzePdfs(pdfBuffers: Buffer[], options?: MergePdfsOptions): Promise<{
totalChunks: number;
totalPages: number;
totalSize: number;
chunkInfo: Array<{
index: number;
pages: number;
sizeKB: number;
valid: boolean;
error?: string;
}>;
}>;
/**
* Validate PDF buffers
*/
export declare function validatePdfs(pdfBuffers: Buffer[], options?: MergePdfsOptions): Promise<{
valid: boolean;
errors: Array<{
chunkIndex: number;
error: string;
}>;
}>;
/**
* Split a PDF into individual page buffers
*/
export declare function splitPdf(pdfBuffer: Buffer, options?: MergePdfsOptions): Promise<Buffer[]>;
/**
* Extract specific pages from a PDF
*/
export declare function extractPages(pdfBuffer: Buffer, pageIndices: number[], options?: MergePdfsOptions): Promise<Buffer>;
/**
* Get information about a PDF
*/
export declare function getPdfInfo(pdfBuffer: Buffer, options?: MergePdfsOptions): Promise<{
pages: number;
sizeKB: number;
title?: string;
author?: string;
creator?: string;
producer?: string;
creationDate?: Date;
modificationDate?: Date;
}>;
/**
* Merge PDFs with custom page ranges
*/
export declare function mergePdfsWithRanges(inputs: Array<{
buffer: Buffer;
pages?: number[];
startPage?: number;
endPage?: number;
}>, options?: MergePdfsOptions): Promise<Buffer>;
/**
* Batch merge multiple sets of PDFs
*/
export declare function batchMergePdfs(batches: Buffer[][], options?: MergePdfsOptions & {
concurrency?: number;
batchNames?: string[];
}): Promise<Buffer[]>;
//# sourceMappingURL=mergePdfs.d.ts.map