UNPKG

safeer-pdf-generator

Version:

Framework-agnostic PDF generation library with chunking, merging, S3 upload, and email delivery

48 lines 1.25 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.PdfEventEmitter = void 0; const events_1 = require("events"); /** * Typed event emitter for PDF lifecycle events. * * @example * ```typescript * const events = new PdfEventEmitter(); * * events.on('generation:started', ({ title, rowCount }) => { * console.log(`Generating PDF: ${title} with ${rowCount} rows`); * }); * * events.on('s3:upload:complete', ({ url }) => { * notifyClient(url); * }); * * events.on('error', ({ error, phase }) => { * alertOps(`PDF failed at ${phase}: ${error.message}`); * }); * * await generatePdf({ title: 'Report', data, columns, events }); * ``` */ class PdfEventEmitter extends events_1.EventEmitter { /** * Emit a typed lifecycle event */ emitEvent(event, payload) { return this.emit(event, payload); } /** * Listen for a typed lifecycle event */ onEvent(event, listener) { return this.on(event, listener); } /** * Listen for a typed lifecycle event (once) */ onceEvent(event, listener) { return this.once(event, listener); } } exports.PdfEventEmitter = PdfEventEmitter; //# sourceMappingURL=PdfEventEmitter.js.map